Releases: ma2za/python-substack
Releases · ma2za/python-substack
Release list
v0.1.26
python-substack 0.1.26
Version 0.1.26 adds a unified command-line interface for day-to-day Substack operations.
Highlights
- Check authentication, publication selection, and subscriber count with
substack status. - List publications and inspect drafts without writing Python code.
- Schedule, unschedule, publish, and delete drafts with explicit safety controls.
- Use
--jsonfor stable machine-readable output in scripts and automation. - Override the selected publication per command with
--publication-url. - Run on Python 3.10 through 3.14 with pull-request CI and validated release artifacts.
Existing Python APIs, MCP tools, environment variables, and console commands remain available.
Quick examples
substack status
substack drafts list
substack --json drafts get 12345
substack drafts schedule 12345 --at 2026-08-01T09:00:00+03:00
substack drafts publish 12345 --no-sendAnnouncement copy
python-substack 0.1.26 is now a practical Substack operations CLI as well as a Python SDK. The new substack command can inspect publications and drafts, manage schedules, publish without sending email, and safely delete drafts. It also provides stable JSON output for automation. Install it with pip install -U python-substack.
v0.1.25
0.1.25
Added
- Markdown-first draft helper: Api.create_draft_from_markdown(...).
- CLI commands: substack-auth-check, substack-publish-markdown, substack-publish-yaml, substack-mcp.
- Optional MCP extra: python-substack[mcp].
- .env.example, CHANGELOG.md, funding metadata, and GitHub issue templates.
Fixed
- Include substack_mcp in packaged distributions.
- Fix examples/publish_post.py --publish so the flag publishes.
- Correct MCP documentation to use substack_mcp.mcp_server.
Improved
- Reworked README around Markdown, cookie auth, CLI usage, and MCP setup.
- Added PyPI classifiers, project links, and focused tests.
v0.1.24
v0.1.23
What's Changed
- Bump python-multipart from 0.0.26 to 0.0.27 by @dependabot[bot] in #51
- Bump urllib3 from 2.6.3 to 2.7.0 by @dependabot[bot] in #52
- Bump idna from 3.11 to 3.15 by @dependabot[bot] in #53
- Bump authlib from 1.6.11 to 1.6.12 by @dependabot[bot] in #54
- Bump starlette from 1.0.0 to 1.0.1 by @dependabot[bot] in #55
- Bump starlette from 1.0.1 to 1.3.1 by @dependabot[bot] in #57
- Bump cryptography from 46.0.7 to 48.0.1 by @dependabot[bot] in #58
- Bump python-multipart from 0.0.27 to 0.0.31 by @dependabot[bot] in #59
- Bump pyjwt from 2.12.1 to 2.13.0 by @dependabot[bot] in #60
- Bump pydantic-settings from 2.13.1 to 2.14.2 by @dependabot[bot] in #62
- Add Markdown footnote support to from_markdown by @MattFisher in #56
New Contributors
- @MattFisher made their first contribution in #56
Full Changelog: v0.1.22...v0.1.23
v0.1.22
What's Changed
- Bump cryptography from 46.0.5 to 46.0.6 by @dependabot[bot] in #41
- Bump fastmcp from 3.1.1 to 3.2.0 by @dependabot[bot] in #42
- Bump pygments from 2.19.2 to 2.20.0 by @dependabot[bot] in #43
- Bump cryptography from 46.0.6 to 46.0.7 by @dependabot[bot] in #48
- Bump authlib from 1.6.9 to 1.6.11 by @dependabot[bot] in #49
- Bump python-multipart from 0.0.22 to 0.0.26 by @dependabot[bot] in #50
- feat: add inline code, ordered lists, horizontal rules, bold+italic, strikethrough by @cyclingwithelephants in #47
New Contributors
- @cyclingwithelephants made their first contribution in #47
Full Changelog: v0.1.21...v0.1.22
v0.1.21
v0.1.20
v0.1.19
v0.1.18
What's Changed
- Bump urllib3 from 2.6.2 to 2.6.3 by @dependabot[bot] in #37
- fix: parse_inline drops links at position 0 and marks() loses href by @ASRagab in #36
- Render bullet lists as proper ProseMirror nodes in from_markdown() by @yf-chau in #35
New Contributors
Full Changelog: v0.1.17...v0.1.18
v0.1.17
What's Changed
- Bump certifi from 2023.11.17 to 2024.7.4 by @dependabot[bot] in #34
Full Changelog: v0.1.16...v0.1.17