Skip to content

Commit 4a783fa

Browse files
authored
Merge branch 'master' into finalizer-fixes
2 parents 6ebf485 + 6f1219f commit 4a783fa

File tree

18 files changed

+771
-66
lines changed

18 files changed

+771
-66
lines changed

.github/workflows/nuget-preview.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
name: GitHub Actions
1+
name: NuGet Preview Release
22

33
on:
44
schedule:
55
- cron: "5 4 3 */1 *" # once a month, at 4:05 on 3rd
6+
workflow_dispatch:
67

78
jobs:
89
release:
@@ -37,7 +38,6 @@ jobs:
3738
3839
- name: Build and Install
3940
run: |
40-
python setup.py configure
4141
pip install -v .
4242
4343
- name: Python Tests

README.rst

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,11 @@ pythonnet - Python.NET
55

66
|gh shield| |appveyor shield|
77

8-
|license shield| |pypi package version| |conda-forge version| |python supported shield|
8+
|license shield|
9+
10+
|pypi package version| |conda-forge version| |python supported shield|
11+
12+
|nuget preview shield| |nuget release shield|
913

1014
Python.NET is a package that gives Python programmers nearly
1115
seamless integration with the .NET Common Language Runtime (CLR) and
@@ -41,6 +45,8 @@ module:
4145
Embedding Python in .NET
4246
------------------------
4347

48+
- You must set `Runtime.PythonDLL` or `PYTHONNET_PYDLL` environment variable
49+
starting with version 3.0, otherwise you will receive `TypeInitializationException`.
4450
- All calls to python should be inside a
4551
``using (Py.GIL()) {/* Your code here */}`` block.
4652
- Import python modules using ``dynamic mod = Py.Import("mod")``, then
@@ -130,5 +136,9 @@ This project is supported by the `.NET Foundation <https://dotnetfoundation.org>
130136
:target: http://stackoverflow.com/questions/tagged/python.net
131137
.. |conda-forge version| image:: https://img.shields.io/conda/vn/conda-forge/pythonnet.svg
132138
:target: https://anaconda.org/conda-forge/pythonnet
139+
.. |nuget preview shield| image:: https://img.shields.io/nuget/vpre/pythonnet
140+
:target: https://www.nuget.org/packages/pythonnet/
141+
.. |nuget release shield| image:: https://img.shields.io/nuget/v/pythonnet
142+
:target: https://www.nuget.org/packages/pythonnet/
133143
.. |gh shield| image:: https://github.com/pythonnet/pythonnet/workflows/GitHub%20Actions/badge.svg
134144
:target: https://github.com/pythonnet/pythonnet/actions?query=branch%3Amaster

setup.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ def run(self):
9494
# Add build_dotnet to the build tasks:
9595
from distutils.command.build import build as _build
9696
from setuptools.command.develop import develop as _develop
97+
from wheel.bdist_wheel import bdist_wheel as _bdist_wheel
9798
from setuptools import Distribution
9899
import setuptools
99100

@@ -111,13 +112,22 @@ def install_for_development(self):
111112
return super().install_for_development()
112113

113114

115+
class bdist_wheel(_bdist_wheel):
116+
def finalize_options(self):
117+
# Monkey patch bdist_wheel to think the package is pure even though we
118+
# include DLLs
119+
super().finalize_options()
120+
self.root_is_pure = True
121+
122+
114123
# Monkey-patch Distribution s.t. it supports the dotnet_libs attribute
115124
Distribution.dotnet_libs = None
116125

117126
cmdclass = {
118127
"build": build,
119128
"build_dotnet": build_dotnet,
120129
"develop": develop,
130+
"bdist_wheel": bdist_wheel,
121131
}
122132

123133

@@ -142,9 +152,8 @@ def install_for_development(self):
142152
author="The Contributors of the Python.NET Project",
143153
author_email="pythonnet@python.org",
144154
packages=["pythonnet", "pythonnet.find_libpython"],
145-
install_requires=["pycparser", "clr_loader"],
155+
install_requires=["clr_loader"],
146156
long_description=long_description,
147-
# data_files=[("{install_platlib}", ["{build_lib}/pythonnet"])],
148157
py_modules=["clr"],
149158
dotnet_libs=dotnet_libs,
150159
classifiers=[
@@ -156,6 +165,7 @@ def install_for_development(self):
156165
"Programming Language :: Python :: 3.6",
157166
"Programming Language :: Python :: 3.7",
158167
"Programming Language :: Python :: 3.8",
168+
"Programming Language :: Python :: 3.9",
159169
"Operating System :: Microsoft :: Windows",
160170
"Operating System :: POSIX :: Linux",
161171
"Operating System :: MacOS :: MacOS X",

0 commit comments

Comments
 (0)