Main Improvements
- The TUI was revamped. While running the script provides much more feedback. The CLI interface provides more helpful information.
- Sequential updates are now supported via a lock file, which tracks already downloaded page versions and attachments. This improves speed on repeated runs.
- Parallelization of page loads. This improves load and conversion speed.
- Authentication for multiple Confluence and Jira instances. Skipping Jira is an option now.
- Configuration now also be done via command, in addition to the interactive config menu.
- Config options can not be overwritten by respective env vars
Breaking Changes
- Page IDs and space keys are no longer supported as bare parameter. One has to always provide a URL including the base URL of the Confluence instance. See the README for the supported URL types.
- The
--output-pathoption was removed. Either set via config or via env varCME_EXPORT__OUTPUT_PATH. - The
all-spacescommand was renamed toorgsand now supports downloading spaces of multiple organizations in a single run. - The
cf-exportshorthand was replaced by thecmeshorthand. - The
DEBUGenv var was replaced by theexport.log_levelconfig option or theCME_EXPORT__LOG_LEVELenv var. - Creating a lock file and only pulling changed pages is turned on by default.
What's Changed
- feat: incremental download using lockfile by @naoki-tateyama in #141
- feat: Add support for Markdown fragments in Confluence pages by @akopytov in #143
- feat: Add parallel page export with ThreadPoolExecutor by @jhogstrom in #146
- feat: Make jira scraping optional by @tomasrollo in #126
- fix: Handle parsing of spaces where the homepage is None by @Vyz333 in #113
- fix: Preserve Unicode whitespace in inline formatting tags by @jhogstrom in #148
- fix: Avoid BeautifulSoup RecursionError with fab:media tags by @jhogstrom in #145
- fix: Add request timeout config and harden downloads by @AlexanderV in #133
- fix: Handle None page_id in Page.from_id by @AlexanderV in #135
- fix: Add escape for a pipe ("|") character in table cells by @izhyvaiev in #109
- fix: handle spaces w/o a homepage by @drts01 in #124
- fix: Use the same logic in convert_img as in convert_attachment_link to fix images by @dattas in #107
- fix: Has included the parameter verify in get method on export function. T… by @fkfouri in #157
- Bump sigstore/gh-action-sigstore-python from 3.2.0 to 3.3.0 in the actions group by @dependabot[bot] in #158
- Bump urllib3 from 2.5.0 to 2.6.3 by @dependabot[bot] in #130
- Bump the actions group across 1 directory with 4 updates by @dependabot[bot] in #122
- Bump actions/attest-build-provenance from 3.1.0 to 3.2.0 in the actions group by @dependabot[bot] in #132
- Bump the actions group across 1 directory with 2 updates by @dependabot[bot] in #151
New Contributors
- @Vyz333 made their first contribution in #113
- @naoki-tateyama made their first contribution in #141
- @jhogstrom made their first contribution in #148
- @akopytov made their first contribution in #143
- @AlexanderV made their first contribution in #133
- @drts01 made their first contribution in #124
- @dattas made their first contribution in #107
- @coonty98 made their first contribution in #104
- @fkfouri made their first contribution in #157
- @tomasrollo made their first contribution in #126
Full Changelog: 3.2.0...4.0.0