Skip to content

develop

Compare
Choose a tag to compare
@github-actions github-actions released this 24 Oct 14:38
· 487 commits to develop since this release

πŸš€ Features

New features and additions

  • ✨ Function template template parameters. (fix #795) 1e392f7
  • πŸ’« Support unordered lists. (fix #799) d14cbb6
  • 🌟 Support locations relative to search paths. (fix #798) b893feb
  • ✨ Support source paths in Location objects.1 (fix #798) 3630623
  • πŸ’« Identify literal glob patterns. b569319
  • 🌟 Extract dependency base class members. b7b2f37
  • ✨ Support implied whitelist rules. (fix #797) df29558
  • πŸ’« Honor user CMAKE_EXPORT_COMPILE_COMMANDS in cmake option. (fix #760) edf0c88
  • 🌟 MrDocs in schema store.2 (fix #772) 90b69e4
  • ✨ Support void_t SFINAE. (fix #748) 6437919
  • πŸ’« Extract SFINAE constraints. 0bc88b6
  • 🌟 Support SFINAE via function parameters. fd90016
  • ✨ Support SFINAE for classes. 5de708b
  • πŸ’« Support SFINAE via template arguments. b885e2e
  • 🌟 SFINAE return type constraints. 6f9bd07
  • ✨ Trace log level. c9f7663
  • πŸ’« Log-level option. b52eaac
  • 🌟 Base class references evaluate extraction mode. c54f1db
  • ✨ Exclusion filters also apply to members. 007486b
  • πŸ’« Broken reference warnings. (fix #844) f2c9a2e
  • 🌟 sort-members option. b4fec4f
  • ✨ show-namespaces option. 1dbc4bf
  • πŸ’« Auto-brief option. 9ece9df
  • 🌟 Heteregenous string maps. c7f58b1
  • ✨ Javadoc reference parser. a95ddca
  • πŸ’« warnings option. 5185e7c
  • 🌟 extract-all option. (fix #758) 7681b72
  • ✨ warn-if-undocumented option. (fix #758) baa64ff
  • πŸ’« warn-if-doc-error option. bc7bd3a
  • 🌟 warn-no-paramdoc option. bc809d5
  • ✨ warn-if-undoc-enum-val option. 7669da0
  • πŸ’« warn-broken-ref option. 6412c80
  • 🌟 warn-as-error option. ca8bbbe
  • ✨ UndocumentedInfoSet stores InfoKind. 82eaeec
  • πŸ’« Copydetails command copies unambiguous metadata. 43973cb
  • 🌟 Ordered warnings. bc51965
  • ✨ extract-private-virtual option. 7e99c39
  • πŸ’« extract-static option. c69f121
  • 🌟 extract-local-classes option. da038da
  • ✨ warn-unnamed-param option. 37786fd
  • πŸ’« Overloads javadoc. 0e8b79f
  • 🌟 extract-empty-namespaces option. 99bf927
  • ✨ Javadoc ref parser supports function parameters. 2f73713
  • πŸ’« Best match corpus lookup algorithm. c824c82
  • 🌟 Overloads support return type. 52c934d
  • ✨ Support multiword refs. 7d65be3
  • πŸ’« Refs match conversion operators. b76c8ba
  • 🌟 Javadoc parser extracts ref qualifiers. 2e61695
  • ✨ Ref parameter match supports arbitrarily qualified names. 4a40e18
  • πŸ’« TypeInfo identifies fundamental types. f5e3421
  • 🌟 Refs match fundamental type variants. 7263e51
  • ✨ Ref parser supports template arguments. fcffff5
  • πŸ’« Corpus lookup matches template arguments. 8fe596e
  • 🌟 Merge function parameter names from multiple declarations. 3497b03
  • ✨ Javadoc mapping traits. 2e64221
  • πŸ’« Preprocess related symbols. f069410
  • 🌟 auto-relates option. bd9d684
  • ✨ extract-implicit-specializations option. b1d3f24
  • πŸ’« Inherit base class overload sets. 4550326
  • 🌟 Support implicit templates. (fix #868) 572a465
  • ✨ Templates include base classes. d59c28f
  • πŸ’« auto-function-metadata option. 01c5e15
  • 🌟 Records store friends as relationships. 5ee5c49
  • ✨ Support @relates (#698). (closes #243) d448757

πŸ› Fixes

Bug fixes and error corrections

  • Asciidoc tilde escaped as U+007E. (fix #804) fe7c6e9
  • Promote auto brief paragraph types. (fix #803) 6c70e4d
  • Polymorphic info members use value semantics.3 a2f4c41
  • Escape variadic parameters. (fix #838) ca56d9a
  • Sfinae constraints are not repopulated. (fix #850) 3777824
  • Escape escape brackets in attribute lists. (fix #851) 969c325
  • Update symbol name log level. 9cbaca5
  • CMake uses adjusted output dir. e2474cd
  • Detect base member qualified overloads. d6b2970
  • Redundant Decls use least specific extraction mode. 1cbeee6
  • SpecializationInfo is unused. e0a9479
  • Logical operator precedence. eb431cf
  • Unique_lock is not CTAD. 541d80c
  • Preemptively identify detail parents. 54f2118
  • Inherit-base only applies to regular symbols. 65cdf3e
  • Inherit-base skips special functions. b29ba25
  • Info merging uses derived classes. 1e8d691
  • Group overloads per access level. 287e588
  • Explicit object member functions have no qualifiers. 502bf32

⚑️ Performance

Performance optimizations and enhancements

  • Lazy FileInfo extraction.4 ef4ff12
  • Extract escaped glob prefixes. f778b44
  • Populate overloads use explicit types. e595195
  • Cached symbol lookup. af93d8d
  • Preprocess javadoc metadata. 1ab842d
  • Store whether record is CXXMethodDecl. 30b5486
  • Preprocess tranches. aea4acf

♻️ Refactor

Code refactoring and restructuring

  • Handlebars generator descriptions in derived classes. 4031c9f
  • Unify test files. 37d9b93
  • AST visits const declarations. 33b7d5f
  • Min log level for error location is error. 6cc3217
  • Support deprecated options. e2a93e4
  • Debugger catches exceptions in debug mode. 375d913
  • Rename polymorphic value type. f1cdecc
  • GetPrimaryLocation depends on InfoKind. 113a57e
  • Option name is extract-private. 7c0c618
  • Option name is extract-private-bases. cee3fbe
  • Option name is extract-anonymous-namespaces. e5f0bd3
  • Source is constexpr. b2bafb8
  • IsDefinition and isDocumented are clang helpers. 887c332
  • Sorting operators last includes stream operators. 3fe5287
  • Modularize error header. b1676a5
  • Single InfoNodes.inc. 1548967
  • Remove unused MetadataFwd.hpp. 78a4394

πŸ“– Documentation

Documentation updates and improvements

  • Release documentation ordered by asset dates. (fix #802) c4531cc
  • Update documentation on filters. (fix #796) 5d6e8f7
  • Exposition on system dependencies. (fix #793) 7f47ff5
  • Releases documentation page includes MacOs. 256c583
  • UI includes branches. 93d5d10
  • Website panels use single page. 67fc569
  • Option key conventions. f843cc2
  • Remove c processor extension. 9eec331
  • Option name is implementation-defined. (fix #828) ab1de98
  • Option name is generator. 40ac7f3

🎨 Style

Code style and formatting changes

πŸ“¦οΈ Build

Build system and configuration changes

πŸ§ͺ Tests

Test cases and testing-related changes

πŸ› οΈ Improvement

General improvements and enhancements

  • Ref warnings include qualified documented symbol. 1853739
  • Optional assignment operators. 3cc36a9
  • Get operators from string. 7d00a0b
  • Info messages are streamed to stdio. 91faf6f
  • SourceInfo provides primary location. be736d3
  • ASTVisitor handles source info independently from javadoc. 9decbdb
  • Corpus lookup returns Expected. fb7e59f
  • extract-private-bases default is false. f6686c0
  • Corpus lookup returns references. 040b99d
  • Namespace using directive is name.5 11df305
  • Empty enum template has no members table. 2de0c4f
  • Lazy decayed type comparison. e8c5b5a
  • Parse support header. 1b3227b
  • Javadoc visitor uses ref parser. 03d1917
  • ScopedTempDirectory stores error type. fd2709b
  • No unused template linebreaks. 37b782e
  • Reserved legible names are automatically generated. 82ac48e
  • Report symbol types. b055f05
  • Merge mutually exclusive field and variable symbol types. ac00578

πŸ’¬ Other

Other changes not covered by specific categories

  • Correctly handle files included through symlinks. ff33c4b
  1. Location objects only contained the full path and the path relative to the search directories. This commit includes a new field for the source path, which contains the path relative to the source-root. ↩

  2. See SchemaStore/schemastore@28d4076. ↩

  3. Wherever std::unique_ptr was used for polymorphic members of Info objects, the pointer addresses were being used in comparisons instead of the dereferenced values, which only returned true when both were nullptr. ↩

  4. Most symbols are filtered out regardless of the file location. This commit creates a FileInfo cache and only builds the FileInfo when necessary. The search paths are also lazily iterated to find the best matches. ↩

  5. This allows using directives to dependencies. ↩