Rust Markdown Parsing Benchmarks

Overview

Rust Markdown Parsing Benchmarks

This repo tries to assess Rust markdown parsing performance.

We currently compare:

Results

Name Overhead (release) Build (debug) Parse (release) Downloads Version
null 0 KiB 720ms 3ms Download count -
comrak 2,153 KiB 30s 5ms Download count v0.12.1
mini_markdown 99 KiB 1s N/A Download count v0.2.5
minimad 20 KiB 1s 2ms Download count v0.9.0
pulldown-cmark 711 KiB 4s 3ms Download count v0.9.0

System: Linux 5.4.0-91-generic (x86_64) w/ -j 8

Notes:

  • Overhead will be lower if your application shares dependencies with your argument parsing library.

Running the Benchmarks

$ ./bench.py
$ ./format.py
Comments
  • chore(deps): Bump mini_markdown from 0.3.1 to 0.3.2

    chore(deps): Bump mini_markdown from 0.3.1 to 0.3.2

    Bumps mini_markdown from 0.3.1 to 0.3.2.

    Commits
    • 0ff2c1e Bump to version 0.3.2
    • 9f22dc1 Merge pull request #58 from darakian/enable-commonmark-atx_headings-tests
    • cae67c7 Derive Eq for allignment
    • 109f3b5 Remove old tests and update sanitization test
    • 7f7de09 ATX header support 🙌
    • d144f6c Don't add a newline if the last thing added was a newline
    • 3558530 Add newline after horizontal rule
    • 3dd652a And better still
    • ec416f6 Better handle trailing header closer thingys
    • 749108f Only trim newlines on plaintext
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • chore(deps): Bump minimad from 0.9.0 to 0.9.1

    chore(deps): Bump minimad from 0.9.0 to 0.9.1

    Bumps minimad from 0.9.0 to 0.9.1.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • chore(deps): update swatinem/rust-cache action to v2

    chore(deps): update swatinem/rust-cache action to v2

    Mend Renovate

    This PR contains the following updates:

    | Package | Type | Update | Change | |---|---|---|---| | Swatinem/rust-cache | action | major | v1 -> v2 |


    Configuration

    📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

    🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 0
  • chore(deps): update actions/checkout action to v3

    chore(deps): update actions/checkout action to v3

    Mend Renovate

    This PR contains the following updates:

    | Package | Type | Update | Change | |---|---|---|---| | actions/checkout | action | major | v2 -> v3 |


    Release Notes

    actions/checkout

    v3

    Compare Source


    Configuration

    📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

    🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 0
  • Configure Renovate - autoclosed

    Configure Renovate - autoclosed

    Mend Renovate

    Welcome to Renovate! This is an onboarding PR to help you understand and configure settings before regular Pull Requests begin.

    🚦 To activate Renovate, merge this Pull Request. To disable Renovate, simply close this Pull Request unmerged.


    Detected Package Files

    • .github/workflows/audit.yml (github-actions)
    • .github/workflows/ci.yml (github-actions)

    Configuration Summary

    Based on the default config's presets, Renovate will:

    • Start dependency updates only once this onboarding PR is merged
    • Enable Renovate Dependency Dashboard creation.
    • If Renovate detects semantic commits, it will use semantic commit type fix for dependencies and chore for all others.
    • Ignore node_modules, bower_components, vendor and various test/tests directories.
    • Autodetect whether to pin dependencies or maintain ranges.
    • Rate limit PR creation to a maximum of two per hour.
    • Limit to maximum 10 open PRs at any time.
    • Group known monorepo packages together.
    • Use curated list of recommended non-monorepo package groupings.
    • A collection of workarounds for known problems with packages.

    🔡 Would you like to change the way Renovate is upgrading your dependencies? Simply edit the renovate.json in this branch with your custom config and the list of Pull Requests in the "What to Expect" section below will be updated the next time Renovate runs.


    What to Expect

    With your current configuration, Renovate will create 2 Pull Requests:

    chore(deps): update actions/checkout action to v3
    • Schedule: ["at any time"]
    • Branch name: renovate/actions-checkout-3.x
    • Merge into: main
    • Upgrade actions/checkout to v3
    chore(deps): update swatinem/rust-cache action to v2
    • Schedule: ["at any time"]
    • Branch name: renovate/swatinem-rust-cache-2.x
    • Merge into: main
    • Upgrade Swatinem/rust-cache to v2

    ❓ Got questions? Check out Renovate's Docs, particularly the Getting Started section. If you need any further assistance then you can also request help here.


    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 0
  • chore(deps): Bump comrak from 0.14.0 to 0.15.0

    chore(deps): Bump comrak from 0.14.0 to 0.15.0

    Bumps comrak from 0.14.0 to 0.15.0.

    Release notes

    Sourced from comrak's releases.

    0.15.0

    What's Changed

    New Contributors

    Full Changelog: https://github.com/kivikakk/comrak/compare/0.14.0...0.15.0

    crates.io: https://crates.io/crates/comrak/0.15.0

    Changelog

    Sourced from comrak's changelog.

    0.15.0

    Commits
    • 3421af3 0.15.0
    • 8caec3f Merge pull request #249 from kivikakk/remove-c-api
    • e186cf2 c-api: remove
    • e9295ff Merge pull request #248 from tranzystorek-io/clap-v4
    • 4471dd4 Disable clap wrap_help feature on wasm32
    • 275a313 Bump clap version to 4.0 and switch to the Derive API
    • 03238b8 Merge pull request #245 from silverpill/main
    • 9274b1a Make shell-words and xdg dependencies optional
    • 939a9d3 Merge pull request #239 from ArvinSKushwaha/main
    • fe4ca0b Added documentation to public functions
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): Bump comrak from 0.13.1 to 0.14.0

    chore(deps): Bump comrak from 0.13.1 to 0.14.0

    Bumps comrak from 0.13.1 to 0.14.0.

    Release notes

    Sourced from comrak's releases.

    0.14.0

    What's Changed

    New Contributors

    Full Changelog: https://github.com/kivikakk/comrak/compare/0.13.2...0.14.0

    crates.io: https://crates.io/crates/comrak/0.14.0

    0.13.2

    Changes since last release (https://github.com/kivikakk/comrak/compare/0.13.1...0.13.2)

    • Fix Windows build.

    On crates.io: https://crates.io/crates/comrak/0.13.2

    Changelog

    Sourced from comrak's changelog.

    0.14.0

    • Add C FFI, allowing Comrak to be used from other languages. (#171, Garen Torikian)
    • Fix line wrapping in CommonMark output. (#228, Edward Loveall)
    • Add option to specify character used for unordered list bullets in CommonMark output. (#229, Edward Loveall)

    0.13.2

    • Fix Windows build.
    Commits
    • c6be17f 0.14.0
    • e0de513 Merge pull request #229 from edwardloveall/el-bullet-style
    • 3e493e0 Add bullet list style options
    • e23a579 Merge pull request #228 from edwardloveall/el-bad-wrap
    • 54bb72c Fix wrapping on lines succeeded by unwrappable lines
    • fb65615 Merge pull request #171 from gjtorikian/specify-lib
    • 43382b2 Add commonmark (roundtrip) output to C-API, test width with that
    • dae970f Add C-API tests
    • b371ad3 motto motto
    • 3e79a60 warning free!
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): Bump pulldown-cmark from 0.9.1 to 0.9.2

    chore(deps): Bump pulldown-cmark from 0.9.1 to 0.9.2

    Bumps pulldown-cmark from 0.9.1 to 0.9.2.

    Release notes

    Sourced from pulldown-cmark's releases.

    v0.9.2

    This release includes fixes for a few panics and other minor bugs.

    Commits
    • 211482c Bump crossbeam-utils from 0.6.6 to 0.8.7 in /fuzzer
    • f30d720 Bump minimum Rust version
    • 40eec8d Bump dependencies and push version to 0.9.2
    • d03cff1 Merge pull request #599 from BenjaminRi/master
    • 0efa14c Rename the erroneously called SLASH_ESCAPE to SINGLE_QUOTE_ESCAPE
    • 3d50a20 Fix typos
    • 4d45c33 Use Write::write_all instead of Write::write
    • 27f7cd5 Do not %-encode ^ and ~ characters
    • 9bfba94 Make InlineStr's len its own field
    • 1397b1e feat: Add enable-heading-attributes
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): Bump mini_markdown from 0.3.0 to 0.3.1

    chore(deps): Bump mini_markdown from 0.3.0 to 0.3.1

    Bumps mini_markdown from 0.3.0 to 0.3.1.

    Commits
    • a2b9864 Bump to version 0.3.1
    • f05f08e Merge pull request #53 from darakian/resolve-<p>-tag-issue
    • 52ecd1d Ensure inline code is in a <p> tag
    • 30e1d8f Merge pull request #52 from darakian/use-pre-tag-in-codeblocks
    • 899c527 Update code blocks to work in a more standard way
    • 40f3e3e Merge pull request #51 from darakian/lex-tabs
    • bdc28f0 Add tab lexing
    • 0bc0a09 Small cleanup (#50)
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): Bump comrak from 0.12.1 to 0.13.1

    chore(deps): Bump comrak from 0.12.1 to 0.13.1

    Bumps comrak from 0.12.1 to 0.13.1.

    Release notes

    Sourced from comrak's releases.

    0.13.1

    Changes since last release (https://github.com/kivikakk/comrak/compare/0.13.0...0.13.1)

    • Support compiling for WASM. (#222, Ben Wishoshavich)
    • Replace deprecated twoway dependency. (#224)

    On crates.io: https://crates.io/crates/comrak/0.13.1

    Windows build includes c465cb5.

    0.13.0

    Changes since last release (https://github.com/kivikakk/comrak/compare/0.12.1...0.13.0)

    • SECURITY: Bump regex to 1.5.5. (#221, Dependabot)
    • Drop unneeded YAML dependency from Syntect. (#199, Chris Wong)
    • Match newline handling in code inlines to upstream, and improve test failure reporting. (#210, Michael Anderson)
    • Make all node value fields public. (#216, Evan Schwartz)
    • Line break handling adjustments. (#214, Michael Anderson)
    • Disable control characters in link definitions. (#219, Michael Anderson)

    On crates.io: https://crates.io/crates/comrak/0.13.0

    Changelog

    Sourced from comrak's changelog.

    0.13.1

    • Support compiling for WASM. (#222, Ben Wishoshavich)
    • Replace deprecated twoway dependency. (#224)

    0.13.0

    • SECURITY: Bump regex to 1.5.5. (#221, Dependabot)
    • Drop unneeded YAML dependency from Syntect. (#199, Chris Wong)
    • Match newline handling in code inlines to upstream, and improve test failure reporting. (#210, Michael Anderson)
    • Make all node value fields public. (#216, Evan Schwartz)
    • Line break handling adjustments. (#214, Michael Anderson)
    • Disable control characters in link definitions. (#219, Michael Anderson)
    Commits
    • 28e9b9c 0.13.1
    • 6fdf76b Merge pull request #224 from kivikakk/twoway-memchr
    • b6005cd replace twoway with memchr
    • 7baa12f Merge pull request #222 from benwis/main
    • 7a69109 propfuzz: don't use on wasm32
    • 78c1912 workflows: add wasm job
    • 5b07253 Cargo.lock: update
    • 9bd46cb Change cargo feature resolution to correctly parse cfg conditionals
    • eeb9134 Modify config file check for WASM targets and enable reduced syntect features...
    • 76f4b65 0.13.0
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): Bump mini_markdown from 0.2.9 to 0.3.0

    chore(deps): Bump mini_markdown from 0.2.9 to 0.3.0

    Bumps mini_markdown from 0.2.9 to 0.3.0.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • RUSTSEC-2022-0048: xml-rs is Unmaintained

    RUSTSEC-2022-0048: xml-rs is Unmaintained

    xml-rs is Unmaintained

    | Details | | | ------------------- | ---------------------------------------------- | | Status | unmaintained | | Package | xml-rs | | Version | 0.8.4 | | URL | https://github.com/netvl/xml-rs/issues | | Date | 2022-01-26 |

    xml-rs is a XML parser has open issues around parsing including integer overflows / panics that may or may not be an issue with untrusted data.

    Together with these open issues with Unmaintained status xml-rs may or may not be suited to parse untrusted data.

    Alternatives

    See advisory page for additional details.

    opened by github-actions[bot] 0
  • RUSTSEC-2021-0139: ansi_term is Unmaintained

    RUSTSEC-2021-0139: ansi_term is Unmaintained

    ansi_term is Unmaintained

    | Details | | | ------------------- | ---------------------------------------------- | | Status | unmaintained | | Package | ansi_term | | Version | 0.12.1 | | URL | https://github.com/ogham/rust-ansi-term/issues/72 | | Date | 2021-08-18 |

    The maintainer has adviced that this crate is deprecated and will not receive any maintenance.

    The crate does not seem to have much dependencies and may or may not be ok to use as-is.

    Last release seems to have been three years ago.

    Possible Alternative(s)

    The below list has not been vetted in any way and may or may not contain alternatives;

    Dependency Specific Migration(s)

    See advisory page for additional details.

    opened by github-actions[bot] 0
Owner
Ed Page
Ed Page
sphinx builder that outputs markdown files.

sphinx-markdown-builder sphinx builder that outputs markdown files Please ★ this repo if you found it useful ★ ★ ★ If you want frontmatter support ple

Clay Risser 144 Jan 6, 2023
MkDocs plugin for setting revision date from git per markdown file

mkdocs-git-revision-date-plugin MkDocs plugin that displays the last revision date of the current page of the documentation based on Git. The revision

Terry Zhao 48 Jan 6, 2023
📖 Generate markdown API documentation from Google-style Python docstring. The lazy alternative to Sphinx.

lazydocs Generate markdown API documentation for Google-style Python docstring. Getting Started • Features • Documentation • Support • Contribution •

Machine Learning Tooling 118 Dec 31, 2022
Jupyter Notebooks as Markdown Documents, Julia, Python or R scripts

Have you always wished Jupyter notebooks were plain text documents? Wished you could edit them in your favorite IDE? And get clear and meaningful diff

Marc Wouts 5.7k Jan 4, 2023
Markdown documentation generator from Google docstrings

mkgendocs A Python package for automatically generating documentation pages in markdown for Python source files by parsing Google style docstring. The

Davide Nunes 44 Dec 18, 2022
Python syntax highlighted Markdown doctest.

phmdoctest 1.3.0 Introduction Python syntax highlighted Markdown doctest Command line program and Python library to test Python syntax highlighted cod

Mark Taylor 16 Aug 9, 2022
Make posters from Markdown files.

MkPosters Create posters using Markdown. Supports icons, admonitions, and LaTeX mathematics. At the moment it is restricted to the specific layout of

Patrick Kidger 243 Dec 20, 2022
Parser manager for parsing DOC, DOCX, PDF or HTML files

Parser manager Description Parser gets PDF, DOC, DOCX or HTML file via API and saves parsed data to the database. Implemented in Ruby 3.0.1 using Acti

Эдем 4 Dec 4, 2021
A markdown lexer and parser which gives the programmer atomic control over markdown parsing to html.

A markdown lexer and parser which gives the programmer atomic control over markdown parsing to html.

stonepresto 4 Aug 13, 2022
Msgpack serialization/deserialization library for Python, written in Rust using PyO3 and rust-msgpack. Reboot of orjson. msgpack.org[Python]

ormsgpack ormsgpack is a fast msgpack library for Python. It is a fork/reboot of orjson It serializes faster than msgpack-python and deserializes a bi

Aviram Hassan 139 Dec 30, 2022
Provides syntax for Python-Markdown which allows for the inclusion of the contents of other Markdown documents.

Markdown-Include This is an extension to Python-Markdown which provides an "include" function, similar to that found in LaTeX (and also the C pre-proc

Chris MacMackin 85 Dec 30, 2022
Mdformat is an opinionated Markdown formatter that can be used to enforce a consistent style in Markdown files

Mdformat is an opinionated Markdown formatter that can be used to enforce a consistent style in Markdown files. Mdformat is a Unix-style command-line tool as well as a Python library.

Executable Books 180 Jan 6, 2023
Implementation of fast algorithms for Maximum Spanning Tree (MST) parsing that includes fast ArcMax+Reweighting+Tarjan algorithm for single-root dependency parsing.

Fast MST Algorithm Implementation of fast algorithms for (Maximum Spanning Tree) MST parsing that includes fast ArcMax+Reweighting+Tarjan algorithm fo

Miloš Stanojević 11 Oct 14, 2022
Course-parsing - Parsing Course Info for NIT Kurukshetra

Parsing Course Info for NIT Kurukshetra Overview This repository houses code for

Saksham Mittal 3 Feb 3, 2022
Rust bindings for the C++ api of PyTorch.

tch-rs Rust bindings for the C++ api of PyTorch. The goal of the tch crate is to provide some thin wrappers around the C++ PyTorch api (a.k.a. libtorc

Laurent Mazare 2.3k Dec 30, 2022
This demo showcase the use of onnxruntime-rs with a GPU on CUDA 11 to run Bert in a data pipeline with Rust.

Demo BERT ONNX pipeline written in rust This demo showcase the use of onnxruntime-rs with a GPU on CUDA 11 to run Bert in a data pipeline with Rust. R

Xavier Tao 14 Dec 17, 2022
peace-performance (Rust) binding for python. To calculate star ratings and performance points for all osu! gamemodes

peace-performance-python Fast, To calculate star ratings and performance points for all osu! gamemodes peace-performance (Rust) binding for python bas

null 9 Sep 19, 2022
A weekly dive into commonly used modules in the Rust ecosystem, with story flavor!

The goal of this project is to bring the same concept as PyMOTW to the Rust world. PyMOTW was an invaluable resource for me when I was learning Python years ago, and I hope that I can help someone in a similar way. Each week we'll dive into a module and explore some of the functionality that we can find there while following along the adventures of some colourful characters.

Scott Lyons 20 Aug 26, 2022
Robyn is an async Python backend server with a runtime written in Rust, btw.

Robyn is an async Python backend server with a runtime written in Rust, btw. Python server running on top of of Rust Async RunTime. Installation

Sanskar Jethi 1.8k Dec 30, 2022
Spatial color quantization in Rust

rscolorq Rust port of Derrick Coetzee's scolorq, based on the 1998 paper "On spatial quantization of color images" by Jan Puzicha, Markus Held, Jens K

Collyn O'Kane 37 Dec 22, 2022