chore(pre-commit): update jackdewinter/pymarkdown to v0.9.36#165
Open
renovate[bot] wants to merge 1 commit intomainfrom
Open
chore(pre-commit): update jackdewinter/pymarkdown to v0.9.36#165renovate[bot] wants to merge 1 commit intomainfrom
renovate[bot] wants to merge 1 commit intomainfrom
Conversation
cbdc1e2 to
25390e4
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.9.0→v0.9.36Note: The
pre-commitmanager in Renovate is not supported by thepre-commitmaintainers or community. Please do not report any problems there, instead create a Discussion in the Renovate repository if you have any questions.Release Notes
jackdewinter/pymarkdown (jackdewinter/pymarkdown)
v0.9.36: Version 0.9.36 - 2026-03-15Compare Source
In this release, we’ve invested heavily in revamping our documentation so that you can get from installation to your first useful scan more quickly. After the last release, a backlog review made it clear that our documentation needed an overhaul, especially for people seeing PyMarkdown for the first time. Over time, we added new sections and details without a full restructuring, which made it harder for new users to see where to start and how everything fits together.
We updated the main documentation and introduced new Quick Start guides for common workflows. We simplified each section and reorganized the content so related topics are grouped together and easier to follow. Each Quick Start guide focuses on a single topic, helping new users get productive with PyMarkdown as quickly as possible. New users can now go from install to scanning a repository in just a few minutes. Existing users should find it easier to jump straight to the commands and options they need.
Going forward, you can expect faster scans, clearer error reporting, and continued improvements to the documentation. To support that, our primary goal is to deliver requested features and respond quickly to reported issues, particularly in the rule set, configuration, and documentation. Behind the scenes, we are reducing skipped tests, working through backlogged issues, and investing in refactoring and performance analysis. This work helps keep PyMarkdown fast and dependable as it grows.
Added
plugins.per-file-ignores.*configuration items to allow for rules to be disabled by matching against a glob-path.Changed
v0.9.35: Version 0.9.35 - 2026-01-24Compare Source
This release was all about starting to clean up some long lingering items that had been on the to-do list for a while. Before addressing Issue 1503, the file scanning code was moved out to the application_file_scanner project. This allowed our team to define a clean separation of responsibilities between the file scanning and the linting, something that we started with the application_properties package. We had started that a while ago, so it was nice to be able to complete that task and to include the
--respect-ignorefunctionality into that new package.Our main goal for the next couple of months is to address new features and issues as they arise. However, we hope to have enough time to reduce the number of skipped tests and backlogged issues in the repository, while also working on more refactoring and performance analysis. I hope this helps you see the direction that we are taking this repository in!
Added
--respect-gitignoreflags to respect any Git directories and their.gitignorefiles.Fixed
application_propertiespackage to properly apply section header when using the--configflag.v0.9.34: Version 0.9.34 - 2025-12-21Compare Source
Notes
Our team has been working diligently over the past two months to strengthen the foundation of the PyMarkdown Linter. A major milestone is the upgrade of the minimum Python version we test with from 3.9 to 3.10. While we acknowledge that some users may still prefer Python 3.8, we strongly recommend upgrading to 3.10 for improved compatibility, security, and performance. If you are using a version below 3.9 and have a valid reason to stay on that version, please let us know—we’ll explore options to support your needs.
A key feature addition (in response to Issue 1479 ) is the full support for both the disable-next-line pragma and a new mode. This change ensures compatibility with Markdown formatters that add a blank line after HTML comments, as each rule now allows a single blank line between the pragma and the offending line. This update also required us to review and verify all rules to ensure the disable-next-line pragma suppresses issues on the next line effectively. During this process, we identified and fixed 9 critical issues related to pragmas and rule behavior.
Looking ahead, we’re also focused on long-term improvements to our test suite. Over the next six months, we aim to reduce the number of tests while maintaining full code and scenario coverage. As the project has been active for over five years, some tests have remained unchanged for three or more years. Our goal is to refine the test suite to ensure it remains efficient, maintainable, and aligned with our quality standards.
Added
the line where the failure occurs.
Fixed
Changed
system.exclude_pathto provide configuration option for the command-line--excludev0.9.33: Version 0.9.33 - 2025-10-22Compare Source
Notes
This release was a long time in coming, mostly because of things that are not
immediately obvious. Our team took some time to look and experiment with some
other Python tools, with the aim of reducing the test count for the project
without sacrificing coverage. In addition, we have started to look at the
performance of the project, and how to best accomplish those improvements. Through
the end of the year, we have concrete plans to address any new issues, reduce the
test count while maintaining quality, finishing Issue 1468,
and working on performance enhancements.
Added
Fixed
where necessary
Changed
v0.9.32: Version 0.9.32 - 2025-08-12Compare Source
Version 0.9.32 - 2025-08-12
The last month has featured our team banging our collective heads against the wall as we work on tightening up the outstanding skipped tests. While there are a couple of stray parsing bugs here and there, most of it has to do with ensuring that the parsing of Markdown tokens are complete... including whitespaces. This is not an issue for generating HTML, but we feel it is a big issue for people writing rules against those tokens. As such, we are trying to ensure we capture as many scenarios as possible, and making sure all tests pass. Its often a tough job, but we feel it is worth it!
On that note, please note that if you are using pragmas to temporarily turn off rules in your documents, there is a small change. In fixing Issue 1447, we noticed there was an issue with how the pragmas ended. To fix this properly, as of release 0.9.32, pragmas starting with a
<!--must end with a-->and pragmas starting with a<!---must end with a--->. This should be a one time change, and we apologize in advance for any issues it causes.A big thanks to our users who are reporting issues with the project! While we would like to believe we can think of every test case, we know we cannot. Therefore, we continue to need our users to help us out. If you are scanning any Markdown documents and the results seem off, please file an issue. If you are starting to use our fix mode on your Markdown documents and there are issues, please file an issue. We appreciate any help that we can get to improve the project for everyone!
Added
--enable-extensionsto the command line and API--no-json5and--continue-on-errorto achieve parity with command lineFixed
Issue 1443
--->properly at the end of pragmasv0.9.31: Version 0.9.31 - 2025-07-11Compare Source
Life caught up with our development team this last two months, but we finally finished the work we intended to do for this release. After spending some time to upgrade
application_propertiesto 0.9.0, this release of PyMarkdown adopts that new version, including the simplified setup that was added toapplication_properties. In addition, PyMarkdown is not using the JSON5 support fromapplication_propertiesand defaults to it being on. While completing that work, we also went through the configuration documentation, delegating any duplicated sections with theapplication_propertiesdocumentation toapplication_properties.During this time, we did some internal housekeeping. We maintain a small group of packages, with common scripting and support to help our team use best practices across all packages. That had not been maintained lately, so we chose to spend a couple of weeks working on getting the packages back to where we wanted them. No effect for how you use this package, but it helps us keep things current.
A big thanks to our users who are reporting issues with the project! While we would like to believe we can think of every test case, we know we cannot. Therefore, we continue to need our users to help us out. If you are scanning any Markdown documents and the results seem off, please file an issue. If you are starting to use our fix mode on your Markdown documents and there are issues, please file an issue. We appreciate any help that we can get to improve the project for everyone!
Added
application_properties, v0.9.0switch
custom plugin users
MyApplicationPropertiesFacadewhichprovides better abstraction
links at updated
application_propertiesdocumentationFixed
Changed
v0.9.30Compare Source
Version 0.9.30 - Date: 2025-04-19
Apologies for a late release, but we wanted to get some outstanding issues resolved before the release. Notable things to mention are:
And while it may not be visible, a lot of work has been completed on getting proper Table token support in the application. As the rules engine is largely token based, any desired rules that include tables must rely on well-tested support for the new table token. Our development team is hoping to make more progress on this in the next couple of months, and will announce it loudly when it is completed!
A big thanks to our users who are reporting issues with the project! While we would like to believe we can think of every test case, we know we cannot. Therefore, we continue to need our users to help us out. If you are scanning any Markdown documents and the results seem off, please file an issue. If you are starting to use our fix mode on your Markdown documents and there are issues, please file an issue. We appreciate any help that we can get to improve the project for everyone!
Added
disableandenablefor pragmasFixed
**glob characters not working properlyChanged
v0.9.29: Version 0.9.29 - Date: 2025-03-10Compare Source
The work continues! Due to our development team passing colds back and forth between members, February was a slow month in terms of progress. We plan to start adding the foundations for new leaf items in March and April, in addition to completing the current round of issues found with rule Md031's fix mode.
A big thanks to our users who are reporting issues with the project! While we would like to believe we can think of every test case, we know we cannot. Therefore, we continue to need our users to help us out. If you are scanning any Markdown documents and the results seem off, please file an issue. If you are starting to use our fix mode on your Markdown documents and there are issues, please file an issue. We appreciate any help that we can get to improve the project for everyone!
If everyone reading this can take a moment and think of our mascot, "Bruce" and any pets of their own that have moved on, it would be appreciated. He passed away this morning suddenly. Our team can honestly say that Bruce was the best rubber duck that we have ever had, and we will miss him very much.
Added
Fixed
container scenarios involving the remaining containers being lists.
Changed
v0.9.28: Version 0.9.28 - Date: 2025-02-10Compare Source
The work continues! Working through the categorized list takes time, but it is well worth it. We are also working on improving our bash and github actions infrastructure, making it easier to release the project each month.
A big thanks to our users who are reporting issues with the project! While we would like to believe we can think of every test case, we know we cannot. Therefore, we continue to need our users to help us out. If you are scanning any Markdown documents and the results seem off, please file an issue. If you are starting to use our fix mode on your Markdown documents and there are issues, please file an issue. We appreciate any help that we can get to improve the project for everyone!
Added
ShFmt.sh formatter to Pre-Commit configurationShellcheck.sh scanner to Pre-Commit configurationFixed
C\#at the end of a header was triggering rule Md020 for no spaces between end mark of an Atx HeadingChanged
code_spansexclusion as a compliment to thecode_blocksexclusion.v0.9.27: Version 0.9.27 - Date: 2025-01-09Compare Source
Version 0.9.27 - Date: 2025-01-09
This might sound like we are repeating ourselves, but things march on. The tests for the fix mode for Md031 are still revealing secrets, and we are fixing them as fast as we can. We took some time in December to make sure we have a categorized list of what still needs to be done and have prioritized that work. Our research required for new leaf elements is almost complete. We took a bit of a detour to ensure our Bash script support and performance measuring support is in place, something we feel strongly about. Our current plans include efforts to tackle both of these items in January, along with other reported issues.
And thanks to the users who are reporting issues with the project! While we would like to believe we can think of every test case, we know we cannot. Therefore, we continue to need our users to help us out. If you are scanning any Markdown documents and the results seem off, please file an issue. If you are starting to use our fix mode on your Markdown documents and there are issues, please file an issue. We appreciate any help that we can get to improve the project for everyone!
Added
Fixed
Changed
v0.9.26: Version 0.9.26 - Date: 2024-12-09Compare Source
Version 0.9.26 - Date: 2024-12-09
Progress continues on locating issues and addressing them, including four issues reported by users. As of this past weekend, (to the best of our knowledge) we have eliminated all fatal issues with Rule Md031 and its fix mode. While there are only three weeks left until the new year, we hope to make significant progress on Rule Md031's fix mode producing incorrect markdown. At the same time, we are starting to do research work into determining the best patterns for introducing new leaf elements in 2025. Our main goal is to provide thorough coverage without sacrificing proper testing. To that end, we will try and figure out and document the best approaches so we can use them for new leaf elements in 2025.
In addition to this work, make solid progress on addressing user issues as reported. And this might seem repetitive, but we continue to need our users to help us out. If you are scanning any Markdown documents and the results seem off, please file an issue. If you are starting to use our fix mode on your Markdown documents and there are issues, please file an issue. We appreciate any help that we can get to improve the project for everyone!
Added
Fixed
Changed
v0.9.25: Version 0.9.25 - Date: 2024-11-07Compare Source
Version 0.9.25 - Date: 2024-11-07
While it seems like we have been working on the fixing for Rule Md031 forever, that time is starting to come to an end. We have a solid list of what is left to test, and we are confident that we will finish it before the new year. (Hope we did not just jinx ourselves!) As with the last couple of releases, we are testing variations of containers, container starts, and container ends, all to ensure we have confidence that our test scenarios are thorough. At this point, we are very confident with any nesting of up to three containers, will our confidence for nesting scenarios of up to four containers at a high level as well. Following close behind that is our fix mode for Rule Md031 which is the stressor for the nested containers. We are not always happy that we started working on the fix mode for Rule Md031, but we are happy that it uncovered some issues in our parser that we could quickly fix.
But we continue to need our users to help us out. If you are scanning any Markdown documents and the results seem off, please file an issue. If you are starting to use our fix mode on your Markdown documents and there are issues, please file an issue. We appreciate any help that we can get to improve the project for everyone!
Added
Fixed
__fix_spacingfunction now that data is present.Changed
v0.9.24: Version 0.9.24 - Date: 2024-10-06Compare Source
Version 0.9.24 - Date: 2024-10-06
This release continued our focus on enabling fixing for Rule Md031 and uncovering any issues with the more deeply nested container cases. This has meant introducing a new helper class to assist in the tracking of a given line to the container tokens used to provide container-based indenting for that line. This is very important for Rule Md031, and has already proveded to be useful in a partial rewrite of some of the logic for Md027.
While we find the odd parsing error, those issues are now rare to find in container nesting of three container or less, especially compared to finding issues with our new fix logic. Still, we continue to try different combinations of containers elements and leaf elements, verifying that PyMarkdown creates the correct HTML and correct Markdown from our parsed format.
That is where we still need our users to help us out. If you are scanning any Markdown documents and the results seem off, please file an issue. If you are starting to use our fix mode on your Markdown documents and there are issues, please file an issue. We appreciate any help that we can get to improve the project for everyone!
Added
Fixed
blank line
grouped together on same line
Changed
v0.9.23: Version 0.9.23 - Date: 2024-09-04Compare Source
Version 0.9.23 - Date: 2024-09-04
This release continued our focus on enabling fixing for Rule Md031 and uncovering any issues with the more deeply nested container cases. And our luck held out, with the majority of the issues being related to the fixing algorithms. As mentioned in the last release, our detection rules rely on accurate parsing of the Markdown documents, with the only truthful way to verify that being to reconstitute the Markdown documents from our internal parsed format.
We continue to try different combinations of containers elements and leaf elements, verifying that PyMarkdown creates the correct HTML
and the correct Markdown from our parsed format. The good news is that the largest percentage of issues deal with how we represent and
reconstitute that whitespace. And we are diligently working to detect any issues with that process and to fix them.
That is where you, the users, come in. If you are scanning any Markdown documents and the results seem off, please file an issue. If you are starting to use our fix mode on your Markdown documents and there are issues, please file an issue. We appreciate any help that we can get to improve the project for everyone!
Added
Fixed
Changed
v0.9.22: Version 0.9.22 - Date: 2024-08-05Compare Source
Version 0.9.22 - Date: 2024-08-05
This release was focused on enabling fixing for Rule Md031 and uncovering any issues with the more deeply nested container cases. The good news is that, as the list in the fixed section shows, we fixed a lot of issues. The better news is that only a handful of those fixes dealt with the parser, with the bulk of the issues dealing with transitioning from Markdown to our internal token format and back to Markdown again.
Why is this important? When a user asks the PyMarkdown linter to fix any issues that it can, our team wants to have the utmost confidence that PyMarkdown is producing the correct fix. Therefore, we tokenize the Markdown and base our rules off tokens that we know are correct. The only way to validate that we have the correct tokens is to take those tokens and recreate the Markdown. If we cannot produce the exact Markdown that we started with, then we have a problem.
In most of the fixed issues below, the tokens are correct and can produce the proper HTML from the Markdown. However, in over 90% of the fixed issues below, when we recreate the Markdown, the Markdown that we produce if off by a couple of whitespace characters. For
the reasons stated above, it is important to our team to fix these issues with transparency. Therefore, while the fixed list is somewhat
long, it is an honest reflection of the issues that we found and addressed.
Added
Fixed
list block
the innermost block
newlines to the list
the block quote to close
not flexible enough
to avoid assert
properly
leading spaces as invalid
blocks
in properly
of document
Changed
v0.9.21: Version 0.9.21 - Date: 2024-07-01Compare Source
This release focuses on enabling the fix modes for various rules, performing more testing of scenarios to prepare for the release. Not finding anything major but uncovering some "weird" combinations that are causing unpredictable behavior. That behavior is mostly in the area of producing the correct Markdown from tokens to allow the fix mode to produce reliable fixes.
Added
Fixed
Changed
v0.9.20Compare Source
Version 0.9.20 - Date: 2024-05-30
This release focuses on completing the work to get the documentation up to date and in the new read-the-docs format. Some user issues were addressed, but this was mainly to get the documents into good shape for release.
To view the new documentation, go to ReadTheDocs.
Added
Fixed
Changed
v0.9.19: Version 0.9.19Compare Source
This release focuses on getting the documentation up to date and in the new read-the-docs format. Some small issues were addressed, but this is mainly to get the documents into good shape for release.
To view the new documentation, go to ReadTheDocs.
v0.9.18: Version 0.9.18Compare Source
Version 0.9.18 - Date: 2024-03-18
This release focuses on getting the feature list complete for a version 1.0 release in the first half of 2024. This release was mainly fixes addressing the new "fix" functionality for a number of the rules, as well as issues with tab characters.
PLEASE NOTE. We have an extensive test suite, but we can always use your help with scenarios that we have not thought of. If you run into a situation that causes a bad parsing or other exception, please let us know.
A lot of the work we are doing to prepare for the new releases is centered around extra cases for tab characters as well as the newer fix functionality. Please report any issues with these features to help us make it better for others.
Added
pyproject.tomlformat with the--configcommand line flagFixed
lists from integers greater than 1
Changed
of link title and image's link title for examination
v0.9.17Compare Source
Version 0.9.17 - Date: 2024-02-05
This release focuses on getting the feature list complete
for a version 1.0 release in early 2024. This release marked the
start of moving documentation from this repository to the more
curated ReadTheDocs.
Some notable additions/changes are:
fixaddition, re-verifyingthe output and fixing any issues
in the core and well as various extensions and plugins
to use, instead of allowing unicode whitespace by default
to handle the different indentation requirements
rules should be enabled at any one time
Added
Python-Markdownand other parsers like itmkdocsto build documentation sitesafter a block quote start
read-the-docs.
Fixed
specific type of whitespace identified and documented
heading was completed
--stack-tracecommand lineflag not working as expected
Changed