Docspec-Python Changelog
2.1.1 (2023-03-15)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Fix | Fix #91 by using `ast.literal_eval()` instead of `encode(latin1).decode(unicode_escape)` method. | NiklasRosenstein/docspec#91 | @NiklasRosenstein |
2.1.0 (2023-03-10)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Fix | Swap in `blib2to3` parser (bundled with the `black` package) for the stdlib `lib2to3` module in order to support `match` statements (PEP 634 - Structural Pattern Matching). | NiklasRosenstein/docspec#80 | @nrser | |
Improvement | add back `files` as a keyword-only argument to `load_python_modules()` | NiklasRosenstein/docspec#75 | @NiklasRosenstein | |
Tests | add testcase for #76 | NiklasRosenstein/docspec#76 | @NiklasRosenstein | |
Fix | Support parsing raw docstrings and decoding escape sequences appropriately using `str.encode("latin1").decode("unicode_escape")` (see https://stackoverflow.com/a/58829514/791713). | NiklasRosenstein/docspec#71 | @NiklasRosenstein | |
Tests | add test case for parsing docstring _after_ a variable declaration | NiklasRosenstein/docspec#65 | @NiklasRosenstein | |
Improvement | Explicitly do not support tuple-upackings as it is unclear how to assign the associated docstring and value. | @NiklasRosenstein | ||
Feature | Support docstrings on the same line for variable definitions (ex.: `a: int #: This is the docstring`). | NiklasRosenstein/docspec#2 | @NiklasRosenstein | |
Fix | Fix hash docstrings (`#:`) loosing their indentation relative to the rest of the docstring lines. | NiklasRosenstein/docspec#1 | @NiklasRosenstein | |
Tests | Add unit test for #72 | NiklasRosenstein/docspec#72 | @NiklasRosenstein |
2.0.2 (2022-07-18)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Fix | fix parsing trailing comma after keyword remainder argument in function definition (before it would accidentally consider the comma as a positional argument) | @NiklasRosenstein |
2.0.1 (2022-03-24)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Fix | Fix `format_arglist()` for function signatures that contained a `POSITIONAL_REMAINDER` argument followed by a `KEYWORD_ONLY` (i.e. any other arguments besides `KEYWORD_REMAINDER`) to not yield an additional star (`*`) | NiklasRosenstein/pydoc-markdown#255 | @NiklasRosenstein |
2.0.0a1 (2022-02-24)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Feature | support PEP 420 namespace packages | NiklasRosenstein/docspec#62 | NiklasRosenstein/docspec#54 | @NiklasRosenstein |
Improvement | support Path where a file system path is expected (e.g. `iter_package_files()`, `load_python_modules()`) | NiklasRosenstein/docspec#62 | NiklasRosenstein/docspec#61 | @NiklasRosenstein |
Breaking change | `Docstring` class no longer inherits from `str` and is no longer frozen | NiklasRosenstein/docspec#64 | NiklasRosenstein/docspec#49 | @NiklasRosenstein |
Breaking change | rename `Data` to `Variable` | NiklasRosenstein/docspec#68 | NiklasRosenstein/docspec#67 | @NiklasRosenstein |
Hygiene | move `VariableSemantic`, `FunctionSemantic` and `ClassSemantic` into global scope | NiklasRosenstein/docspec#69 | @NiklasRosenstein |
1.3.0 (2022-02-23)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Fix | strip whitespace around `Class.bases` | NiklasRosenstein/docspec#55 | NiklasRosenstein/docspec#53 | @NiklasRosenstein |
Tests | add `test_funcdef_7_posonly_args` unit test to test various more combinations of function arguments, including `POSITIONAL_ONLY`) | NiklasRosenstein/docspec#58 | NiklasRosenstein/docspec#57 | @NiklasRosenstein, @tristanlatr |
Refactor | use `nr.util.scanner.Scanner` instead of homebrew `ListScanner` class | NiklasRosenstein/docspec#58 | @NiklasRosenstein | |
Fix | fix parsing of positional only arguments | NiklasRosenstein/docspec#58 | NiklasRosenstein/docspec#57 | @NiklasRosenstein |
1.2.0 (2021-09-24)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Feature | add `format_arglist(render_type_hints)` argument | @NiklasRosenstein |
1.1.1 (2021-08-27)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Fix | support imports on the class-level | NiklasRosenstein/docspec#34 | @NiklasRosenstein |
1.1.0 (2021-08-27)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Feature | add support for the `Docstring` class now used in `ApiObject.docstring` since `docspec 1.1.0` | @NiklasRosenstein | ||
Feature | add support for `Indirection`s (from parsed Python imports) | @NiklasRosenstein |
1.0.0 (2021-07-21)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Breaking change | Migrate to using `databind.core 1.x` and `databind.json 1.x` from `nr.databind.core` and `nr.databind.json`. | @NiklasRosenstein | ||
Fix | fix parsing of lib2to3 syntax tree if class does not have a suite (e.g., "pass" on the same line as the class definition) | @NiklasRosenstein |
0.2.0 (2021-05-29)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Improvement | republish 0.1.1 as 0.2.0 | @NiklasRosenstein |
0.1.1 (2021-05-21)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Improvement | update type hints, use `@dataclass` over `nr.sumtype` which has MyPy support | @NiklasRosenstein | ||
Fix | fix `discover()` to ignore Python files with more than one dot in it | @NiklasRosenstein |
0.1.0 (2021-02-20)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Fix | Fix `NameError` in function type annotation | @NiklasRosenstein | ||
Feature | add `encoding` parameter to `load_python_modules()` and `parse_python_module()` | @NiklasRosenstein |
0.0.7 (2020-07-16)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Tests | fix test cases | @NiklasRosenstein | ||
Improvement | no longer use `pkgutil.find_loader()` to find Python modules as it prefers modules that are already in `sys.modules` even if that instance of the module would not occurr in the specified `search_path`. `docspec_python.find_module()` now re-implements the search mechanism | @NiklasRosenstein | ||
Tests | add tests for Python module loader logic | @NiklasRosenstein | ||
Fix | fix support for Python 3.5 | @NiklasRosenstein |
0.0.6 (2020-07-16)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Fix | fix `iter_package_files()` which would not respect the `search_path` argument | @NiklasRosenstein |
0.0.5 (2020-07-06)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Improvement | Update calls to `ApiObject` subclasses to pass keyword arguments only (as is required in `docspec >=0.2.0`) | @NiklasRosenstein | ||
Fix | Fix derivation of Python module name from name of file on disk (before it would accidentally strip trailing p's or y's from the name). | @NiklasRosenstein |