Skip to content

v3.4.0

Compare
Choose a tag to compare
@cesarParra cesarParra released this 20 Oct 13:05
· 94 commits to master since this release
2aa4467

New Features

  • Custom Object documentation support. The ApexDocs tool now generates documentation for custom objects and fields.

Important Updates

ApexDocs now leverages the https://github.com/forcedotcom/source-deploy-retrieve tool to locate Salesforce metadata (Apex classes, custom objects, and custom fields). This is the same tool that the sf CLI uses, which means that files will be located following the same rules (as defined here: https://github.com/forcedotcom/source-deploy-retrieve/blob/main/src/registry/metadataRegistry.json)

The major update this entails is that now the .forceignore file is respected. This can be turned off so I am open to providing a flag is anyone finds this behavior undesirable.

The other update is that now, to locate Apex classes (.cls files), they must be next to their corresponding cls-meta.xml file, whereas before it didn’t matter if the xml file did not exist. This should hopefully not make any difference as these are required in a Salesforce project anyways.

Known Limitations to be address in future releases

  • Custom Objects are not yet supported by the OpenApi or Changelog command.
    • Note that the OpenApi format will probably not be supported ever by this tool, as Salesforce already has tools to produce OpenApi specifications out of SObjects.
  • Salesforce supports specifying custom fields either within the object-meta.xml file (metadata format) or as a standalone file (field-meta.xml - SFDX format). This release only supports parsing standalone field-meta.xml fields.
  • “Extension” fields are not yet supported. These are field-meta.xml fields that extend an object that is not in the source code (either a Standard object, or an object coming from a different package). This will be addressed in a future release.

Examples Updates

  • The vitepress example was updated to show how to use hooks to generate different sidebars for Apex code or Custom Objects