NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #1174 most downloaded on pub.dev
A non-interactive HTML documentation generator for Dart source code.
Last release today
07 Oct 2026
Ships fairly regularly
a new release about every 2 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
12 years old
212 releases · first in 2015
Widen the {@example} code fence to enclose examples which themselves contain a code fence.
{@example} code fence to enclose examples which themselves contain a code fence.{@example} file's #endregion names an open region other than the innermost one.Require analyzer 14.1.0 APIs.
One column per quarter.
Fix a RangeError caused by string offset drift when parsing @docImport in files with \r\n line endings.
RangeError caused by string offset drift when parsing @docImport in files with \r\n line endings.Add built-in CSS styling for the <callout-box> HTML tag.
<callout-box> HTML tag.<callout-box> HTML tag.Introduce the { @example } directive for embedding external files, with support for extracting specific code blocks via #region tags.
Cache ElementType instantiations in PackageGraph , improving overall speed by ~6.2% on large packages.
ElementType instantiations in PackageGraph, improving overall{@canonicalFor} tags over the local public library shortcut.Deprecate the --use-categories option.
dartdoc_options.yaml.--use-categories option.internal-error warning instead of crashing.Remove usage of EmbedderYamlLocator and EmbedderSdk.new , internal analyzer APIs which were removed in analyzer 10.1.0.
EmbedderYamlLocator and EmbedderSdk.new, internal@canonicalFor overrides are now correctly placed in their respective directories.dart:core) generate absolute remote links when appropriate.Require analyzer 10.0.0 APIs.
Deprecate the typeAsHtml warning
typeAsHtml warningRemove the deprecated missingCodeBlockLanguage warning.
missingCodeBlockLanguage warning.templates-dir option.nodoc option.include-external option.The URL for category pages now uses _category name_ instead of _category displayName_.
displayName.Update the design of GitHub-flavored Markdown alerts for improved accessibility and to better match GitHub and other Dart sites.
Fix a LateInitializationError by not depending on PackageGraph.objectClass.
Append the href of each library with a slash.
The URL for library pages has moved " library-name -library.html" to "index.html" in the same directory. A redirecting file is left in the previous lo
When calculating the "directory name" of an anonymous library, strip the enclosing package's lowercase name. This should only affect documentation gen
--auto-include-dependencies flag, like the Flutter SDK.
(#3883)Include extension members on the extended type's page. Each extension instance method, getter, setter, and operator that is applicable on a type or on
Queue<E> class implements the Iterable<E> class, so the Queue page shows
elementAtOrNull (a method provided by the IterableExtensions<T>
extension, which extends Iterable<T>), nonNulls (a getter provided by the
NullableIterableExtensions<T extends Object> extension, which extends
Iterable<T?>), and wait (a getter provided by the FutureIterable<T>
extension, which extends Iterable<Future<T>>). (#3863)Fix many library sidebars, and search.
FutureIterable
extension appears on the List page. (#3846)Library elements are now deduplicated in Dartdoc's model. This should be a no-op with regards to generated docs, but noting here in case an issue crop
Fix an issue around referencing elements not explicitly included in a package's documentation.
Allow markdown-alert class names in HTML sanitization.
markdown-alert class names in HTML sanitization. (#3820)web: '>=0.5.1 <2.0.0'.Fix the slash key (/) not focusing the search box.
/) not focusing the search box. (#3810)/// @docImport). (#3805)ContainerAccessor.isInherited a final field.PackageGraph.analysisContext a private field.Un-deprecate the --resources-dir option.
--resources-dir option. (#3782)[this] as a comment reference. Referring to the
containing element can be written as this [Foo], and referring to 'this'
can just be written as `this`. (#3765)abstract final, abstract interface, and sealed classes.
(#3796 and #3804)@docImport directives from library documentation. (#3803)Library.allModelElements, but should be a no-op. (#3793)--stats flag for the 'doc sdk' task
(dart tools/task.dart doc sdk --stats). (#3791)CommentReferenceParser.codeRef private. (#3771)PackageGraph.allLibraries private. (#3792)Fix referencing an aliased type parameter.
Deprecate the missingCodeBlockLanguage warning. This is replaced with the missing_code_block_language_in_doc_comment lint rule.
missingCodeBlockLanguage warning. This is replaced with the
missing_code_block_language_in_doc_comment lint rule. (#3743)analyzer: ^6.5.0. (#3763)More support for documenting a package with macro applications.
@example. (#3715)dart:html to package:web. (#3610)dart format
output. (#3731)Deprecate the --resources-dir option.
--nodoc option. (#3690)--resources-dir option. (#3696)--include-externals option. (#3694)Deprecate the --templates-dir option.
--templates-dir option. (#3667)FLUTTER_ROOT env variable when documenting a package
that requires Flutter. (#3688)* Require analyzer: ^6.4.1.
analyzer: ^6.4.1.No longer write the dartdoc version into generated HTML files.
analyzer: ^6.4.0.Remove --format flag that allows for generating Markdown-formatted docs.
--format flag that allows for generating Markdown-formatted docs.
(#3535)Remove @hideConstantImplementations fully.
The deprecated public APIs will be removed in the next major release.
Apply @hideConstantImplementations by default.
@hideConstantImplementations by default. (#3576)packageName, name, libraryName, and specialFileUri in
SpecialClass. (#3569)PackageMeta.pathContext. (#3572)@samples directive. (#3567)@api directive. (#3566)ElementType.canHaveParameters. (#3563)ElementType subclass constructors. (#3560)hasPublicInheritedMethods, inheritedFields,
publicInheritedFields, publicInheritedMethods are only visible for
testing. (#3559)DefinedElementType.element and
DefinedElementType.isParameterType. (#3558)TypeImplementing.directInterfaces private. (#3555)Remove support for the deprecated new prefix in comment references.
new prefix in comment references.
(#3529)ModelComment.staticElement, ModelNode.commentRefs,
PackageWarningDefinition, packageWarningsByName,
packageWarningDefinitions, AliasedElementType.aliasedParameters, and
GenericTypeAliasElementType.ModelNode.element, ModelNode.resourceProvider,
PackageWarning.template, PackageWarning.warnablePrefix, and
PackageWarning.referredFromPrefix.missingExampleFile and unknownHtmlFragment flags can now be included
or ignored with options.Add back missing search bar to left sidenav on narrow screens.
noDefiningLibraryFoundCanonicalization.scoreCanonicalCandidates is now
calculateCanonicalCandidate, and returns one Library. (#3520)Remove all @deprecated elements.
analyzer: ^6.3.0.@deprecated elements.<nodoc> syntax.{@example} directive.{@animation} directive format.dropTextFrom and hideSdkText.Canonicalization.canonicalLibrary and Category.canonicalLibrary and
Package.canonicalLibrary.Category.categoryDefinition and Library.exportedInLibraries private.Add a hideImplementations directive to disable showing constant implementations alongside one-line docs on class pages
Add chips to class pages for class modifiers
Do not show induced modifiers from analyzer in class headers.
dartdoc_options.yaml. (#3372)Add basic support for Dart 3.0 features, including records and class modifiers. (#3340, #3354)
Fix remote linking in Dart 2.18.
null in search results with topics. (#3273)Fix using the Enter key in the search bar, on Flutter.
Deprecate lib/src/model/model.dart as public API.
lib/src/model/model.dart as public API. (#3208)Accessor.overriddenElement; in this change,
InheritingContainer.inheritenceChain is now a List<InheritingContainer>
and InheritingContainer.expandInheritenceChain is now an
Iterable<InheritingContainer>. #3220ModelElement.element a getter; subclasses provide the field. #3217ContainerMember.canonicalEnclosingContainer late final. #3234Warnable.enclosingElement to ModelElement. #3236Accessor.documentationComment late final non-nullable. #3240Inheritable.isOverride late final non-nullable. #3235Inheritable.inheritance a List<InheritingContainer>. #3235ModelElement.isExecutable, ModelElement.isLocalElement,
ModelElement.isPropertyAccessor, ModelElement.isPropertyInducer,
ModelElement.isAsynchronous, ModelElement.isStatic. #3218ModelElement.annotations a List, ModelElement.filePath non-nullable,
ModelElement.enclosingElement a ModelElement?. #3218--max-file-count and --max-total-size command-line arguments to limit file
system resource use.Deprecate ElementTypeRenderer.wrapNullability.
Warnable.package non-nullable. (#3155)Renderer classes. Specifically add abstract
ElementTypeRendererHtml and ElementTypeRendererMd classes which implement
some shared calculations. (#3163)ElementTypeRenderer.wrapNullability. (#3163)referenceChildren implementations by using fewer
Iterable<MapEntry>s. explicitOnCollisionWith now returns a
Map<String, CommentReferable> instead of a
Iterable<MapEntry<String, CommentReferable>>. (#3157)referenceChildren fields late final non-nullable. (#3157)sync* from GetterSetterCombo.allAccessors. (#3157)GetterSetterCombo.documentationComment,
ContainerAccessor.enclosingElement, ContainerAccessor.overriddenElement
each late final non-nullable. (#3157 and #3167)ModelElement.allParameters. (#3166)? character sometimes printed in function types. (#3177)Deprecate ModelElement.linkedParamsNoMetadataOrNames.
ModelElement.linkedParamsNoMetadataOrNames. (#3143)Extension.typeParameters late final non-nullable. (#3150)Trim the implementation source code of fields to improve rendering.
static, on its page.Deprecate PackageMeta.description, PackageMeta.repository, PackageMeta.getLicenseContents, PackageMeta.getChangelogContents.
Parameter.enclosingElement to be nullable.PackageMeta.description, PackageMeta.repository,
PackageMeta.getLicenseContents, PackageMeta.getChangelogContents.allBeforeFirstNewline, allAfterLastNewline,
findFreeHangingGenericsPositions, ReferenceChildrenLookup, and
childLookups.Mixin.superclassConstraints, ModelElement.library and
ModelElement.package non-nullable late final.ModelElement.element non-nullable.ElementType.returnedFrom, MatchingLinkResult.warn.DartdocGeneratorBackend to GeneratorBackendBase. Add a typedef to
preserve old behavior.ContainerMember.enclosingElement a Container.BREAKING CHANGE: Make DartdocGeneratorBackend.sidebarForContainer, DartdocGeneratorBackend.sidebarForLibrary private.
DartdocGeneratorBackend.sidebarForContainer,
DartdocGeneratorBackend.sidebarForLibrary private.Extension, InheritingContainer, and
TopLevelContainer classes.InheritingContiner.enclosingElement non-nullable.InheritingContainer.publicConstructors,
InheritingContainer.unnamedConstructor,
TopLevelContainer.publicExceptions.initEmptyGenerator.Include lib/resources/docs.dart.js.map
lib/resources/docs.dart.js.mapInclude lib/resources/docs.dart.js
lib/resources/docs.dart.js-04. (#3028)Support new enhanced enums feature.
[...] links. (#2928)categoryOrder option. (#2965){@youtube} directive to respect the provided width and height.
(#3030)Add support for new VM service message.
BREAKING CHANGE: Many breaking changes to dartdoc API, as part of the broad migration to null safety.
resources-dir option to support documenting with dart doc compiled
AOT from within the Dart SDK directory. (#2857)toString on String objects.
(#2900)dart doc. (#2898)dart pub get (or flutter pub get) as part of
dart doc. This command needs to be run before running dart doc. (#2930)The library interface is now explicitly marked as experimental via meta.
{@tool} and
{@inject-html} is sanitized when hidden option --sanitize-html is passed.BREAKING CHANGE: Refactors to support NNBD and adapt to new analyzer changes are technically semver breaking. If you make extensive use of the documen…
documentationComment getter on ModelElement or other deep structural
elements in dartdoc or custom templates, they could break dependent code.
(#2819, #2818, #2817, #2806, #2798)Some additional deprecations preparing for NNBD.
--allow-warnings-in-packages no longer also applies to errors.
The --allow-errors-in-packages flag should now work as intended.
(#2785)BREAKING CHANGE: Refactor of Class, Enum, and Mixin types result in some deleted interfaces in templates and a change in class hierarchy.
--no-enhanced-reference-lookup flag. (#2765)BREAKING CHANGE: changes to dartdoc options API to prepare for NNBD migration (#2745, #2744).
Your coding agent can read these notes before it upgrades. Set up the MCP server →