| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent e193126 commit 2736094
6 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -95,6 +95,14 @@ projects using pythonnet can be found in the Wiki: | |||
| 95 | 95 | ||
| 96 | 96 | https://github.com/pythonnet/pythonnet/wiki | |
| 97 | 97 | ||
| 98 | + Python 3.8.0 support | ||
| 99 | + -------------------- | ||
| 100 | + | ||
| 101 | + Some features are disabled in Python 3.8.0 because of | ||
| 102 | + `this bug in Python <https://bugs.python.org/issue37633>`_. The error is | ||
| 103 | + ``System.EntryPointNotFoundException : Unable to find an entry point named | ||
| 104 | + 'Py_CompileString' in DLL 'python38'``. This will be fixed in Python 3.8.1. | ||
| 105 | + | ||
| 98 | 106 | .. |Join the chat at https://gitter.im/pythonnet/pythonnet| image:: https://badges.gitter.im/pythonnet/pythonnet.svg | |
| 99 | 107 | :target: https://gitter.im/pythonnet/pythonnet?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge | |
| 100 | 108 | .. |appveyor shield| image:: https://img.shields.io/appveyor/ci/pythonnet/pythonnet/master.svg?label=AppVeyor | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -23,16 +23,22 @@ environment: | |||
| 23 | 23 | BUILD_OPTS: --xplat | |
| 24 | 24 | - PYTHON_VERSION: 3.7 | |
| 25 | 25 | BUILD_OPTS: --xplat | |
| 26 | + - PYTHON_VERSION: 3.8 | ||
| 27 | + BUILD_OPTS: --xplat | ||
| 26 | 28 | - PYTHON_VERSION: 2.7 | |
| 27 | 29 | - PYTHON_VERSION: 3.5 | |
| 28 | 30 | - PYTHON_VERSION: 3.6 | |
| 29 | 31 | - PYTHON_VERSION: 3.7 | |
| 32 | + - PYTHON_VERSION: 3.8 | ||
| 30 | 33 | ||
| 31 | 34 | matrix: | |
| 32 | 35 | allow_failures: | |
| 33 | 36 | - PYTHON_VERSION: 3.4 | |
| 34 | 37 | BUILD_OPTS: --xplat | |
| 35 | 38 | - PYTHON_VERSION: 3.4 | |
| 39 | + - PYTHON_VERSION: 3.8 | ||
| 40 | + BUILD_OPTS: --xplat | ||
| 41 | + - PYTHON_VERSION: 3.8 | ||
| 36 | 42 | ||
| 37 | 43 | init: | |
| 38 | 44 | # Update Environment Variables based on matrix/platform | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -42,7 +42,7 @@ | |||
| 42 | 42 | <Python2Version>$(PYTHONNET_PY2_VERSION)</Python2Version> | |
| 43 | 43 | <Python2Version Condition="'$(Python2Version)'==''">PYTHON27</Python2Version> | |
| 44 | 44 | <Python3Version>$(PYTHONNET_PY3_VERSION)</Python3Version> | |
| 45 | - <Python3Version Condition="'$(Python3Version)'==''">PYTHON37</Python3Version> | ||
| 45 | + <Python3Version Condition="'$(Python3Version)'==''">PYTHON38</Python3Version> | ||
| 46 | 46 | <PythonWinDefineConstants>$(PYTHONNET_WIN_DEFINE_CONSTANTS)</PythonWinDefineConstants> | |
| 47 | 47 | <PythonWinDefineConstants Condition="'$(PythonWinDefineConstants)'==''">UCS2</PythonWinDefineConstants> | |
| 48 | 48 | <PythonMonoDefineConstants>$(PYTHONNET_MONO_DEFINE_CONSTANTS)</PythonMonoDefineConstants> | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -22,19 +22,19 @@ | |||
| 22 | 22 | </PropertyGroup> | |
| 23 | 23 | <!--We can relax binding to platform because code references no any platform dependent assemblies--> | |
| 24 | 24 | <!--This will allows to use any build of this assebly as a compile ref assebly--> | |
| 25 | - <!--<PropertyGroup Condition=" '$(Platform)' == 'x86'"> | ||
| 26 | - <PlatformTarget>x86</PlatformTarget> | ||
| 27 | - </PropertyGroup> | ||
| 28 | - <PropertyGroup Condition=" '$(Platform)' == 'x64'"> | ||
| 29 | - <PlatformTarget>x64</PlatformTarget> | ||
| 25 | + <!--<PropertyGroup Condition=" '$(Platform)' == 'x86'"> | ||
| 26 | + <PlatformTarget>x86</PlatformTarget> | ||
| 27 | + </PropertyGroup> | ||
| 28 | + <PropertyGroup Condition=" '$(Platform)' == 'x64'"> | ||
| 29 | + <PlatformTarget>x64</PlatformTarget> | ||
| 30 | 30 | </PropertyGroup>--> | |
| 31 | 31 | <PropertyGroup Condition=" '$(Configuration)' == 'ReleaseMono'"> | |
| 32 | 32 | <DefineConstants Condition="'$(DefineConstants)' == ''">PYTHON2;PYTHON27;UCS4</DefineConstants> | |
| 33 | 33 | <Optimize>true</Optimize> | |
| 34 | 34 | <DebugType>pdbonly</DebugType> | |
| 35 | 35 | </PropertyGroup> | |
| 36 | 36 | <PropertyGroup Condition=" '$(Configuration)' == 'ReleaseMonoPY3'"> | |
| 37 | - <DefineConstants Condition="'$(DefineConstants)' == ''">PYTHON3;PYTHON37;UCS4</DefineConstants> | ||
| 37 | + <DefineConstants Condition="'$(DefineConstants)' == ''">PYTHON3;PYTHON38;UCS4</DefineConstants> | ||
| 38 | 38 | <Optimize>true</Optimize> | |
| 39 | 39 | <DebugType>pdbonly</DebugType> | |
| 40 | 40 | </PropertyGroup> | |
@@ -46,7 +46,7 @@ | |||
| 46 | 46 | </PropertyGroup> | |
| 47 | 47 | <PropertyGroup Condition=" '$(Configuration)' == 'DebugMonoPY3'"> | |
| 48 | 48 | <DebugSymbols>true</DebugSymbols> | |
| 49 | - <DefineConstants Condition="'$(DefineConstants)' == ''">PYTHON3;PYTHON37;UCS4;TRACE;DEBUG</DefineConstants> | ||
| 49 | + <DefineConstants Condition="'$(DefineConstants)' == ''">PYTHON3;PYTHON38;UCS4;TRACE;DEBUG</DefineConstants> | ||
| 50 | 50 | <Optimize>false</Optimize> | |
| 51 | 51 | <DebugType>full</DebugType> | |
| 52 | 52 | </PropertyGroup> | |
@@ -56,7 +56,7 @@ | |||
| 56 | 56 | <DebugType>pdbonly</DebugType> | |
| 57 | 57 | </PropertyGroup> | |
| 58 | 58 | <PropertyGroup Condition=" '$(Configuration)' == 'ReleaseWinPY3'"> | |
| 59 | - <DefineConstants Condition="'$(DefineConstants)' == ''">PYTHON3;PYTHON37;UCS2</DefineConstants> | ||
| 59 | + <DefineConstants Condition="'$(DefineConstants)' == ''">PYTHON3;PYTHON38;UCS2</DefineConstants> | ||
| 60 | 60 | <Optimize>true</Optimize> | |
| 61 | 61 | <DebugType>pdbonly</DebugType> | |
| 62 | 62 | </PropertyGroup> | |
@@ -68,7 +68,7 @@ | |||
| 68 | 68 | </PropertyGroup> | |
| 69 | 69 | <PropertyGroup Condition=" '$(Configuration)' == 'DebugWinPY3'"> | |
| 70 | 70 | <DebugSymbols>true</DebugSymbols> | |
| 71 | - <DefineConstants Condition="'$(DefineConstants)' == ''">PYTHON3;PYTHON37;UCS2;TRACE;DEBUG</DefineConstants> | ||
| 71 | + <DefineConstants Condition="'$(DefineConstants)' == ''">PYTHON3;PYTHON38;UCS2;TRACE;DEBUG</DefineConstants> | ||
| 72 | 72 | <Optimize>false</Optimize> | |
| 73 | 73 | <DebugType>full</DebugType> | |
| 74 | 74 | </PropertyGroup> | |
@@ -140,8 +140,8 @@ | |||
| 140 | 140 | <Compile Include="typemanager.cs" /> | |
| 141 | 141 | <Compile Include="typemethod.cs" /> | |
| 142 | 142 | <Compile Include="Util.cs" /> | |
| 143 | - <Compile Include="platform\Types.cs" /> | ||
| 144 | - <Compile Include="platform\LibraryLoader.cs" /> | ||
| 143 | + <Compile Include="platform\Types.cs" /> | ||
| 144 | + <Compile Include="platform\LibraryLoader.cs" /> | ||
| 145 | 145 | </ItemGroup> | |
| 146 | 146 | <ItemGroup Condition=" '$(PythonInteropFile)' != '' "> | |
| 147 | 147 | <Compile Include="$(PythonInteropFile)" /> | |
@@ -151,7 +151,8 @@ | |||
| 151 | 151 | <Compile Include="interop34.cs" /> | |
| 152 | 152 | <Compile Include="interop35.cs" /> | |
| 153 | 153 | <Compile Include="interop36.cs" /> | |
| 154 | - <Compile Include="interop37.cs" /> | ||
| 154 | + <Compile Include="interop37.cs" /> | ||
| 155 | + <Compile Include="interop38.cs" /> | ||
| 155 | 156 | </ItemGroup> | |
| 156 | 157 | <ItemGroup> | |
| 157 | 158 | <None Include="..\pythonnet.snk" /> | |
@@ -170,4 +171,4 @@ | |||
| 170 | 171 | <Copy SourceFiles="$(TargetAssembly)" DestinationFolder="$(PythonBuildDir)" /> | |
| 171 | 172 | <!--Copy SourceFiles="$(TargetAssemblyPdb)" Condition="Exists('$(TargetAssemblyPdb)')" DestinationFolder="$(PythonBuildDir)" /--> | |
| 172 | 173 | </Target> | |
| 173 | - </Project> | ||
| 174 | + </Project> | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -0,0 +1,152 @@ | |||
| 1 | + | ||
| 2 | + // Auto-generated by geninterop.py. | ||
| 3 | + // DO NOT MODIFIY BY HAND. | ||
| 4 | + | ||
| 5 | + | ||
| 6 | + #if PYTHON38 | ||
| 7 | + using System; | ||
| 8 | + using System.Collections; | ||
| 9 | + using System.Collections.Specialized; | ||
| 10 | + using System.Runtime.InteropServices; | ||
| 11 | + using System.Reflection; | ||
| 12 | + using System.Text; | ||
| 13 | + | ||
| 14 | + namespace Python.Runtime | ||
| 15 | + { | ||
| 16 | + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] | ||
| 17 | + internal class TypeOffset | ||
| 18 | + { | ||
| 19 | + static TypeOffset() | ||
| 20 | + { | ||
| 21 | + Type type = typeof(TypeOffset); | ||
| 22 | + FieldInfo[] fi = type.GetFields(); | ||
| 23 | + int size = IntPtr.Size; | ||
| 24 | + for (int i = 0; i < fi.Length; i++) | ||
| 25 | + { | ||
| 26 | + fi[i].SetValue(null, i * size); | ||
| 27 | + } | ||
| 28 | + } | ||
| 29 | + | ||
| 30 | + public static int magic() | ||
| 31 | + { | ||
| 32 | + return ob_size; | ||
| 33 | + } | ||
| 34 | + | ||
| 35 | + // Auto-generated from PyHeapTypeObject in Python.h | ||
| 36 | + public static int ob_refcnt = 0; | ||
| 37 | + public static int ob_type = 0; | ||
| 38 | + public static int ob_size = 0; | ||
| 39 | + public static int tp_name = 0; | ||
| 40 | + public static int tp_basicsize = 0; | ||
| 41 | + public static int tp_itemsize = 0; | ||
| 42 | + public static int tp_dealloc = 0; | ||
| 43 | + public static int tp_vectorcall_offset = 0; | ||
| 44 | + public static int tp_getattr = 0; | ||
| 45 | + public static int tp_setattr = 0; | ||
| 46 | + public static int tp_as_async = 0; | ||
| 47 | + public static int tp_repr = 0; | ||
| 48 | + public static int tp_as_number = 0; | ||
| 49 | + public static int tp_as_sequence = 0; | ||
| 50 | + public static int tp_as_mapping = 0; | ||
| 51 | + public static int tp_hash = 0; | ||
| 52 | + public static int tp_call = 0; | ||
| 53 | + public static int tp_str = 0; | ||
| 54 | + public static int tp_getattro = 0; | ||
| 55 | + public static int tp_setattro = 0; | ||
| 56 | + public static int tp_as_buffer = 0; | ||
| 57 | + public static int tp_flags = 0; | ||
| 58 | + public static int tp_doc = 0; | ||
| 59 | + public static int tp_traverse = 0; | ||
| 60 | + public static int tp_clear = 0; | ||
| 61 | + public static int tp_richcompare = 0; | ||
| 62 | + public static int tp_weaklistoffset = 0; | ||
| 63 | + public static int tp_iter = 0; | ||
| 64 | + public static int tp_iternext = 0; | ||
| 65 | + public static int tp_methods = 0; | ||
| 66 | + public static int tp_members = 0; | ||
| 67 | + public static int tp_getset = 0; | ||
| 68 | + public static int tp_base = 0; | ||
| 69 | + public static int tp_dict = 0; | ||
| 70 | + public static int tp_descr_get = 0; | ||
| 71 | + public static int tp_descr_set = 0; | ||
| 72 | + public static int tp_dictoffset = 0; | ||
| 73 | + public static int tp_init = 0; | ||
| 74 | + public static int tp_alloc = 0; | ||
| 75 | + public static int tp_new = 0; | ||
| 76 | + public static int tp_free = 0; | ||
| 77 | + public static int tp_is_gc = 0; | ||
| 78 | + public static int tp_bases = 0; | ||
| 79 | + public static int tp_mro = 0; | ||
| 80 | + public static int tp_cache = 0; | ||
| 81 | + public static int tp_subclasses = 0; | ||
| 82 | + public static int tp_weaklist = 0; | ||
| 83 | + public static int tp_del = 0; | ||
| 84 | + public static int tp_version_tag = 0; | ||
| 85 | + public static int tp_finalize = 0; | ||
| 86 | + public static int tp_vectorcall = 0; | ||
| 87 | + public static int am_await = 0; | ||
| 88 | + public static int am_aiter = 0; | ||
| 89 | + public static int am_anext = 0; | ||
| 90 | + public static int nb_add = 0; | ||
| 91 | + public static int nb_subtract = 0; | ||
| 92 | + public static int nb_multiply = 0; | ||
| 93 | + public static int nb_remainder = 0; | ||
| 94 | + public static int nb_divmod = 0; | ||
| 95 | + public static int nb_power = 0; | ||
| 96 | + public static int nb_negative = 0; | ||
| 97 | + public static int nb_positive = 0; | ||
| 98 | + public static int nb_absolute = 0; | ||
| 99 | + public static int nb_bool = 0; | ||
| 100 | + public static int nb_invert = 0; | ||
| 101 | + public static int nb_lshift = 0; | ||
| 102 | + public static int nb_rshift = 0; | ||
| 103 | + public static int nb_and = 0; | ||
| 104 | + public static int nb_xor = 0; | ||
| 105 | + public static int nb_or = 0; | ||
| 106 | + public static int nb_int = 0; | ||
| 107 | + public static int nb_reserved = 0; | ||
| 108 | + public static int nb_float = 0; | ||
| 109 | + public static int nb_inplace_add = 0; | ||
| 110 | + public static int nb_inplace_subtract = 0; | ||
| 111 | + public static int nb_inplace_multiply = 0; | ||
| 112 | + public static int nb_inplace_remainder = 0; | ||
| 113 | + public static int nb_inplace_power = 0; | ||
| 114 | + public static int nb_inplace_lshift = 0; | ||
| 115 | + public static int nb_inplace_rshift = 0; | ||
| 116 | + public static int nb_inplace_and = 0; | ||
| 117 | + public static int nb_inplace_xor = 0; | ||
| 118 | + public static int nb_inplace_or = 0; | ||
| 119 | + public static int nb_floor_divide = 0; | ||
| 120 | + public static int nb_true_divide = 0; | ||
| 121 | + public static int nb_inplace_floor_divide = 0; | ||
| 122 | + public static int nb_inplace_true_divide = 0; | ||
| 123 | + public static int nb_index = 0; | ||
| 124 | + public static int nb_matrix_multiply = 0; | ||
| 125 | + public static int nb_inplace_matrix_multiply = 0; | ||
| 126 | + public static int mp_length = 0; | ||
| 127 | + public static int mp_subscript = 0; | ||
| 128 | + public static int mp_ass_subscript = 0; | ||
| 129 | + public static int sq_length = 0; | ||
| 130 | + public static int sq_concat = 0; | ||
| 131 | + public static int sq_repeat = 0; | ||
| 132 | + public static int sq_item = 0; | ||
| 133 | + public static int was_sq_slice = 0; | ||
| 134 | + public static int sq_ass_item = 0; | ||
| 135 | + public static int was_sq_ass_slice = 0; | ||
| 136 | + public static int sq_contains = 0; | ||
| 137 | + public static int sq_inplace_concat = 0; | ||
| 138 | + public static int sq_inplace_repeat = 0; | ||
| 139 | + public static int bf_getbuffer = 0; | ||
| 140 | + public static int bf_releasebuffer = 0; | ||
| 141 | + public static int name = 0; | ||
| 142 | + public static int ht_slots = 0; | ||
| 143 | + public static int qualname = 0; | ||
| 144 | + public static int ht_cached_keys = 0; | ||
| 145 | + | ||
| 146 | + /* here are optional user slots, followed by the members. */ | ||
| 147 | + public static int members = 0; | ||
| 148 | + } | ||
| 149 | + } | ||
| 150 | + | ||
| 151 | + #endif | ||
| 152 | + | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -64,8 +64,11 @@ public class Runtime | |||
| 64 | 64 | #elif PYTHON37 | |
| 65 | 65 | internal const string _pyversion = "3.7"; | |
| 66 | 66 | internal const string _pyver = "37"; | |
| 67 | + #elif PYTHON38 | ||
| 68 | + internal const string _pyversion = "3.8"; | ||
| 69 | + internal const string _pyver = "38"; | ||
| 67 | 70 | #else | |
| 68 | - #error You must define one of PYTHON34 to PYTHON37 or PYTHON27 | ||
| 71 | + #error You must define one of PYTHON34 to PYTHON38 or PYTHON27 | ||
| 69 | 72 | #endif | |
| 70 | 73 | ||
| 71 | 74 | #if MONO_LINUX || MONO_OSX // Linux/macOS use dotted version string | |
| Back | FazBrowse Home | New Git URL |
0 commit comments