Version History

Note

All versions of documentation are left in the condition in which they were generated. At times, the navigation may look different than expected.

In an effort to keep history of all the documentation for SnakeMD, we’ve included all old versions below as follows:

v2.x

  • v2.2.0b1 [#140, #142, #143, #144, #145, #146, #149]

    • Expanded the Element requirements to include __repr__() for developer friendly strings

    • Reworked logging system to take advantage of lazy loading and new __repr__() methods

    • Expanded testing to verify the __repr__() strings can be used as Python code

    • Added a handful of getter methods to dissuade folks from using protected members of classes

    • Fixed jQuery issues in documentation

    • Incorporated linting (specifically pylint) in development workflow

    • Updated changelog string for consistency on PyPI

    • Introduced concept of lazy loading for templates to allow for processing of document contents at render time

    • Broke existing behavior of a handful of utilities:

      • Changed the dir parameter to directory for dump() method of Document to eliminate shadowing of built-in dir

      • Removed doc parameter of TableOfContents constructor in preference of new lazy loading system of templates

  • v2.1.0 [#136]

    • Migrated build system from setup.py to poetry

  • v2.0.0 [#131]

    • Setup code for 2023-04-14 release

    • See beta releases below for the bulk of the changes

  • v2.0.0b2 [#129, #130]

    • Converted all code snippets in docs to doctests

    • Reworked string input for Quote to pass directly through raw

    • Updated language around parameters in documentation to provide a list of possible inputs and their effects

    • Replaced url parameter with link parameter in insert_link() method of Paragraph

  • v2.0.0b1 [#104, #107, #108, #110, #113, #115, #118, #120, #122, #123, #125, #126]

    • Removed several deprecated items:

      • Classes

        • MDCheckList

        • CheckBox

        • Verification

      • Methods

        • Document.add_element()

        • Document.add_header()

        • Document.check_for_errors()

        • Inline.verify_url()

        • Paragraph.verify_urls()

        • Paragaph.is_text()

      • Parameters

        • name from new_doc and Document

        • code and lang from Paragraph

        • quote from Paragaph

        • render() and verify() from the entire repository

    • Replaced several deprecated items:

      • Classes

        • Inline replaces InlineText

        • Heading replaces Header

      • Methods

        • Inline.is_link() replaces Inline.is_url()

        • Document.dump() replaces Document.output_page()

      • Parameters

        • link replaces url in Inline

    • Added several new features:

      • Included a Quote block which allows for quote nesting

      • Incorporated ValueError exceptions in various class constructors

      • Started a resources page in documentation

      • Created a requirements file at the root of the repo to aid in development

    • Improved various aspects of the repo:

      • Expanded testing to 163 tests for 100% coverage

      • Clarified design of Inline to highlight precedence

      • Cleaned up documentation of pre-release version directives

      • Expanded types of inputs on various classes for quality of life

      • Changed behavior of horizontal rule to avoid clashes with list items

      • Fixed bugs in logs and expanded logging capabilities

      • Standardized docstring formatting

      • Updated README automation to use latest features

Note

The gap between v0.x and v2.x is not a mistake. Initial development of SnakeMD used v1.x versions, which contaminated the PyPI repository. To avoid failed releases due to version clashes, all v1.x versions have been deleted, and the project has jumped straight to v2.x. Consider v2.x to be the official release of the module. Anything prior to v2.x is considered a pre-release.

v0.x

  • v0.15.0 [#97, #98, #99, #101]

    • Moved README generation code to repo root as a script

    • Expanded Heading constructor to support list of strings and Inline objects

    • Migrated code block support from Paragraph class into new Code class

  • v0.14.0 [#84, #86, #89, #90, #91, #95]

    • Added Raw block for user formatted text

    • Replaced InlineText with Inline

    • Added Block and Inline classes

    • Deprecated MDCheckList and CheckBox

    • Replaced render with bulit-in str method

  • v0.13.0 [#71, #74, #76, #78, #80, #82]

    • Created a replacement method for output_page called dump

    • Renamed Header class to Heading

    • Included deprecation warnings for both output_page and header as well as others affected

  • v0.12.0 [#65, #66]

    • Added support for table generation on-the-fly (#64)

    • Reworked documentation to include proper headings and organization

    • Added support for strikethrough on InlineText elements (#58)

  • v0.11.0 [#61, #62]

    • Added support for table indentation

  • v0.10.1 [#59]

    • Enforced UTF-8 encoding in the output_page method (#54)

  • v0.10.0 [#55, #56, #57]

    • Added the CheckBox class for creating checkboxes

    • Added the MDCheckList class for creating lists of checkboxes

    • Added a Document method for implementing easy checklists

    • Updated README to include a new section on checklists

  • v0.9.3 [#50, #49]

    • Added multiple versions of Python testing

    • Restricted package to Python version 3.8+

    • Added Markdown linting for main README

  • v0.9.0 [#47, #46, #45]

    • Added convenience function for creating new Document objects (#40)

    • Ported documentation to Read the Docs (#43)

  • v0.8.1

    • Fixed an issue where nested lists did not render correctly

  • v0.8.0

    • Added range feature to Table of Contents (#41)

  • v0.7.0

    • Added replace_link() method to Paragraph

    • Added various state methods to InlineText

    • Expanded testing

    • Lowered log level to INFO for verify URL errors

    • Added code coverage to build

  • v0.6.0

    • Restructured api, so snakemd is the import module

    • Updated usage page to show more features

    • Fixed issue where base docs link would reroute to index.html directly

  • v0.5.0

    • Added favicon to docs (#26)

    • Added mass URL verification function to Paragraph class (#27)

    • Expanded testing to ensure code works as expected

    • Changed behavior of insert_link() to mimic str.replace() (#19)

    • Added a replace method to Paragraph (#27)

    • Added plausible tracking to latest version of docs (#25)

  • v0.4.1

    • Added support for Python logging library (#22)

    • Expanded support for strings in the Header, Paragraph, and MDList classes

    • Fixed an issue where Paragraphs would sometimes render unexpected spaces (#23)

    • Added GitHub links to version history page

    • Added support for column alignment on tables (#4)

    • Fixed issue where tables sometimes wouldn’t pretty print properly (#5)

  • v0.3.0 [#21]

    • Gave documentation a major overhaul

    • Added support for paragraphs in MDList

    • Added is_text() method to Paragraph

    • Fixed issue where punctuation sometimes rendered with an extra space in front

  • v0.2.0 [#17]

    • Added support for horizontal rules

    • Added automated testing through PyTest and GitHub Actions

    • Added document verification services

    • Added documentation link to README as well as info about installing the package

    • Fixed table of contents single render problem

    • Added a feature which allows users to insert links in existing paragraphs

  • v0.1.0

    • Added support for links, lists, images, tables, code blocks, and quotes

    • Added a table of contents feature