Releases: TypeStrong/typedoc
Releases · TypeStrong/typedoc
v0.24.5
Features
- Categories and groups can now be shown in the navigation, added
--navigation.includeCategories
and--navigation.includeGroupsto control this behavior. The--categorizeByGroupoption also
effects this behavior. IfcategorizeByGroupis set (the default) andnavigation.includeGroupsis
not set, the value ofnavigation.includeCategorieswill be effectively ignored since categories
will be created only within groups, #1532. - Added support for discovering a "module" comment on global files, #2165.
- Added copy code to clipboard button, #2153.
- Function
@returnsblocks will now be rendered with the return type, #2180. - Added
--groupOrderoption to specify the sort order of groups, #2251.
Bug Fixes
- Type parameter constraints now respect the
--hideParameterTypesInTitleoption, #2226. - Even more contrast fixes, #2248.
- Fix semantic highlighting for predicate type's parameter references, #2249.
- Fixed broken links to heading titles.
- Fixed inconsistent styling between type parameter lists and parameter lists.
- TypeDoc will now warn if more than one
@returnsblock is is present in a function, and ignore the duplicate blocks as specified by TSDoc.
Thanks!
v0.24.4
v0.24.3
v0.24.2
Features
- Added semantic link coloring for reflection names & links, #2227.
Note: This resulted in function signatures becoming too busy for easy scanning with even slightly
complicated signatures as such, TypeDoc now only renders parameter names in the signature title
and includes the type in the parameter details as usual. This can be controlled with the new
--hideParameterTypesInTitleoption. - Conditional types will now render their branches on the next line for easier comprehension.
Bug Fixes
- Fixed
&showing as&and HTML text showing up in page contents navigation, #2224. - Increased padding between sections when one navigation column is displayed, #2225.
- Correct padding for navigation elements with a displayed icon, #2229.
- Fixed
source-ordersort strategy failing to compare reflections within a file. - Added
enum-member-source-orderspecialization of thesource-ordersort strategy which only compares enum members, #2237. - Updated highlight colors for semantic links to meet WCAG AA contrast requirements, #2228.
- Type parameters are now highlighted consistently, #2230.
- Fixed semantic coloring in type and function signatures, #2227.
- Fixed issue where removing a reflection indirectly containing an object/function type would only partially remove the reflection, #2231.
- Fixed "Implementation of X.y" links if a mixture of methods and property-methods are used, #2233.
- "Implementation of" text to symbol-properties not contained in the documentation will now use the resolved name instead of a
__@symbol name, #2234. - Fix expansion of globs if a single entry point is provided, #2235.
- Validation will no longer be skipped for sub packages when running with
--entryPointStrategy packages. - Fixed broken theme toggle if the page contained a member named "theme".
Thanks!
v0.24.1
v0.24.0
Breaking Changes
@link,@linkcodeand@linkplaintags will now be resolved with TypeScript's link resolution by default. TheuseTsLinkResolutionoption
can be used to turn this behavior off, but be aware that doing so will mean your links will be resolved differently by editor tooling and TypeDoc.- TypeDoc will no longer automatically load plugins from
node_modules. Specify the--pluginoption to indicate which modules should be loaded. - The
packagesentry point strategy will now run TypeDoc in each provided package directory and then merge the results together.
The previouspackagesstrategy has been preserved underlegacy-packagesand will be removed in 0.25. If the new strategy does not work
for your use case, please open an issue. - Removed
--loggeroption, to disable all logging, set thelogLeveloption tonone. - Dropped support for legacy
[[link]]s, removed deprecatedReflection.findReflectionByName. - Added
@overloadto default ignored tags.
API Breaking Changes
- The
labelproperty onReflectionhas moved toComment. - The default value of the
outoption has been changed from""to"./docs", #2195. - Renamed
DeclarationReflection#versiontoDeclarationReflection#projectVersionto match property onProjectReflection. - Removed unused
Reflection#originalName. - Removed
Reflection#kindString, useReflectionKind.singularString(reflection.kind)orReflectionKind.pluralString(reflection.kind)instead. - The
named-tuple-memberandtemplate-literaltype kind have been replaced withnamedTupleMemberandtemplateLiteral, #2100. - Properties related to rendering are no longer stored on
Reflection, includingurl,anchor,hasOwnDocument, andcssClasses. Application.bootstrapwill no longer load plugins. If you want to load plugins, useApplication.bootstrapWithPluginsinstead, #1635.- The options passed to
Application.bootstrapwill now be applied both before and after reading options files, which may cause a change in configuration
if using a custom script to run TypeDoc that includes some options, but other options are set in config files. - Moved
sourcesproperty previously declared on baseReflectionclass toDeclarationReflectionandSignatureReflection. - Moved
relevanceBoostfromContainerReflectiontoDeclarationReflectionsince setting it on the parent class has no effect. - Removed internal
ReferenceType.getSymbol, reference types no longer reference thets.Symbolto enable generation from serialized JSON. OptionsReader.priorityhas been renamed toOptionsReader.orderto more accurately reflect how it works.ReferenceTypes which point to type parameters will now always be intentionally broken since they were never linked and should not be warned about when validating exports.ReferenceTypes now longer include anidproperty for their target. They now instead include atargetproperty.- Removed
Renderer.addExternalSymbolResolver, useConverter.addExternalSymbolResolverinstead. - Removed
CallbackLogger. - Removed
SerializeEventDatafrom serialization events. - A
PageEventis now required forgetRenderContext. If caching the context object,pagemust be updated whengetRenderContextis called. PageEventno longer includes thetemplateproperty. TheTheme.rendermethod is now expected to take the template to render the page with as its second argument.- Removed
secondaryNavigationmember onDefaultThemeRenderContext. - Renamed
navigationtosidebaronDefaultThemeRenderContextandnavigation.begin/navigation.endhooks tosidebar.begin/sidebar.end.
Features
- Added
--useTsLinkResolutionoption (on by default) which tells TypeDoc to use TypeScript's@linkresolution. - Added
--jsDocCompatibilityoption (on by default) which controls TypeDoc's automatic detection of code blocks in@exampleand@defaulttags. - Reworked default theme navigation to add support for a page table of contents, #1478, #2189.
- Added support for
@interfaceon type aliases to tell TypeDoc to convert the fully resolved type as an interface, #1519 - Added support for
@namespaceon variable declarations to tell TypeDoc to convert the variable as a namespace, #2055. - Added support for
@prop/@propertyto specify documentation for a child property of a symbol, intended for use with@interface. - TypeDoc will now produce more informative error messages for options which cannot be set from the cli, #2022.
- TypeDoc will now attempt to guess what option you may have meant if given an invalid option name.
- Plugins may now return a
Promise<void>from theirloadfunction, #185. - TypeDoc now supports plugins written with ESM, #1635.
- Added
Renderer.preRenderAsyncJobsandRenderer.postRenderAsyncJobs, which may be used by plugins to perform async processing for rendering, #185.
Note: Conversion is still intentionally a synchronous process to ensure stability of converted projects between runs. - TypeDoc options may now be set under the
typedocOptionskey inpackage.json, #2112. - Added
--cacheBustoption to tell TypeDoc to include include the generation time in files, #2124. - Added
--excludeReferencesoption to tell TypeDoc to omit re-exports of a symbol already included from the documentation. - Introduced new render hooks
pageSidebar.beginandpageSidebar.end.
Bug Fixes
- TypeDoc will now ignore package.json files not containing a
namefield, #2190. - Fixed
@inheritDocon signatures (functions, methods, constructors, getters, setters) being unable to inherit from a non-signature. - Interfaces/classes created via extending a module will no longer contain variables/functions where the member should have been converted as properties/methods, #2150.
- TypeDoc will now ignore a leading
vin versions, #2212. - Category titles now render with the same format in the page index and heading title, #2196.
- Fixed crash when using
typeofon a reference with type arguments, #2220. - Fixed broken anchor links generated to signatures nested within objects.
Thanks!
- @bodil
- @futurGH
- @jm4rtinez
- @muratgozel
v0.23.28
v0.23.27
Features
- Added
--treatValidationWarningsAsErrorsto treat only validation warnings as errors without treating all warnings as errors, #2199.
Bug Fixes
- Fixed a bug where optional properties were not appropriately marked as optional, #2200.
- Fixed shifted navigation pane on devices 1024px wide, #2191.
- Add missing
@privateand@protectedtags totypedoc/tsdoc.json, #2187.
Thanks!
v0.23.26
Features
- Added
Application.EVENT_VALIDATE_PROJECTevent for plugins which implement custom validation, #2183. - Plugins may now return an object from external symbol resolvers, #2066.
- Expose
Comment.displayPartsToMarkdownon for themes overwriting thecommenthelper, #2115.
Bug Fixes
- Fix crash when converting
export default undefined, #2175. - Fix error in console when clicking on headings in the readme, #2170.
- TypeDoc will now ignore parameters of callback parameters when validating that all parameters have documentation, #2154.
Thanks!
v0.23.25
Breaking Changes
- Upgraded Shiki, if your highlight theme was set to
material-<theme>, the value will need to be changed to
material-theme-<theme>, see the Shiki release notes.
Features
- Added new
excludeNotDocumentedKindsvariable to control which reflection types can be removed
by theexcludeNotDocumentedoption, #2162. - Added
typedoc.jsonc,typedoc.config.js,typedoc.config.cjs,typedoc.cjsto the list of files
which TypeDoc will automatically use as configuration files.
Bug Fixes
- Entry points under
node_moduleswill no longer be ignored, #2151. - Corrected behavior of
excludeNotDocumentedon arrow function-variables, #2156. - Added
package.jsonto exports declaration.
Thanks!
- @boneskull
- @Mikkal24
- @Zamiell