v3.4.0
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 standalonefield-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