Changelog#

v1.0.0
 Breaking changes:
 * Require Python 3.11+ and Sphinx 7.2+
 * Rename the domain from csharp to cs
 * Rename the method directive to function, and value to enumerator
 * The enum role links to enum types. Use the enumerator or value role for enum values.
 * Name the targets of generic types with their arity, such as class-Box-1, and give each overload a target
   with its parameter types, such as function-C.Add(int)

 Directives and signatures:
 * Add struct, interface, record, delegate, var, event and extension directives
 * Add namespace-push and namespace-pop, and a target for each namespace
 * Parse signatures with a recursive descent parser, which accepts nested generics, tuples, nullable types,
   pointers, function pointers, arrays, attributes, constraints, operators, conversion operators, constructor
   initializers, primary constructors, expression bodies, accessor bodies, fixed size buffers and default
   values that hold any expression
 * Accept the signatures that Doxygen writes
 * Describe each variable of a field that declares several, such as int x, y
 * Add doc fields for parameters, type parameters, return values and exceptions
 * Show invalid signatures as written, with a warning
 * Add C# objects to the general index and the table of contents
 * Put each parameter on a line of its own in a signature longer than maximum_signature_line_length
 * Show the namespace before the name of an object in a namespace with sphinx_csharp_add_namespace_names
 * Put the objects with no description close together with sphinx_csharp_compact_layout
 * Build signatures from the desc_sig nodes that themes style

 References:
 * Resolve references by the closest enclosing namespace, then known external types, then any namespace
 * Reference an overload by its parameter types, and a generic type with or without its generic arguments
 * Add the obj, member and namespace roles, and a role for each directive
 * Show only the last part of the name when a target starts with ~
 * Resolve references through intersphinx
 * Link built-in and System types to the Microsoft docs, configurable with sphinx_csharp_* options

 Other changes:
 * Support documenting C# APIs generated by Doxygen with Breathe 4.35 and later
 * Give each warning a type, such as cs.duplicate, for suppress_warnings
 * Warn about every duplicate description, and link to the description in the first document
 * Support parallel builds
 * Ship type hints (py.typed)
 * Drop the dependency on requests
 * Add a documentation site

v0.1.8
 * Use _() instead of l_() function, which will be removed in Sphinx 3
 * Drop support for Sphinx 1.4 and 1.5 as they don't support _() correctly

v0.1.7
 * Added inherits directive (#5)
 * Drop support for Python 2.6
 * Add support for Python 3.6 and 3.7

v0.1.6
 * Allow default values in method signatures to contain brackets

v0.1.5
 * Support Sphinx >= 1.3
 * Fix future deprecation in Sphinx 1.7
 * Make code pep8 and pylint conformant

v0.1.4
 * Add support for parameter modifiers and indexers

v0.1.3
 * Add namespace directive

v0.1.2
 * Add support for generic classes and methods
 * Add support for attributes

v0.1.1
 * Add support for constructors

v0.1.0
 * Initial version