Skip to content

Commit fdde8a4

Browse files
MHoroszowskiMatthew Horoszowski
authored andcommitted
release: apply python-pptx-extended fork metadata
Cherry-picked from release/v1.1.0 (commit 9a3ab2a) onto the customXml feature branch. Brings the PyPI fork-prep changes that were prepared on a sibling branch into the line that's actually shipping: - pyproject.toml: name -> python-pptx-extended; maintainer added; description acknowledges the fork's added features (now including customXml); URLs point at MHoroszowski/python-pptx with an Upstream link to scanny/python-pptx. - README.rst: Fork notice section explaining the relationship to upstream and listing the fork's added capabilities (shadows, bullets, table borders, line caps/joins, line-end types, and customXml support). - HISTORY.rst: 1.1.0 (2026-05-01) entry recording the fork establishment, retained alongside the 1.2.0 (2026-05-05) entry that records the customXml feature.
1 parent 2f2b1ba commit fdde8a4

3 files changed

Lines changed: 48 additions & 9 deletions

File tree

HISTORY.rst

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,10 @@
33
Release History
44
---------------
55

6-
1.2.0 (2026-05-05) — fork release
7-
+++++++++++++++++++++++++++++++++
6+
1.2.0 (2026-05-05)
7+
++++++++++++++++++
88

9-
This is a feature release for the ``python-pptx-extended`` fork. Adds
10-
first-class support for OOXML customXml — the mechanism Office.js,
9+
Adds first-class support for OOXML customXml — the mechanism Office.js,
1110
SharePoint, and VSTO add-ins use to embed structured application data in
1211
``.pptx`` files. See ``docs/user/custom-xml.rst`` for the user guide and
1312
``docs/dev/analysis/customxml.rst`` for the OOXML analysis.
@@ -30,6 +29,16 @@ SharePoint, and VSTO add-ins use to embed structured application data in
3029
containing customXml parts authored by SharePoint, Office.js, or VSTO load
3130
and save without losing their content.
3231

32+
1.1.0 (2026-05-01)
33+
++++++++++++++++++
34+
35+
- Fork of python-pptx 1.0.2 published as ``python-pptx-extended``.
36+
- feature: full shadow effect API on ``ShadowFormat``
37+
- feature: bullet and numbered list paragraph formatting
38+
- feature: per-edge table cell borders
39+
- feature: ``cap_style`` and ``join_style`` properties on ``LineFormat``
40+
- feature: line-end shape types
41+
3342
1.0.2 (2024-08-07)
3443
++++++++++++++++++
3544

README.rst

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,31 @@
1+
Fork notice
2+
-----------
3+
4+
This distribution, ``python-pptx-extended``, is a fork of
5+
`scanny/python-pptx`_ at upstream version 1.0.2. The import name is unchanged
6+
(``import pptx``), so existing user code continues to work. The fork adds the
7+
following features on top of upstream:
8+
9+
- Full shadow effect API on ``ShadowFormat`` (outer/inner/preset shadows).
10+
- Bullet and numbered list formatting on paragraphs.
11+
- Per-edge border styling for table cells.
12+
- ``cap_style`` and ``join_style`` properties on ``LineFormat``.
13+
- Line-end shape types (arrow / triangle / oval / etc.).
14+
- OOXML customXml support — ``Presentation.custom_properties`` (Mapping over
15+
custom document properties) and ``Presentation.custom_xml_parts``
16+
(Sequence over customXml data parts), supporting both
17+
presentation-scoped (Office.js default) and package-scoped (VSTO /
18+
SharePoint) topologies.
19+
20+
Because the import package name (``pptx``) is shared with the upstream
21+
distribution, ``python-pptx`` and ``python-pptx-extended`` cannot be installed
22+
into the same environment — install one or the other.
23+
24+
.. _`scanny/python-pptx`: https://github.com/scanny/python-pptx
25+
26+
About python-pptx
27+
-----------------
28+
129
*python-pptx* is a Python library for creating, reading, and updating PowerPoint (.pptx)
230
files.
331

pyproject.toml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,9 @@ requires = ["setuptools>=61.0.0"]
33
build-backend = "setuptools.build_meta"
44

55
[project]
6-
name = "python-pptx"
6+
name = "python-pptx-extended"
77
authors = [{name = "Steve Canny", email = "stcanny@gmail.com"}]
8+
maintainers = [{name = "Matthew Horoszowski", email = "matthew.horoszowski@gmail.com"}]
89
classifiers = [
910
"Development Status :: 5 - Production/Stable",
1011
"Environment :: Console",
@@ -27,18 +28,19 @@ dependencies = [
2728
"lxml>=3.1.0",
2829
"typing_extensions>=4.9.0",
2930
]
30-
description = "Create, read, and update PowerPoint 2007+ (.pptx) files."
31+
description = "Fork of python-pptx with additional formatting features (shadows, bullets, table borders, line caps/joins, line end types) and OOXML customXml support (custom doc properties, customXml data parts)."
3132
dynamic = ["version"]
3233
keywords = ["powerpoint", "ppt", "pptx", "openxml", "office"]
3334
license = { text = "MIT" }
3435
readme = "README.rst"
3536
requires-python = ">=3.8"
3637

3738
[project.urls]
38-
Changelog = "https://github.com/scanny/python-pptx/blob/master/HISTORY.rst"
39+
Changelog = "https://github.com/MHoroszowski/python-pptx/blob/master/HISTORY.rst"
3940
Documentation = "https://python-pptx.readthedocs.io/en/latest/"
40-
Homepage = "https://github.com/scanny/python-pptx"
41-
Repository = "https://github.com/scanny/python-pptx"
41+
Homepage = "https://github.com/MHoroszowski/python-pptx"
42+
Repository = "https://github.com/MHoroszowski/python-pptx"
43+
Upstream = "https://github.com/scanny/python-pptx"
4244

4345
[tool.black]
4446
line-length = 100

0 commit comments

Comments
 (0)