Changelog
v2.1.3
Released on 2024-11-17 - GitHub - PyPI
Fix md2po2md always exiting with code 5 passing --no-empty-msgstr (#322)
v2.1.2
Released on 2024-11-16 - GitHub - PyPI
New features
- Add
--no-fuzzyflag to all CLIs for exiting with non zero code when fuzzy entries are found in PO files.
Enhancements
- Improved
--no-obsoleteand--no-empty-msgstrimplementations to print file paths and line numbers.
v2.1.1
Released on 2024-11-16 - GitHub - PyPI
New features
- Add
--no-obsoleteflag tomd2po,po2mdandmd2po2mdCLIs to exit with code 3 when an obsolete entry is found in translations. - Add
--no-empty-msgstrflag tomd2po,po2mdandmd2po2mdCLIs to exit with code 4 when an empty msgstr is found in translations.
v2.1.0
Released on 2024-11-11 - GitHub - PyPI
Bug fixes
Fixed support for LaTeX math spans. Now LaTeX display math blocks will be parsed correctly to PO files.
$$
a^2 + b^2 = c^2
$$msgid "a^2 + b^2 = c^2"
msgstr ""Enhancements
Standalone pre-built binaries are now provided for most common architectures. Download all md2po, po2md, md2po2md and mdpo2html standalone binaries executables from release assets below.
v2.0.1
Released on 2024-05-01 - GitHub - PyPI
Bug fixes
- Fixed
po2mdnot adding newline before first nested list lines.
v2.0.0
Released on 2024-03-06 - GitHub - PyPI
⚠️ Breaking changes
mdpois no longer installable on Python3.7
Note about v1.1.5
Probably you're experiencing an error when calling the CLI after reinstalling v1.1.5. This can be solved by pinning importlib-metadata-argparse-version to <2, but the upgrade of mdpo to v2 is recommended. Sorry for the inconveniences that you could have experienced.
v1.1.5
Released on 2024-02-16 - GitHub - PyPI
Enhancements
- Added
--include-codeblocksoption tomd2po2md.
v1.1.4
Released on 2023-08-10 - GitHub - PyPI
Chore:
- Added initial support for Python 3.12
v1.1.3
Released on 2023-03-04 - GitHub - PyPI
Bug fixes:
- Fixed error when passing
0orinfas--wrapwidthargument to po2md (regression by v1.1.2).
v1.1.2
Released on 2023-02-19 - GitHub - PyPI
Bug fixes:
- Fixed po2md output of Unicode Line Breaking wrapping when mixing scriptio and non scriptio continua languages.
Enhancements:
- Improved performance of po2md as the wrapping algorithm is executed at CPython extension level.
v1.1.1
Released on 2023-02-10 - GitHub - PyPI
Bug fixes:
- Fix
wrapwidthargument not being applied usingpo2mdto render scriptio languages Markdown output.
v1.1.0
Released on 2022-12-15 - GitHub - PyPI
- Added support for Python3.11
- Now mdpo can be installed without manual compilation of md4c on a lot of more platforms.
v1.0.3
Released on 2022-09-20 - GitHub - PyPI
Bug fixes:
- Preserve HTML blocks in po2md output.
- Fixed edge case encoding bug in Windows when decoding PO files with md2po.
v1.0.2
Released on 2022-09-20 - GitHub - PyPI
Bug fixes:
- Fixed some edge case errors related to memory management.
v1.0.1
Released on 2022-09-19 - GitHub - PyPI
Bug fixes:
- Add missing information to project metadata to fix some installations not discovering entry points.
v1.0.0
Released on 2022-07-20 - GitHub - PyPI
Breaking changes:
- Removed support for Python 3.6.
-pooption ofmd2pohas been renamed to-p.--plaintextoption ofmd2podoes not offer the contraction-pnow.-mocontraction of--mo-filepathoption ofmd2pohas been removed.- Now only one
X-Generationheader with the valuemdpo v{version}is added when using the option--xheaderofmd2po(--xheadersoption has been renamed to--xheader). - Changed name of
--pre-commitoption by--checkused to return exit code 1 if any of the files have changed. - Removed
mdpo.__version__,mdpo.__title__andmdpo.__description__(useimportlib.metadataorimportlib_metadata).
Replace with something like:import sys if sys.version_info > (3, 7): import importlib.metadata as importlib_metadata else: import importlib_metadata metadata = importlib_metadata.distribution("mdpo").metadata __version__ = metadata["version"] # or just `importlib_metadata.version("mdpo")` __title__ = metadata["name"] __description__ = metadata["summary"]
v0.3.86
Released on 2022-05-25 - GitHub - PyPI
Bug fixes:
- Do not allow
nanvalue for-w/--wrapwidtharguments.
v0.3.85
Released on 2022-02-28 - GitHub - PyPI
Enhancements:
- Allow to pass languages with
-l es fr detomd2po2mdCLI.
v0.3.84
Released on 2021-12-18 - GitHub - PyPI
Enhancements
- Made public some parsers state properties and documented them.
v0.3.83
Released on 2021-12-18 - GitHub - PyPI
Enhancements
eventsprogrammatic APIs kwargs now accepts path to functions inside files withpath/to/file.py::function_namesyntax.- Added
--eventCLI optional argument tomd2poandpo2mdCLIs.
v0.3.82
Released on 2021-12-17 - GitHub - PyPI
Enhancements
- Add command aliases
disable-next-blockandenable-next-blockfordisable-next-lineandenable-next-line.
v0.3.81
Released on 2021-11-29 - GitHub - PyPI
Bug fixes
- Fixed bug removing obsolete messages from PO files
v0.3.80
Released on 2021-11-18 - GitHub - PyPI
Bug fixes
- Malformatted rendering thematic breaks inside quote blocks with
po2md - Incorrect extracting and rendering of referenced links with same text and target
--remove-not-foundmd2pooption not working if--merge-po-filesoption is not passed
v0.3.79
Released on 2021-11-16 - GitHub - PyPI
Bug fixes
- Fixed format rendering headers inside list items.
- Fixed bug rendering tables that include
|characters in cells.
v0.3.78
Released on 2021-11-15 - GitHub - PyPI
Enhancements
- Added
--po-wrapwidthand--md-wrapwidtharguments tomd2po2mdCLI
Bug fixes
- Show better error message when input not specified through CLIs.
- Fixed errors extracting and translating link and image titles with escaped characters.
v0.3.77
Released on 2021-11-14 - GitHub - PyPI
Bug fixes
- Given executable permissions for
md2po2md,mdpo2htmlandpo2mdCLI entrypoint files. - Don't include trailing whitespaces in
commentarguments of customcommandevents.
v0.3.76
Released on 2021-11-12 - GitHub - PyPI
Enhancements
- Implement PEP 562 to avoid uneeded imports running CLIs
- Don't import modules when implementations not need them
Bug fixes
- Fixed bug handling
wrapwidtharguments parsing errors
v0.3.75
v0.3.74
Released on 2021-11-09 - GitHub - PyPI
New features
- Added
mdpo2htmlpre-commit hook
v0.3.73
Released on 2021-11-07 - GitHub - PyPI
Enhancement
md2poaccepts multiple files and globs.
v0.3.72
Released on 2021-11-07 - GitHub - PyPI
Bugfix
- Fix file comparison logic used in pre-commit hooks (regression from v0.3.71).
v0.3.71
Released on 2021-11-07 - GitHub - PyPI
Bug fixes
- Dumped locations when extracting from multiple Markdown files with
md2pobeing accumulated. wrapwidtharguments can accept now floating point and negative numbers (the last would means no wrapping)- Indented code blocks empty lines being removed.
- Malformatted image links regression from v0.3.68.
Enhancements
- Performance improvements for pre-commit hooks.
- Performance improvements parsing
wrapwidtharguments. - Support for referenced image links.
Chore
- Modernized codebase to fit Python 3.6 standards.
- Added more tests.
v0.3.70
Released on 2021-11-05 - GitHub - PyPI
- Added support for Python 3.10 bumping pymd4c to 1.1.1.
v0.3.69
Released on 2021-09-06 - GitHub - PyPI
- Fixed mdpo2html not handling link references.
v0.3.68
Released on 2021-08-30 - GitHub - PyPI
Fixed uniformity problems translating some normal links and autolinks.
v0.3.67
Released on 2021-08-18 - GitHub - PyPI
Upgraded pymd4c dependency to v1.0.0
v0.3.66
Released on 2021-07-19 - GitHub - PyPI
- Fixed error running
md2po2mdpre-commit hook. - Added
md2poandpo2mdpre-commit hooks. - Added
--md-encodingand--po-encodingarguments tomd2po2mdCLI.
v0.3.65
Released on 2021-07-19 - GitHub - PyPI
- Added new command line interface
md2po2md.
v0.3.64
Released on 2021-07-16 - GitHub - PyPI
- Allow to pass
--wrapwidth infor--wrapwidth 0as CLIs arguments to disable wrapping. From programming API, you can usewrapwidth=0orwrapwidth=math.inf. - Exit with code 1 instead of 0 when
-h/--helpoption is explicitly passed to CLIs.
v0.3.63
Released on 2021-07-16 - GitHub - PyPI
- Rewritten
po2mdwrapping logic using PyMD4C instead of Pythontextwrap(fixed some rendering bugs like #155).
v0.3.62
Released on 2021-07-15 - GitHub - PyPI
- Fix error with md2po
--saveoption doing nothing when the specified PO file doesn't exists before run.
v0.3.61
Released on 2021-07-14 - GitHub - PyPI
- Fixed wrapping problems with po2md (thanks for report @dingyifei in #153).
v0.3.60
Released on 2021-07-14 - GitHub - PyPI
- Fixed error wrapping lines with po2md (thanks for report @dingyifei in #153).
- Added
commandmdpo event to po2md.
v0.3.59
Released on 2021-07-10 - GitHub - PyPI
- Added mdpo events
text,msgid,enter_block,leave_block,enter_spanandleave_spantopo2md. - Added debug option
--debug/-Dto po2md CLI.
v0.3.58
Released on 2021-07-10 - GitHub - PyPI
- Added
debug/--debug/-Doption to md2po for events targets displaying in extraction process.
v0.3.57
Released on 2021-07-10 - GitHub - PyPI
- Fixed relative paths input error in
po2mdandmdpo2htmlCLIs (thanks for report @dingyifei)
v0.3.56
Released on 2021-07-09 - GitHub - PyPI
- Fixed error with CLI files passed to
md2po(thanks for report @dingyifei in #150). - Added CLI argument name variant
--nolocation.
v0.3.55
Released on 2021-07-08 - GitHub - PyPI
- Passing
--savewithout--po-filepathnow raises an error before execution usingmd2po. - Allow more variants for CLI argument names:
--pofilepath,--mofilepath,--ext,--po-filesand--merge-po-files. - Removed unused function
mdpo.text::striplastlinefrom source code.
v0.3.54
Released on 2021-07-08 - GitHub - PyPI
- Fixed long links being wrapped into multiple lines with
po2md(thanks for report @EuAndreh)
v0.3.53
Released on 2021-06-06 - GitHub - PyPI
- Fix CLI help formatting.
v0.3.52
Released on 2021-06-04 - GitHub - PyPI
- Fixed error in
md2poCLI help.
v0.3.51
Released on 2021-05-19 - GitHub - PyPI
- Allow to pass multiple functions to custom parsing events.
- msgid event of
md2ponow takes msgstr, msgctxt, tcomment and flag optional arguments.
v0.3.50
Released on 2021-05-19 - GitHub - PyPI
- Changed md2po CLI
--extensionsargument by--extensionallowing to pass it multiple times.
v0.3.49
Released on 2021-05-19 - GitHub - PyPI
--ignorearguments can be passed multiple times to CLIs.
v0.3.48
Released on 2021-05-19 - GitHub - PyPI
- Added automatic translation of new discovered link references definition messages marking them as fuzzy with
md2po.
v0.3.47
Released on 2021-05-18 - GitHub - PyPI
- Fixed error marking not found messages as obsoletes with
md2po. - Bump minimum required
polibversion.
v0.3.46
Released on 2021-05-18 - GitHub - PyPI
- Fixed error discovering locations with
md2po.
v0.3.45
Released on 2021-05-14 - GitHub - PyPI
- Added md2po event to control link references extraction.
v0.3.44
Released on 2021-05-14 - GitHub - PyPI
- Added
po2mdevent to control link references translation.
v0.3.43
Released on 2021-05-07 - GitHub - PyPI
- Added support for link references with
md2poandpo2md.
v0.3.42
Released on 2021-05-06 - GitHub - PyPI
- Accept multiple
--pofilesarguments (CLI) or list of globs inpofilesparameter (API) withpo2mdandmdpo2html.
v0.3.41
Released on 2021-05-06 - GitHub - PyPI
- Fixed error extracting ordered list item messages located inside unordered lists with
md2po. - Fixed errors rendering tables inside lists with
po2md.
v0.3.40
Released on 2021-05-06 - GitHub - PyPI
- Add message references extraction with
md2po. Use--no-location(CLI) orlocation=False(API) to disable it. - Fixed error extracting nested items from ordered lists with
md2po.
v0.3.39
Released on 2021-05-05 - GitHub - PyPI
- Added
msgidevent to md2po programatic interface.
v0.3.38
Released on 2021-05-05 - GitHub - PyPI
- Fix escapes not being properly handled with po2md.
v0.3.37
Released on 2021-05-05 - GitHub - PyPI
- Expose translated entries from Po2Md class.
- Support 'mdpo-translator' command with
po2mdfor exposed entries.
v0.3.36
Released on 2021-05-04 - GitHub - PyPI
- Added argument
--remove-not-foundformd2poto remove messages stored in passed pofile which are not found in Markdown input.
v0.3.35
Released on 2021-05-03 - GitHub - PyPI
- Added MD4C events preprocessing system for programatic
md2pointerface.
v0.3.34
Released on 2021-05-03 - GitHub - PyPI
- Fixed bug extracting quoteblocks placed inside lists with
md2po. - Fixed bug rendering paragraphs placed inside lists with
po2md.
v0.3.33
Released on 2021-05-03 - GitHub - PyPI
- Fixed bug rendering unordered lists inside ordered lists with
po2md. - Fixed bugs rendering quote blocks inside unordered lists with
po2md.
v0.3.32
Released on 2021-05-03 - GitHub - PyPI
- Produce markdownlint-compatible output with
po2md. - Fixed bug rendering horizontal separators inside list items with
po2md.
v0.3.31
Released on 2021-05-03 - GitHub - PyPI
Added new commands to allow more control of codeblocks extraction:
<!-- mdpo-include-codeblocks -->: Include all codeblocks placed after this command.<!-- mdpo-disable-codeblocks -->: Does not include codeblocks placed after this command.<!-- mdpo-disable-codeblock -->: Does not include next codeblock placed after this command.
v0.3.30
Released on 2021-05-02 - GitHub - PyPI
- Added
-d/--metadataparameter to define produced PO file metadata content withmd2po.
v0.3.29
Released on 2021-05-02 - GitHub - PyPI
- Fixed
po2mdrendering two newlines after indented codeblocks. - Normalized
po2mdrendering for tables: all table head separators have 3 characters. - Fixed
po2mdrendering two newlines added after blockquotes ending with tables.
v0.3.28
Released on 2021-05-02 - GitHub - PyPI
- Fixed bugs in
po2mdrendering codeblocks inside list items. - Normalized list items indentation to 3 spaces.
- Added wrapping formatting improvements in
po2mdrendering ordered and task lists.
v0.3.27
Released on 2021-05-01 - GitHub - PyPI
- Added
wrapwidthparameter forpo2mdto specify maximum width of Markdown output. - Fixed formatting bug in
po2mdwith multiple followed blockquotes. - Improved
po2mdrendering format for unordered list items and blockquotes. - Fixed
po2mdbug rendering tables inside blockquotes.
v0.3.26
Released on 2021-05-01 - GitHub - PyPI
- Implemented custom HTML command names as aliases: new parameter
--command-aliasadded for CLIs andcommand_aliasesfor APIs.
v0.3.25
Released on 2021-04-29 - GitHub - PyPI
Nested lists formatting improvements for po2md:
- Don't add newlines after nested lists.
- Use 4 spaces for nested lists indentation.
v0.3.24
Released on 2021-04-29 - GitHub - PyPI
- Added new argument
--ignore-msgids(CLI) andignore_msgids(API) formd2poto ignore msgids from being extracted.
v0.3.23
Released on 2021-04-28 - GitHub - PyPI
- Fixed extra espace error wrapping paragraphs which include codespans.
v0.3.22
Released on 2021-04-28 - GitHub - PyPI
- Fixed extra newline rendered by
po2mdbefore indented code blocks.
v0.3.21
Released on 2021-04-28 - GitHub - PyPI
- Added
disabled_entriesproperties to extractor and translators classes which expose disabled messages via commands.
v0.3.20
Released on 2021-04-28 - GitHub - PyPI
- Fixed
po2mdignoring rendering when usingdisablecommands.
v0.3.19
Released on 2021-04-27 - GitHub - PyPI
- Fixed encoding problem in
po2md. - Added encoding parameters to
mdpo2html.
v0.3.18
Released on 2021-04-27 - GitHub - PyPI
- Self-referenced links must be valid link addresses.
v0.3.17
Released on 2021-04-27 - GitHub - PyPI
- Separated
md2poMarkdown and PO files input encoding definition in two arguments:-e/--encoding->--po-encoding
v0.3.16
Released on 2021-04-27 - GitHub - PyPI
- Fixed typo in
md2poargument namemark_not_found_as_absolete->mark_not_found_as_obsolete.
v0.3.15
Released on 2021-04-27 - GitHub - PyPI
- Added arguments to
po2mdfor input files encoding definition.
v0.3.14
Released on 2021-04-27 - GitHub - PyPI
- Fixed
po2mderror parsing nested ordered lists.
v0.3.13
Released on 2021-04-27 - GitHub - PyPI
- Fixed error reading bad glob character ranges.
v0.3.12
Released on 2021-04-12 - GitHub - PyPI
- Multiple improvements and fixes for documentation.
v0.3.11
Released on 2021-04-05 - GitHub - PyPI
- Fixed documentation inconsistencies.
v0.3.10
Released on 2021-03-31 - GitHub - PyPI
- Fixed compatibility issue with polib v1.1.1
v0.3.9
Released on 2021-03-22 - GitHub - PyPI
- Fixed packaging error in installation config.
v0.3.8
Released on 2021-02-06 - GitHub - PyPI
- Added developers reference in documentation.
- Unified docstrings convention.
- Documented all public functions.
v0.3.7
Released on 2021-02-05 - GitHub - PyPI
- Added improvements for CLIs documentation.
v0.3.6
v0.3.5
Released on 2020-11-07 - GitHub - PyPI
- Improve obsolete msgstr fallback with fuzzy and translator comments flags.
v0.3.4
Released on 2020-11-06 - GitHub - PyPI
- If an obsolete translated message is found with same 'msgid' of another found by current extraction, that will be used directly translating the new pofile in md2po.
v0.3.3
Released on 2020-11-06 - GitHub - PyPI
- Fix bug dealing with previous obsolete entries in md2po.