Sowanna 0.1.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 (248) hide show
  1. sowanna-0.1.0/PKG-INFO +43 -0
  2. sowanna-0.1.0/README.md +21 -0
  3. sowanna-0.1.0/Sowanna.egg-info/PKG-INFO +43 -0
  4. sowanna-0.1.0/Sowanna.egg-info/SOURCES.txt +246 -0
  5. sowanna-0.1.0/Sowanna.egg-info/dependency_links.txt +1 -0
  6. sowanna-0.1.0/Sowanna.egg-info/entry_points.txt +2 -0
  7. sowanna-0.1.0/Sowanna.egg-info/requires.txt +3 -0
  8. sowanna-0.1.0/Sowanna.egg-info/top_level.txt +1 -0
  9. sowanna-0.1.0/pyproject.toml +42 -0
  10. sowanna-0.1.0/setup.cfg +4 -0
  11. sowanna-0.1.0/sowanna/__init__.py +24 -0
  12. sowanna-0.1.0/sowanna/_bridge/Bridge.deps.json +996 -0
  13. sowanna-0.1.0/sowanna/_bridge/Bridge.dll +0 -0
  14. sowanna-0.1.0/sowanna/_bridge/Bridge.exe +0 -0
  15. sowanna-0.1.0/sowanna/_bridge/Bridge.pdb +0 -0
  16. sowanna-0.1.0/sowanna/_bridge/Bridge.runtimeconfig.json +16 -0
  17. sowanna-0.1.0/sowanna/_bridge/Microsoft.CSharp.dll +0 -0
  18. sowanna-0.1.0/sowanna/_bridge/Microsoft.DiaSymReader.Native.amd64.dll +0 -0
  19. sowanna-0.1.0/sowanna/_bridge/Microsoft.VisualBasic.Core.dll +0 -0
  20. sowanna-0.1.0/sowanna/_bridge/Microsoft.VisualBasic.dll +0 -0
  21. sowanna-0.1.0/sowanna/_bridge/Microsoft.Win32.Primitives.dll +0 -0
  22. sowanna-0.1.0/sowanna/_bridge/Microsoft.Win32.Registry.dll +0 -0
  23. sowanna-0.1.0/sowanna/_bridge/System.AppContext.dll +0 -0
  24. sowanna-0.1.0/sowanna/_bridge/System.Buffers.dll +0 -0
  25. sowanna-0.1.0/sowanna/_bridge/System.Collections.Concurrent.dll +0 -0
  26. sowanna-0.1.0/sowanna/_bridge/System.Collections.Immutable.dll +0 -0
  27. sowanna-0.1.0/sowanna/_bridge/System.Collections.NonGeneric.dll +0 -0
  28. sowanna-0.1.0/sowanna/_bridge/System.Collections.Specialized.dll +0 -0
  29. sowanna-0.1.0/sowanna/_bridge/System.Collections.dll +0 -0
  30. sowanna-0.1.0/sowanna/_bridge/System.ComponentModel.Annotations.dll +0 -0
  31. sowanna-0.1.0/sowanna/_bridge/System.ComponentModel.DataAnnotations.dll +0 -0
  32. sowanna-0.1.0/sowanna/_bridge/System.ComponentModel.EventBasedAsync.dll +0 -0
  33. sowanna-0.1.0/sowanna/_bridge/System.ComponentModel.Primitives.dll +0 -0
  34. sowanna-0.1.0/sowanna/_bridge/System.ComponentModel.TypeConverter.dll +0 -0
  35. sowanna-0.1.0/sowanna/_bridge/System.ComponentModel.dll +0 -0
  36. sowanna-0.1.0/sowanna/_bridge/System.Configuration.dll +0 -0
  37. sowanna-0.1.0/sowanna/_bridge/System.Console.dll +0 -0
  38. sowanna-0.1.0/sowanna/_bridge/System.Core.dll +0 -0
  39. sowanna-0.1.0/sowanna/_bridge/System.Data.Common.dll +0 -0
  40. sowanna-0.1.0/sowanna/_bridge/System.Data.DataSetExtensions.dll +0 -0
  41. sowanna-0.1.0/sowanna/_bridge/System.Data.dll +0 -0
  42. sowanna-0.1.0/sowanna/_bridge/System.Diagnostics.Contracts.dll +0 -0
  43. sowanna-0.1.0/sowanna/_bridge/System.Diagnostics.Debug.dll +0 -0
  44. sowanna-0.1.0/sowanna/_bridge/System.Diagnostics.DiagnosticSource.dll +0 -0
  45. sowanna-0.1.0/sowanna/_bridge/System.Diagnostics.FileVersionInfo.dll +0 -0
  46. sowanna-0.1.0/sowanna/_bridge/System.Diagnostics.Process.dll +0 -0
  47. sowanna-0.1.0/sowanna/_bridge/System.Diagnostics.StackTrace.dll +0 -0
  48. sowanna-0.1.0/sowanna/_bridge/System.Diagnostics.TextWriterTraceListener.dll +0 -0
  49. sowanna-0.1.0/sowanna/_bridge/System.Diagnostics.Tools.dll +0 -0
  50. sowanna-0.1.0/sowanna/_bridge/System.Diagnostics.TraceSource.dll +0 -0
  51. sowanna-0.1.0/sowanna/_bridge/System.Diagnostics.Tracing.dll +0 -0
  52. sowanna-0.1.0/sowanna/_bridge/System.Drawing.Primitives.dll +0 -0
  53. sowanna-0.1.0/sowanna/_bridge/System.Drawing.dll +0 -0
  54. sowanna-0.1.0/sowanna/_bridge/System.Dynamic.Runtime.dll +0 -0
  55. sowanna-0.1.0/sowanna/_bridge/System.Formats.Asn1.dll +0 -0
  56. sowanna-0.1.0/sowanna/_bridge/System.Globalization.Calendars.dll +0 -0
  57. sowanna-0.1.0/sowanna/_bridge/System.Globalization.Extensions.dll +0 -0
  58. sowanna-0.1.0/sowanna/_bridge/System.Globalization.dll +0 -0
  59. sowanna-0.1.0/sowanna/_bridge/System.IO.Compression.Brotli.dll +0 -0
  60. sowanna-0.1.0/sowanna/_bridge/System.IO.Compression.FileSystem.dll +0 -0
  61. sowanna-0.1.0/sowanna/_bridge/System.IO.Compression.Native.dll +0 -0
  62. sowanna-0.1.0/sowanna/_bridge/System.IO.Compression.ZipFile.dll +0 -0
  63. sowanna-0.1.0/sowanna/_bridge/System.IO.Compression.dll +0 -0
  64. sowanna-0.1.0/sowanna/_bridge/System.IO.FileSystem.AccessControl.dll +0 -0
  65. sowanna-0.1.0/sowanna/_bridge/System.IO.FileSystem.DriveInfo.dll +0 -0
  66. sowanna-0.1.0/sowanna/_bridge/System.IO.FileSystem.Primitives.dll +0 -0
  67. sowanna-0.1.0/sowanna/_bridge/System.IO.FileSystem.Watcher.dll +0 -0
  68. sowanna-0.1.0/sowanna/_bridge/System.IO.FileSystem.dll +0 -0
  69. sowanna-0.1.0/sowanna/_bridge/System.IO.IsolatedStorage.dll +0 -0
  70. sowanna-0.1.0/sowanna/_bridge/System.IO.MemoryMappedFiles.dll +0 -0
  71. sowanna-0.1.0/sowanna/_bridge/System.IO.Pipes.AccessControl.dll +0 -0
  72. sowanna-0.1.0/sowanna/_bridge/System.IO.Pipes.dll +0 -0
  73. sowanna-0.1.0/sowanna/_bridge/System.IO.UnmanagedMemoryStream.dll +0 -0
  74. sowanna-0.1.0/sowanna/_bridge/System.IO.dll +0 -0
  75. sowanna-0.1.0/sowanna/_bridge/System.Linq.Expressions.dll +0 -0
  76. sowanna-0.1.0/sowanna/_bridge/System.Linq.Parallel.dll +0 -0
  77. sowanna-0.1.0/sowanna/_bridge/System.Linq.Queryable.dll +0 -0
  78. sowanna-0.1.0/sowanna/_bridge/System.Linq.dll +0 -0
  79. sowanna-0.1.0/sowanna/_bridge/System.Memory.dll +0 -0
  80. sowanna-0.1.0/sowanna/_bridge/System.Net.Http.Json.dll +0 -0
  81. sowanna-0.1.0/sowanna/_bridge/System.Net.Http.dll +0 -0
  82. sowanna-0.1.0/sowanna/_bridge/System.Net.HttpListener.dll +0 -0
  83. sowanna-0.1.0/sowanna/_bridge/System.Net.Mail.dll +0 -0
  84. sowanna-0.1.0/sowanna/_bridge/System.Net.NameResolution.dll +0 -0
  85. sowanna-0.1.0/sowanna/_bridge/System.Net.NetworkInformation.dll +0 -0
  86. sowanna-0.1.0/sowanna/_bridge/System.Net.Ping.dll +0 -0
  87. sowanna-0.1.0/sowanna/_bridge/System.Net.Primitives.dll +0 -0
  88. sowanna-0.1.0/sowanna/_bridge/System.Net.Quic.dll +0 -0
  89. sowanna-0.1.0/sowanna/_bridge/System.Net.Requests.dll +0 -0
  90. sowanna-0.1.0/sowanna/_bridge/System.Net.Security.dll +0 -0
  91. sowanna-0.1.0/sowanna/_bridge/System.Net.ServicePoint.dll +0 -0
  92. sowanna-0.1.0/sowanna/_bridge/System.Net.Sockets.dll +0 -0
  93. sowanna-0.1.0/sowanna/_bridge/System.Net.WebClient.dll +0 -0
  94. sowanna-0.1.0/sowanna/_bridge/System.Net.WebHeaderCollection.dll +0 -0
  95. sowanna-0.1.0/sowanna/_bridge/System.Net.WebProxy.dll +0 -0
  96. sowanna-0.1.0/sowanna/_bridge/System.Net.WebSockets.Client.dll +0 -0
  97. sowanna-0.1.0/sowanna/_bridge/System.Net.WebSockets.dll +0 -0
  98. sowanna-0.1.0/sowanna/_bridge/System.Net.dll +0 -0
  99. sowanna-0.1.0/sowanna/_bridge/System.Numerics.Vectors.dll +0 -0
  100. sowanna-0.1.0/sowanna/_bridge/System.Numerics.dll +0 -0
  101. sowanna-0.1.0/sowanna/_bridge/System.ObjectModel.dll +0 -0
  102. sowanna-0.1.0/sowanna/_bridge/System.Private.CoreLib.dll +0 -0
  103. sowanna-0.1.0/sowanna/_bridge/System.Private.DataContractSerialization.dll +0 -0
  104. sowanna-0.1.0/sowanna/_bridge/System.Private.Uri.dll +0 -0
  105. sowanna-0.1.0/sowanna/_bridge/System.Private.Xml.Linq.dll +0 -0
  106. sowanna-0.1.0/sowanna/_bridge/System.Private.Xml.dll +0 -0
  107. sowanna-0.1.0/sowanna/_bridge/System.Reflection.DispatchProxy.dll +0 -0
  108. sowanna-0.1.0/sowanna/_bridge/System.Reflection.Emit.ILGeneration.dll +0 -0
  109. sowanna-0.1.0/sowanna/_bridge/System.Reflection.Emit.Lightweight.dll +0 -0
  110. sowanna-0.1.0/sowanna/_bridge/System.Reflection.Emit.dll +0 -0
  111. sowanna-0.1.0/sowanna/_bridge/System.Reflection.Extensions.dll +0 -0
  112. sowanna-0.1.0/sowanna/_bridge/System.Reflection.Metadata.dll +0 -0
  113. sowanna-0.1.0/sowanna/_bridge/System.Reflection.Primitives.dll +0 -0
  114. sowanna-0.1.0/sowanna/_bridge/System.Reflection.TypeExtensions.dll +0 -0
  115. sowanna-0.1.0/sowanna/_bridge/System.Reflection.dll +0 -0
  116. sowanna-0.1.0/sowanna/_bridge/System.Resources.Reader.dll +0 -0
  117. sowanna-0.1.0/sowanna/_bridge/System.Resources.ResourceManager.dll +0 -0
  118. sowanna-0.1.0/sowanna/_bridge/System.Resources.Writer.dll +0 -0
  119. sowanna-0.1.0/sowanna/_bridge/System.Runtime.CompilerServices.Unsafe.dll +0 -0
  120. sowanna-0.1.0/sowanna/_bridge/System.Runtime.CompilerServices.VisualC.dll +0 -0
  121. sowanna-0.1.0/sowanna/_bridge/System.Runtime.Extensions.dll +0 -0
  122. sowanna-0.1.0/sowanna/_bridge/System.Runtime.Handles.dll +0 -0
  123. sowanna-0.1.0/sowanna/_bridge/System.Runtime.InteropServices.RuntimeInformation.dll +0 -0
  124. sowanna-0.1.0/sowanna/_bridge/System.Runtime.InteropServices.dll +0 -0
  125. sowanna-0.1.0/sowanna/_bridge/System.Runtime.Intrinsics.dll +0 -0
  126. sowanna-0.1.0/sowanna/_bridge/System.Runtime.Loader.dll +0 -0
  127. sowanna-0.1.0/sowanna/_bridge/System.Runtime.Numerics.dll +0 -0
  128. sowanna-0.1.0/sowanna/_bridge/System.Runtime.Serialization.Formatters.dll +0 -0
  129. sowanna-0.1.0/sowanna/_bridge/System.Runtime.Serialization.Json.dll +0 -0
  130. sowanna-0.1.0/sowanna/_bridge/System.Runtime.Serialization.Primitives.dll +0 -0
  131. sowanna-0.1.0/sowanna/_bridge/System.Runtime.Serialization.Xml.dll +0 -0
  132. sowanna-0.1.0/sowanna/_bridge/System.Runtime.Serialization.dll +0 -0
  133. sowanna-0.1.0/sowanna/_bridge/System.Runtime.dll +0 -0
  134. sowanna-0.1.0/sowanna/_bridge/System.Security.AccessControl.dll +0 -0
  135. sowanna-0.1.0/sowanna/_bridge/System.Security.Claims.dll +0 -0
  136. sowanna-0.1.0/sowanna/_bridge/System.Security.Cryptography.Algorithms.dll +0 -0
  137. sowanna-0.1.0/sowanna/_bridge/System.Security.Cryptography.Cng.dll +0 -0
  138. sowanna-0.1.0/sowanna/_bridge/System.Security.Cryptography.Csp.dll +0 -0
  139. sowanna-0.1.0/sowanna/_bridge/System.Security.Cryptography.Encoding.dll +0 -0
  140. sowanna-0.1.0/sowanna/_bridge/System.Security.Cryptography.OpenSsl.dll +0 -0
  141. sowanna-0.1.0/sowanna/_bridge/System.Security.Cryptography.Primitives.dll +0 -0
  142. sowanna-0.1.0/sowanna/_bridge/System.Security.Cryptography.X509Certificates.dll +0 -0
  143. sowanna-0.1.0/sowanna/_bridge/System.Security.Principal.Windows.dll +0 -0
  144. sowanna-0.1.0/sowanna/_bridge/System.Security.Principal.dll +0 -0
  145. sowanna-0.1.0/sowanna/_bridge/System.Security.SecureString.dll +0 -0
  146. sowanna-0.1.0/sowanna/_bridge/System.Security.dll +0 -0
  147. sowanna-0.1.0/sowanna/_bridge/System.ServiceModel.Web.dll +0 -0
  148. sowanna-0.1.0/sowanna/_bridge/System.ServiceProcess.dll +0 -0
  149. sowanna-0.1.0/sowanna/_bridge/System.Text.Encoding.CodePages.dll +0 -0
  150. sowanna-0.1.0/sowanna/_bridge/System.Text.Encoding.Extensions.dll +0 -0
  151. sowanna-0.1.0/sowanna/_bridge/System.Text.Encoding.dll +0 -0
  152. sowanna-0.1.0/sowanna/_bridge/System.Text.Encodings.Web.dll +0 -0
  153. sowanna-0.1.0/sowanna/_bridge/System.Text.Json.dll +0 -0
  154. sowanna-0.1.0/sowanna/_bridge/System.Text.RegularExpressions.dll +0 -0
  155. sowanna-0.1.0/sowanna/_bridge/System.Threading.Channels.dll +0 -0
  156. sowanna-0.1.0/sowanna/_bridge/System.Threading.Overlapped.dll +0 -0
  157. sowanna-0.1.0/sowanna/_bridge/System.Threading.Tasks.Dataflow.dll +0 -0
  158. sowanna-0.1.0/sowanna/_bridge/System.Threading.Tasks.Extensions.dll +0 -0
  159. sowanna-0.1.0/sowanna/_bridge/System.Threading.Tasks.Parallel.dll +0 -0
  160. sowanna-0.1.0/sowanna/_bridge/System.Threading.Tasks.dll +0 -0
  161. sowanna-0.1.0/sowanna/_bridge/System.Threading.Thread.dll +0 -0
  162. sowanna-0.1.0/sowanna/_bridge/System.Threading.ThreadPool.dll +0 -0
  163. sowanna-0.1.0/sowanna/_bridge/System.Threading.Timer.dll +0 -0
  164. sowanna-0.1.0/sowanna/_bridge/System.Threading.dll +0 -0
  165. sowanna-0.1.0/sowanna/_bridge/System.Transactions.Local.dll +0 -0
  166. sowanna-0.1.0/sowanna/_bridge/System.Transactions.dll +0 -0
  167. sowanna-0.1.0/sowanna/_bridge/System.ValueTuple.dll +0 -0
  168. sowanna-0.1.0/sowanna/_bridge/System.Web.HttpUtility.dll +0 -0
  169. sowanna-0.1.0/sowanna/_bridge/System.Web.dll +0 -0
  170. sowanna-0.1.0/sowanna/_bridge/System.Windows.dll +0 -0
  171. sowanna-0.1.0/sowanna/_bridge/System.Xml.Linq.dll +0 -0
  172. sowanna-0.1.0/sowanna/_bridge/System.Xml.ReaderWriter.dll +0 -0
  173. sowanna-0.1.0/sowanna/_bridge/System.Xml.Serialization.dll +0 -0
  174. sowanna-0.1.0/sowanna/_bridge/System.Xml.XDocument.dll +0 -0
  175. sowanna-0.1.0/sowanna/_bridge/System.Xml.XPath.XDocument.dll +0 -0
  176. sowanna-0.1.0/sowanna/_bridge/System.Xml.XPath.dll +0 -0
  177. sowanna-0.1.0/sowanna/_bridge/System.Xml.XmlDocument.dll +0 -0
  178. sowanna-0.1.0/sowanna/_bridge/System.Xml.XmlSerializer.dll +0 -0
  179. sowanna-0.1.0/sowanna/_bridge/System.Xml.dll +0 -0
  180. sowanna-0.1.0/sowanna/_bridge/System.dll +0 -0
  181. sowanna-0.1.0/sowanna/_bridge/WindowsBase.dll +0 -0
  182. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-console-l1-1-0.dll +0 -0
  183. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-console-l1-2-0.dll +0 -0
  184. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-datetime-l1-1-0.dll +0 -0
  185. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-debug-l1-1-0.dll +0 -0
  186. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-errorhandling-l1-1-0.dll +0 -0
  187. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-fibers-l1-1-0.dll +0 -0
  188. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-file-l1-1-0.dll +0 -0
  189. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-file-l1-2-0.dll +0 -0
  190. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-file-l2-1-0.dll +0 -0
  191. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-handle-l1-1-0.dll +0 -0
  192. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-heap-l1-1-0.dll +0 -0
  193. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-interlocked-l1-1-0.dll +0 -0
  194. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-libraryloader-l1-1-0.dll +0 -0
  195. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-localization-l1-2-0.dll +0 -0
  196. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-memory-l1-1-0.dll +0 -0
  197. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-namedpipe-l1-1-0.dll +0 -0
  198. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-processenvironment-l1-1-0.dll +0 -0
  199. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-processthreads-l1-1-0.dll +0 -0
  200. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-processthreads-l1-1-1.dll +0 -0
  201. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-profile-l1-1-0.dll +0 -0
  202. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-rtlsupport-l1-1-0.dll +0 -0
  203. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-string-l1-1-0.dll +0 -0
  204. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-synch-l1-1-0.dll +0 -0
  205. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-synch-l1-2-0.dll +0 -0
  206. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-sysinfo-l1-1-0.dll +0 -0
  207. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-timezone-l1-1-0.dll +0 -0
  208. sowanna-0.1.0/sowanna/_bridge/api-ms-win-core-util-l1-1-0.dll +0 -0
  209. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-conio-l1-1-0.dll +0 -0
  210. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-convert-l1-1-0.dll +0 -0
  211. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-environment-l1-1-0.dll +0 -0
  212. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-filesystem-l1-1-0.dll +0 -0
  213. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-heap-l1-1-0.dll +0 -0
  214. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-locale-l1-1-0.dll +0 -0
  215. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-math-l1-1-0.dll +0 -0
  216. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-multibyte-l1-1-0.dll +0 -0
  217. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-private-l1-1-0.dll +0 -0
  218. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-process-l1-1-0.dll +0 -0
  219. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-runtime-l1-1-0.dll +0 -0
  220. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-stdio-l1-1-0.dll +0 -0
  221. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-string-l1-1-0.dll +0 -0
  222. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-time-l1-1-0.dll +0 -0
  223. sowanna-0.1.0/sowanna/_bridge/api-ms-win-crt-utility-l1-1-0.dll +0 -0
  224. sowanna-0.1.0/sowanna/_bridge/clretwrc.dll +0 -0
  225. sowanna-0.1.0/sowanna/_bridge/clrjit.dll +0 -0
  226. sowanna-0.1.0/sowanna/_bridge/coreclr.dll +0 -0
  227. sowanna-0.1.0/sowanna/_bridge/createdump.exe +0 -0
  228. sowanna-0.1.0/sowanna/_bridge/dbgshim.dll +0 -0
  229. sowanna-0.1.0/sowanna/_bridge/hostfxr.dll +0 -0
  230. sowanna-0.1.0/sowanna/_bridge/hostpolicy.dll +0 -0
  231. sowanna-0.1.0/sowanna/_bridge/mscordaccore.dll +0 -0
  232. sowanna-0.1.0/sowanna/_bridge/mscordaccore_amd64_amd64_6.0.3624.51421.dll +0 -0
  233. sowanna-0.1.0/sowanna/_bridge/mscordbi.dll +0 -0
  234. sowanna-0.1.0/sowanna/_bridge/mscorlib.dll +0 -0
  235. sowanna-0.1.0/sowanna/_bridge/mscorrc.dll +0 -0
  236. sowanna-0.1.0/sowanna/_bridge/msquic.dll +0 -0
  237. sowanna-0.1.0/sowanna/_bridge/netstandard.dll +0 -0
  238. sowanna-0.1.0/sowanna/_bridge/ucrtbase.dll +0 -0
  239. sowanna-0.1.0/sowanna/bridge.py +185 -0
  240. sowanna-0.1.0/sowanna/charm_enhance.py +193 -0
  241. sowanna-0.1.0/sowanna/cli.py +175 -0
  242. sowanna-0.1.0/sowanna/engine.py +166 -0
  243. sowanna-0.1.0/sowanna/facades.py +247 -0
  244. sowanna-0.1.0/sowanna/manifest.py +190 -0
  245. sowanna-0.1.0/sowanna/protocol.py +74 -0
  246. sowanna-0.1.0/sowanna/stubs.py +127 -0
  247. sowanna-0.1.0/sowanna/version.py +1 -0
  248. sowanna-0.1.0/tests/test_sowanna.py +412 -0
sowanna-0.1.0/PKG-INFO ADDED
@@ -0,0 +1,43 @@
1
+ Metadata-Version: 2.4
2
+ Name: Sowanna
3
+ Version: 0.1.0
4
+ Summary: Мост между Python и C#: вызывайте C#-код из Python через JSON-протокол и Bridge.exe.
5
+ Author-email: CharmLxt <reception.mailspypi@gmail.com>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/CharmLxt/Sowanna
8
+ Project-URL: Source, https://github.com/CharmLxt/Sowanna
9
+ Project-URL: Tracker, https://github.com/CharmLxt/Sowanna/issues
10
+ Keywords: csharp,dotnet,interop,bridge,python,sowanna,charmpkk
11
+ Classifier: Development Status :: 3 - Alpha
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: License :: OSI Approved :: MIT License
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: C#
16
+ Classifier: Environment :: Console
17
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
18
+ Requires-Python: >=3.8
19
+ Description-Content-Type: text/markdown
20
+ Provides-Extra: charm
21
+ Requires-Dist: CharmPkk>=31.10.26b1; extra == "charm"
22
+
23
+ Sowanna. Версия 0.1.0. Автор CharmLxt (PyPI: CharmLxt, email: reception.mailspypi@gmail.com). Ссылка на GitHub: https://github.com/CharmLxt/Sowanna.
24
+
25
+ Sowanna — это библиотека, которая позволяет вызывать методы C# из Python так, будто они Python-функции. Вы пишете C#-проект в своей IDE (Dev C++ Embarcadero, Visual Studio, Rider, что угодно, что умеет .NET), компилируете его в обычную .dll, описываете проект в маленьком JSON-манифесте с расширением .pycsh, и дальше из Python вызываете методы по имени. Ядро бриджа написано на C# — это Bridge.exe, который загружает вашу .dll через рефлексию и держит её в памяти, обмениваясь с Python короткими JSON-сообщениями по stdin/stdout. Никаких сторонних зависимостей в Python, никакого pythonnet, никакого ctypes — только стандартная библиотека и запущенный Bridge.exe.
26
+
27
+ Как это работает. В папке вашего C#-проекта рядом с .csproj лежит файл sowanna.pycsh — это манифест в формате JSON. В нём указано имя проекта, версия, имя скомпилированной .dll, полное имя класса-точки-входа (namespace.class) и опционально список методов с описанием аргументов. Python-сторона Sowanna читает манифест, находит .dll, поднимает Bridge.exe и передаёт в него путь к .dll и имя класса. Bridge загружает сборку, находит класс и дальше на каждый запрос вызывает указанный статический метод через reflection. Каждый запрос — одна строка JSON вида {"id": 1, "method": "Add", "args": [2, 3]} и ответ тоже одна строка. Bridge.exe не перезапускается между вызовами в пределах одной сессии.
28
+
29
+ Обратный вызов Python из C#. В 0.1.0 добавлен настоящий двунаправленный канал. Если в вашем entry-классе объявить публичное статическое поле CallbackHandler типа Func<string, object[], object?>, Bridge.exe автоматически подставит туда свой обработчик после загрузки сборки. Дальше в любом C#-методе вы вызываете CallbackHandler("some_name", new object[]{a, b}) — Bridge отправляет в Python сообщение callback, Python находит зарегистрированный callback по имени (через v.register_callback("some_name", func)), вызывает его, отправляет обратно результат (или ошибку), Bridge получает и возвращает C#-методу. Всё это происходит в том же процессе и в том же потоке, без дополнительных pipe. Пример из HelloWorld: C#-метод CallPythonSum(a, b) вызывает Python-callback "sum" и возвращает его результат. Python-сторона регистрирует v.register_callback("sum", lambda a, b: a + b), и v.CallPythonSum(10, 20) возвращает 30. Протокол обратно совместим: старые сообщения без поля kind считаются обычными response, добавление callback не ломает ничего, что уже работало.
30
+
31
+ Генератор .pyi стабов. Команда sowanna stubs path\to\sowanna.pycsh читает манифест и создаёт рядом файл .pyi с описанием класса и всех методов, с маппингом C#-типов в Python-типы (int → int, string → str, int[] → List[int], bool → bool, void → None, double[] → List[float], всё неизвестное → Any). Если положить этот .pyi рядом с .py-обёрткой, VS Code и PyCharm начнут подсказывать автодополнение для ваших методов, даже если реально они вызываются через getattr. Опция --output указывает явный путь, --class-name задаёт имя класса в стабах (по умолчанию берётся последний сегмент entry_class, то есть "Entry" для "HelloWorld.Entry"). Файл .pyi — это чистый generated code, регенерируется одной командой, никакой ручной правки не требует.
32
+
33
+ Self-contained publish. По умолчанию Bridge собирается framework-dependent: Bridge.exe весит около 500 КБ, но требует установленного .NET 6 Runtime на машине, где Sowanna запускается. Если вы хотите распространять Sowanna-приложение на машины без .NET Runtime, соберите Bridge один раз с флагом .\build.ps1 -SelfContained. Тогда .exe вырастет примерно до 60-70 МБ, но будет работать на любой Windows-машине без установленного .NET. Флаг -SingleFile дополнительно упаковывает всё в один .exe (для 0.1.0 не рекомендую: reflection-based загрузка вашей .dll работает, но сам Bridge.exe станет чуть медленнее стартовать). Флаг -Runtime задаёт RID, по умолчанию win-x64, доступны win-x86, win-arm64, linux-x64 и другие, но примеры в репозитории проверялись только под Windows.
34
+
35
+ Три фасада. VovSC (Value of vectors Sharp Code) — универсальный, режим auto: держит один долгоживущий Bridge-процесс, если процесс умер — перезапускает. Хорош для интерактивной работы. UniPlcahCSC (Unical Python lite code and heavy C Sharp Code) — режим «всегда новый процесс», с health-check, рестартом и circuit breaker: после max_failures подряд переходит в «открытое» состояние и отказывается запускать новые вызовы до истечения cooldown секунд. Подходит для пакетной обработки, где один упавший C#-метод не должен уронить всю сессию. minpyAovCS (minimal python and Overall C Sharp) — C#-первый дизайн: вы даёте путь к .dll и полное имя класса, фасад сам создаёт рядом манифест и предоставляет доступ по имени метода. Все три фасада используют один engine и один Bridge.exe, различие только в политике жизненного цикла.
36
+
37
+ Что нужно установить. Python 3.8+ и .NET SDK 6.0 или новее (сейчас Sowanna проверялась на SDK 6.0.428). Один раз соберите Bridge.exe: cd Sowanna\bridge, потом .\build.ps1. Скрипт вызовет dotnet publish и положит Bridge.exe, Bridge.dll, Bridge.runtimeconfig.json и Bridge.deps.json в sowanna_bridge, откуда Sowanna автоматически их подхватит. Для self-contained версии: .\build.ps1 -SelfContained.
38
+
39
+ Для чего это. Для случаев, когда у вас уже есть тяжёлая C#-библиотека (математика, обработка изображений, работа с железом, что-то из .NET-экосистемы), и вы не хотите переписывать её на Python. Или для случаев, когда C#-часть удобнее писать отдельно в нормальной IDE, а Python остаётся оркестратором. Или для случаев, когда критичный участок нужно вынести в отдельный процесс с изоляцией — тогда UniPlcahCSC даёт вам автоматический рестарт и circuit breaker.
40
+
41
+ Чего Sowanna не делает. Не компилирует ваш C# из Python — компилируйте сами в своей IDE, это честнее и предсказуемее. Не поддерживает async/await на C#-стороне в 0.1.0 — только синхронные статические методы. Не поддерживает generics на стороне Python — только конкретные перегрузки методов с известными аргументами (и overloads тоже не поддерживаются: если у класса два метода Add с разными аргументами, будет ошибка AmbiguousMatch). Не делает автоматический рестарт Bridge.exe посреди callback-сессии (если процесс умер во время callback, Python получит BridgeCrashedError и увидит stderr от Bridge).
42
+
43
+ Для красивых сообщений Sowanna мягко интегрируется с CharmPkk (как и все остальные наши библиотеки): если CharmPkk установлен, баннеры, таблицы и ошибки будут цветными, если нет — обычный print. Установка: pip install Sowanna, опционально pip install "Sowanna[charm]". Связь с автором: reception.mailspypi@gmail.com.
@@ -0,0 +1,21 @@
1
+ Sowanna. Версия 0.1.0. Автор CharmLxt (PyPI: CharmLxt, email: reception.mailspypi@gmail.com). Ссылка на GitHub: https://github.com/CharmLxt/Sowanna.
2
+
3
+ Sowanna — это библиотека, которая позволяет вызывать методы C# из Python так, будто они Python-функции. Вы пишете C#-проект в своей IDE (Dev C++ Embarcadero, Visual Studio, Rider, что угодно, что умеет .NET), компилируете его в обычную .dll, описываете проект в маленьком JSON-манифесте с расширением .pycsh, и дальше из Python вызываете методы по имени. Ядро бриджа написано на C# — это Bridge.exe, который загружает вашу .dll через рефлексию и держит её в памяти, обмениваясь с Python короткими JSON-сообщениями по stdin/stdout. Никаких сторонних зависимостей в Python, никакого pythonnet, никакого ctypes — только стандартная библиотека и запущенный Bridge.exe.
4
+
5
+ Как это работает. В папке вашего C#-проекта рядом с .csproj лежит файл sowanna.pycsh — это манифест в формате JSON. В нём указано имя проекта, версия, имя скомпилированной .dll, полное имя класса-точки-входа (namespace.class) и опционально список методов с описанием аргументов. Python-сторона Sowanna читает манифест, находит .dll, поднимает Bridge.exe и передаёт в него путь к .dll и имя класса. Bridge загружает сборку, находит класс и дальше на каждый запрос вызывает указанный статический метод через reflection. Каждый запрос — одна строка JSON вида {"id": 1, "method": "Add", "args": [2, 3]} и ответ тоже одна строка. Bridge.exe не перезапускается между вызовами в пределах одной сессии.
6
+
7
+ Обратный вызов Python из C#. В 0.1.0 добавлен настоящий двунаправленный канал. Если в вашем entry-классе объявить публичное статическое поле CallbackHandler типа Func<string, object[], object?>, Bridge.exe автоматически подставит туда свой обработчик после загрузки сборки. Дальше в любом C#-методе вы вызываете CallbackHandler("some_name", new object[]{a, b}) — Bridge отправляет в Python сообщение callback, Python находит зарегистрированный callback по имени (через v.register_callback("some_name", func)), вызывает его, отправляет обратно результат (или ошибку), Bridge получает и возвращает C#-методу. Всё это происходит в том же процессе и в том же потоке, без дополнительных pipe. Пример из HelloWorld: C#-метод CallPythonSum(a, b) вызывает Python-callback "sum" и возвращает его результат. Python-сторона регистрирует v.register_callback("sum", lambda a, b: a + b), и v.CallPythonSum(10, 20) возвращает 30. Протокол обратно совместим: старые сообщения без поля kind считаются обычными response, добавление callback не ломает ничего, что уже работало.
8
+
9
+ Генератор .pyi стабов. Команда sowanna stubs path\to\sowanna.pycsh читает манифест и создаёт рядом файл .pyi с описанием класса и всех методов, с маппингом C#-типов в Python-типы (int → int, string → str, int[] → List[int], bool → bool, void → None, double[] → List[float], всё неизвестное → Any). Если положить этот .pyi рядом с .py-обёрткой, VS Code и PyCharm начнут подсказывать автодополнение для ваших методов, даже если реально они вызываются через getattr. Опция --output указывает явный путь, --class-name задаёт имя класса в стабах (по умолчанию берётся последний сегмент entry_class, то есть "Entry" для "HelloWorld.Entry"). Файл .pyi — это чистый generated code, регенерируется одной командой, никакой ручной правки не требует.
10
+
11
+ Self-contained publish. По умолчанию Bridge собирается framework-dependent: Bridge.exe весит около 500 КБ, но требует установленного .NET 6 Runtime на машине, где Sowanna запускается. Если вы хотите распространять Sowanna-приложение на машины без .NET Runtime, соберите Bridge один раз с флагом .\build.ps1 -SelfContained. Тогда .exe вырастет примерно до 60-70 МБ, но будет работать на любой Windows-машине без установленного .NET. Флаг -SingleFile дополнительно упаковывает всё в один .exe (для 0.1.0 не рекомендую: reflection-based загрузка вашей .dll работает, но сам Bridge.exe станет чуть медленнее стартовать). Флаг -Runtime задаёт RID, по умолчанию win-x64, доступны win-x86, win-arm64, linux-x64 и другие, но примеры в репозитории проверялись только под Windows.
12
+
13
+ Три фасада. VovSC (Value of vectors Sharp Code) — универсальный, режим auto: держит один долгоживущий Bridge-процесс, если процесс умер — перезапускает. Хорош для интерактивной работы. UniPlcahCSC (Unical Python lite code and heavy C Sharp Code) — режим «всегда новый процесс», с health-check, рестартом и circuit breaker: после max_failures подряд переходит в «открытое» состояние и отказывается запускать новые вызовы до истечения cooldown секунд. Подходит для пакетной обработки, где один упавший C#-метод не должен уронить всю сессию. minpyAovCS (minimal python and Overall C Sharp) — C#-первый дизайн: вы даёте путь к .dll и полное имя класса, фасад сам создаёт рядом манифест и предоставляет доступ по имени метода. Все три фасада используют один engine и один Bridge.exe, различие только в политике жизненного цикла.
14
+
15
+ Что нужно установить. Python 3.8+ и .NET SDK 6.0 или новее (сейчас Sowanna проверялась на SDK 6.0.428). Один раз соберите Bridge.exe: cd Sowanna\bridge, потом .\build.ps1. Скрипт вызовет dotnet publish и положит Bridge.exe, Bridge.dll, Bridge.runtimeconfig.json и Bridge.deps.json в sowanna_bridge, откуда Sowanna автоматически их подхватит. Для self-contained версии: .\build.ps1 -SelfContained.
16
+
17
+ Для чего это. Для случаев, когда у вас уже есть тяжёлая C#-библиотека (математика, обработка изображений, работа с железом, что-то из .NET-экосистемы), и вы не хотите переписывать её на Python. Или для случаев, когда C#-часть удобнее писать отдельно в нормальной IDE, а Python остаётся оркестратором. Или для случаев, когда критичный участок нужно вынести в отдельный процесс с изоляцией — тогда UniPlcahCSC даёт вам автоматический рестарт и circuit breaker.
18
+
19
+ Чего Sowanna не делает. Не компилирует ваш C# из Python — компилируйте сами в своей IDE, это честнее и предсказуемее. Не поддерживает async/await на C#-стороне в 0.1.0 — только синхронные статические методы. Не поддерживает generics на стороне Python — только конкретные перегрузки методов с известными аргументами (и overloads тоже не поддерживаются: если у класса два метода Add с разными аргументами, будет ошибка AmbiguousMatch). Не делает автоматический рестарт Bridge.exe посреди callback-сессии (если процесс умер во время callback, Python получит BridgeCrashedError и увидит stderr от Bridge).
20
+
21
+ Для красивых сообщений Sowanna мягко интегрируется с CharmPkk (как и все остальные наши библиотеки): если CharmPkk установлен, баннеры, таблицы и ошибки будут цветными, если нет — обычный print. Установка: pip install Sowanna, опционально pip install "Sowanna[charm]". Связь с автором: reception.mailspypi@gmail.com.
@@ -0,0 +1,43 @@
1
+ Metadata-Version: 2.4
2
+ Name: Sowanna
3
+ Version: 0.1.0
4
+ Summary: Мост между Python и C#: вызывайте C#-код из Python через JSON-протокол и Bridge.exe.
5
+ Author-email: CharmLxt <reception.mailspypi@gmail.com>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/CharmLxt/Sowanna
8
+ Project-URL: Source, https://github.com/CharmLxt/Sowanna
9
+ Project-URL: Tracker, https://github.com/CharmLxt/Sowanna/issues
10
+ Keywords: csharp,dotnet,interop,bridge,python,sowanna,charmpkk
11
+ Classifier: Development Status :: 3 - Alpha
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: License :: OSI Approved :: MIT License
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: C#
16
+ Classifier: Environment :: Console
17
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
18
+ Requires-Python: >=3.8
19
+ Description-Content-Type: text/markdown
20
+ Provides-Extra: charm
21
+ Requires-Dist: CharmPkk>=31.10.26b1; extra == "charm"
22
+
23
+ Sowanna. Версия 0.1.0. Автор CharmLxt (PyPI: CharmLxt, email: reception.mailspypi@gmail.com). Ссылка на GitHub: https://github.com/CharmLxt/Sowanna.
24
+
25
+ Sowanna — это библиотека, которая позволяет вызывать методы C# из Python так, будто они Python-функции. Вы пишете C#-проект в своей IDE (Dev C++ Embarcadero, Visual Studio, Rider, что угодно, что умеет .NET), компилируете его в обычную .dll, описываете проект в маленьком JSON-манифесте с расширением .pycsh, и дальше из Python вызываете методы по имени. Ядро бриджа написано на C# — это Bridge.exe, который загружает вашу .dll через рефлексию и держит её в памяти, обмениваясь с Python короткими JSON-сообщениями по stdin/stdout. Никаких сторонних зависимостей в Python, никакого pythonnet, никакого ctypes — только стандартная библиотека и запущенный Bridge.exe.
26
+
27
+ Как это работает. В папке вашего C#-проекта рядом с .csproj лежит файл sowanna.pycsh — это манифест в формате JSON. В нём указано имя проекта, версия, имя скомпилированной .dll, полное имя класса-точки-входа (namespace.class) и опционально список методов с описанием аргументов. Python-сторона Sowanna читает манифест, находит .dll, поднимает Bridge.exe и передаёт в него путь к .dll и имя класса. Bridge загружает сборку, находит класс и дальше на каждый запрос вызывает указанный статический метод через reflection. Каждый запрос — одна строка JSON вида {"id": 1, "method": "Add", "args": [2, 3]} и ответ тоже одна строка. Bridge.exe не перезапускается между вызовами в пределах одной сессии.
28
+
29
+ Обратный вызов Python из C#. В 0.1.0 добавлен настоящий двунаправленный канал. Если в вашем entry-классе объявить публичное статическое поле CallbackHandler типа Func<string, object[], object?>, Bridge.exe автоматически подставит туда свой обработчик после загрузки сборки. Дальше в любом C#-методе вы вызываете CallbackHandler("some_name", new object[]{a, b}) — Bridge отправляет в Python сообщение callback, Python находит зарегистрированный callback по имени (через v.register_callback("some_name", func)), вызывает его, отправляет обратно результат (или ошибку), Bridge получает и возвращает C#-методу. Всё это происходит в том же процессе и в том же потоке, без дополнительных pipe. Пример из HelloWorld: C#-метод CallPythonSum(a, b) вызывает Python-callback "sum" и возвращает его результат. Python-сторона регистрирует v.register_callback("sum", lambda a, b: a + b), и v.CallPythonSum(10, 20) возвращает 30. Протокол обратно совместим: старые сообщения без поля kind считаются обычными response, добавление callback не ломает ничего, что уже работало.
30
+
31
+ Генератор .pyi стабов. Команда sowanna stubs path\to\sowanna.pycsh читает манифест и создаёт рядом файл .pyi с описанием класса и всех методов, с маппингом C#-типов в Python-типы (int → int, string → str, int[] → List[int], bool → bool, void → None, double[] → List[float], всё неизвестное → Any). Если положить этот .pyi рядом с .py-обёрткой, VS Code и PyCharm начнут подсказывать автодополнение для ваших методов, даже если реально они вызываются через getattr. Опция --output указывает явный путь, --class-name задаёт имя класса в стабах (по умолчанию берётся последний сегмент entry_class, то есть "Entry" для "HelloWorld.Entry"). Файл .pyi — это чистый generated code, регенерируется одной командой, никакой ручной правки не требует.
32
+
33
+ Self-contained publish. По умолчанию Bridge собирается framework-dependent: Bridge.exe весит около 500 КБ, но требует установленного .NET 6 Runtime на машине, где Sowanna запускается. Если вы хотите распространять Sowanna-приложение на машины без .NET Runtime, соберите Bridge один раз с флагом .\build.ps1 -SelfContained. Тогда .exe вырастет примерно до 60-70 МБ, но будет работать на любой Windows-машине без установленного .NET. Флаг -SingleFile дополнительно упаковывает всё в один .exe (для 0.1.0 не рекомендую: reflection-based загрузка вашей .dll работает, но сам Bridge.exe станет чуть медленнее стартовать). Флаг -Runtime задаёт RID, по умолчанию win-x64, доступны win-x86, win-arm64, linux-x64 и другие, но примеры в репозитории проверялись только под Windows.
34
+
35
+ Три фасада. VovSC (Value of vectors Sharp Code) — универсальный, режим auto: держит один долгоживущий Bridge-процесс, если процесс умер — перезапускает. Хорош для интерактивной работы. UniPlcahCSC (Unical Python lite code and heavy C Sharp Code) — режим «всегда новый процесс», с health-check, рестартом и circuit breaker: после max_failures подряд переходит в «открытое» состояние и отказывается запускать новые вызовы до истечения cooldown секунд. Подходит для пакетной обработки, где один упавший C#-метод не должен уронить всю сессию. minpyAovCS (minimal python and Overall C Sharp) — C#-первый дизайн: вы даёте путь к .dll и полное имя класса, фасад сам создаёт рядом манифест и предоставляет доступ по имени метода. Все три фасада используют один engine и один Bridge.exe, различие только в политике жизненного цикла.
36
+
37
+ Что нужно установить. Python 3.8+ и .NET SDK 6.0 или новее (сейчас Sowanna проверялась на SDK 6.0.428). Один раз соберите Bridge.exe: cd Sowanna\bridge, потом .\build.ps1. Скрипт вызовет dotnet publish и положит Bridge.exe, Bridge.dll, Bridge.runtimeconfig.json и Bridge.deps.json в sowanna_bridge, откуда Sowanna автоматически их подхватит. Для self-contained версии: .\build.ps1 -SelfContained.
38
+
39
+ Для чего это. Для случаев, когда у вас уже есть тяжёлая C#-библиотека (математика, обработка изображений, работа с железом, что-то из .NET-экосистемы), и вы не хотите переписывать её на Python. Или для случаев, когда C#-часть удобнее писать отдельно в нормальной IDE, а Python остаётся оркестратором. Или для случаев, когда критичный участок нужно вынести в отдельный процесс с изоляцией — тогда UniPlcahCSC даёт вам автоматический рестарт и circuit breaker.
40
+
41
+ Чего Sowanna не делает. Не компилирует ваш C# из Python — компилируйте сами в своей IDE, это честнее и предсказуемее. Не поддерживает async/await на C#-стороне в 0.1.0 — только синхронные статические методы. Не поддерживает generics на стороне Python — только конкретные перегрузки методов с известными аргументами (и overloads тоже не поддерживаются: если у класса два метода Add с разными аргументами, будет ошибка AmbiguousMatch). Не делает автоматический рестарт Bridge.exe посреди callback-сессии (если процесс умер во время callback, Python получит BridgeCrashedError и увидит stderr от Bridge).
42
+
43
+ Для красивых сообщений Sowanna мягко интегрируется с CharmPkk (как и все остальные наши библиотеки): если CharmPkk установлен, баннеры, таблицы и ошибки будут цветными, если нет — обычный print. Установка: pip install Sowanna, опционально pip install "Sowanna[charm]". Связь с автором: reception.mailspypi@gmail.com.
@@ -0,0 +1,246 @@
1
+ README.md
2
+ pyproject.toml
3
+ Sowanna.egg-info/PKG-INFO
4
+ Sowanna.egg-info/SOURCES.txt
5
+ Sowanna.egg-info/dependency_links.txt
6
+ Sowanna.egg-info/entry_points.txt
7
+ Sowanna.egg-info/requires.txt
8
+ Sowanna.egg-info/top_level.txt
9
+ sowanna/__init__.py
10
+ sowanna/bridge.py
11
+ sowanna/charm_enhance.py
12
+ sowanna/cli.py
13
+ sowanna/engine.py
14
+ sowanna/facades.py
15
+ sowanna/manifest.py
16
+ sowanna/protocol.py
17
+ sowanna/stubs.py
18
+ sowanna/version.py
19
+ sowanna/_bridge/Bridge.deps.json
20
+ sowanna/_bridge/Bridge.dll
21
+ sowanna/_bridge/Bridge.exe
22
+ sowanna/_bridge/Bridge.pdb
23
+ sowanna/_bridge/Bridge.runtimeconfig.json
24
+ sowanna/_bridge/Microsoft.CSharp.dll
25
+ sowanna/_bridge/Microsoft.DiaSymReader.Native.amd64.dll
26
+ sowanna/_bridge/Microsoft.VisualBasic.Core.dll
27
+ sowanna/_bridge/Microsoft.VisualBasic.dll
28
+ sowanna/_bridge/Microsoft.Win32.Primitives.dll
29
+ sowanna/_bridge/Microsoft.Win32.Registry.dll
30
+ sowanna/_bridge/System.AppContext.dll
31
+ sowanna/_bridge/System.Buffers.dll
32
+ sowanna/_bridge/System.Collections.Concurrent.dll
33
+ sowanna/_bridge/System.Collections.Immutable.dll
34
+ sowanna/_bridge/System.Collections.NonGeneric.dll
35
+ sowanna/_bridge/System.Collections.Specialized.dll
36
+ sowanna/_bridge/System.Collections.dll
37
+ sowanna/_bridge/System.ComponentModel.Annotations.dll
38
+ sowanna/_bridge/System.ComponentModel.DataAnnotations.dll
39
+ sowanna/_bridge/System.ComponentModel.EventBasedAsync.dll
40
+ sowanna/_bridge/System.ComponentModel.Primitives.dll
41
+ sowanna/_bridge/System.ComponentModel.TypeConverter.dll
42
+ sowanna/_bridge/System.ComponentModel.dll
43
+ sowanna/_bridge/System.Configuration.dll
44
+ sowanna/_bridge/System.Console.dll
45
+ sowanna/_bridge/System.Core.dll
46
+ sowanna/_bridge/System.Data.Common.dll
47
+ sowanna/_bridge/System.Data.DataSetExtensions.dll
48
+ sowanna/_bridge/System.Data.dll
49
+ sowanna/_bridge/System.Diagnostics.Contracts.dll
50
+ sowanna/_bridge/System.Diagnostics.Debug.dll
51
+ sowanna/_bridge/System.Diagnostics.DiagnosticSource.dll
52
+ sowanna/_bridge/System.Diagnostics.FileVersionInfo.dll
53
+ sowanna/_bridge/System.Diagnostics.Process.dll
54
+ sowanna/_bridge/System.Diagnostics.StackTrace.dll
55
+ sowanna/_bridge/System.Diagnostics.TextWriterTraceListener.dll
56
+ sowanna/_bridge/System.Diagnostics.Tools.dll
57
+ sowanna/_bridge/System.Diagnostics.TraceSource.dll
58
+ sowanna/_bridge/System.Diagnostics.Tracing.dll
59
+ sowanna/_bridge/System.Drawing.Primitives.dll
60
+ sowanna/_bridge/System.Drawing.dll
61
+ sowanna/_bridge/System.Dynamic.Runtime.dll
62
+ sowanna/_bridge/System.Formats.Asn1.dll
63
+ sowanna/_bridge/System.Globalization.Calendars.dll
64
+ sowanna/_bridge/System.Globalization.Extensions.dll
65
+ sowanna/_bridge/System.Globalization.dll
66
+ sowanna/_bridge/System.IO.Compression.Brotli.dll
67
+ sowanna/_bridge/System.IO.Compression.FileSystem.dll
68
+ sowanna/_bridge/System.IO.Compression.Native.dll
69
+ sowanna/_bridge/System.IO.Compression.ZipFile.dll
70
+ sowanna/_bridge/System.IO.Compression.dll
71
+ sowanna/_bridge/System.IO.FileSystem.AccessControl.dll
72
+ sowanna/_bridge/System.IO.FileSystem.DriveInfo.dll
73
+ sowanna/_bridge/System.IO.FileSystem.Primitives.dll
74
+ sowanna/_bridge/System.IO.FileSystem.Watcher.dll
75
+ sowanna/_bridge/System.IO.FileSystem.dll
76
+ sowanna/_bridge/System.IO.IsolatedStorage.dll
77
+ sowanna/_bridge/System.IO.MemoryMappedFiles.dll
78
+ sowanna/_bridge/System.IO.Pipes.AccessControl.dll
79
+ sowanna/_bridge/System.IO.Pipes.dll
80
+ sowanna/_bridge/System.IO.UnmanagedMemoryStream.dll
81
+ sowanna/_bridge/System.IO.dll
82
+ sowanna/_bridge/System.Linq.Expressions.dll
83
+ sowanna/_bridge/System.Linq.Parallel.dll
84
+ sowanna/_bridge/System.Linq.Queryable.dll
85
+ sowanna/_bridge/System.Linq.dll
86
+ sowanna/_bridge/System.Memory.dll
87
+ sowanna/_bridge/System.Net.Http.Json.dll
88
+ sowanna/_bridge/System.Net.Http.dll
89
+ sowanna/_bridge/System.Net.HttpListener.dll
90
+ sowanna/_bridge/System.Net.Mail.dll
91
+ sowanna/_bridge/System.Net.NameResolution.dll
92
+ sowanna/_bridge/System.Net.NetworkInformation.dll
93
+ sowanna/_bridge/System.Net.Ping.dll
94
+ sowanna/_bridge/System.Net.Primitives.dll
95
+ sowanna/_bridge/System.Net.Quic.dll
96
+ sowanna/_bridge/System.Net.Requests.dll
97
+ sowanna/_bridge/System.Net.Security.dll
98
+ sowanna/_bridge/System.Net.ServicePoint.dll
99
+ sowanna/_bridge/System.Net.Sockets.dll
100
+ sowanna/_bridge/System.Net.WebClient.dll
101
+ sowanna/_bridge/System.Net.WebHeaderCollection.dll
102
+ sowanna/_bridge/System.Net.WebProxy.dll
103
+ sowanna/_bridge/System.Net.WebSockets.Client.dll
104
+ sowanna/_bridge/System.Net.WebSockets.dll
105
+ sowanna/_bridge/System.Net.dll
106
+ sowanna/_bridge/System.Numerics.Vectors.dll
107
+ sowanna/_bridge/System.Numerics.dll
108
+ sowanna/_bridge/System.ObjectModel.dll
109
+ sowanna/_bridge/System.Private.CoreLib.dll
110
+ sowanna/_bridge/System.Private.DataContractSerialization.dll
111
+ sowanna/_bridge/System.Private.Uri.dll
112
+ sowanna/_bridge/System.Private.Xml.Linq.dll
113
+ sowanna/_bridge/System.Private.Xml.dll
114
+ sowanna/_bridge/System.Reflection.DispatchProxy.dll
115
+ sowanna/_bridge/System.Reflection.Emit.ILGeneration.dll
116
+ sowanna/_bridge/System.Reflection.Emit.Lightweight.dll
117
+ sowanna/_bridge/System.Reflection.Emit.dll
118
+ sowanna/_bridge/System.Reflection.Extensions.dll
119
+ sowanna/_bridge/System.Reflection.Metadata.dll
120
+ sowanna/_bridge/System.Reflection.Primitives.dll
121
+ sowanna/_bridge/System.Reflection.TypeExtensions.dll
122
+ sowanna/_bridge/System.Reflection.dll
123
+ sowanna/_bridge/System.Resources.Reader.dll
124
+ sowanna/_bridge/System.Resources.ResourceManager.dll
125
+ sowanna/_bridge/System.Resources.Writer.dll
126
+ sowanna/_bridge/System.Runtime.CompilerServices.Unsafe.dll
127
+ sowanna/_bridge/System.Runtime.CompilerServices.VisualC.dll
128
+ sowanna/_bridge/System.Runtime.Extensions.dll
129
+ sowanna/_bridge/System.Runtime.Handles.dll
130
+ sowanna/_bridge/System.Runtime.InteropServices.RuntimeInformation.dll
131
+ sowanna/_bridge/System.Runtime.InteropServices.dll
132
+ sowanna/_bridge/System.Runtime.Intrinsics.dll
133
+ sowanna/_bridge/System.Runtime.Loader.dll
134
+ sowanna/_bridge/System.Runtime.Numerics.dll
135
+ sowanna/_bridge/System.Runtime.Serialization.Formatters.dll
136
+ sowanna/_bridge/System.Runtime.Serialization.Json.dll
137
+ sowanna/_bridge/System.Runtime.Serialization.Primitives.dll
138
+ sowanna/_bridge/System.Runtime.Serialization.Xml.dll
139
+ sowanna/_bridge/System.Runtime.Serialization.dll
140
+ sowanna/_bridge/System.Runtime.dll
141
+ sowanna/_bridge/System.Security.AccessControl.dll
142
+ sowanna/_bridge/System.Security.Claims.dll
143
+ sowanna/_bridge/System.Security.Cryptography.Algorithms.dll
144
+ sowanna/_bridge/System.Security.Cryptography.Cng.dll
145
+ sowanna/_bridge/System.Security.Cryptography.Csp.dll
146
+ sowanna/_bridge/System.Security.Cryptography.Encoding.dll
147
+ sowanna/_bridge/System.Security.Cryptography.OpenSsl.dll
148
+ sowanna/_bridge/System.Security.Cryptography.Primitives.dll
149
+ sowanna/_bridge/System.Security.Cryptography.X509Certificates.dll
150
+ sowanna/_bridge/System.Security.Principal.Windows.dll
151
+ sowanna/_bridge/System.Security.Principal.dll
152
+ sowanna/_bridge/System.Security.SecureString.dll
153
+ sowanna/_bridge/System.Security.dll
154
+ sowanna/_bridge/System.ServiceModel.Web.dll
155
+ sowanna/_bridge/System.ServiceProcess.dll
156
+ sowanna/_bridge/System.Text.Encoding.CodePages.dll
157
+ sowanna/_bridge/System.Text.Encoding.Extensions.dll
158
+ sowanna/_bridge/System.Text.Encoding.dll
159
+ sowanna/_bridge/System.Text.Encodings.Web.dll
160
+ sowanna/_bridge/System.Text.Json.dll
161
+ sowanna/_bridge/System.Text.RegularExpressions.dll
162
+ sowanna/_bridge/System.Threading.Channels.dll
163
+ sowanna/_bridge/System.Threading.Overlapped.dll
164
+ sowanna/_bridge/System.Threading.Tasks.Dataflow.dll
165
+ sowanna/_bridge/System.Threading.Tasks.Extensions.dll
166
+ sowanna/_bridge/System.Threading.Tasks.Parallel.dll
167
+ sowanna/_bridge/System.Threading.Tasks.dll
168
+ sowanna/_bridge/System.Threading.Thread.dll
169
+ sowanna/_bridge/System.Threading.ThreadPool.dll
170
+ sowanna/_bridge/System.Threading.Timer.dll
171
+ sowanna/_bridge/System.Threading.dll
172
+ sowanna/_bridge/System.Transactions.Local.dll
173
+ sowanna/_bridge/System.Transactions.dll
174
+ sowanna/_bridge/System.ValueTuple.dll
175
+ sowanna/_bridge/System.Web.HttpUtility.dll
176
+ sowanna/_bridge/System.Web.dll
177
+ sowanna/_bridge/System.Windows.dll
178
+ sowanna/_bridge/System.Xml.Linq.dll
179
+ sowanna/_bridge/System.Xml.ReaderWriter.dll
180
+ sowanna/_bridge/System.Xml.Serialization.dll
181
+ sowanna/_bridge/System.Xml.XDocument.dll
182
+ sowanna/_bridge/System.Xml.XPath.XDocument.dll
183
+ sowanna/_bridge/System.Xml.XPath.dll
184
+ sowanna/_bridge/System.Xml.XmlDocument.dll
185
+ sowanna/_bridge/System.Xml.XmlSerializer.dll
186
+ sowanna/_bridge/System.Xml.dll
187
+ sowanna/_bridge/System.dll
188
+ sowanna/_bridge/WindowsBase.dll
189
+ sowanna/_bridge/api-ms-win-core-console-l1-1-0.dll
190
+ sowanna/_bridge/api-ms-win-core-console-l1-2-0.dll
191
+ sowanna/_bridge/api-ms-win-core-datetime-l1-1-0.dll
192
+ sowanna/_bridge/api-ms-win-core-debug-l1-1-0.dll
193
+ sowanna/_bridge/api-ms-win-core-errorhandling-l1-1-0.dll
194
+ sowanna/_bridge/api-ms-win-core-fibers-l1-1-0.dll
195
+ sowanna/_bridge/api-ms-win-core-file-l1-1-0.dll
196
+ sowanna/_bridge/api-ms-win-core-file-l1-2-0.dll
197
+ sowanna/_bridge/api-ms-win-core-file-l2-1-0.dll
198
+ sowanna/_bridge/api-ms-win-core-handle-l1-1-0.dll
199
+ sowanna/_bridge/api-ms-win-core-heap-l1-1-0.dll
200
+ sowanna/_bridge/api-ms-win-core-interlocked-l1-1-0.dll
201
+ sowanna/_bridge/api-ms-win-core-libraryloader-l1-1-0.dll
202
+ sowanna/_bridge/api-ms-win-core-localization-l1-2-0.dll
203
+ sowanna/_bridge/api-ms-win-core-memory-l1-1-0.dll
204
+ sowanna/_bridge/api-ms-win-core-namedpipe-l1-1-0.dll
205
+ sowanna/_bridge/api-ms-win-core-processenvironment-l1-1-0.dll
206
+ sowanna/_bridge/api-ms-win-core-processthreads-l1-1-0.dll
207
+ sowanna/_bridge/api-ms-win-core-processthreads-l1-1-1.dll
208
+ sowanna/_bridge/api-ms-win-core-profile-l1-1-0.dll
209
+ sowanna/_bridge/api-ms-win-core-rtlsupport-l1-1-0.dll
210
+ sowanna/_bridge/api-ms-win-core-string-l1-1-0.dll
211
+ sowanna/_bridge/api-ms-win-core-synch-l1-1-0.dll
212
+ sowanna/_bridge/api-ms-win-core-synch-l1-2-0.dll
213
+ sowanna/_bridge/api-ms-win-core-sysinfo-l1-1-0.dll
214
+ sowanna/_bridge/api-ms-win-core-timezone-l1-1-0.dll
215
+ sowanna/_bridge/api-ms-win-core-util-l1-1-0.dll
216
+ sowanna/_bridge/api-ms-win-crt-conio-l1-1-0.dll
217
+ sowanna/_bridge/api-ms-win-crt-convert-l1-1-0.dll
218
+ sowanna/_bridge/api-ms-win-crt-environment-l1-1-0.dll
219
+ sowanna/_bridge/api-ms-win-crt-filesystem-l1-1-0.dll
220
+ sowanna/_bridge/api-ms-win-crt-heap-l1-1-0.dll
221
+ sowanna/_bridge/api-ms-win-crt-locale-l1-1-0.dll
222
+ sowanna/_bridge/api-ms-win-crt-math-l1-1-0.dll
223
+ sowanna/_bridge/api-ms-win-crt-multibyte-l1-1-0.dll
224
+ sowanna/_bridge/api-ms-win-crt-private-l1-1-0.dll
225
+ sowanna/_bridge/api-ms-win-crt-process-l1-1-0.dll
226
+ sowanna/_bridge/api-ms-win-crt-runtime-l1-1-0.dll
227
+ sowanna/_bridge/api-ms-win-crt-stdio-l1-1-0.dll
228
+ sowanna/_bridge/api-ms-win-crt-string-l1-1-0.dll
229
+ sowanna/_bridge/api-ms-win-crt-time-l1-1-0.dll
230
+ sowanna/_bridge/api-ms-win-crt-utility-l1-1-0.dll
231
+ sowanna/_bridge/clretwrc.dll
232
+ sowanna/_bridge/clrjit.dll
233
+ sowanna/_bridge/coreclr.dll
234
+ sowanna/_bridge/createdump.exe
235
+ sowanna/_bridge/dbgshim.dll
236
+ sowanna/_bridge/hostfxr.dll
237
+ sowanna/_bridge/hostpolicy.dll
238
+ sowanna/_bridge/mscordaccore.dll
239
+ sowanna/_bridge/mscordaccore_amd64_amd64_6.0.3624.51421.dll
240
+ sowanna/_bridge/mscordbi.dll
241
+ sowanna/_bridge/mscorlib.dll
242
+ sowanna/_bridge/mscorrc.dll
243
+ sowanna/_bridge/msquic.dll
244
+ sowanna/_bridge/netstandard.dll
245
+ sowanna/_bridge/ucrtbase.dll
246
+ tests/test_sowanna.py
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ sowanna = sowanna.cli:main
@@ -0,0 +1,3 @@
1
+
2
+ [charm]
3
+ CharmPkk>=31.10.26b1
@@ -0,0 +1 @@
1
+ sowanna
@@ -0,0 +1,42 @@
1
+ [build-system]
2
+ requires = ["setuptools>=68", "wheel"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "Sowanna"
7
+ version = "0.1.0"
8
+ description = "Мост между Python и C#: вызывайте C#-код из Python через JSON-протокол и Bridge.exe."
9
+ readme = "README.md"
10
+ requires-python = ">=3.8"
11
+ license = { text = "MIT" }
12
+ authors = [{ name = "CharmLxt", email = "reception.mailspypi@gmail.com" }]
13
+ keywords = [
14
+ "csharp", "dotnet", "interop", "bridge", "python", "sowanna", "charmpkk",
15
+ ]
16
+ dependencies = []
17
+ classifiers = [
18
+ "Development Status :: 3 - Alpha",
19
+ "Intended Audience :: Developers",
20
+ "License :: OSI Approved :: MIT License",
21
+ "Programming Language :: Python :: 3",
22
+ "Programming Language :: C#",
23
+ "Environment :: Console",
24
+ "Topic :: Software Development :: Libraries :: Python Modules",
25
+ ]
26
+
27
+ [project.urls]
28
+ Homepage = "https://github.com/CharmLxt/Sowanna"
29
+ Source = "https://github.com/CharmLxt/Sowanna"
30
+ Tracker = "https://github.com/CharmLxt/Sowanna/issues"
31
+
32
+ [project.optional-dependencies]
33
+ charm = ["CharmPkk>=31.10.26b1"]
34
+
35
+ [project.scripts]
36
+ sowanna = "sowanna.cli:main"
37
+
38
+ [tool.setuptools.packages.find]
39
+ include = ["sowanna*"]
40
+
41
+ [tool.setuptools.package-data]
42
+ sowanna = ["_bridge/*"]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,24 @@
1
+ """Sowanna — мост между Python и C# через Bridge.exe."""
2
+ from .version import __version__
3
+ from .manifest import Manifest, MethodSpec
4
+ from .protocol import BridgeError, ProtocolError
5
+ from .engine import (
6
+ SowannaError,
7
+ MissingManifestError,
8
+ BridgeNotBuiltError,
9
+ MethodNotDeclaredError,
10
+ BridgeCrashedError,
11
+ Engine,
12
+ )
13
+ from .facades import VovSC, UniPlcahCSC, minpyAovCS
14
+ from . import stubs
15
+
16
+ __all__ = [
17
+ "__version__",
18
+ "Manifest", "MethodSpec",
19
+ "BridgeError", "ProtocolError",
20
+ "SowannaError", "MissingManifestError", "BridgeNotBuiltError",
21
+ "MethodNotDeclaredError", "BridgeCrashedError", "Engine",
22
+ "VovSC", "UniPlcahCSC", "minpyAovCS",
23
+ "stubs",
24
+ ]