pythonnet 3.0.3__tar.gz → 3.0.4__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 (432) hide show
  1. {pythonnet-3.0.3 → pythonnet-3.0.4}/AUTHORS.md +2 -0
  2. {pythonnet-3.0.3/pythonnet.egg-info → pythonnet-3.0.4}/PKG-INFO +1 -1
  3. {pythonnet-3.0.3 → pythonnet-3.0.4/pythonnet.egg-info}/PKG-INFO +1 -1
  4. pythonnet-3.0.4/pythonnet.egg-info/SOURCES.txt +200 -0
  5. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/AssemblyManager.cs +7 -0
  6. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/ClassManager.cs +4 -2
  7. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/CollectionWrappers/IterableWrapper.cs +13 -9
  8. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Converter.cs +9 -2
  9. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Exceptions.cs +2 -2
  10. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Finalizer.cs +4 -4
  11. pythonnet-3.0.4/src/runtime/InternalPythonnetException.cs +9 -0
  12. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Loader.cs +3 -3
  13. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/MethodBinder.cs +10 -5
  14. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/CustomMarshaler.cs +1 -1
  15. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/NativeTypeSpec.cs +1 -1
  16. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/StrPtr.cs +2 -0
  17. pythonnet-3.0.4/src/runtime/PythonTypes/PyFloat.IComparable.cs +34 -0
  18. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyFloat.cs +3 -1
  19. pythonnet-3.0.4/src/runtime/PythonTypes/PyInt.IComparable.cs +136 -0
  20. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyInt.cs +1 -1
  21. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyModule.cs +12 -1
  22. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyObject.cs +18 -1
  23. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyString.cs +20 -1
  24. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyType.cs +1 -1
  25. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Runtime.cs +36 -26
  26. pythonnet-3.0.4/src/runtime/StateSerialization/NoopFormatter.cs +14 -0
  27. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/RuntimeData.cs +132 -6
  28. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ClrObject.cs +8 -0
  29. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/MethodBinding.cs +1 -0
  30. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/MethodObject.cs +5 -5
  31. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/OperatorMethod.cs +6 -12
  32. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ReflectedClrType.cs +19 -12
  33. pythonnet-3.0.4/src/runtime/Util/Encodings.cs +10 -0
  34. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_conversion.py +3 -0
  35. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_module.py +14 -0
  36. pythonnet-3.0.4/version.txt +1 -0
  37. pythonnet-3.0.3/.editorconfig +0 -44
  38. pythonnet-3.0.3/.github/ISSUE_TEMPLATE.md +0 -26
  39. pythonnet-3.0.3/.github/PULL_REQUEST_TEMPLATE.md +0 -21
  40. pythonnet-3.0.3/.github/workflows/ARM.yml +0 -56
  41. pythonnet-3.0.3/.github/workflows/docs.yml +0 -40
  42. pythonnet-3.0.3/.github/workflows/main.yml +0 -96
  43. pythonnet-3.0.3/.github/workflows/nuget-preview.yml +0 -63
  44. pythonnet-3.0.3/.gitignore +0 -71
  45. pythonnet-3.0.3/.mention-bot +0 -35
  46. pythonnet-3.0.3/CHANGELOG.md +0 -952
  47. pythonnet-3.0.3/CONTRIBUTING.md +0 -48
  48. pythonnet-3.0.3/demo/DynamicGrid.py +0 -23
  49. pythonnet-3.0.3/demo/DynamicGrid.xaml +0 -34
  50. pythonnet-3.0.3/demo/helloform.py +0 -63
  51. pythonnet-3.0.3/demo/splitter.py +0 -94
  52. pythonnet-3.0.3/demo/wordpad.py +0 -422
  53. pythonnet-3.0.3/doc/.gitignore +0 -2
  54. pythonnet-3.0.3/doc/Doxyfile +0 -2656
  55. pythonnet-3.0.3/doc/Makefile +0 -20
  56. pythonnet-3.0.3/doc/make.bat +0 -35
  57. pythonnet-3.0.3/doc/requirements.txt +0 -12
  58. pythonnet-3.0.3/doc/source/_static/.keep +0 -0
  59. pythonnet-3.0.3/doc/source/codecs.rst +0 -69
  60. pythonnet-3.0.3/doc/source/conf.py +0 -60
  61. pythonnet-3.0.3/doc/source/dotnet.rst +0 -125
  62. pythonnet-3.0.3/doc/source/index.rst +0 -68
  63. pythonnet-3.0.3/doc/source/pyreference.rst +0 -10
  64. pythonnet-3.0.3/doc/source/python.rst +0 -566
  65. pythonnet-3.0.3/doc/source/reference.rst +0 -42
  66. pythonnet-3.0.3/pythonnet/.gitignore +0 -3
  67. pythonnet-3.0.3/pythonnet/runtime/.gitkeep +0 -0
  68. pythonnet-3.0.3/pythonnet.egg-info/SOURCES.txt +0 -423
  69. pythonnet-3.0.3/requirements.txt +0 -14
  70. pythonnet-3.0.3/src/console/Console.csproj +0 -27
  71. pythonnet-3.0.3/src/console/python-clear.ico +0 -0
  72. pythonnet-3.0.3/src/console/python-clear.png +0 -0
  73. pythonnet-3.0.3/src/console/pythonconsole.cs +0 -82
  74. pythonnet-3.0.3/src/embed_tests/CallableObject.cs +0 -87
  75. pythonnet-3.0.3/src/embed_tests/ClassManagerTests.cs +0 -40
  76. pythonnet-3.0.3/src/embed_tests/CodecGroups.cs +0 -132
  77. pythonnet-3.0.3/src/embed_tests/Codecs.cs +0 -536
  78. pythonnet-3.0.3/src/embed_tests/ExtensionTypes.cs +0 -32
  79. pythonnet-3.0.3/src/embed_tests/GlobalTestsSetup.cs +0 -37
  80. pythonnet-3.0.3/src/embed_tests/Inheritance.cs +0 -225
  81. pythonnet-3.0.3/src/embed_tests/Inspect.cs +0 -59
  82. pythonnet-3.0.3/src/embed_tests/Modules.cs +0 -405
  83. pythonnet-3.0.3/src/embed_tests/NumPyTests.cs +0 -97
  84. pythonnet-3.0.3/src/embed_tests/Python.EmbeddingTest.csproj +0 -35
  85. pythonnet-3.0.3/src/embed_tests/References.cs +0 -47
  86. pythonnet-3.0.3/src/embed_tests/StateSerialization/MethodSerialization.cs +0 -46
  87. pythonnet-3.0.3/src/embed_tests/TestCallbacks.cs +0 -33
  88. pythonnet-3.0.3/src/embed_tests/TestConverter.cs +0 -214
  89. pythonnet-3.0.3/src/embed_tests/TestCustomMarshal.cs +0 -35
  90. pythonnet-3.0.3/src/embed_tests/TestDomainReload.cs +0 -402
  91. pythonnet-3.0.3/src/embed_tests/TestFinalizer.cs +0 -244
  92. pythonnet-3.0.3/src/embed_tests/TestGILState.cs +0 -33
  93. pythonnet-3.0.3/src/embed_tests/TestInstanceWrapping.cs +0 -68
  94. pythonnet-3.0.3/src/embed_tests/TestInterrupt.cs +0 -98
  95. pythonnet-3.0.3/src/embed_tests/TestNamedArguments.cs +0 -64
  96. pythonnet-3.0.3/src/embed_tests/TestNativeTypeOffset.cs +0 -45
  97. pythonnet-3.0.3/src/embed_tests/TestOperator.cs +0 -530
  98. pythonnet-3.0.3/src/embed_tests/TestPyBuffer.cs +0 -161
  99. pythonnet-3.0.3/src/embed_tests/TestPyFloat.cs +0 -130
  100. pythonnet-3.0.3/src/embed_tests/TestPyInt.cs +0 -224
  101. pythonnet-3.0.3/src/embed_tests/TestPyIter.cs +0 -37
  102. pythonnet-3.0.3/src/embed_tests/TestPyList.cs +0 -172
  103. pythonnet-3.0.3/src/embed_tests/TestPyNumber.cs +0 -35
  104. pythonnet-3.0.3/src/embed_tests/TestPyObject.cs +0 -111
  105. pythonnet-3.0.3/src/embed_tests/TestPySequence.cs +0 -95
  106. pythonnet-3.0.3/src/embed_tests/TestPyString.cs +0 -116
  107. pythonnet-3.0.3/src/embed_tests/TestPyTuple.cs +0 -171
  108. pythonnet-3.0.3/src/embed_tests/TestPyType.cs +0 -47
  109. pythonnet-3.0.3/src/embed_tests/TestPyWith.cs +0 -88
  110. pythonnet-3.0.3/src/embed_tests/TestPythonEngineProperties.cs +0 -234
  111. pythonnet-3.0.3/src/embed_tests/TestPythonException.cs +0 -180
  112. pythonnet-3.0.3/src/embed_tests/TestRuntime.cs +0 -130
  113. pythonnet-3.0.3/src/embed_tests/dynamic.cs +0 -163
  114. pythonnet-3.0.3/src/embed_tests/fixtures/PyImportTest/__init__.py +0 -1
  115. pythonnet-3.0.3/src/embed_tests/fixtures/PyImportTest/cast_global_var.py +0 -7
  116. pythonnet-3.0.3/src/embed_tests/fixtures/PyImportTest/sysargv.py +0 -5
  117. pythonnet-3.0.3/src/embed_tests/fixtures/PyImportTest/test/__init__.py +0 -1
  118. pythonnet-3.0.3/src/embed_tests/fixtures/PyImportTest/test/one.py +0 -1
  119. pythonnet-3.0.3/src/embed_tests/pyimport.cs +0 -113
  120. pythonnet-3.0.3/src/embed_tests/pyinitialize.cs +0 -157
  121. pythonnet-3.0.3/src/embed_tests/pyrunstring.cs +0 -74
  122. pythonnet-3.0.3/src/perf_tests/BaselineComparisonBenchmarkBase.cs +0 -74
  123. pythonnet-3.0.3/src/perf_tests/BaselineComparisonConfig.cs +0 -53
  124. pythonnet-3.0.3/src/perf_tests/BenchmarkTests.cs +0 -74
  125. pythonnet-3.0.3/src/perf_tests/Python.PerformanceTests.csproj +0 -48
  126. pythonnet-3.0.3/src/perf_tests/PythonCallingNetBenchmark.cs +0 -58
  127. pythonnet-3.0.3/src/perf_tests/baseline/.gitkeep +0 -0
  128. pythonnet-3.0.3/src/python_tests_runner/Python.PythonTestsRunner.csproj +0 -26
  129. pythonnet-3.0.3/src/python_tests_runner/PythonTestRunner.cs +0 -84
  130. pythonnet-3.0.3/src/testing/CodecTest.cs +0 -56
  131. pythonnet-3.0.3/src/testing/InheritanceTest.cs +0 -14
  132. pythonnet-3.0.3/src/testing/Python.Test.csproj +0 -13
  133. pythonnet-3.0.3/src/testing/ReprTest.cs +0 -108
  134. pythonnet-3.0.3/src/testing/arraytest.cs +0 -329
  135. pythonnet-3.0.3/src/testing/callbacktest.cs +0 -44
  136. pythonnet-3.0.3/src/testing/classtest.cs +0 -74
  137. pythonnet-3.0.3/src/testing/constructortests.cs +0 -86
  138. pythonnet-3.0.3/src/testing/conversiontest.cs +0 -97
  139. pythonnet-3.0.3/src/testing/delegatetest.cs +0 -103
  140. pythonnet-3.0.3/src/testing/doctest.cs +0 -58
  141. pythonnet-3.0.3/src/testing/enumtest.cs +0 -101
  142. pythonnet-3.0.3/src/testing/eventtest.cs +0 -160
  143. pythonnet-3.0.3/src/testing/exceptiontest.cs +0 -145
  144. pythonnet-3.0.3/src/testing/fieldtest.cs +0 -53
  145. pythonnet-3.0.3/src/testing/generictest.cs +0 -147
  146. pythonnet-3.0.3/src/testing/globaltest.cs +0 -7
  147. pythonnet-3.0.3/src/testing/indexertest.cs +0 -449
  148. pythonnet-3.0.3/src/testing/interfacetest.cs +0 -117
  149. pythonnet-3.0.3/src/testing/methodtest.cs +0 -777
  150. pythonnet-3.0.3/src/testing/moduletest.cs +0 -30
  151. pythonnet-3.0.3/src/testing/mp_lengthtest.cs +0 -171
  152. pythonnet-3.0.3/src/testing/nonexportable.cs +0 -8
  153. pythonnet-3.0.3/src/testing/propertytest.cs +0 -84
  154. pythonnet-3.0.3/src/testing/subclasstest.cs +0 -127
  155. pythonnet-3.0.3/src/testing/threadtest.cs +0 -69
  156. pythonnet-3.0.3/tests/__init__.py +0 -1
  157. pythonnet-3.0.3/tests/_missing_import.py +0 -3
  158. pythonnet-3.0.3/tests/conftest.py +0 -120
  159. pythonnet-3.0.3/tests/domain_tests/App.config +0 -6
  160. pythonnet-3.0.3/tests/domain_tests/Python.DomainReloadTests.csproj +0 -26
  161. pythonnet-3.0.3/tests/domain_tests/TestRunner.cs +0 -1373
  162. pythonnet-3.0.3/tests/domain_tests/test_domain_reload.py +0 -90
  163. pythonnet-3.0.3/tests/fixtures/argv-fixture.py +0 -12
  164. pythonnet-3.0.3/tests/importtest.py +0 -13
  165. pythonnet-3.0.3/tests/leaktest.py +0 -332
  166. pythonnet-3.0.3/tests/profile.py +0 -40
  167. pythonnet-3.0.3/tests/runtests.py +0 -38
  168. pythonnet-3.0.3/tests/stress.py +0 -77
  169. pythonnet-3.0.3/tests/stresstest.py +0 -58
  170. pythonnet-3.0.3/tests/tests.pyproj +0 -65
  171. pythonnet-3.0.3/tests/utils.py +0 -135
  172. pythonnet-3.0.3/tools/geninterop/fake_libc_include/_ansi.h +0 -2
  173. pythonnet-3.0.3/tools/geninterop/fake_libc_include/_fake_defines.h +0 -46
  174. pythonnet-3.0.3/tools/geninterop/fake_libc_include/_fake_typedefs.h +0 -155
  175. pythonnet-3.0.3/tools/geninterop/fake_libc_include/_syslist.h +0 -2
  176. pythonnet-3.0.3/tools/geninterop/fake_libc_include/alloca.h +0 -2
  177. pythonnet-3.0.3/tools/geninterop/fake_libc_include/ar.h +0 -2
  178. pythonnet-3.0.3/tools/geninterop/fake_libc_include/argz.h +0 -2
  179. pythonnet-3.0.3/tools/geninterop/fake_libc_include/arpa/inet.h +0 -2
  180. pythonnet-3.0.3/tools/geninterop/fake_libc_include/asm-generic/int-ll64.h +0 -2
  181. pythonnet-3.0.3/tools/geninterop/fake_libc_include/assert.h +0 -2
  182. pythonnet-3.0.3/tools/geninterop/fake_libc_include/complex.h +0 -2
  183. pythonnet-3.0.3/tools/geninterop/fake_libc_include/crypt.h +0 -1
  184. pythonnet-3.0.3/tools/geninterop/fake_libc_include/ctype.h +0 -2
  185. pythonnet-3.0.3/tools/geninterop/fake_libc_include/dirent.h +0 -2
  186. pythonnet-3.0.3/tools/geninterop/fake_libc_include/dlfcn.h +0 -2
  187. pythonnet-3.0.3/tools/geninterop/fake_libc_include/endian.h +0 -2
  188. pythonnet-3.0.3/tools/geninterop/fake_libc_include/envz.h +0 -2
  189. pythonnet-3.0.3/tools/geninterop/fake_libc_include/errno.h +0 -2
  190. pythonnet-3.0.3/tools/geninterop/fake_libc_include/fastmath.h +0 -2
  191. pythonnet-3.0.3/tools/geninterop/fake_libc_include/fcntl.h +0 -2
  192. pythonnet-3.0.3/tools/geninterop/fake_libc_include/features.h +0 -2
  193. pythonnet-3.0.3/tools/geninterop/fake_libc_include/fenv.h +0 -2
  194. pythonnet-3.0.3/tools/geninterop/fake_libc_include/float.h +0 -2
  195. pythonnet-3.0.3/tools/geninterop/fake_libc_include/getopt.h +0 -2
  196. pythonnet-3.0.3/tools/geninterop/fake_libc_include/grp.h +0 -2
  197. pythonnet-3.0.3/tools/geninterop/fake_libc_include/iconv.h +0 -2
  198. pythonnet-3.0.3/tools/geninterop/fake_libc_include/ieeefp.h +0 -2
  199. pythonnet-3.0.3/tools/geninterop/fake_libc_include/inttypes.h +0 -2
  200. pythonnet-3.0.3/tools/geninterop/fake_libc_include/io.h +0 -0
  201. pythonnet-3.0.3/tools/geninterop/fake_libc_include/iso646.h +0 -2
  202. pythonnet-3.0.3/tools/geninterop/fake_libc_include/langinfo.h +0 -2
  203. pythonnet-3.0.3/tools/geninterop/fake_libc_include/libgen.h +0 -2
  204. pythonnet-3.0.3/tools/geninterop/fake_libc_include/libintl.h +0 -2
  205. pythonnet-3.0.3/tools/geninterop/fake_libc_include/limits.h +0 -2
  206. pythonnet-3.0.3/tools/geninterop/fake_libc_include/linux/socket.h +0 -2
  207. pythonnet-3.0.3/tools/geninterop/fake_libc_include/linux/version.h +0 -2
  208. pythonnet-3.0.3/tools/geninterop/fake_libc_include/locale.h +0 -2
  209. pythonnet-3.0.3/tools/geninterop/fake_libc_include/malloc.h +0 -2
  210. pythonnet-3.0.3/tools/geninterop/fake_libc_include/math.h +0 -2
  211. pythonnet-3.0.3/tools/geninterop/fake_libc_include/netdb.h +0 -2
  212. pythonnet-3.0.3/tools/geninterop/fake_libc_include/netinet/in.h +0 -2
  213. pythonnet-3.0.3/tools/geninterop/fake_libc_include/netinet/tcp.h +0 -2
  214. pythonnet-3.0.3/tools/geninterop/fake_libc_include/newlib.h +0 -2
  215. pythonnet-3.0.3/tools/geninterop/fake_libc_include/openssl/err.h +0 -2
  216. pythonnet-3.0.3/tools/geninterop/fake_libc_include/openssl/evp.h +0 -2
  217. pythonnet-3.0.3/tools/geninterop/fake_libc_include/openssl/hmac.h +0 -2
  218. pythonnet-3.0.3/tools/geninterop/fake_libc_include/openssl/ssl.h +0 -2
  219. pythonnet-3.0.3/tools/geninterop/fake_libc_include/openssl/x509v3.h +0 -2
  220. pythonnet-3.0.3/tools/geninterop/fake_libc_include/paths.h +0 -2
  221. pythonnet-3.0.3/tools/geninterop/fake_libc_include/process.h +0 -2
  222. pythonnet-3.0.3/tools/geninterop/fake_libc_include/pthread.h +0 -2
  223. pythonnet-3.0.3/tools/geninterop/fake_libc_include/pwd.h +0 -2
  224. pythonnet-3.0.3/tools/geninterop/fake_libc_include/reent.h +0 -2
  225. pythonnet-3.0.3/tools/geninterop/fake_libc_include/regdef.h +0 -2
  226. pythonnet-3.0.3/tools/geninterop/fake_libc_include/regex.h +0 -2
  227. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sched.h +0 -2
  228. pythonnet-3.0.3/tools/geninterop/fake_libc_include/search.h +0 -2
  229. pythonnet-3.0.3/tools/geninterop/fake_libc_include/semaphore.h +0 -2
  230. pythonnet-3.0.3/tools/geninterop/fake_libc_include/setjmp.h +0 -2
  231. pythonnet-3.0.3/tools/geninterop/fake_libc_include/signal.h +0 -2
  232. pythonnet-3.0.3/tools/geninterop/fake_libc_include/stdarg.h +0 -2
  233. pythonnet-3.0.3/tools/geninterop/fake_libc_include/stdbool.h +0 -2
  234. pythonnet-3.0.3/tools/geninterop/fake_libc_include/stddef.h +0 -2
  235. pythonnet-3.0.3/tools/geninterop/fake_libc_include/stdint.h +0 -2
  236. pythonnet-3.0.3/tools/geninterop/fake_libc_include/stdio.h +0 -2
  237. pythonnet-3.0.3/tools/geninterop/fake_libc_include/stdlib.h +0 -2
  238. pythonnet-3.0.3/tools/geninterop/fake_libc_include/string.h +0 -2
  239. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/ioctl.h +0 -2
  240. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/mman.h +0 -2
  241. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/poll.h +0 -2
  242. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/resource.h +0 -2
  243. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/select.h +0 -2
  244. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/socket.h +0 -2
  245. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/stat.h +0 -2
  246. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/sysctl.h +0 -2
  247. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/time.h +0 -2
  248. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/types.h +0 -2
  249. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/uio.h +0 -2
  250. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/un.h +0 -2
  251. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/utsname.h +0 -2
  252. pythonnet-3.0.3/tools/geninterop/fake_libc_include/sys/wait.h +0 -2
  253. pythonnet-3.0.3/tools/geninterop/fake_libc_include/syslog.h +0 -2
  254. pythonnet-3.0.3/tools/geninterop/fake_libc_include/tar.h +0 -2
  255. pythonnet-3.0.3/tools/geninterop/fake_libc_include/termios.h +0 -2
  256. pythonnet-3.0.3/tools/geninterop/fake_libc_include/tgmath.h +0 -2
  257. pythonnet-3.0.3/tools/geninterop/fake_libc_include/time.h +0 -2
  258. pythonnet-3.0.3/tools/geninterop/fake_libc_include/unctrl.h +0 -2
  259. pythonnet-3.0.3/tools/geninterop/fake_libc_include/unistd.h +0 -2
  260. pythonnet-3.0.3/tools/geninterop/fake_libc_include/utime.h +0 -2
  261. pythonnet-3.0.3/tools/geninterop/fake_libc_include/utmp.h +0 -2
  262. pythonnet-3.0.3/tools/geninterop/fake_libc_include/wchar.h +0 -2
  263. pythonnet-3.0.3/tools/geninterop/fake_libc_include/wctype.h +0 -2
  264. pythonnet-3.0.3/tools/geninterop/fake_libc_include/zlib.h +0 -2
  265. pythonnet-3.0.3/tools/geninterop/geninterop.py +0 -377
  266. pythonnet-3.0.3/version.txt +0 -1
  267. {pythonnet-3.0.3 → pythonnet-3.0.4}/Directory.Build.props +0 -0
  268. {pythonnet-3.0.3 → pythonnet-3.0.4}/LICENSE +0 -0
  269. {pythonnet-3.0.3 → pythonnet-3.0.4}/MANIFEST.in +0 -0
  270. {pythonnet-3.0.3 → pythonnet-3.0.4}/README.rst +0 -0
  271. {pythonnet-3.0.3 → pythonnet-3.0.4}/clr.py +0 -0
  272. {pythonnet-3.0.3 → pythonnet-3.0.4}/pyproject.toml +0 -0
  273. {pythonnet-3.0.3 → pythonnet-3.0.4}/pythonnet/__init__.py +0 -0
  274. {pythonnet-3.0.3 → pythonnet-3.0.4}/pythonnet.egg-info/dependency_links.txt +0 -0
  275. {pythonnet-3.0.3 → pythonnet-3.0.4}/pythonnet.egg-info/not-zip-safe +0 -0
  276. {pythonnet-3.0.3 → pythonnet-3.0.4}/pythonnet.egg-info/requires.txt +0 -0
  277. {pythonnet-3.0.3 → pythonnet-3.0.4}/pythonnet.egg-info/top_level.txt +0 -0
  278. {pythonnet-3.0.3 → pythonnet-3.0.4}/pythonnet.sln +0 -0
  279. {pythonnet-3.0.3 → pythonnet-3.0.4}/setup.cfg +0 -0
  280. {pythonnet-3.0.3 → pythonnet-3.0.4}/setup.py +0 -0
  281. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/pythonnet.snk +0 -0
  282. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Codecs/DecoderGroup.cs +0 -0
  283. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Codecs/EncoderGroup.cs +0 -0
  284. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Codecs/EnumPyIntCodec.cs +0 -0
  285. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Codecs/IPyObjectDecoder.cs +0 -0
  286. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Codecs/IPyObjectEncoder.cs +0 -0
  287. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Codecs/IterableDecoder.cs +0 -0
  288. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Codecs/ListDecoder.cs +0 -0
  289. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Codecs/PyObjectConversions.cs +0 -0
  290. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Codecs/RawProxyEncoder.cs +0 -0
  291. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Codecs/SequenceDecoder.cs +0 -0
  292. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Codecs/TupleCodecs.cs +0 -0
  293. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/CollectionWrappers/ListWrapper.cs +0 -0
  294. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/CollectionWrappers/SequenceWrapper.cs +0 -0
  295. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/DefaultBaseTypeProvider.cs +0 -0
  296. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/DelegateManager.cs +0 -0
  297. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/IPythonBaseTypeProvider.cs +0 -0
  298. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/ImportHook.cs +0 -0
  299. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Interfaces.cs +0 -0
  300. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/InternString.cs +0 -0
  301. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Interop.cs +0 -0
  302. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/InteropConfiguration.cs +0 -0
  303. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Mixins/CollectionMixinsProvider.cs +0 -0
  304. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Mixins/collections.py +0 -0
  305. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/ABI.cs +0 -0
  306. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/BorrowedReference.cs +0 -0
  307. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/GeneratedTypeOffsets.cs +0 -0
  308. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/ITypeOffsets.cs +0 -0
  309. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/LibDL.cs +0 -0
  310. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/LibraryLoader.cs +0 -0
  311. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/NativeCall.cs +0 -0
  312. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/NativeFunc.cs +0 -0
  313. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/NewReference.cs +0 -0
  314. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/PyBufferInterface.cs +0 -0
  315. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/PyCompilerFlags.cs +0 -0
  316. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/PyGILState.cs +0 -0
  317. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/PyIdentifier_.cs +0 -0
  318. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/PyIdentifier_.tt +0 -0
  319. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/PyInterpreterState.cs +0 -0
  320. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/PyMemberFlags.cs +0 -0
  321. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/PyMemberType.cs +0 -0
  322. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/PyMethodFlags.cs +0 -0
  323. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/PyThreadState.cs +0 -0
  324. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/ReferenceExtensions.cs +0 -0
  325. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/StolenReference.cs +0 -0
  326. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/TypeOffset.cs +0 -0
  327. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/TypeOffset310.cs +0 -0
  328. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/TypeOffset311.cs +0 -0
  329. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/TypeOffset312.cs +0 -0
  330. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/TypeOffset37.cs +0 -0
  331. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/TypeOffset38.cs +0 -0
  332. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Native/TypeOffset39.cs +0 -0
  333. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Properties/AssemblyInfo.cs +0 -0
  334. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Py.cs +0 -0
  335. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PyExportAttribute.cs +0 -0
  336. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Python.Runtime.csproj +0 -0
  337. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonBaseTypeProviderGroup.cs +0 -0
  338. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonEngine.cs +0 -0
  339. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonException.cs +0 -0
  340. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyBuffer.cs +0 -0
  341. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyDict.cs +0 -0
  342. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyIter.cs +0 -0
  343. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyIterable.cs +0 -0
  344. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyList.cs +0 -0
  345. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyNumber.cs +0 -0
  346. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyObject.IConvertible.cs +0 -0
  347. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PySequence.cs +0 -0
  348. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/PyTuple.cs +0 -0
  349. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/PythonTypes/TypeSpec.cs +0 -0
  350. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/README.md +0 -0
  351. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Resources/clr.py +0 -0
  352. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Resources/interop.py +0 -0
  353. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Runtime.Delegates.cs +0 -0
  354. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/RuntimeState.cs +0 -0
  355. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/CLRMappedItem.cs +0 -0
  356. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/CLRWrapperCollection.cs +0 -0
  357. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/ClassManagerState.cs +0 -0
  358. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/ICLRObjectStorer.cs +0 -0
  359. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/ImportHookState.cs +0 -0
  360. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/MaybeMemberInfo.cs +0 -0
  361. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/MaybeMethodBase.cs +0 -0
  362. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/MaybeType.cs +0 -0
  363. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/MetatypeState.cs +0 -0
  364. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/PythonNetState.cs +0 -0
  365. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/SharedObjectsState.cs +0 -0
  366. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/TypeManagerState.cs +0 -0
  367. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/StateSerialization/UnloadedClass.cs +0 -0
  368. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/TypeManager.cs +0 -0
  369. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ArrayObject.cs +0 -0
  370. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ClassBase.cs +0 -0
  371. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ClassDerived.cs +0 -0
  372. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ClassObject.cs +0 -0
  373. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ClrModule.cs +0 -0
  374. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/DelegateObject.cs +0 -0
  375. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/EventBinding.cs +0 -0
  376. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/EventObject.cs +0 -0
  377. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ExceptionClassObject.cs +0 -0
  378. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ExtensionType.cs +0 -0
  379. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/FieldObject.cs +0 -0
  380. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/GenericType.cs +0 -0
  381. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/Indexer.cs +0 -0
  382. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/InterfaceObject.cs +0 -0
  383. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/Iterator.cs +0 -0
  384. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ManagedType.cs +0 -0
  385. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ManagedTypes.cd +0 -0
  386. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/MetaType.cs +0 -0
  387. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ModuleFunctionObject.cs +0 -0
  388. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ModuleObject.cs +0 -0
  389. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/ModulePropertyObject.cs +0 -0
  390. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/MpLengthSlot.cs +0 -0
  391. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/OverloadMapper.cs +0 -0
  392. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/PropertyObject.cs +0 -0
  393. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Types/UnsafeReferenceWithRun.cs +0 -0
  394. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/CodeGenerator.cs +0 -0
  395. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/DebugUtil.cs +0 -0
  396. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/EventHandlerCollection.cs +0 -0
  397. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/GenericUtil.cs +0 -0
  398. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/InitOnly.cs +0 -0
  399. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/NonCopyableAttribute.cs +0 -0
  400. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/NullOnly.cs +0 -0
  401. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/OpsHelper.cs +0 -0
  402. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/ParameterHelper.cs +0 -0
  403. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/PythonReferenceComparer.cs +0 -0
  404. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/ReflectionPolyfills.cs +0 -0
  405. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/ReflectionUtil.cs +0 -0
  406. {pythonnet-3.0.3 → pythonnet-3.0.4}/src/runtime/Util/Util.cs +0 -0
  407. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_array.py +0 -0
  408. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_callback.py +0 -0
  409. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_class.py +0 -0
  410. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_clrmethod.py +0 -0
  411. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_codec.py +0 -0
  412. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_collection_mixins.py +0 -0
  413. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_constructors.py +0 -0
  414. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_delegate.py +0 -0
  415. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_docstring.py +0 -0
  416. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_engine.py +0 -0
  417. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_enum.py +0 -0
  418. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_event.py +0 -0
  419. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_exceptions.py +0 -0
  420. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_field.py +0 -0
  421. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_generic.py +0 -0
  422. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_import.py +0 -0
  423. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_indexer.py +0 -0
  424. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_interface.py +0 -0
  425. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_method.py +0 -0
  426. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_mp_length.py +0 -0
  427. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_property.py +0 -0
  428. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_recursive_types.py +0 -0
  429. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_repr.py +0 -0
  430. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_subclass.py +0 -0
  431. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_sysargv.py +0 -0
  432. {pythonnet-3.0.3 → pythonnet-3.0.4}/tests/test_thread.py +0 -0
@@ -38,6 +38,7 @@
38
38
  - Dmitriy Se ([@dmitriyse](https://github.com/dmitriyse))
39
39
  - Félix Bourbonnais ([@BadSingleton](https://github.com/BadSingleton))
40
40
  - Florian Treurniet ([@ftreurni](https://github.com/ftreurni))
41
+ - Frank Witscher ([@Frawak](https://github.com/Frawak))
41
42
  - He-chien Tsai ([@t3476](https://github.com/t3476))
42
43
  - Inna Wiesel ([@inna-w](https://github.com/inna-w))
43
44
  - Ivan Cronyn ([@cronan](https://github.com/cronan))
@@ -86,3 +87,4 @@
86
87
  - ([@gpetrou](https://github.com/gpetrou))
87
88
  - Ehsan Iran-Nejad ([@eirannejad](https://github.com/eirannejad))
88
89
  - ([@legomanww](https://github.com/legomanww))
90
+ - ([@gertdreyer](https://github.com/gertdreyer))
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pythonnet
3
- Version: 3.0.3
3
+ Version: 3.0.4
4
4
  Summary: .NET and Mono integration for Python
5
5
  Author-email: "The Contributors of the Python.NET Project" <pythonnet@python.org>
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pythonnet
3
- Version: 3.0.3
3
+ Version: 3.0.4
4
4
  Summary: .NET and Mono integration for Python
5
5
  Author-email: "The Contributors of the Python.NET Project" <pythonnet@python.org>
6
6
  License: MIT
@@ -0,0 +1,200 @@
1
+ AUTHORS.md
2
+ Directory.Build.props
3
+ LICENSE
4
+ MANIFEST.in
5
+ README.rst
6
+ clr.py
7
+ pyproject.toml
8
+ pythonnet.sln
9
+ setup.py
10
+ version.txt
11
+ pythonnet/__init__.py
12
+ pythonnet.egg-info/PKG-INFO
13
+ pythonnet.egg-info/SOURCES.txt
14
+ pythonnet.egg-info/dependency_links.txt
15
+ pythonnet.egg-info/not-zip-safe
16
+ pythonnet.egg-info/requires.txt
17
+ pythonnet.egg-info/top_level.txt
18
+ src/pythonnet.snk
19
+ src/runtime/AssemblyManager.cs
20
+ src/runtime/ClassManager.cs
21
+ src/runtime/Converter.cs
22
+ src/runtime/DefaultBaseTypeProvider.cs
23
+ src/runtime/DelegateManager.cs
24
+ src/runtime/Exceptions.cs
25
+ src/runtime/Finalizer.cs
26
+ src/runtime/IPythonBaseTypeProvider.cs
27
+ src/runtime/ImportHook.cs
28
+ src/runtime/Interfaces.cs
29
+ src/runtime/InternString.cs
30
+ src/runtime/InternalPythonnetException.cs
31
+ src/runtime/Interop.cs
32
+ src/runtime/InteropConfiguration.cs
33
+ src/runtime/Loader.cs
34
+ src/runtime/MethodBinder.cs
35
+ src/runtime/Py.cs
36
+ src/runtime/PyExportAttribute.cs
37
+ src/runtime/Python.Runtime.csproj
38
+ src/runtime/PythonBaseTypeProviderGroup.cs
39
+ src/runtime/PythonEngine.cs
40
+ src/runtime/PythonException.cs
41
+ src/runtime/README.md
42
+ src/runtime/Runtime.Delegates.cs
43
+ src/runtime/Runtime.cs
44
+ src/runtime/RuntimeState.cs
45
+ src/runtime/TypeManager.cs
46
+ src/runtime/Codecs/DecoderGroup.cs
47
+ src/runtime/Codecs/EncoderGroup.cs
48
+ src/runtime/Codecs/EnumPyIntCodec.cs
49
+ src/runtime/Codecs/IPyObjectDecoder.cs
50
+ src/runtime/Codecs/IPyObjectEncoder.cs
51
+ src/runtime/Codecs/IterableDecoder.cs
52
+ src/runtime/Codecs/ListDecoder.cs
53
+ src/runtime/Codecs/PyObjectConversions.cs
54
+ src/runtime/Codecs/RawProxyEncoder.cs
55
+ src/runtime/Codecs/SequenceDecoder.cs
56
+ src/runtime/Codecs/TupleCodecs.cs
57
+ src/runtime/CollectionWrappers/IterableWrapper.cs
58
+ src/runtime/CollectionWrappers/ListWrapper.cs
59
+ src/runtime/CollectionWrappers/SequenceWrapper.cs
60
+ src/runtime/Mixins/CollectionMixinsProvider.cs
61
+ src/runtime/Mixins/collections.py
62
+ src/runtime/Native/ABI.cs
63
+ src/runtime/Native/BorrowedReference.cs
64
+ src/runtime/Native/CustomMarshaler.cs
65
+ src/runtime/Native/GeneratedTypeOffsets.cs
66
+ src/runtime/Native/ITypeOffsets.cs
67
+ src/runtime/Native/LibDL.cs
68
+ src/runtime/Native/LibraryLoader.cs
69
+ src/runtime/Native/NativeCall.cs
70
+ src/runtime/Native/NativeFunc.cs
71
+ src/runtime/Native/NativeTypeSpec.cs
72
+ src/runtime/Native/NewReference.cs
73
+ src/runtime/Native/PyBufferInterface.cs
74
+ src/runtime/Native/PyCompilerFlags.cs
75
+ src/runtime/Native/PyGILState.cs
76
+ src/runtime/Native/PyIdentifier_.cs
77
+ src/runtime/Native/PyIdentifier_.tt
78
+ src/runtime/Native/PyInterpreterState.cs
79
+ src/runtime/Native/PyMemberFlags.cs
80
+ src/runtime/Native/PyMemberType.cs
81
+ src/runtime/Native/PyMethodFlags.cs
82
+ src/runtime/Native/PyThreadState.cs
83
+ src/runtime/Native/ReferenceExtensions.cs
84
+ src/runtime/Native/StolenReference.cs
85
+ src/runtime/Native/StrPtr.cs
86
+ src/runtime/Native/TypeOffset.cs
87
+ src/runtime/Native/TypeOffset310.cs
88
+ src/runtime/Native/TypeOffset311.cs
89
+ src/runtime/Native/TypeOffset312.cs
90
+ src/runtime/Native/TypeOffset37.cs
91
+ src/runtime/Native/TypeOffset38.cs
92
+ src/runtime/Native/TypeOffset39.cs
93
+ src/runtime/Properties/AssemblyInfo.cs
94
+ src/runtime/PythonTypes/PyBuffer.cs
95
+ src/runtime/PythonTypes/PyDict.cs
96
+ src/runtime/PythonTypes/PyFloat.IComparable.cs
97
+ src/runtime/PythonTypes/PyFloat.cs
98
+ src/runtime/PythonTypes/PyInt.IComparable.cs
99
+ src/runtime/PythonTypes/PyInt.cs
100
+ src/runtime/PythonTypes/PyIter.cs
101
+ src/runtime/PythonTypes/PyIterable.cs
102
+ src/runtime/PythonTypes/PyList.cs
103
+ src/runtime/PythonTypes/PyModule.cs
104
+ src/runtime/PythonTypes/PyNumber.cs
105
+ src/runtime/PythonTypes/PyObject.IConvertible.cs
106
+ src/runtime/PythonTypes/PyObject.cs
107
+ src/runtime/PythonTypes/PySequence.cs
108
+ src/runtime/PythonTypes/PyString.cs
109
+ src/runtime/PythonTypes/PyTuple.cs
110
+ src/runtime/PythonTypes/PyType.cs
111
+ src/runtime/PythonTypes/TypeSpec.cs
112
+ src/runtime/Resources/clr.py
113
+ src/runtime/Resources/interop.py
114
+ src/runtime/StateSerialization/CLRMappedItem.cs
115
+ src/runtime/StateSerialization/CLRWrapperCollection.cs
116
+ src/runtime/StateSerialization/ClassManagerState.cs
117
+ src/runtime/StateSerialization/ICLRObjectStorer.cs
118
+ src/runtime/StateSerialization/ImportHookState.cs
119
+ src/runtime/StateSerialization/MaybeMemberInfo.cs
120
+ src/runtime/StateSerialization/MaybeMethodBase.cs
121
+ src/runtime/StateSerialization/MaybeType.cs
122
+ src/runtime/StateSerialization/MetatypeState.cs
123
+ src/runtime/StateSerialization/NoopFormatter.cs
124
+ src/runtime/StateSerialization/PythonNetState.cs
125
+ src/runtime/StateSerialization/RuntimeData.cs
126
+ src/runtime/StateSerialization/SharedObjectsState.cs
127
+ src/runtime/StateSerialization/TypeManagerState.cs
128
+ src/runtime/StateSerialization/UnloadedClass.cs
129
+ src/runtime/Types/ArrayObject.cs
130
+ src/runtime/Types/ClassBase.cs
131
+ src/runtime/Types/ClassDerived.cs
132
+ src/runtime/Types/ClassObject.cs
133
+ src/runtime/Types/ClrModule.cs
134
+ src/runtime/Types/ClrObject.cs
135
+ src/runtime/Types/DelegateObject.cs
136
+ src/runtime/Types/EventBinding.cs
137
+ src/runtime/Types/EventObject.cs
138
+ src/runtime/Types/ExceptionClassObject.cs
139
+ src/runtime/Types/ExtensionType.cs
140
+ src/runtime/Types/FieldObject.cs
141
+ src/runtime/Types/GenericType.cs
142
+ src/runtime/Types/Indexer.cs
143
+ src/runtime/Types/InterfaceObject.cs
144
+ src/runtime/Types/Iterator.cs
145
+ src/runtime/Types/ManagedType.cs
146
+ src/runtime/Types/ManagedTypes.cd
147
+ src/runtime/Types/MetaType.cs
148
+ src/runtime/Types/MethodBinding.cs
149
+ src/runtime/Types/MethodObject.cs
150
+ src/runtime/Types/ModuleFunctionObject.cs
151
+ src/runtime/Types/ModuleObject.cs
152
+ src/runtime/Types/ModulePropertyObject.cs
153
+ src/runtime/Types/MpLengthSlot.cs
154
+ src/runtime/Types/OperatorMethod.cs
155
+ src/runtime/Types/OverloadMapper.cs
156
+ src/runtime/Types/PropertyObject.cs
157
+ src/runtime/Types/ReflectedClrType.cs
158
+ src/runtime/Types/UnsafeReferenceWithRun.cs
159
+ src/runtime/Util/CodeGenerator.cs
160
+ src/runtime/Util/DebugUtil.cs
161
+ src/runtime/Util/Encodings.cs
162
+ src/runtime/Util/EventHandlerCollection.cs
163
+ src/runtime/Util/GenericUtil.cs
164
+ src/runtime/Util/InitOnly.cs
165
+ src/runtime/Util/NonCopyableAttribute.cs
166
+ src/runtime/Util/NullOnly.cs
167
+ src/runtime/Util/OpsHelper.cs
168
+ src/runtime/Util/ParameterHelper.cs
169
+ src/runtime/Util/PythonReferenceComparer.cs
170
+ src/runtime/Util/ReflectionPolyfills.cs
171
+ src/runtime/Util/ReflectionUtil.cs
172
+ src/runtime/Util/Util.cs
173
+ tests/test_array.py
174
+ tests/test_callback.py
175
+ tests/test_class.py
176
+ tests/test_clrmethod.py
177
+ tests/test_codec.py
178
+ tests/test_collection_mixins.py
179
+ tests/test_constructors.py
180
+ tests/test_conversion.py
181
+ tests/test_delegate.py
182
+ tests/test_docstring.py
183
+ tests/test_engine.py
184
+ tests/test_enum.py
185
+ tests/test_event.py
186
+ tests/test_exceptions.py
187
+ tests/test_field.py
188
+ tests/test_generic.py
189
+ tests/test_import.py
190
+ tests/test_indexer.py
191
+ tests/test_interface.py
192
+ tests/test_method.py
193
+ tests/test_module.py
194
+ tests/test_mp_length.py
195
+ tests/test_property.py
196
+ tests/test_recursive_types.py
197
+ tests/test_repr.py
198
+ tests/test_subclass.py
199
+ tests/test_sysargv.py
200
+ tests/test_thread.py
@@ -200,6 +200,13 @@ namespace Python.Runtime
200
200
  }
201
201
  else
202
202
  {
203
+ int invalidCharIndex = head.IndexOfAny(Path.GetInvalidPathChars());
204
+ if (invalidCharIndex >= 0)
205
+ {
206
+ using var importWarning = Runtime.PyObject_GetAttrString(Exceptions.exceptions_module, "ImportWarning");
207
+ Exceptions.warn($"Path entry '{head}' has invalid char at position {invalidCharIndex}", importWarning.BorrowOrThrow());
208
+ continue;
209
+ }
203
210
  path = Path.Combine(head, name);
204
211
  }
205
212
 
@@ -290,11 +290,13 @@ namespace Python.Runtime
290
290
 
291
291
  internal static bool ShouldBindMethod(MethodBase mb)
292
292
  {
293
+ if (mb is null) throw new ArgumentNullException(nameof(mb));
293
294
  return (mb.IsPublic || mb.IsFamily || mb.IsFamilyOrAssembly);
294
295
  }
295
296
 
296
297
  internal static bool ShouldBindField(FieldInfo fi)
297
298
  {
299
+ if (fi is null) throw new ArgumentNullException(nameof(fi));
298
300
  return (fi.IsPublic || fi.IsFamily || fi.IsFamilyOrAssembly);
299
301
  }
300
302
 
@@ -326,7 +328,7 @@ namespace Python.Runtime
326
328
 
327
329
  internal static bool ShouldBindEvent(EventInfo ei)
328
330
  {
329
- return ShouldBindMethod(ei.GetAddMethod(true));
331
+ return ei.GetAddMethod(true) is { } add && ShouldBindMethod(add);
330
332
  }
331
333
 
332
334
  private static ClassInfo GetClassInfo(Type type, ClassBase impl)
@@ -546,7 +548,7 @@ namespace Python.Runtime
546
548
  ci.members[pyName] = new MethodObject(type, name, forwardMethods).AllocObject();
547
549
  // Only methods where only the right operand is the declaring type.
548
550
  if (reverseMethods.Length > 0)
549
- ci.members[pyNameReverse] = new MethodObject(type, name, reverseMethods).AllocObject();
551
+ ci.members[pyNameReverse] = new MethodObject(type, name, reverseMethods, argsReversed: true).AllocObject();
550
552
  }
551
553
  }
552
554
 
@@ -24,18 +24,22 @@ namespace Python.Runtime.CollectionWrappers
24
24
  {
25
25
  iterObject = PyIter.GetIter(pyObject);
26
26
  }
27
-
28
- using var _ = iterObject;
29
- while (true)
27
+ try
30
28
  {
31
- using var GIL = Py.GIL();
32
-
33
- if (!iterObject.MoveNext())
29
+ while (true)
34
30
  {
35
- iterObject.Dispose();
36
- break;
31
+ using var _ = Py.GIL();
32
+ if (!iterObject.MoveNext())
33
+ {
34
+ break;
35
+ }
36
+ yield return iterObject.Current.As<T>()!;
37
37
  }
38
- yield return iterObject.Current.As<T>()!;
38
+ }
39
+ finally
40
+ {
41
+ using var _ = Py.GIL();
42
+ iterObject.Dispose();
39
43
  }
40
44
  }
41
45
  }
@@ -133,7 +133,8 @@ namespace Python.Runtime
133
133
  if (EncodableByUser(type, value))
134
134
  {
135
135
  var encoded = PyObjectConversions.TryEncode(value, type);
136
- if (encoded != null) {
136
+ if (encoded != null)
137
+ {
137
138
  return new NewReference(encoded);
138
139
  }
139
140
  }
@@ -334,7 +335,7 @@ namespace Python.Runtime
334
335
 
335
336
  if (obType.IsGenericType && obType.GetGenericTypeDefinition() == typeof(Nullable<>))
336
337
  {
337
- if( value == Runtime.PyNone )
338
+ if (value == Runtime.PyNone)
338
339
  {
339
340
  result = null;
340
341
  return true;
@@ -980,5 +981,11 @@ namespace Python.Runtime
980
981
  if (o is null) return Runtime.None;
981
982
  return Converter.ToPython(o, o.GetType()).MoveToPyObject();
982
983
  }
984
+
985
+ public static PyObject ToPythonAs<T>(this T? o)
986
+ {
987
+ if (o is null) return Runtime.None;
988
+ return Converter.ToPython(o, typeof(T)).MoveToPyObject();
989
+ }
983
990
  }
984
991
  }
@@ -270,7 +270,7 @@ namespace Python.Runtime
270
270
  }
271
271
 
272
272
  using var warn = Runtime.PyObject_GetAttrString(warnings_module.obj, "warn");
273
- Exceptions.ErrorCheck(warn.Borrow());
273
+ warn.BorrowOrThrow();
274
274
 
275
275
  using var argsTemp = Runtime.PyTuple_New(3);
276
276
  BorrowedReference args = argsTemp.BorrowOrThrow();
@@ -283,7 +283,7 @@ namespace Python.Runtime
283
283
  Runtime.PyTuple_SetItem(args, 2, level.StealOrThrow());
284
284
 
285
285
  using var result = Runtime.PyObject_CallObject(warn.Borrow(), args);
286
- Exceptions.ErrorCheck(result.Borrow());
286
+ result.BorrowOrThrow();
287
287
  }
288
288
 
289
289
  public static void warn(string message, BorrowedReference exception)
@@ -191,7 +191,7 @@ namespace Python.Runtime
191
191
  Instance.started = false;
192
192
  }
193
193
 
194
- internal nint DisposeAll()
194
+ internal nint DisposeAll(bool disposeObj = true, bool disposeDerived = true, bool disposeBuffer = true)
195
195
  {
196
196
  if (_objQueue.IsEmpty && _derivedQueue.IsEmpty && _bufferQueue.IsEmpty)
197
197
  return 0;
@@ -216,7 +216,7 @@ namespace Python.Runtime
216
216
 
217
217
  try
218
218
  {
219
- while (!_objQueue.IsEmpty)
219
+ if (disposeObj) while (!_objQueue.IsEmpty)
220
220
  {
221
221
  if (!_objQueue.TryDequeue(out var obj))
222
222
  continue;
@@ -240,7 +240,7 @@ namespace Python.Runtime
240
240
  }
241
241
  }
242
242
 
243
- while (!_derivedQueue.IsEmpty)
243
+ if (disposeDerived) while (!_derivedQueue.IsEmpty)
244
244
  {
245
245
  if (!_derivedQueue.TryDequeue(out var derived))
246
246
  continue;
@@ -258,7 +258,7 @@ namespace Python.Runtime
258
258
  collected++;
259
259
  }
260
260
 
261
- while (!_bufferQueue.IsEmpty)
261
+ if (disposeBuffer) while (!_bufferQueue.IsEmpty)
262
262
  {
263
263
  if (!_bufferQueue.TryDequeue(out var buffer))
264
264
  continue;
@@ -0,0 +1,9 @@
1
+ using System;
2
+
3
+ namespace Python.Runtime;
4
+
5
+ public class InternalPythonnetException : Exception
6
+ {
7
+ public InternalPythonnetException(string message, Exception innerException)
8
+ : base(message, innerException) { }
9
+ }
@@ -12,7 +12,7 @@ namespace Python.Runtime
12
12
  {
13
13
  try
14
14
  {
15
- var dllPath = Encoding.UTF8.GetString((byte*)data.ToPointer(), size);
15
+ var dllPath = Encodings.UTF8.GetString((byte*)data.ToPointer(), size);
16
16
 
17
17
  if (!string.IsNullOrEmpty(dllPath))
18
18
  {
@@ -33,7 +33,7 @@ namespace Python.Runtime
33
33
  );
34
34
  return 1;
35
35
  }
36
-
36
+
37
37
  return 0;
38
38
  }
39
39
 
@@ -41,7 +41,7 @@ namespace Python.Runtime
41
41
  {
42
42
  try
43
43
  {
44
- var command = Encoding.UTF8.GetString((byte*)data.ToPointer(), size);
44
+ var command = Encodings.UTF8.GetString((byte*)data.ToPointer(), size);
45
45
 
46
46
  if (command == "full_shutdown")
47
47
  {
@@ -28,9 +28,12 @@ namespace Python.Runtime
28
28
 
29
29
  [NonSerialized]
30
30
  public bool init = false;
31
+
31
32
  public const bool DefaultAllowThreads = true;
32
33
  public bool allow_threads = DefaultAllowThreads;
33
34
 
35
+ public bool argsReversed = false;
36
+
34
37
  internal MethodBinder()
35
38
  {
36
39
  list = new List<MaybeMethodBase>();
@@ -363,10 +366,10 @@ namespace Python.Runtime
363
366
  _methods = GetMethods();
364
367
  }
365
368
 
366
- return Bind(inst, args, kwargDict, _methods, matchGenerics: true);
369
+ return Bind(inst, args, kwargDict, _methods, matchGenerics: true, argsReversed);
367
370
  }
368
371
 
369
- static Binding? Bind(BorrowedReference inst, BorrowedReference args, Dictionary<string, PyObject> kwargDict, MethodBase[] methods, bool matchGenerics)
372
+ private static Binding? Bind(BorrowedReference inst, BorrowedReference args, Dictionary<string, PyObject> kwargDict, MethodBase[] methods, bool matchGenerics, bool argsReversed = false)
370
373
  {
371
374
  var pynargs = (int)Runtime.PyTuple_Size(args);
372
375
  var isGeneric = false;
@@ -386,7 +389,7 @@ namespace Python.Runtime
386
389
  // Binary operator methods will have 2 CLR args but only one Python arg
387
390
  // (unary operators will have 1 less each), since Python operator methods are bound.
388
391
  isOperator = isOperator && pynargs == pi.Length - 1;
389
- bool isReverse = isOperator && OperatorMethod.IsReverse((MethodInfo)mi); // Only cast if isOperator.
392
+ bool isReverse = isOperator && argsReversed; // Only cast if isOperator.
390
393
  if (isReverse && OperatorMethod.IsComparisonOp((MethodInfo)mi))
391
394
  continue; // Comparison operators in Python have no reverse mode.
392
395
  if (!MatchesArgumentCount(pynargs, pi, kwargDict, out bool paramsArray, out ArrayList? defaultArgList, out int kwargsMatched, out int defaultsNeeded) && !isOperator)
@@ -394,12 +397,14 @@ namespace Python.Runtime
394
397
  continue;
395
398
  }
396
399
  // Preprocessing pi to remove either the first or second argument.
397
- if (isOperator && !isReverse) {
400
+ if (isOperator && !isReverse)
401
+ {
398
402
  // The first Python arg is the right operand, while the bound instance is the left.
399
403
  // We need to skip the first (left operand) CLR argument.
400
404
  pi = pi.Skip(1).ToArray();
401
405
  }
402
- else if (isOperator && isReverse) {
406
+ else if (isOperator && isReverse)
407
+ {
403
408
  // The first Python arg is the left operand.
404
409
  // We need to take the first CLR argument.
405
410
  pi = pi.Take(1).ToArray();
@@ -42,7 +42,7 @@ namespace Python.Runtime
42
42
  internal class UcsMarshaler : MarshalerBase
43
43
  {
44
44
  internal static readonly int _UCS = RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ? 2 : 4;
45
- internal static readonly Encoding PyEncoding = _UCS == 2 ? Encoding.Unicode : Encoding.UTF32;
45
+ internal static readonly Encoding PyEncoding = _UCS == 2 ? Encodings.UTF16 : Encodings.UTF32;
46
46
  private static readonly MarshalerBase Instance = new UcsMarshaler();
47
47
 
48
48
  public override IntPtr MarshalManagedToNative(object managedObj)
@@ -17,7 +17,7 @@ namespace Python.Runtime.Native
17
17
  {
18
18
  if (spec is null) throw new ArgumentNullException(nameof(spec));
19
19
 
20
- this.Name = new StrPtr(spec.Name, Encoding.UTF8);
20
+ this.Name = new StrPtr(spec.Name);
21
21
  this.BasicSize = spec.BasicSize;
22
22
  this.ItemSize = spec.ItemSize;
23
23
  this.Flags = (int)spec.Flags;
@@ -10,6 +10,8 @@ namespace Python.Runtime.Native
10
10
  public IntPtr RawPointer { get; set; }
11
11
  unsafe byte* Bytes => (byte*)this.RawPointer;
12
12
 
13
+ public unsafe StrPtr(string value) : this(value, Encodings.UTF8) {}
14
+
13
15
  public unsafe StrPtr(string value, Encoding encoding)
14
16
  {
15
17
  if (value is null) throw new ArgumentNullException(nameof(value));
@@ -0,0 +1,34 @@
1
+ using System;
2
+
3
+ namespace Python.Runtime;
4
+
5
+ partial class PyFloat : IComparable<double>, IComparable<float>
6
+ , IEquatable<double>, IEquatable<float>
7
+ , IComparable<PyFloat?>, IEquatable<PyFloat?>
8
+ {
9
+ public override bool Equals(object o)
10
+ {
11
+ using var _ = Py.GIL();
12
+ return o switch
13
+ {
14
+ double f64 => this.Equals(f64),
15
+ float f32 => this.Equals(f32),
16
+ _ => base.Equals(o),
17
+ };
18
+ }
19
+
20
+ public int CompareTo(double other) => this.ToDouble().CompareTo(other);
21
+
22
+ public int CompareTo(float other) => this.ToDouble().CompareTo(other);
23
+
24
+ public bool Equals(double other) => this.ToDouble().Equals(other);
25
+
26
+ public bool Equals(float other) => this.ToDouble().Equals(other);
27
+
28
+ public int CompareTo(PyFloat? other)
29
+ {
30
+ return other is null ? 1 : this.CompareTo(other.BorrowNullable());
31
+ }
32
+
33
+ public bool Equals(PyFloat? other) => base.Equals(other);
34
+ }
@@ -8,7 +8,7 @@ namespace Python.Runtime
8
8
  /// PY3: https://docs.python.org/3/c-api/float.html
9
9
  /// for details.
10
10
  /// </summary>
11
- public class PyFloat : PyNumber
11
+ public partial class PyFloat : PyNumber
12
12
  {
13
13
  internal PyFloat(in StolenReference ptr) : base(ptr)
14
14
  {
@@ -100,6 +100,8 @@ namespace Python.Runtime
100
100
  return new PyFloat(op.Steal());
101
101
  }
102
102
 
103
+ public double ToDouble() => Runtime.PyFloat_AsDouble(obj);
104
+
103
105
  public override TypeCode GetTypeCode() => TypeCode.Double;
104
106
  }
105
107
  }