Releases: jackdewinter/pymarkdown
v0.9.6
This was a point release that highlighted improvements to the accuracy of reported tokens in situations with nested containers. In addition, to help further development, time was spent to apply type hints to the entire project.
PLEASE! If you encounter any issues with this product, please file an issue report and tell us about it! There are a lot of combinations of Markdown elements to cover, and we need your help to prioritize them all!
Added
- Added - Issue 293
- next round of nested level tests, with new list items
- Added - Issue 319
- added mypy typing to entire project and removed stubs for application_properties
Changed
- Changed - Issue 154
- rule md003: added configuration
allow-setext-update
- rule md003: added configuration
- Changed - Issue 283
- general: moved more modules into specific directories
Fixed
- Fixed - Issue 95
- parser: with certain cases involving a new list item, can start a container in the middle of line
- Fixed - Issue 161
- rule md005: was not returning proper values for actual and expected
- Fixed - Issue 189
- rule md027: addressed index out of bounds error keeping track of blank lines after a block quote was started in a previous section
- Fixed - Issue 287
- parser: code to handle indent was greedy with respect to HTML blocks and fenced code blocks
- Fixed - Issue 294
- markdown generator: needed to take list items into account
- Fixed - Issue 295
- markdown generator: fixed by work on 294
- Fixed - Issue 296
- parser: improper closing of previous block caused duplicate list items
- Fixed - Issue 297
- markdown generator: not indenting enough
- Fixed - Issue 298
- parser: list processing go confused between block quote and list
- Fixed - Issue 299
- parser: not recognizing inner list
- Fixed - Issue 300
- parser: various issues with lists not being properly handled in nested scenarios
v0.9.5
This was a point release that highlighted improvements to the accuracy of reported tokens in situations with nested containers.
PLEASE! If you encounter any issues with this product, please file an issue report and tell us about it! There are a lot of combinations of Markdown elements to cover, and we need your help to prioritize them all!
Added
- Added - Issue 227
- scenario tests: adding 3-level nesting tests with max space, and max space plus one variations
- Added - Issue 250
- scenario tests: adding variations of removed block quotes on second line
- Added - Issue 261
- scenario tests: variations of 3-level max space tests with no text after container starts on first line
Changed
- Changed - Issue 248
- github actions: only run against
main
branch
- github actions: only run against
Fixed
- Fixed - Issue 189
- rule md027: weird case where total for series of block quotes that ended with a blank line was off by 1
- Fixed - Issue 218
- parser: lot of small things needed fixing to set the variables properly for this issue's resolution
- parser: after that, was not properly handling shutting down a block quote that downgraded
- Fixed - Issue 228
- parser: previous adjustment no longer needed
- Fixed - Issue 229
- parser: generated HTML did not include indented code block
- Fixed - Issue 230
- parser: dropping leading
>
- parser: dropping leading
- Fixed - Issue 231
- parser: fixed by issue-229
- Fixed - Issue 232
- parser: fixed by issue-233
- parser: fixed by issue-228
- Fixed - Issue 233
- parser: limiting container checking to limited set, expanded
- parser: extra indent was not accounted for in space calculations
- parser: double block quotes not being handled properly
- parser: indent being processed twice
- Fixed - Issue 252
- parser: in rare cases, was adding leading spaces to both list and paragraph within
- Fixed - Issue 262
- parser: when checking for block quote decrease, did not have empty scenarios checked for
- Fixed - Issue 263
- parser: with empty list items, was creating 2 blank line tokens, plus extra list indent
- Fixed - Issue 264
- parser: fixed issue with blending current text and original text to parse
- parser: cleaned up remaining issues about closing off containers too early
- Fixed - Issue 265
- parser: fixed with work on Issue 262
- Fixed - Issue 268
- parser: previous work took too many newlnes out, this put the right ones back in
v0.9.4
This was a point release that highlighted improvements to the accuracy of reported tokens
in situations with nested containers.
- Removed "call home support" similar to VSCode and other products.
- One of our contributors pointed out a number of fallacies, and we agreed.
- Enhanced testing of the whitespace calculations recently completed.
PLEASE! If you encounter any issues with this product, please file an issue report and tell us about it!
There are a lot of combinations of Markdown elements to cover, and we need your help to prioritize them all!
Changed
- Changed - Issue 184
- scenario tests: instead of mixup in different areas, added initial combinations to test in one place
- Changed - Issue 207
- adding more upfront analysis, upgrading Columnar to new version
- Changed - Issue 214
- removing call home support
Fixed
- Fixed - Issue 159
- parser: was using wrong values to determine nesting level
- Fixed - Issue 185
- parser: nesting of block quote, list, block quote raised an assert
- Fixed - Issue 186
- parser: due to work on Issue 187, these now passed after assert examine and disabled
- Fixed - Issue 187
- parser: three separate adjustments needed to be made to ensure the whitespace is consistent
- Fixed - Issue 188
- parser: not dealing with a block occurring after 2 nested lists
- Fixed - Issue 192
- parser: needed to adjust
__calculate_current_indent_level
function to accommodate nesting
- parser: needed to adjust
- Fixed - Issue 196
- markdown: transformer was not calculating indent properly
- Fixed - Issue 197
- parser: block quote processor was not closing blocks properly, resulting in bad HTML
- Fixed - Issue 198
- markdown: algorithm was not taking into effect newer change to calculate container indices later
- Fixed - Issue 199
- parser: fixed by work done on Issue 202
- Fixed - Issue 200
- markdown: calculation for previous indent and whitespace to add after was off
- Fixed - Issue 201
- parser: fixed by work done on Issue 202
- Fixed - Issue 202
- parser: block quote processor needed a lot of work to handle whitespace properly
- parser: container block processor not handling 4 spaces at start of line properly
- Fixed - Issue 203
- markdown: adjustments to properly calculate indent
- parser: list block processor not transferring extracted text to a nested block
- various cleanup
- Fixed - Issue 219
- parser: indents of 4 within a single and double level list were not cleanly differentiating
v0.9.3
This was a point release to allow fixed issues to be released. While the full descriptions are below, here are some highlights:
- Added "call home support" similar to VSCode and other products, to allow notification of new versions
- This is currently experimental. Feedback welcome.
- Lots of refactoring to reduce complexity and adhere to guidelines
- Rewrite of the whitespace calculations to drastically reduce their complexity
Added
- Added - Issue 104
- core: added support for calling home every week to see if there is a new version at PyPi.org
Changed
- Changed - Issue 85
- scenario tests: verified and documented inlines with newline tests
- Changed - Issue 96
- parser: was misunderstanding. extra blank line was verified as per spec
- Changed - Issue 103
- refactoring: look for better way to use .items()
- Changed - Issue 107
- refactoring: identified and removed unused pylint suppressions
- Changed - Issue 112
- refactoring: finding and applying all Sourcery recommended issues
- Changed - Module Refactoring to reduce complexity
- plugin_manager.py
- list_block_processor.py
- coalesce_processor.py + emphasis_helper.py
- container_block_processor.py
- leaf_block_processor.py
- link_reference_definition_helper.py
- link_helper.py
- inline_processor.py
- block_quote_processor.py
- tokenized_markdown.py
- main.py + inline_helper.py + rule md027
- rest of main directory
- extensions and rules
- Changed - Issue 145
- refactoring: Either implemented todo or filed new issue to do it later
- Changed - Issue 151
- refactoring: tightening up code after refactoring
- Changed - Issue 155
- refactoring: moving this_bq_count and stack_bq_quote into new BlockQuoteData class
- Changed - Issue 166
- refactoring: large refactoring to standardize the whitespace in tokens
Fixed
- Fixed - Issue 87
- scenario tests: removing
disable_consistency_checks
from tests and getting clean- parser: found and resolved two issues
- consistency checks: found and resolved ~7 issues
- general: pass through code to clean up string usage
- consistency check: verified rehydrate usage through project
- consistency check: tightening leading space index for block quotes
- parser: found and resolved issue with extra newline added to leading spaces for block quote
- scenario tests: removing
- Fixed - Issue 90
- scenario tests: verified noted tests have been fixed
- rule md027: rewrote bq index logic to work properly
- Fixed(partial) - Issue 92
- rule md027: nested containers were not thoroughly tested
- parser: added new bugs linked to Issue 92 as part of discovery
- Fixed - Issue 93
- parser: was not handling extracted spaces properly, causing issues with calculating values for thematic breaks
- parser: spent time rewriting whitespace calculation and storage to address the issue
- Fixed - Issue 94
- parser: after work on 153, this was resolved
- Fixed - Issue 97
- parser: after work on 153, this was resolved
- Fixed - Issue 98
- parser: after work on 153, this was resolved
- Fixed - Issue 99
- parser: after work on 153, this was resolved
- Fixed - Issue 153
- parser: hit missed scenario test with list indents
v0.9.2
For full release information, go to the change log.
This was a point release to allow fixed issues to be released. While
the full descriptions are below, here are some highlights:
- Fixed issue with PyMarkdown scripts not having correct permissions
- Added more scenario tests and verified that those worked
- Fixed small issues with parser and rules, mostly boundary cases
Changed
- Changed - Issue 44
- scenario tests: went through every scenario test and validated comment string
- Changed - Issue 62
- parser: not reproducible, but added extra scenario tests to make sure
- Changed - Issue 64
- rule md030: was not implemented according to specification for "double, changed to do so
- Changed - Issue 66
- rule md023: rule fine, scenario tests running with bad data
- Changed - Issue 68
- documentation: added more clear description of sibling
- Changed - Issue 70
- scenario tests: gave better names, added one for configuration
Fixed
- Fixed - Issue 43
- parser: on start of nested list, was not allowing indent to be based on parent indent
- Fixed - Issue 47
- parser: wasn't treating "partial" LRDs as valid, rewinding past their start
- Fixed - Issue 49
- parser: aborting a LRD within a list was not generating correct reset state
- scenario tests: addressed same issue in fenced code block and LRD tests
- issue: added Issue 50 to test with extra levels
- Fixed - Issue 51
- parser: not handling list starts properly where the list indent was less than the line before it
- Fixed - Issued 53
- parser: when dealing with lines within a list item within a block quote, not removing leading spaces properly
- Fixed - Issue 56
- scenario tests: resolved outstanding rules tests that were skipped
- parser: when parsing
- >
, did not properly retain new block quote level on return
- Fixed - Issue 59
- parser: on line after list item, if started with
===
, would think it was SetExt instead of continuation text.
- parser: on line after list item, if started with
- Fixed - Issue 72
- rule md006: was not properly handling block quotes and nested lists
- Fixed - Issue 74
- parser: not handling cases with list then block quote, with only block quote on next line
- scenario tests: added extra tests to cover variations on more complex nesting cases
- Fixed - Issue 76
- scenario tests: added extra test to cover missing variations
- parser: was not handle the unwinding of lists properly in one case due to off-by-one error
- Fixed - Issue 77
- command line: scripts not interfacing properly on linux systems
- Fixed - Issue 79
- scenario tests: added extra test to cover missing variations
- rule Md005: rewritten to respond to ordered lists better
v0.9.1
For full release information, go to the change log.
This was a point release to make several new features and fixed issues to be released. While the full descriptions are below, here are some highlights:
- Added documentation on how to use Git Pre-Commit hooks with PyMarkdown
- Added support to allow PyMarkdown to be executed as a module with
-m
- Various scenario test tasks including verifying disabled rules were required
Added
- Added
- documentation: documentation on how to use pre-commit hooks
- Added
- core: support for executing pymarkdown as a module (
python -m pymarkdown
)
- core: support for executing pymarkdown as a module (
- Added
- rules test: verified existing case, added missing related case
- Added
- rules test: added new test case with provided data
- documentation: addressed documentation issue with description for rule_md044.md
- Added
- rule md033: new configuration value
allow_first_image_element
- if True, allows ONLY
<h1><img></h1>
sequence (with any parameters needed) if is first token in document
- if True, allows ONLY
- rule md033: new configuration value
- Added
- documentation: added description of how HTML comments are different
- Added
- core: added sorting of triggered rules before they are displayed
Changed
- Changed
- rules tests:verified need for
--disable-rules
through tests, removing any that were not needed - documentation: addressed some documentation issues with docs/rules.md and doc/rules/rule_md032.md
- rules tests:verified need for
Fixed
- Fixed
- rule Md033: no longer triggers on end tags, adjusted default allowed tags
- Fixed
- rule Md023: whitespace at end of lines in SetExt Heading no longer being recognized as starting whitespace.
- Fixed
- rule Md032: was not recognizing 2 end list tokens in a row
- Fixed
- rule Md037: was not properly looking for spaces inside of possible emphasis characters
- Fixed
- parser: found parsing error with lists in block quotes
- rule md031,md032: fixed that and fixed issues in rules md031 and md032
- Fixed
- parser: multiline inline elements with a Block Quote were not getting their starting positions calculated properly
- any element directly after those elements were also likely to have a bad position
- parser: multiline inline elements with a Block Quote were not getting their starting positions calculated properly
- Fixed
- parser: fixed instance of multi-level list within block quotes not firing properly
- issues: added item to issues list to do more looking on nested lists
- rule md007: may show up here with nested lists