python-msilib 0.1.1__tar.gz → 0.2.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.

Potentially problematic release.


This version of python-msilib might be problematic. Click here for more details.

Files changed (29) hide show
  1. {python_msilib-0.1.1 → python_msilib-0.2.0}/Makefile +1 -1
  2. python_msilib-0.2.0/PKG-INFO +90 -0
  3. python_msilib-0.2.0/README.md +56 -0
  4. {python_msilib-0.1.1 → python_msilib-0.2.0}/pyproject.toml +7 -10
  5. {python_msilib-0.1.1 → python_msilib-0.2.0}/src/msilib/__init__.py +281 -109
  6. {python_msilib-0.1.1 → python_msilib-0.2.0}/src/msilib/_msi.c +330 -358
  7. python_msilib-0.2.0/src/msilib/include/_msi.h +699 -0
  8. python_msilib-0.2.0/src/msilib/schema.py +5757 -0
  9. python_msilib-0.2.0/src/msilib/sequence.py +132 -0
  10. python_msilib-0.2.0/src/msilib/text.py +292 -0
  11. python_msilib-0.2.0/src/python_msilib.egg-info/PKG-INFO +90 -0
  12. {python_msilib-0.1.1 → python_msilib-0.2.0}/src/python_msilib.egg-info/requires.txt +0 -4
  13. python_msilib-0.2.0/tests/test_msilib.py +135 -0
  14. python_msilib-0.1.1/PKG-INFO +0 -39
  15. python_msilib-0.1.1/README.md +0 -1
  16. python_msilib-0.1.1/src/msilib/include/_msi.h +0 -696
  17. python_msilib-0.1.1/src/msilib/schema.py +0 -1007
  18. python_msilib-0.1.1/src/msilib/sequence.py +0 -126
  19. python_msilib-0.1.1/src/msilib/text.py +0 -129
  20. python_msilib-0.1.1/src/python_msilib.egg-info/PKG-INFO +0 -39
  21. python_msilib-0.1.1/tests/test_msilib.py +0 -163
  22. {python_msilib-0.1.1 → python_msilib-0.2.0}/LICENSE +0 -0
  23. {python_msilib-0.1.1 → python_msilib-0.2.0}/MANIFEST.in +0 -0
  24. {python_msilib-0.1.1 → python_msilib-0.2.0}/setup.cfg +0 -0
  25. {python_msilib-0.1.1 → python_msilib-0.2.0}/src/msilib/include/pythoncapi_compat.h +0 -0
  26. {python_msilib-0.1.1 → python_msilib-0.2.0}/src/python_msilib.egg-info/SOURCES.txt +0 -0
  27. {python_msilib-0.1.1 → python_msilib-0.2.0}/src/python_msilib.egg-info/dependency_links.txt +0 -0
  28. {python_msilib-0.1.1 → python_msilib-0.2.0}/src/python_msilib.egg-info/not-zip-safe +0 -0
  29. {python_msilib-0.1.1 → python_msilib-0.2.0}/src/python_msilib.egg-info/top_level.txt +0 -0
@@ -60,7 +60,7 @@ cov: wheel
60
60
  cd $(COV_TMPDIR) && coverage run || true
61
61
  coverage combine --keep --quiet -a $(COV_TMPDIR)/
62
62
  coverage report
63
- coverage html
63
+ coverage html --show-contexts
64
64
 
65
65
  .PHONY: release
66
66
  release:
@@ -0,0 +1,90 @@
1
+ Metadata-Version: 2.4
2
+ Name: python-msilib
3
+ Version: 0.2.0
4
+ Summary: Read and write Microsoft Installer files
5
+ Author-email: Marcelo Duarte <marcelotduarte@users.noreply.github.com>
6
+ License-Expression: PSF-2.0
7
+ Project-URL: Source, https://github.com/marcelotduarte/python-msilib
8
+ Keywords: msilib
9
+ Classifier: Development Status :: 5 - Production/Stable
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: Natural Language :: English
12
+ Classifier: Operating System :: OS Independent
13
+ Classifier: Programming Language :: C
14
+ Classifier: Programming Language :: Python
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Programming Language :: Python :: 3 :: Only
17
+ Classifier: Programming Language :: Python :: 3.13
18
+ Classifier: Programming Language :: Python :: 3.14
19
+ Classifier: Topic :: Software Development :: Build Tools
20
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
21
+ Classifier: Topic :: System :: Software Distribution
22
+ Classifier: Topic :: Utilities
23
+ Requires-Python: >=3.13
24
+ Description-Content-Type: text/markdown
25
+ License-File: LICENSE
26
+ Provides-Extra: dev
27
+ Requires-Dist: bump-my-version==1.2.3; extra == "dev"
28
+ Requires-Dist: cibuildwheel==3.2.0; extra == "dev"
29
+ Requires-Dist: pre-commit==4.3.0; extra == "dev"
30
+ Provides-Extra: tests
31
+ Requires-Dist: coverage==7.10.7; extra == "tests"
32
+ Requires-Dist: pytest==8.4.2; extra == "tests"
33
+ Dynamic: license-file
34
+
35
+ # python-msilib
36
+
37
+ Read and write Microsoft Installer files.
38
+
39
+ This library is legacy code borrowed from Python 3.12, intended to allow
40
+ cx_Freeze's bdist_msi command to continue working in Python 3.13 and 3.14.
41
+
42
+ [![PyPI version](https://img.shields.io/pypi/v/python-msilib)](https://pypi.org/project/python-msilib/)
43
+ [![PyPi Downloads](https://img.shields.io/pypi/dm/python-msilib)](https://pypistats.org/packages/python-msilib)
44
+ [![Conda Version](https://img.shields.io/conda/vn/conda-forge/python-msilib.svg)](https://anaconda.org/conda-forge/python-msilib)
45
+ [![Conda Downloads](https://anaconda.org/conda-forge/python-msilib/badges/downloads.svg)](https://anaconda.org/conda-forge/python-msilib)
46
+ [![Python](https://img.shields.io/pypi/pyversions/python-msilib)](https://www.python.org/)
47
+ [![Coverage](https://raw.githubusercontent.com/marcelotduarte/python-msilib/python-coverage-comment-action-data/badge.svg)](https://htmlpreview.github.io/?https://github.com/marcelotduarte/python-msilib/blob/python-coverage-comment-action-data/htmlcov/index.html)
48
+ [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
49
+
50
+ ## Installation
51
+
52
+ Choose the Python package manager according to your system. See how the
53
+ installation works with the most common ones, which are pip and conda.
54
+
55
+ To install the latest version of `python-msilib` into a virtual environment:
56
+
57
+ ```
58
+ uv pip install --upgrade python-msilib
59
+ ```
60
+
61
+ If using pip:
62
+
63
+ ```
64
+ pip install --upgrade python-msilib
65
+ ```
66
+
67
+ From the conda-forge channel:
68
+
69
+ ```
70
+ conda install conda-forge::python-msilib
71
+ ```
72
+
73
+ To install the latest development build:
74
+
75
+ ```
76
+ uv pip uninstall python-msilib
77
+ uv pip install --extra-index-url https://test.pypi.org/simple/ python-msilib --prerelease=allow --index-strategy=unsafe-best-match
78
+ ```
79
+
80
+ If using pip:
81
+
82
+ ```
83
+ pip uninstall python-msilib
84
+ pip install --extra-index-url https://test.pypi.org/simple/ python-msilib --pre --no-cache
85
+ ```
86
+
87
+ ## Documentation
88
+
89
+ Please read the documentation at Python
90
+ [docs](https://docs.python.org/3.12/library/msilib.html).
@@ -0,0 +1,56 @@
1
+ # python-msilib
2
+
3
+ Read and write Microsoft Installer files.
4
+
5
+ This library is legacy code borrowed from Python 3.12, intended to allow
6
+ cx_Freeze's bdist_msi command to continue working in Python 3.13 and 3.14.
7
+
8
+ [![PyPI version](https://img.shields.io/pypi/v/python-msilib)](https://pypi.org/project/python-msilib/)
9
+ [![PyPi Downloads](https://img.shields.io/pypi/dm/python-msilib)](https://pypistats.org/packages/python-msilib)
10
+ [![Conda Version](https://img.shields.io/conda/vn/conda-forge/python-msilib.svg)](https://anaconda.org/conda-forge/python-msilib)
11
+ [![Conda Downloads](https://anaconda.org/conda-forge/python-msilib/badges/downloads.svg)](https://anaconda.org/conda-forge/python-msilib)
12
+ [![Python](https://img.shields.io/pypi/pyversions/python-msilib)](https://www.python.org/)
13
+ [![Coverage](https://raw.githubusercontent.com/marcelotduarte/python-msilib/python-coverage-comment-action-data/badge.svg)](https://htmlpreview.github.io/?https://github.com/marcelotduarte/python-msilib/blob/python-coverage-comment-action-data/htmlcov/index.html)
14
+ [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
15
+
16
+ ## Installation
17
+
18
+ Choose the Python package manager according to your system. See how the
19
+ installation works with the most common ones, which are pip and conda.
20
+
21
+ To install the latest version of `python-msilib` into a virtual environment:
22
+
23
+ ```
24
+ uv pip install --upgrade python-msilib
25
+ ```
26
+
27
+ If using pip:
28
+
29
+ ```
30
+ pip install --upgrade python-msilib
31
+ ```
32
+
33
+ From the conda-forge channel:
34
+
35
+ ```
36
+ conda install conda-forge::python-msilib
37
+ ```
38
+
39
+ To install the latest development build:
40
+
41
+ ```
42
+ uv pip uninstall python-msilib
43
+ uv pip install --extra-index-url https://test.pypi.org/simple/ python-msilib --prerelease=allow --index-strategy=unsafe-best-match
44
+ ```
45
+
46
+ If using pip:
47
+
48
+ ```
49
+ pip uninstall python-msilib
50
+ pip install --extra-index-url https://test.pypi.org/simple/ python-msilib --pre --no-cache
51
+ ```
52
+
53
+ ## Documentation
54
+
55
+ Please read the documentation at Python
56
+ [docs](https://docs.python.org/3.12/library/msilib.html).
@@ -1,7 +1,8 @@
1
1
  [build-system]
2
2
  requires = [
3
3
  # setuptools 77.0.3+ supports PEP 639
4
- "setuptools>=77.0.3,<=80.9.0",
4
+ # setuptools 78.1.1 fix path traversal vulnerability
5
+ "setuptools>=78.1.1,<=80.9.0",
5
6
  ]
6
7
  build-backend = "setuptools.build_meta"
7
8
 
@@ -43,10 +44,6 @@ dev = [
43
44
  tests = [
44
45
  "coverage==7.10.7",
45
46
  "pytest==8.4.2",
46
- "pluggy==1.6.0",
47
- "pytest-mock==3.15.1",
48
- "pytest-timeout==2.4.0",
49
- "pytest-xdist==3.8.0",
50
47
  ]
51
48
 
52
49
  [project.urls]
@@ -75,7 +72,7 @@ where = ["src"]
75
72
 
76
73
  [tool.bumpversion]
77
74
  commit = true
78
- current_version = "0.1.1"
75
+ current_version = "0.2.0"
79
76
  message = "Bump version: {current_version} → {new_version} [ci skip]"
80
77
  parse = """(?x)
81
78
  (?P<major>0|[1-9]\\d*)\\.
@@ -110,7 +107,7 @@ optional_value = "final"
110
107
  [tool.cibuildwheel]
111
108
  build-frontend = "build[uv]"
112
109
  build-verbosity = 1
113
- #enable = ["cpython-freethreading"]
110
+ enable = ["cpython-freethreading"]
114
111
 
115
112
  [tool.coverage.html]
116
113
  directory = "build/coverage_html_report"
@@ -132,15 +129,15 @@ precision = 2
132
129
 
133
130
  [tool.coverage.paths]
134
131
  source = [
135
- "msilib/",
132
+ "src/msilib/",
136
133
  "*/msilib/",
137
134
  ]
138
135
 
139
136
  [tool.coverage.run]
140
- command_line = "-m pytest -nauto"
137
+ command_line = "-m pytest"
138
+ dynamic_context = "test_function"
141
139
  source = ["msilib"]
142
140
  parallel = true
143
- patch = ["subprocess"]
144
141
  relative_files = true
145
142
 
146
143
  [tool.pytest.ini_options]