python-pptx2 2.16.0__tar.gz → 2.17.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (617) hide show
  1. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/HISTORY.rst +22 -0
  2. {python_pptx2-2.16.0/src/python_pptx2.egg-info → python_pptx2-2.17.0}/PKG-INFO +1 -1
  3. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/__init__.py +1 -1
  4. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/_textstyle.py +1 -0
  5. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/audit.py +24 -3
  6. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/shapes/shapetree.py +35 -3
  7. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/lint.md +7 -0
  8. {python_pptx2-2.16.0 → python_pptx2-2.17.0/src/python_pptx2.egg-info}/PKG-INFO +1 -1
  9. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_audit.py +31 -0
  10. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_shape_helpers.py +29 -0
  11. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/LICENSE +0 -0
  12. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/MANIFEST.in +0 -0
  13. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/README.rst +0 -0
  14. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/act-action.feature +0 -0
  15. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/act-hyperlink.feature +0 -0
  16. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-axis-props.feature +0 -0
  17. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-axistitle-props.feature +0 -0
  18. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-category-access.feature +0 -0
  19. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-category-props.feature +0 -0
  20. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-chart.feature +0 -0
  21. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-charttitle-props.feature +0 -0
  22. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-data-props.feature +0 -0
  23. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-datalabels.feature +0 -0
  24. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-gridlines-props.feature +0 -0
  25. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-legend-access.feature +0 -0
  26. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-legend-props.feature +0 -0
  27. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-marker-props.feature +0 -0
  28. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-plot-props.feature +0 -0
  29. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-point-access.feature +0 -0
  30. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-point-props.feature +0 -0
  31. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-replace-data.feature +0 -0
  32. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-series.feature +0 -0
  33. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/cht-ticklabels-props.feature +0 -0
  34. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/dml-color.feature +0 -0
  35. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/dml-effect.feature +0 -0
  36. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/dml-fill.feature +0 -0
  37. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/dml-line.feature +0 -0
  38. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/environment.py +0 -0
  39. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/ph-inherit-props.feature +0 -0
  40. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/ph-insert-shape.feature +0 -0
  41. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/ph-phfmt-props.feature +0 -0
  42. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/ph-placeholder-props.feature +0 -0
  43. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/prs-coreprops.feature +0 -0
  44. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/prs-default-template.feature +0 -0
  45. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/prs-open-save.feature +0 -0
  46. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/prs-presentation-props.feature +0 -0
  47. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/shp-autoshape.feature +0 -0
  48. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/shp-connector.feature +0 -0
  49. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/shp-freeform.feature +0 -0
  50. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/shp-graphicframe.feature +0 -0
  51. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/shp-groupshape.feature +0 -0
  52. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/shp-movie-props.feature +0 -0
  53. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/shp-picture.feature +0 -0
  54. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/shp-placeholder.feature +0 -0
  55. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/shp-shapes.feature +0 -0
  56. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/shp-shared.feature +0 -0
  57. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/sld-background.feature +0 -0
  58. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/sld-slide.feature +0 -0
  59. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/sld-slides.feature +0 -0
  60. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/action.py +0 -0
  61. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/axis.py +0 -0
  62. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/background.py +0 -0
  63. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/category.py +0 -0
  64. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/chart.py +0 -0
  65. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/chartdata.py +0 -0
  66. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/color.py +0 -0
  67. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/coreprops.py +0 -0
  68. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/datalabel.py +0 -0
  69. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/effect.py +0 -0
  70. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/fill.py +0 -0
  71. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/font.py +0 -0
  72. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/font_color.py +0 -0
  73. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/helpers.py +0 -0
  74. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/legend.py +0 -0
  75. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/line.py +0 -0
  76. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/picture.py +0 -0
  77. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/placeholder.py +0 -0
  78. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/plot.py +0 -0
  79. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/presentation.py +0 -0
  80. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/series.py +0 -0
  81. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/shape.py +0 -0
  82. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/shapes.py +0 -0
  83. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/slide.py +0 -0
  84. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/slides.py +0 -0
  85. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/table.py +0 -0
  86. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/72-dpi.tiff +0 -0
  87. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/CVS_LOGO.WMF +0 -0
  88. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/act-props.pptm +0 -0
  89. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/calibriz.ttf +0 -0
  90. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-axis-props.pptx +0 -0
  91. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-category-access.pptx +0 -0
  92. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-chart-props.pptx +0 -0
  93. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-chart-type.pptx +0 -0
  94. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-charts.pptx +0 -0
  95. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-datalabels.pptx +0 -0
  96. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-gridlines-props.pptx +0 -0
  97. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-legend-props.pptx +0 -0
  98. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-legend.pptx +0 -0
  99. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-marker-props.pptx +0 -0
  100. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-plot-props.pptx +0 -0
  101. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-point-access.pptx +0 -0
  102. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-point-props.pptx +0 -0
  103. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-replace-data.pptx +0 -0
  104. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-series.pptx +0 -0
  105. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/cht-ticklabels-props.pptx +0 -0
  106. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/dml-effect.pptx +0 -0
  107. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/dml-fill.pptx +0 -0
  108. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/dml-line.pptx +0 -0
  109. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/ext-rels.pptx +0 -0
  110. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/[Content_Types].xml +0 -0
  111. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/_rels/.rels +0 -0
  112. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/docProps/app.xml +0 -0
  113. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/docProps/core.xml +0 -0
  114. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/docProps/thumbnail.jpeg +0 -0
  115. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/_rels/presentation.xml.rels +0 -0
  116. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/presProps.xml +0 -0
  117. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/presentation.xml +0 -0
  118. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/printerSettings/printerSettings1.bin +0 -0
  119. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/_rels/slideLayout1.xml.rels +0 -0
  120. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/_rels/slideLayout10.xml.rels +0 -0
  121. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/_rels/slideLayout11.xml.rels +0 -0
  122. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/_rels/slideLayout2.xml.rels +0 -0
  123. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/_rels/slideLayout3.xml.rels +0 -0
  124. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/_rels/slideLayout4.xml.rels +0 -0
  125. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/_rels/slideLayout5.xml.rels +0 -0
  126. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/_rels/slideLayout6.xml.rels +0 -0
  127. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/_rels/slideLayout7.xml.rels +0 -0
  128. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/_rels/slideLayout8.xml.rels +0 -0
  129. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/_rels/slideLayout9.xml.rels +0 -0
  130. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/slideLayout1.xml +0 -0
  131. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/slideLayout10.xml +0 -0
  132. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/slideLayout11.xml +0 -0
  133. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/slideLayout2.xml +0 -0
  134. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/slideLayout3.xml +0 -0
  135. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/slideLayout4.xml +0 -0
  136. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/slideLayout5.xml +0 -0
  137. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/slideLayout6.xml +0 -0
  138. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/slideLayout7.xml +0 -0
  139. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/slideLayout8.xml +0 -0
  140. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideLayouts/slideLayout9.xml +0 -0
  141. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideMasters/_rels/slideMaster1.xml.rels +0 -0
  142. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slideMasters/slideMaster1.xml +0 -0
  143. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slides/_rels/slide1.xml.rels +0 -0
  144. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/slides/slide1.xml +0 -0
  145. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/tableStyles.xml +0 -0
  146. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/theme/theme1.xml +0 -0
  147. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/extracted-pptx/ppt/viewProps.xml +0 -0
  148. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/font-color.pptx +0 -0
  149. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/just-two-mice.mp4 +0 -0
  150. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/just-two-mice.png +0 -0
  151. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/lyt-shapes.pptx +0 -0
  152. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/minimal.pptx +0 -0
  153. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/monty-truth.png +0 -0
  154. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/mst-placeholders.pptx +0 -0
  155. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/mst-shapes.pptx +0 -0
  156. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/mst-slide-layouts.pptx +0 -0
  157. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/ph-inherit-props.pptx +0 -0
  158. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/ph-populated-placeholders.pptx +0 -0
  159. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/ph-unpopulated-placeholders.pptx +0 -0
  160. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/pic.emf +0 -0
  161. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/prs-add-slide.pptx +0 -0
  162. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/prs-notes.pptx +0 -0
  163. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/prs-properties.pptx +0 -0
  164. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/prs-slide-masters.pptx +0 -0
  165. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/python-icon.jpeg +0 -0
  166. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/python-powered.png +0 -0
  167. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/python.bmp +0 -0
  168. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-access-chart.pptx +0 -0
  169. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-access-ole-object.pptx +0 -0
  170. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-autoshape-adjustments.pptx +0 -0
  171. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-autoshape-props.pptx +0 -0
  172. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-common-props.pptx +0 -0
  173. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-connector-props.pptx +0 -0
  174. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-embedded-docx.docx +0 -0
  175. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-embedded-pptx.pptx +0 -0
  176. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-embedded-xlsx.xlsx +0 -0
  177. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-freeform.pptx +0 -0
  178. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-groupshape.pptx +0 -0
  179. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-movie-props.pptx +0 -0
  180. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-picture.pptx +0 -0
  181. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-pos-and-size.pptx +0 -0
  182. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/shp-shapes.pptx +0 -0
  183. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/sld-background.pptx +0 -0
  184. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/sld-blank.pptx +0 -0
  185. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/sld-notes.pptx +0 -0
  186. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/sld-slide.pptx +0 -0
  187. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/sld-slides.pptx +0 -0
  188. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/sonic.gif +0 -0
  189. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/tbl-cell.pptx +0 -0
  190. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/test-image-jpg-mime.pptx +0 -0
  191. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/test.pptx +0 -0
  192. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/txt-fit-text.pptx +0 -0
  193. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/txt-font-props.pptx +0 -0
  194. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/txt-font-typeface.pptx +0 -0
  195. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/txt-paragraph-spacing.pptx +0 -0
  196. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/txt-text-frame.pptx +0 -0
  197. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/test_files/txt-text.pptx +0 -0
  198. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/text.py +0 -0
  199. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/steps/text_frame.py +0 -0
  200. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/tbl-cell.feature +0 -0
  201. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/tbl-column.feature +0 -0
  202. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/tbl-table.feature +0 -0
  203. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/txt-fit-text.feature +0 -0
  204. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/txt-font-color.feature +0 -0
  205. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/txt-font-props.feature +0 -0
  206. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/txt-paragraph.feature +0 -0
  207. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/txt-text.feature +0 -0
  208. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/features/txt-textframe.feature +0 -0
  209. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/pyproject.toml +0 -0
  210. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/setup.cfg +0 -0
  211. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/_color.py +0 -0
  212. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/_slide_importer.py +0 -0
  213. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/_svg.py +0 -0
  214. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/_template_applier.py +0 -0
  215. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/accessibility.py +0 -0
  216. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/action.py +0 -0
  217. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/animation.py +0 -0
  218. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/api.py +0 -0
  219. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/__init__.py +0 -0
  220. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/analytics.py +0 -0
  221. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/axis.py +0 -0
  222. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/category.py +0 -0
  223. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/chart.py +0 -0
  224. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/data.py +0 -0
  225. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/datalabel.py +0 -0
  226. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/legend.py +0 -0
  227. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/marker.py +0 -0
  228. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/palettes.py +0 -0
  229. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/plot.py +0 -0
  230. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/point.py +0 -0
  231. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/quick_layouts.py +0 -0
  232. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/series.py +0 -0
  233. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/xlsx.py +0 -0
  234. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/chart/xmlwriter.py +0 -0
  235. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/compose/__init__.py +0 -0
  236. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/compose/from_spec.py +0 -0
  237. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/design/__init__.py +0 -0
  238. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/design/components.py +0 -0
  239. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/design/figures.py +0 -0
  240. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/design/layout.py +0 -0
  241. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/design/recipes.py +0 -0
  242. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/design/style.py +0 -0
  243. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/design/tokens.py +0 -0
  244. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/diagrams.py +0 -0
  245. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/dml/__init__.py +0 -0
  246. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/dml/chtfmt.py +0 -0
  247. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/dml/color.py +0 -0
  248. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/dml/effect.py +0 -0
  249. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/dml/fill.py +0 -0
  250. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/dml/line.py +0 -0
  251. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/dml/picture.py +0 -0
  252. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/dml/three_d.py +0 -0
  253. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/enum/__init__.py +0 -0
  254. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/enum/action.py +0 -0
  255. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/enum/animation.py +0 -0
  256. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/enum/base.py +0 -0
  257. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/enum/chart.py +0 -0
  258. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/enum/dml.py +0 -0
  259. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/enum/lang.py +0 -0
  260. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/enum/presentation.py +0 -0
  261. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/enum/shapes.py +0 -0
  262. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/enum/text.py +0 -0
  263. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/exc.py +0 -0
  264. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/formats.py +0 -0
  265. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/geometry.py +0 -0
  266. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/inherit.py +0 -0
  267. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/lint.py +0 -0
  268. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/math.py +0 -0
  269. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/mathml2omml.py +0 -0
  270. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/media.py +0 -0
  271. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/opc/__init__.py +0 -0
  272. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/opc/constants.py +0 -0
  273. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/opc/oxml.py +0 -0
  274. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/opc/package.py +0 -0
  275. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/opc/packuri.py +0 -0
  276. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/opc/serialized.py +0 -0
  277. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/opc/shared.py +0 -0
  278. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/opc/spec.py +0 -0
  279. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/__init__.py +0 -0
  280. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/action.py +0 -0
  281. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/chart/__init__.py +0 -0
  282. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/chart/axis.py +0 -0
  283. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/chart/chart.py +0 -0
  284. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/chart/datalabel.py +0 -0
  285. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/chart/legend.py +0 -0
  286. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/chart/marker.py +0 -0
  287. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/chart/plot.py +0 -0
  288. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/chart/series.py +0 -0
  289. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/chart/shared.py +0 -0
  290. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/coreprops.py +0 -0
  291. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/customprops.py +0 -0
  292. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/dml/__init__.py +0 -0
  293. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/dml/color.py +0 -0
  294. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/dml/effect.py +0 -0
  295. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/dml/fill.py +0 -0
  296. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/dml/line.py +0 -0
  297. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/dml/three_d.py +0 -0
  298. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/ns.py +0 -0
  299. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/presentation.py +0 -0
  300. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/shapes/__init__.py +0 -0
  301. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/shapes/autoshape.py +0 -0
  302. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/shapes/connector.py +0 -0
  303. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/shapes/graphfrm.py +0 -0
  304. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/shapes/groupshape.py +0 -0
  305. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/shapes/picture.py +0 -0
  306. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/shapes/shared.py +0 -0
  307. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/simpletypes.py +0 -0
  308. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/slide.py +0 -0
  309. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/table.py +0 -0
  310. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/text.py +0 -0
  311. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/theme.py +0 -0
  312. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/oxml/xmlchemy.py +0 -0
  313. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/package.py +0 -0
  314. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/parts/__init__.py +0 -0
  315. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/parts/chart.py +0 -0
  316. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/parts/coreprops.py +0 -0
  317. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/parts/customprops.py +0 -0
  318. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/parts/diagram.py +0 -0
  319. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/parts/embeddedpackage.py +0 -0
  320. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/parts/image.py +0 -0
  321. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/parts/media.py +0 -0
  322. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/parts/presentation.py +0 -0
  323. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/parts/slide.py +0 -0
  324. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/presentation.py +0 -0
  325. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/py.typed +0 -0
  326. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/render.py +0 -0
  327. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/section.py +0 -0
  328. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/shapes/__init__.py +0 -0
  329. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/shapes/autoshape.py +0 -0
  330. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/shapes/base.py +0 -0
  331. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/shapes/connector.py +0 -0
  332. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/shapes/freeform.py +0 -0
  333. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/shapes/graphfrm.py +0 -0
  334. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/shapes/group.py +0 -0
  335. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/shapes/picture.py +0 -0
  336. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/shapes/placeholder.py +0 -0
  337. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/shared.py +0 -0
  338. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/SKILL.md +0 -0
  339. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/__init__.py +0 -0
  340. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/__main__.py +0 -0
  341. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/animations.md +0 -0
  342. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/basics.md +0 -0
  343. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/charts.md +0 -0
  344. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/compose.md +0 -0
  345. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/design.md +0 -0
  346. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/effects.md +0 -0
  347. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/end-to-end-deck.md +0 -0
  348. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/geometry-and-arrows.md +0 -0
  349. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/math.md +0 -0
  350. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/picture-effects.md +0 -0
  351. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/render.md +0 -0
  352. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/smart-art.md +0 -0
  353. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/space-aware-authoring.md +0 -0
  354. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/tables.md +0 -0
  355. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/theme.md +0 -0
  356. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/three-d.md +0 -0
  357. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/skill/references/transitions.md +0 -0
  358. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/slide.py +0 -0
  359. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/smart_art.py +0 -0
  360. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/spec.py +0 -0
  361. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/table.py +0 -0
  362. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/table_styles.py +0 -0
  363. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/templates/default.pptx +0 -0
  364. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/templates/docx-icon.emf +0 -0
  365. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/templates/generic-icon.emf +0 -0
  366. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/templates/notes.xml +0 -0
  367. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/templates/notesMaster.xml +0 -0
  368. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/templates/pptx-icon.emf +0 -0
  369. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/templates/theme.xml +0 -0
  370. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/templates/xlsx-icon.emf +0 -0
  371. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/text/__init__.py +0 -0
  372. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/text/fonts.py +0 -0
  373. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/text/layout.py +0 -0
  374. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/text/text.py +0 -0
  375. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/theme.py +0 -0
  376. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/types.py +0 -0
  377. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/pptx2/util.py +0 -0
  378. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/python_pptx2.egg-info/SOURCES.txt +0 -0
  379. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/python_pptx2.egg-info/dependency_links.txt +0 -0
  380. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/python_pptx2.egg-info/entry_points.txt +0 -0
  381. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/python_pptx2.egg-info/requires.txt +0 -0
  382. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/src/python_pptx2.egg-info/top_level.txt +0 -0
  383. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/__init__.py +0 -0
  384. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/__init__.py +0 -0
  385. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_analytics.py +0 -0
  386. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_axis.py +0 -0
  387. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_category.py +0 -0
  388. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_chart.py +0 -0
  389. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_chart_toggles.py +0 -0
  390. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_collision_strategy.py +0 -0
  391. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_data.py +0 -0
  392. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_datalabel.py +0 -0
  393. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_legend.py +0 -0
  394. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_marker.py +0 -0
  395. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_palettes.py +0 -0
  396. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_plot.py +0 -0
  397. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_point.py +0 -0
  398. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_quick_layouts.py +0 -0
  399. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_series.py +0 -0
  400. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_xlsx.py +0 -0
  401. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/chart/test_xmlwriter.py +0 -0
  402. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/design/__init__.py +0 -0
  403. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/design/test_components.py +0 -0
  404. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/design/test_figures.py +0 -0
  405. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/design/test_layout.py +0 -0
  406. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/design/test_recipes.py +0 -0
  407. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/design/test_style.py +0 -0
  408. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/design/test_tokens.py +0 -0
  409. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/dml/__init__.py +0 -0
  410. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/dml/test_chtfmt.py +0 -0
  411. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/dml/test_color.py +0 -0
  412. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/dml/test_effect.py +0 -0
  413. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/dml/test_fill.py +0 -0
  414. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/dml/test_line.py +0 -0
  415. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/dml/test_three_d.py +0 -0
  416. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/enum/__init__.py +0 -0
  417. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/enum/test_base.py +0 -0
  418. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/enum/test_shapes.py +0 -0
  419. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/integration/__init__.py +0 -0
  420. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/integration/round_trip.py +0 -0
  421. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/integration/test_add_slide_layout.py +0 -0
  422. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/integration/test_apply_template.py +0 -0
  423. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/integration/test_compose_package.py +0 -0
  424. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/integration/test_import_slide.py +0 -0
  425. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/integration/test_round_trip.py +0 -0
  426. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/opc/__init__.py +0 -0
  427. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/opc/test_oxml.py +0 -0
  428. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/opc/test_package.py +0 -0
  429. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/opc/test_packuri.py +0 -0
  430. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/opc/test_serialized.py +0 -0
  431. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/__init__.py +0 -0
  432. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/shapes/__init__.py +0 -0
  433. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/shapes/test_autoshape.py +0 -0
  434. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/shapes/test_graphfrm.py +0 -0
  435. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/shapes/test_groupshape.py +0 -0
  436. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/shapes/test_picture.py +0 -0
  437. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/test___init__.py +0 -0
  438. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/test_dml.py +0 -0
  439. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/test_ns.py +0 -0
  440. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/test_presentation.py +0 -0
  441. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/test_simpletypes.py +0 -0
  442. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/test_slide.py +0 -0
  443. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/test_table.py +0 -0
  444. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/test_theme.py +0 -0
  445. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/test_xmlchemy.py +0 -0
  446. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/unitdata/__init__.py +0 -0
  447. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/unitdata/dml.py +0 -0
  448. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/unitdata/shape.py +0 -0
  449. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/oxml/unitdata/text.py +0 -0
  450. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/parts/__init__.py +0 -0
  451. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/parts/test_chart.py +0 -0
  452. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/parts/test_coreprops.py +0 -0
  453. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/parts/test_customprops.py +0 -0
  454. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/parts/test_embeddedpackage.py +0 -0
  455. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/parts/test_image.py +0 -0
  456. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/parts/test_media.py +0 -0
  457. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/parts/test_presentation.py +0 -0
  458. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/parts/test_slide.py +0 -0
  459. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/schema/__init__.py +0 -0
  460. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/schema/oxml_schema_validator.py +0 -0
  461. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/schema/test_schema_validity.py +0 -0
  462. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/__init__.py +0 -0
  463. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/test_anchor.py +0 -0
  464. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/test_animate.py +0 -0
  465. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/test_autoshape.py +0 -0
  466. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/test_base.py +0 -0
  467. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/test_connector.py +0 -0
  468. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/test_freeform.py +0 -0
  469. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/test_graphfrm.py +0 -0
  470. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/test_group.py +0 -0
  471. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/test_picture.py +0 -0
  472. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/test_placeholder.py +0 -0
  473. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/shapes/test_shapetree.py +0 -0
  474. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_accessibility.py +0 -0
  475. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_action.py +0 -0
  476. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_animation.py +0 -0
  477. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_api.py +0 -0
  478. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_compose_from_spec.py +0 -0
  479. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_diagrams.py +0 -0
  480. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/calibriz.ttf +0 -0
  481. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/cdw-logo.eps +0 -0
  482. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/dummy.mp4 +0 -0
  483. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/[Content_Types].xml +0 -0
  484. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/_rels/.rels +0 -0
  485. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/docProps/app.xml +0 -0
  486. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/docProps/core.xml +0 -0
  487. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/docProps/thumbnail.jpeg +0 -0
  488. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/_rels/presentation.xml.rels +0 -0
  489. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/presProps.xml +0 -0
  490. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/presentation.xml +0 -0
  491. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/printerSettings/printerSettings1.bin +0 -0
  492. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/_rels/slideLayout1.xml.rels +0 -0
  493. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/_rels/slideLayout10.xml.rels +0 -0
  494. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/_rels/slideLayout11.xml.rels +0 -0
  495. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/_rels/slideLayout2.xml.rels +0 -0
  496. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/_rels/slideLayout3.xml.rels +0 -0
  497. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/_rels/slideLayout4.xml.rels +0 -0
  498. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/_rels/slideLayout5.xml.rels +0 -0
  499. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/_rels/slideLayout6.xml.rels +0 -0
  500. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/_rels/slideLayout7.xml.rels +0 -0
  501. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/_rels/slideLayout8.xml.rels +0 -0
  502. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/_rels/slideLayout9.xml.rels +0 -0
  503. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/slideLayout1.xml +0 -0
  504. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/slideLayout10.xml +0 -0
  505. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/slideLayout11.xml +0 -0
  506. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/slideLayout2.xml +0 -0
  507. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/slideLayout3.xml +0 -0
  508. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/slideLayout4.xml +0 -0
  509. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/slideLayout5.xml +0 -0
  510. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/slideLayout6.xml +0 -0
  511. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/slideLayout7.xml +0 -0
  512. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/slideLayout8.xml +0 -0
  513. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideLayouts/slideLayout9.xml +0 -0
  514. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideMasters/_rels/slideMaster1.xml.rels +0 -0
  515. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slideMasters/slideMaster1.xml +0 -0
  516. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slides/_rels/slide1.xml.rels +0 -0
  517. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/slides/slide1.xml +0 -0
  518. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/tableStyles.xml +0 -0
  519. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/theme/theme1.xml +0 -0
  520. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/expanded_pptx/ppt/viewProps.xml +0 -0
  521. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/minimal.pptx +0 -0
  522. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/minimal_slide.xml +0 -0
  523. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/missing_rels_item.pptx +0 -0
  524. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/monty-truth.png +0 -0
  525. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/no-core-props.pptx +0 -0
  526. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/no-slides.pptx +0 -0
  527. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/presentation.xml +0 -0
  528. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/python-icon.jpeg +0 -0
  529. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/python-powered.png +0 -0
  530. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/python.bmp +0 -0
  531. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/slideLayout1.xml +0 -0
  532. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/smart_art_org_chart.pptx +0 -0
  533. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-area-date.txt +0 -0
  534. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-area-float.txt +0 -0
  535. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-area-stacked-100.txt +0 -0
  536. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-area-stacked.txt +0 -0
  537. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-area.txt +0 -0
  538. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-bar-clustered-date.txt +0 -0
  539. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-bar-clustered-float.txt +0 -0
  540. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-bar-clustered.txt +0 -0
  541. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-bar-stacked-100.txt +0 -0
  542. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-bar-stacked.txt +0 -0
  543. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-column-clustered.txt +0 -0
  544. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-column-stacked-100.txt +0 -0
  545. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-column-stacked.txt +0 -0
  546. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-line-date.txt +0 -0
  547. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-line-float.txt +0 -0
  548. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-line-markers-stacked-100.txt +0 -0
  549. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-line-markers-stacked.txt +0 -0
  550. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-line-markers.txt +0 -0
  551. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-line-stacked-100.txt +0 -0
  552. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-line-stacked.txt +0 -0
  553. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x2-line.txt +0 -0
  554. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x3-bubble-3d.txt +0 -0
  555. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x3-bubble.txt +0 -0
  556. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x3-xy-lines-no-markers.txt +0 -0
  557. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x3-xy-lines.txt +0 -0
  558. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x3-xy-smooth-no-markers.txt +0 -0
  559. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x3-xy-smooth.txt +0 -0
  560. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x3-xy.txt +0 -0
  561. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/2x5-radar.txt +0 -0
  562. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/3x1-pie-exploded.txt +0 -0
  563. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/3x1-pie.txt +0 -0
  564. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/3x2-doughnut-exploded.txt +0 -0
  565. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/3x2-doughnut.txt +0 -0
  566. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/4x2-multi-cat-bar.txt +0 -0
  567. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/adjust-ser-count.txt +0 -0
  568. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/cat-labels.txt +0 -0
  569. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/content-types-xml.txt +0 -0
  570. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/default-notes.txt +0 -0
  571. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/default-notesMaster.txt +0 -0
  572. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/default-theme.txt +0 -0
  573. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/freeform.txt +0 -0
  574. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/package-rels-xml.txt +0 -0
  575. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/placeholders.txt +0 -0
  576. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/presentation-rels-xml.txt +0 -0
  577. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/relationships.txt +0 -0
  578. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/rels-load-from-xml.txt +0 -0
  579. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/rewrite-ser.txt +0 -0
  580. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/snippets/timing.txt +0 -0
  581. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/test.pptx +0 -0
  582. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_files/test_slides.pptx +0 -0
  583. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_formats.py +0 -0
  584. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_geometry.py +0 -0
  585. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_inherit.py +0 -0
  586. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_lint.py +0 -0
  587. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_lint_on_save.py +0 -0
  588. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_math.py +0 -0
  589. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_media.py +0 -0
  590. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_new_features.py +0 -0
  591. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_package.py +0 -0
  592. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_pathlike_inputs.py +0 -0
  593. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_powerpoint_strict_validation.py +0 -0
  594. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_presentation.py +0 -0
  595. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_render.py +0 -0
  596. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_render_slides_alias.py +0 -0
  597. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_section.py +0 -0
  598. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_shared.py +0 -0
  599. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_skill.py +0 -0
  600. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_slide.py +0 -0
  601. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_smart_art.py +0 -0
  602. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_svg_picture.py +0 -0
  603. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_table.py +0 -0
  604. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_table_extras.py +0 -0
  605. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_theme.py +0 -0
  606. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_transition_morph.py +0 -0
  607. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/test_util.py +0 -0
  608. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/text/__init__.py +0 -0
  609. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/text/test_fonts.py +0 -0
  610. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/text/test_layout.py +0 -0
  611. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/text/test_text.py +0 -0
  612. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/unitdata.py +0 -0
  613. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/unitutil/__init__.py +0 -0
  614. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/unitutil/cxml.py +0 -0
  615. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/unitutil/file.py +0 -0
  616. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tests/unitutil/mock.py +0 -0
  617. {python_pptx2-2.16.0 → python_pptx2-2.17.0}/tox.ini +0 -0
@@ -15,6 +15,28 @@ can sit beside both ``python-pptx`` (``pptx``) and ``power-pptx``
15
15
  .. _`scanny/python-pptx`: https://github.com/scanny/python-pptx
16
16
 
17
17
 
18
+ 2.17.0 (2026-08-30)
19
+ +++++++++++++++++++
20
+
21
+ Added
22
+ .....
23
+
24
+ * ``add_text()`` / ``add_equation()`` accept ``font_family`` and
25
+ ``valign`` as aliases for ``font`` and ``anchor`` (with ``"mid"``
26
+ now a valid anchor token). Code generators trained on matplotlib
27
+ habitually reach for the longer spellings and died with
28
+ ``TypeError: unexpected keyword argument 'font_family'``; passing
29
+ both an alias and its canonical with *different* values still
30
+ raises.
31
+
32
+ * The audit font-warning safe-list now recognizes the **Aptos**
33
+ family — the Microsoft 365 default theme fonts since 2024 — and
34
+ merges the ``PPTX2_SAFE_FONTS`` environment variable (comma- or
35
+ semicolon-separated) into the safe-list on every ``audit()`` call,
36
+ so a rendering environment can declare its font inventory once
37
+ instead of every caller passing ``extra_safe_fonts``.
38
+
39
+
18
40
  2.16.0 (2026-08-30)
19
41
  +++++++++++++++++++
20
42
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-pptx2
3
- Version: 2.16.0
3
+ Version: 2.17.0
4
4
  Summary: Create, read, and update PowerPoint 2007+ (.pptx) files. Fork of power-pptx / python-pptx, published as python-pptx2.
5
5
  Author: Matěj Štágl
6
6
  Author-email: stagl@wattlescript.org
@@ -57,7 +57,7 @@ from pptx2.parts.slide import (
57
57
  if TYPE_CHECKING:
58
58
  from pptx2.opc.package import Part
59
59
 
60
- __version__ = "2.16.0"
60
+ __version__ = "2.17.0"
61
61
 
62
62
  sys.modules["pptx2.exceptions"] = exceptions
63
63
  del sys
@@ -28,6 +28,7 @@ ALIGN_MAP = {
28
28
  ANCHOR_MAP = {
29
29
  "top": MSO_VERTICAL_ANCHOR.TOP,
30
30
  "middle": MSO_VERTICAL_ANCHOR.MIDDLE,
31
+ "mid": MSO_VERTICAL_ANCHOR.MIDDLE,
31
32
  "center": MSO_VERTICAL_ANCHOR.MIDDLE,
32
33
  "centre": MSO_VERTICAL_ANCHOR.MIDDLE,
33
34
  "bottom": MSO_VERTICAL_ANCHOR.BOTTOM,
@@ -41,7 +41,8 @@ __all__ = ["AuditReport", "audit"]
41
41
 
42
42
 
43
43
  # Fonts that ship with stock Windows / macOS / Office installs. Used as
44
- # a (very conservative) safe-list for the font_warnings probe.
44
+ # a (very conservative) safe-list for the font_warnings probe. Aptos and
45
+ # family are the Microsoft 365 default theme fonts since 2024.
45
46
  _COMMON_FONTS = frozenset(
46
47
  name.lower()
47
48
  for name in (
@@ -51,9 +52,17 @@ _COMMON_FONTS = frozenset(
51
52
  "Lucida Console", "Palatino", "Palatino Linotype", "Symbol",
52
53
  "Wingdings", "Wingdings 2", "Wingdings 3", "Webdings",
53
54
  "Inter", "Roboto", "Open Sans", "Lato", "Noto Sans",
55
+ "Aptos", "Aptos Display", "Aptos Narrow", "Aptos Serif", "Aptos Mono",
56
+ "Aptos Symbols",
54
57
  )
55
58
  )
56
59
 
60
+ # Environment variable merged into the safe-list on every audit() call, so
61
+ # rendering environments (sandboxes, CI) can declare their font inventory
62
+ # once instead of every caller passing ``extra_safe_fonts``. Comma- or
63
+ # semicolon-separated font names.
64
+ _SAFE_FONTS_ENV_VAR = "PPTX2_SAFE_FONTS"
65
+
57
66
 
58
67
  @dataclass
59
68
  class AuditReport:
@@ -188,12 +197,24 @@ def audit(
188
197
  environment genuinely ships the font — e.g. ``DejaVu Sans`` in a
189
198
  sandbox whose font policy standardizes on it, or a corporate font
190
199
  you embed in every deck.
200
+
201
+ The ``PPTX2_SAFE_FONTS`` environment variable (comma- or
202
+ semicolon-separated font names) is merged into the safe-list on
203
+ every call, so an environment can declare its font inventory once
204
+ for all callers.
191
205
  """
206
+ import os
207
+
192
208
  from pptx2.shapes.picture import Picture
193
209
 
194
210
  safe_fonts = _COMMON_FONTS
195
- if extra_safe_fonts is not None:
196
- safe_fonts = _COMMON_FONTS | frozenset(f.lower() for f in extra_safe_fonts)
211
+ extra_names = list(extra_safe_fonts) if extra_safe_fonts else []
212
+ for env_raw in os.environ.get(_SAFE_FONTS_ENV_VAR, "").replace(";", ",").split(","):
213
+ env_name = env_raw.strip()
214
+ if env_name:
215
+ extra_names.append(env_name)
216
+ if extra_names:
217
+ safe_fonts = _COMMON_FONTS | frozenset(f.lower() for f in extra_names)
197
218
 
198
219
  report = AuditReport()
199
220
  slides = list(prs.slides)
@@ -557,6 +557,24 @@ class _BaseShapes(ParentedElementProxy):
557
557
  return BaseShapeFactory(shape_elm, self)
558
558
 
559
559
 
560
+ def _resolve_alias(method: str, arg: str, canonical, alias):
561
+ """Return *canonical*, falling back to its *alias* kwarg (both nullable).
562
+
563
+ Code generators (matplotlib-trained models among them) habitually spell
564
+ ``font`` as ``font_family`` and ``anchor`` as ``valign``; accepting the
565
+ alias removes a whole class of one-keyword-away TypeErrors. Passing
566
+ both with different values is a genuine caller bug and still raises.
567
+ """
568
+ if canonical is not None:
569
+ if alias is not None and alias != canonical:
570
+ raise TypeError(
571
+ f"{method}(): pass either {arg}= or its alias, not two "
572
+ f"different values ({canonical!r} vs {alias!r})"
573
+ )
574
+ return canonical
575
+ return alias
576
+
577
+
560
578
  class _BaseGroupShapes(_BaseShapes):
561
579
  """Base class for shape-trees that can add shapes."""
562
580
 
@@ -900,12 +918,14 @@ class _BaseGroupShapes(_BaseShapes):
900
918
  *bbox_or_positional,
901
919
  text: str = "",
902
920
  font: str | None = None,
921
+ font_family: str | None = None,
903
922
  size_pt: float | None = None,
904
923
  bold: bool | None = None,
905
924
  italic: bool | None = None,
906
925
  color=None,
907
926
  align: str | None = None,
908
927
  anchor: str | None = None,
928
+ valign: str | None = None,
909
929
  margin_pt: float | tuple[float, float, float, float] | None = None,
910
930
  word_wrap: bool | None = True,
911
931
  ) -> Shape:
@@ -922,14 +942,17 @@ class _BaseGroupShapes(_BaseShapes):
922
942
  Keyword args:
923
943
 
924
944
  * ``font`` — typeface name (e.g. ``"Inter"``); ``None`` inherits.
945
+ ``font_family`` is accepted as an alias (matplotlib habits die
946
+ hard).
925
947
  * ``size_pt`` — font size in points; ``None`` inherits.
926
948
  * ``bold`` / ``italic`` — ``True``/``False``/``None``.
927
949
  * ``color`` — any "color-like" (``"#RRGGBB"``, ``RGBColor``,
928
950
  ``(r, g, b)``).
929
951
  * ``align`` — ``"left"`` / ``"center"`` / ``"right"`` /
930
952
  ``"justify"``; ``None`` inherits.
931
- * ``anchor`` — vertical anchor: ``"top"`` / ``"middle"`` /
932
- ``"bottom"``; ``None`` inherits.
953
+ * ``anchor`` — vertical anchor: ``"top"`` / ``"middle"`` (also
954
+ ``"mid"`` / ``"center"``) / ``"bottom"``; ``None`` inherits.
955
+ ``valign`` is accepted as an alias.
933
956
  * ``margin_pt`` — uniform margin in points, or a 4-tuple
934
957
  ``(top, right, bottom, left)``.
935
958
  * ``word_wrap`` — defaults to ``True``.
@@ -940,6 +963,9 @@ class _BaseGroupShapes(_BaseShapes):
940
963
  from pptx2._textstyle import apply_margins, apply_text_style, coerce_anchor
941
964
  from pptx2.geometry import BBox
942
965
 
966
+ font = _resolve_alias("add_text", "font", font, font_family)
967
+ anchor = _resolve_alias("add_text", "anchor", anchor, valign)
968
+
943
969
  if len(bbox_or_positional) == 1 and isinstance(bbox_or_positional[0], BBox):
944
970
  box = bbox_or_positional[0]
945
971
  left, top, width, height = box.left, box.top, box.width, box.height
@@ -986,10 +1012,12 @@ class _BaseGroupShapes(_BaseShapes):
986
1012
  latex: str,
987
1013
  display: bool = True,
988
1014
  font: str | None = None,
1015
+ font_family: str | None = None,
989
1016
  size_pt: float | None = None,
990
1017
  color=None,
991
1018
  align: str | None = "center",
992
1019
  anchor: str | None = "middle",
1020
+ valign: str | None = None,
993
1021
  margin_pt: float | tuple[float, float, float, float] | None = None,
994
1022
  ) -> Shape:
995
1023
  """Add a text box containing a native PowerPoint equation from LaTeX.
@@ -1008,13 +1036,17 @@ class _BaseGroupShapes(_BaseShapes):
1008
1036
  equation editor.
1009
1037
 
1010
1038
  Keyword args match :meth:`add_text` for *font* / *size_pt* /
1011
- *color* / *align* / *anchor* / *margin_pt*. *display* (default
1039
+ *color* / *align* / *anchor* / *margin_pt* (including the
1040
+ ``font_family`` / ``valign`` aliases). *display* (default
1012
1041
  |True|) emits a display-math paragraph; set |False| for inline
1013
1042
  OMML.
1014
1043
  """
1015
1044
  from pptx2._textstyle import apply_margins, coerce_align, coerce_anchor
1016
1045
  from pptx2.geometry import BBox
1017
1046
 
1047
+ font = _resolve_alias("add_equation", "font", font, font_family)
1048
+ anchor = _resolve_alias("add_equation", "anchor", anchor, valign)
1049
+
1018
1050
  if len(bbox_or_positional) == 1 and isinstance(bbox_or_positional[0], BBox):
1019
1051
  box = bbox_or_positional[0]
1020
1052
  left, top, width, height = box.left, box.top, box.width, box.height
@@ -187,6 +187,13 @@ drown in noise:
187
187
  report = audit(prs, extra_safe_fonts=["DejaVu Sans", "Noto Sans CJK JP"])
188
188
  ```
189
189
 
190
+ Or declare the inventory once for every caller via the environment
191
+ (merged into the safe-list on each `audit()`):
192
+
193
+ ```bash
194
+ export PPTX2_SAFE_FONTS="DejaVu Sans; Noto Sans CJK JP"
195
+ ```
196
+
190
197
  ## Save-time hooks (via `from_spec`)
191
198
 
192
199
  If you build the deck through `pptx2.compose.from_spec`, the spec dict
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-pptx2
3
- Version: 2.16.0
3
+ Version: 2.17.0
4
4
  Summary: Create, read, and update PowerPoint 2007+ (.pptx) files. Fork of power-pptx / python-pptx, published as python-pptx2.
5
5
  Author: Matěj Štágl
6
6
  Author-email: stagl@wattlescript.org
@@ -78,6 +78,37 @@ class DescribeAudit:
78
78
  for _, font in report.font_warnings)
79
79
  assert not any(font == "DejaVu Sans" for _, font in report.font_warnings)
80
80
 
81
+ def it_treats_aptos_the_m365_default_as_safe(self, prs):
82
+ slide = prs.slides.add_slide(prs.slide_layouts[6])
83
+ for variant in ("Aptos", "Aptos Display", "Aptos Serif", "Aptos Mono"):
84
+ slide.shapes.add_text(
85
+ BBox.from_inches(1, 1, 4, 0.6),
86
+ text="Hi",
87
+ font=variant,
88
+ )
89
+ report = audit(prs)
90
+ assert report.font_warnings == []
91
+
92
+ def it_merges_the_safe_fonts_environment_variable(self, prs, monkeypatch):
93
+ slide = prs.slides.add_slide(prs.slide_layouts[6])
94
+ slide.shapes.add_text(
95
+ BBox.from_inches(1, 1, 4, 1), text="Hi", font="DejaVu Sans"
96
+ )
97
+ slide.shapes.add_text(
98
+ BBox.from_inches(1, 2.5, 4, 1), text="Ho", font="Corporate Brand Face"
99
+ )
100
+ monkeypatch.setenv(
101
+ "PPTX2_SAFE_FONTS", "DejaVu Sans ; Corporate Brand Face"
102
+ )
103
+ report = audit(prs)
104
+ assert report.font_warnings == []
105
+ # -- the parameter still stacks on top of the environment --
106
+ slide.shapes.add_text(
107
+ BBox.from_inches(1, 4, 4, 1), text="Hmm", font="One More Face"
108
+ )
109
+ report = audit(prs, extra_safe_fonts=["One More Face"])
110
+ assert report.font_warnings == []
111
+
81
112
  def it_treats_full_bleed_only_slide_as_empty(self, prs):
82
113
  # A slide whose only shape is a slide-spanning background rect
83
114
  # should be reported as empty (it has no content).
@@ -86,6 +86,35 @@ class DescribeAddText:
86
86
  with pytest.raises(ValueError):
87
87
  slide.shapes.add_text(BBox.from_inches(0, 0, 4, 1), text="x", align="diagonal")
88
88
 
89
+ def it_accepts_font_family_as_an_alias_for_font(self, slide):
90
+ # -- matplotlib-trained generators habitually write font_family= --
91
+ tx = slide.shapes.add_text(BBox.from_inches(1, 1, 4, 1), text="Hi", font_family="Inter")
92
+ assert tx.text_frame.paragraphs[0].runs[0].font.name == "Inter"
93
+
94
+ def it_accepts_identical_font_and_font_family(self, slide):
95
+ tx = slide.shapes.add_text(
96
+ BBox.from_inches(1, 1, 4, 1), text="Hi", font="Inter", font_family="Inter"
97
+ )
98
+ assert tx.text_frame.paragraphs[0].runs[0].font.name == "Inter"
99
+
100
+ def it_rejects_conflicting_font_and_font_family(self, slide):
101
+ with pytest.raises(TypeError, match="font"):
102
+ slide.shapes.add_text(
103
+ BBox.from_inches(1, 1, 4, 1), text="Hi", font="Inter", font_family="Roboto"
104
+ )
105
+
106
+ def it_accepts_valign_mid_as_an_alias_for_anchor(self, slide):
107
+ from pptx2.enum.text import MSO_VERTICAL_ANCHOR
108
+
109
+ tx = slide.shapes.add_text(BBox.from_inches(0, 0, 4, 1), text="x", valign="mid")
110
+ assert tx.text_frame.vertical_anchor == MSO_VERTICAL_ANCHOR.MIDDLE
111
+
112
+ def it_rejects_conflicting_anchor_and_valign(self, slide):
113
+ with pytest.raises(TypeError, match="anchor"):
114
+ slide.shapes.add_text(
115
+ BBox.from_inches(0, 0, 4, 1), text="x", anchor="top", valign="bottom"
116
+ )
117
+
89
118
 
90
119
  class DescribeSetTextPreservingFormat:
91
120
  def it_preserves_font_attributes_across_replacement(self, slide):
File without changes
File without changes
File without changes