From 04368fc240fdbaaaaa1875b3005d6a01aab0208a Mon Sep 17 00:00:00 2001 From: cvanelteren Date: Sat, 7 Dec 2024 08:53:32 +1000 Subject: [PATCH 1/5] example for test cases --- tests/releasingGil.nim | 84 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 tests/releasingGil.nim diff --git a/tests/releasingGil.nim b/tests/releasingGil.nim new file mode 100644 index 000000000..7eae01df2 --- /dev/null +++ b/tests/releasingGil.nim @@ -0,0 +1,84 @@ +# Access Python Objects concurentally without using the Python Global Interpreter Lock (GIL) + +# Load necessary Python C API functions + +#[ + author: Casper van Elteren + To improve preformance of Nim code that uses Python objects, you can release the Python Global Interpreter Lock (GIL) while executing Nim code. The GIL is a necessary evin in cPython to prevent racing conditions. However, it can be a bottleneck in multi-threaded applications. This example demonstrates how to release the GIL in Nim code and access Python objects concurrently. + + This examples examples how to interface with python objects from different threads without in a way such that the GIL is not held. This can lead to great performance in nim when interactinos with python objects is in and far between, and on a critical execution path. + + The c-api for python exposes several functions to ensure that a process holds the GIL. These functions feel foreign from a python perspective, but all they do is ensure that the GIL is properly dealth with such that any creation, modification of deletion of python objects is correctly counted. +]# +import nimpy, nimpy/py_lib +import dynlib + +# Generally we just use one interpreter, although multiple could be used. So we define a new type-safe int to represent our GIL +type + PyGILState_STATE* = distinct int + PyThreadState* = pointer + +#[ + Nimpy exposes the python python library to an internally held module. These modules in principles could be spawned such that we have seperate python processees. This is not the case here, but it is a possibility. The module is used to access the python c-api functions that are specific to that process. +]# +initPyLibIfNeeded() # initialize the python module in Nimpy +let py = py_lib.pyLib.module + +let + PyGILState_Ensure = + cast[proc(): PyGILState_STATE {.cdecl, gcsafe.}](py.symAddr("PyGILState_Ensure")) + # Ensures that we have the GIL + PyGILState_Release = cast[proc(state: PyGILState_STATE) {.cdecl, gcsafe.}](py.symAddr( + "PyGILState_Release" + )) # Releases the GIL + # The following functions do the same as above, but are more low-level and are "intended" for when the gil is released for longer periods of time + PyEval_SaveThread = + cast[proc(): PyThreadState {.cdecl.}](py.symAddr("PyEval_SaveThread")) + PyEval_RestoreThread = + cast[proc(tstate: PyThreadState) {.cdecl.}](py.symAddr("PyEval_RestoreThread")) + +# This represents the "python" process +var mainThreadState: PyThreadState + +proc initPyThread*() = + # This should be called once at the start of your program + mainThreadState = PyEval_SaveThread() + +# A way to template your code, and uses a similar structure as the withGIL macro in cython +template withPyGIL*(code: untyped) = + let state = PyGILState_Ensure() + try: + code + finally: + PyGILState_Release(state) + +# Generally used to run "longer" stuff in nim +proc withoutPyGIL*(body: proc()) = + let threadState = PyEval_SaveThread() + try: + body() + finally: + PyEval_RestoreThread(threadState) + +# Example usage +proc pyThreadSafeFunction() {.gcsafe.} = + #[ + We are explicitly creating a python object on every function call (nx, g) then we modify the objects. If we would have used a global variable for nx, the GIL should be held as potential modifications would be subject to racing conditions. + ]# + withPyGIL: + let nx = pyImport("networkx") + let g = nx.path_graph(3) + g.nodes()[0]["example_trait"] = "example_value" + +# Initialize Python threading +initPyThread() + +# Use in your code +# We are using malebolgia here, but the principle holds for other threading libraries +import malebolgia +var m = malebolgia.createMaster() +m.awaitAll: + for idx in (0 .. 10000): + m.spawn: + pyThreadSafeFunction() +pyThreadSafeFunction() From d2522664aa15599fa5d8b71e9f891f5f0422b112 Mon Sep 17 00:00:00 2001 From: YesDrX <68913671+YesDrX@users.noreply.github.com> Date: Wed, 22 Jan 2025 04:54:58 -0500 Subject: [PATCH 2/5] add init, del, repr, doc for pyType (#308) * add init, del, repr, doc for pyType * add a export type test * minor fix on the test case * use 2 spaces rather than 4 spaces * use 2 spaces rather than 4 spaces * remove __del__ --------- Co-authored-by: Wei Xiang --- .github/workflows/test.yml | 17 +++- .gitignore | 2 + README.md | 6 +- config.nims | 4 + docs/export_python_type.md | 84 ++++++++++++++++++ docs/numpy.md | 44 ++++++++++ nimpy.nim | 169 +++++++++++++++++++++++++++++++------ nimpy.nimble | 11 ++- tests/texport_pytype | Bin 0 -> 369504 bytes tests/texport_pytype.nim | 54 ++++++++++++ 10 files changed, 359 insertions(+), 32 deletions(-) create mode 100644 config.nims create mode 100644 docs/export_python_type.md create mode 100644 docs/numpy.md create mode 100755 tests/texport_pytype create mode 100644 tests/texport_pytype.nim diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 88d2e2d38..0b782415d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -10,17 +10,26 @@ jobs: matrix: os: [ubuntu-latest, windows-latest, macos-latest] nim-channel: [stable, devel] - python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"] + python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] + exclude: + - os: ubuntu-latest + python-version: "3.7" + - os: macos-latest + python-version: "3.7" name: ${{ matrix.os }}-${{ matrix.python-version }}-${{ matrix.nim-channel }} runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - - uses: actions/setup-python@v2 + - name: Debug Environment + run: | + echo "OS: $(uname -a)" + + - uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - + - name: Setup nim uses: jiro4989/setup-nim-action@v1 with: diff --git a/.gitignore b/.gitignore index 909046919..f140cd205 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,5 @@ tests/tbuiltinpyfromnim *.pyc *.pyd *.so +nimble.develop +nimble.paths diff --git a/README.md b/README.md index 6a56ef340..5da0d3712 100644 --- a/README.md +++ b/README.md @@ -88,6 +88,8 @@ Nimpy also exposes lower level [Buffer protocol](https://docs.python.org/3/c-api see [raw_buffers.nim](https://github.com/yglukhov/nimpy/blob/master/nimpy/raw_buffers.nim). [tpyfromnim.nim](https://github.com/yglukhov/nimpy/blob/master/tests/numpytest.nim) contains a very basic test for this. + +[Examples to use raw_buffers with numpy](./docs/numpy.md)
@@ -124,11 +126,13 @@ contains a very basic test for this.
-## Exporting Nim types as Python classes +## [Exporting Nim types as Python classes](./docs/export_python_type.md) Warning! This is experimental. * An exported type should be a ref object and inherit `PyNimObjectExperimental` directly or indirectly. * The type will only be exported if at least one exported "method" is defined. * A proc will be exported as python type method *only* if it's first argument is of the corresponding type and is called `self`. If the first argument is not called `self`, the proc will exported as a global module function. +* If you define functions that looks like initTestType, destroyTestType, `$`, they can be exported as `__init__` and `__repr__` if the requirements are met. + ```nim # mymodule.nim type TestType = ref object of PyNimObjectExperimental diff --git a/config.nims b/config.nims new file mode 100644 index 000000000..8ee48d258 --- /dev/null +++ b/config.nims @@ -0,0 +1,4 @@ +# begin Nimble config (version 2) +when withDir(thisDir(), system.fileExists("nimble.paths")): + include "nimble.paths" +# end Nimble config diff --git a/docs/export_python_type.md b/docs/export_python_type.md new file mode 100644 index 000000000..c2df8cb22 --- /dev/null +++ b/docs/export_python_type.md @@ -0,0 +1,84 @@ +## Exporting Nim types as Python classes + +Warning! This is experimental. +* An exported type should be a ref object and inherits `PyNimObjectExperimental` directly or indirectly. +* The type will only be exported if at least one exported "method" is defined. +* A proc will be exported as python type method *only* if it's first argument is of the corresponding type and is called `self`. If the first argument is not called `self`, the proc will exported as a global module function. +* If you define functions that looks like initTestType or `$`, they will be exported as `__init__` and `__repr__` if the requirements are met. + +#### Simple Example +```nim +# mymodule.nim +type TestType = ref object of PyNimObjectExperimental + myField: string + +proc setMyField(self: TestType, value: string) {.exportpy.} = + self.myField = value + +proc getMyField(self: TestType): string {.exportpy.} = + self.myField +``` + +``` py +# test.py +import mymodule +tt = mymodule.TestType() +tt.setMyField("Hello") +assert(tt.getMyField() == "Hello") +``` + +#### `__init__`, and `__repr__` +* [example](../tests/export_pytype.nim) +```nim +# simple.nim +## compile as simple.so + +import nimpy +import strformat + +pyExportModule("simple") # only needed if your filename is not simple.nim + +type + SimpleObj* = ref object of PyNimObjectExperimental + a* : int + +## if +## 1) the function name is like `init##TypeName` +## 2) there is at least one argument +## 3) the first argument name is "self" +## 4) the first argument type is `##TypeName` +## 5) there is no return type +## we export this function as a python object method __init__ (tp_init in PyTypeObject) +proc initSimpleObj*(self : SimpleObj, a : int = 1) {.exportpy} = + echo "Calling initSimpleObj for SimpleObj" + self.a = a + +## if +## 1) the function name is like `$` +## 2) there is only one argument +## 3) the first argument name is "self" +## 4) the first argument type is `##TypeName` +## 5) the return type is `string` +## we export this function as a python object method __repr__ (tp_repr in PyTypeObject) +proc `$`*(self : SimpleObj): string {.exportpy.} = + &"SimpleObj : a={self.a}" + + +## Change doc string +setModuleDocString("This is a test module") +setDocStringForType(SimpleObj, "This is a test type") +``` + +* Compile as `simple.so` +```bash +nim c --app:lib -o:./simple.so ./simple.nim +``` + +* Use the exported python type in python +```python +import simple +print(simple.__doc__) +print(simple.SimpleObj.__doc__) +obj = simple.SimpleObj(a = 2) +print(obj) +``` \ No newline at end of file diff --git a/docs/numpy.md b/docs/numpy.md new file mode 100644 index 000000000..9f7fc91b0 --- /dev/null +++ b/docs/numpy.md @@ -0,0 +1,44 @@ +## Use nimpy to access numpy arrays from python + +* Get buffer from numpy array (PyObject) + - Note + - numpy will export buffer when the underlying memory block is C-Contiguous + - if the underlying data is not C-Contiguous, there will be a PythonException thrown by numpy +```nim +proc asNimArray*[T](arr : PyObject, mode : int = PyBUF_READ) : ptr UncheckedArray[T] = + var + buf : RawPyBuffer + getBuffer(arr, buf, mode.cint) +``` + +* Shape and Strides +```nim +type + NimNumpyArray*[T] = object + originalPtr* : PyObject + buf* : ptr UncheckedArray[T] + shape* : seq[int] + strides* : seq[int] + c_contiguous* : bool + f_contiguous* : bool + +proc asNimNumpyArray*[T](arr : PyObject, mode : int = PyBUF_READ) : NimNumpyArray[T] = + #[ + Function to translate numpy array into an object in Nim to represent the data for convinience. + ]# + result.originalPtr = arr + result.buf = asNimArray[T](arr, mode) + result.shape = getAttr(arr, "shape").to(seq[int]) + result.strides = getAttr(arr, "strides").to(seq[int]) + result.c_contiguous = arr.flags["C_CONTIGUOUS"].to(bool) + result.f_contiguous = arr.flags["F_CONTIGUOUS"].to(bool) + +proc accessNumpyMatrix*[T](matrix : NimNumpyArray[T], row, col : int): T = + doAssert matrix.shape == 2 and matrix.strides == 2 + return matrix.buf[ + row * matrix.strides[0] + col * matrix.strides[1] + ] +``` + +* ArrayMancer Tensor +- Given the exposed buffer, you can use cpuStorageFromBuffer from ArrayMancer Tensor wihout making a copy diff --git a/nimpy.nim b/nimpy.nim index 3053924b6..4ba6c1166 100644 --- a/nimpy.nim +++ b/nimpy.nim @@ -1,4 +1,4 @@ -import dynlib, macros, os, strutils, typetraits, tables, json, +import dynlib, macros, os, strutils, typetraits, tables, json, strformat, nimpy/[py_types, py_utils, nim_py_marshalling, py_nim_marshalling] import nimpy/py_lib as lib @@ -39,6 +39,8 @@ type name: cstring doc: cstring newFunc: Newfunc + initFunc: Initproc + reprFunc: ReprFunc methods: seq[PyMethodDef] members: seq[PyMemberDef] origSize: int @@ -158,7 +160,9 @@ proc initPyNimObjectType[PyTypeObj](td: var PyTypeDesc) = ty.tp_free = freeNimObj ty.tp_dealloc = destructNimObj ty.tp_descr_get = typDescrGet - + ty.tp_init = td.initFunc + ty.tp_repr = td.reprFunc + if td.methods.len != 0: td.methods.add(PyMethodDef()) # Add sentinel ty.tp_methods = unsafeAddr td.methods[0] @@ -200,14 +204,25 @@ proc addTypedefToModuleDef(md: ptr PyModuleDesc, T: typedesc, idx: int) = assert(md.types.len == idx) md.types.add(pTypeDesc(T)) -template registerTypeMethod(T: typedesc, name, doc: cstring, f: PyCFunctionWithKeywords) = +template registerTypeMethod(T: typedesc, name, doc: cstring, f: pointer, isInitializer, isReprFunc : bool) = when T isnot PyNimObjectExperimental: {.error: "Type " & $T & " is not a subclass of PyNimObjectExperimental, while trying to export type method " & $name & " because its first argument is named `self`"} assert(not curModuleDef.isNil) const typeIdx = getTypeIdxInModule(T) if typeIdx > curModuleDef.types.high: addTypedefToModuleDef(curModuleDef, T, typeIdx) - curModuleDef.types[typeIdx].methods.add(PyMethodDef(ml_name: name, ml_meth: f, ml_flags: Py_MLFLAGS_VARARGS or Py_MLFLAGS_KEYWORDS, - ml_doc: doc)) + when isInitializer: + # Initproc + {.hint: "Exporting __init__ for " & $T & " with " & name & " in python." .} + curModuleDef.types[typeIdx].initFunc = cast[Initproc](f) + elif isReprFunc: + # Reprfunc + {.hint: "Exporting __repr__ for " & $T & " with " & name & " in python." .} + curModuleDef.types[typeIdx].reprFunc = cast[Reprfunc](f) + else: + # PyCFunctionWithKeywords + {.hint: "Exporting method for " & $T & " with " & name & " in python." .} + curModuleDef.types[typeIdx].methods.add(PyMethodDef(ml_name: name, ml_meth: f, ml_flags: Py_MLFLAGS_VARARGS or Py_MLFLAGS_KEYWORDS, + ml_doc: doc)) proc initPythonModuleDesc(m: var PyModuleDesc, name, doc: cstring) = m.name = name @@ -457,13 +472,16 @@ template raisePyException(tp, msg: untyped): untyped = return false proc verifyArgs(argTuple, kwargsDict: PPyObject, argsLen, argsLenReq: int, argNames: openArray[cstring], funcName: string): bool = + if argsLen == 0: + return true + let nargs = if argTuple.isNil: 0 else: pyLib.PyTuple_Size(argTuple) nkwargs = if kwargsDict.isNil: 0 else: pyLib.PyDict_Size(kwargsDict) sz = nargs + nkwargs var nkwarg_left = nkwargs - + result = if argsLen > argsLenReq: # We have some optional arguments, argsLen is the upper limit sz >= argsLenReq and sz <= argsLen @@ -543,7 +561,7 @@ iterator arguments(formalParams: NimNode): tuple[idx: int, name, typ, default: N yield (iParam, pp[j], copyNimTree(stripSinkFromArgType(pp[^2])), pp[^1]) inc iParam -proc makeCallNimProcWithPythonArgs(prc, formalParams, argsTuple, kwargsDict: NimNode, selfArg: NimNode = nil): tuple[parseArgs, call: NimNode] = +proc makeCallNimProcWithPythonArgs(prc, formalParams, argsTuple, kwargsDict: NimNode, selfArg: NimNode = nil, noReturnType : bool = false): tuple[parseArgs, call: NimNode] = let pyValueVarSection = newNimNode(nnkVarSection) parseArgsStmts = newNimNode(nnkStmtList) @@ -585,20 +603,32 @@ proc makeCallNimProcWithPythonArgs(prc, formalParams, argsTuple, kwargsDict: Nim origCall.add(argIdent) inc numArgs - let + var argsLen = newLit(numArgs) argsLenReq = newLit(numArgsReq - extraArg) nameLit = newLit($prc) - result.parseArgs = quote do: - if not verifyArgs(`argsTuple`, `kwargsDict`, `argsLen`, `argsLenReq`, `argNames`, `nameLit`): - return PPyObject(nil) - `pyValueVarSection` - try: - `parseArgsStmts` - except CatchableError as e: - pyLib.PyErr_SetString(pyLib.PyExc_TypeError, cstring(e.msg)) - return PPyObject(nil) + if not noReturnType: + result.parseArgs = quote do: + if not verifyArgs(`argsTuple`, `kwargsDict`, `argsLen`, `argsLenReq`, `argNames`, `nameLit`): + return PPyObject(nil) + `pyValueVarSection` + try: + `parseArgsStmts` + except CatchableError as e: + pyLib.PyErr_SetString(pyLib.PyExc_TypeError, cstring(e.msg)) + return PPyObject(nil) + else: + argsLen = newLit(numArgs - 1) + result.parseArgs = quote do: + if not verifyArgs(`argsTuple`, `kwargsDict`, `argsLen`, `argsLenReq`, `argNames`, `nameLit`): + return -1 + `pyValueVarSection` + try: + `parseArgsStmts` + except CatchableError as e: + pyLib.PyErr_SetString(pyLib.PyExc_TypeError, cstring(e.msg)) + return -1 result.call = origCall @@ -645,12 +675,57 @@ proc nimValueToPy*[T: proc](o: T): PPyObject = result = pyLib.PyCFunction_NewEx(addr md, self, nil) decRef self -proc makeProcWrapper(name, prc: NimNode, isMethod: bool): NimNode = +proc makeInitProcWrapper(name, parseArgs : NimNode, procName : string, call, argsIdent, kwargsIdent: NimNode): NimNode = + let selfIdent = newIdentNode("self") + let procNameIdent = newStrLitNode(procName) + result = quote do: + proc `name`(`selfIdent`, `argsIdent`, `kwargsIdent`: PPyObject): cint {.cdecl.} = + updateStackBottom() + # Prevent inlining (See #67) + proc noinline(`selfIdent`, `argsIdent`, `kwargsIdent`: PPyObject): cint {.nimcall, stackTrace: off.} = + try: + `parseArgs` + `call` + return 0 + except Exception as e: + pyLib.PyErr_SetString(pyLib.PyExc_TypeError, cstring(e.msg)) + return -1 + var p {.volatile.}: proc(s, a, kwg: PPyObject): cint {.nimcall.} = noinline + p(`selfIdent`, `argsIdent`, `kwargsIdent`) + +proc makeReprProcWrapper(name, prc: NimNode): NimNode = + let selfIdent = newIdentNode("self") + let reprIdent = newIdentNode("repr") + var selfType : NimNode + for arg in prc.getFormalParams.arguments: + selfType = arg.typ + result = quote do: + proc `name`(`selfIdent`: PPyObject): PPyObject {.cdecl.} = + updateStackBottom() + var arg0self: valueTypeForArgType(type(`selfType`)) + try: + pyValueToNim(self, arg0self) + result = nimValueToPy($arg0self) + if result.isNil: + raise newException(ValueError, "repr failed") + except Exception as e: + return pythonException(e) + +proc makeProcWrapper(name, prc: NimNode, isMethod: bool, isInitializer, isReprFunc : bool): NimNode = let argsIdent = newIdentNode("args") let kwargsIdent = newIdentNode("kwargs") if isMethod: let selfIdent = newIdentNode("self") - let (parseArgs, call) = makeCallNimProcWithPythonArgs(prc.name, prc.getFormalParams, argsIdent, kwargsIdent, selfIdent) + let (parseArgs, call) = makeCallNimProcWithPythonArgs(prc.name, prc.getFormalParams, argsIdent, kwargsIdent, selfIdent, isInitializer) + if isInitializer: + let procName = $prc.name + result = makeInitProcWrapper(name, parseArgs, procName, call, argsIdent, kwargsIdent) + return result + + if isReprFunc: + result = makeReprProcWrapper(name, prc) + return result + result = quote do: proc `name`(`selfIdent`, `argsIdent`, `kwargsIdent`: PPyObject): PPyObject {.cdecl.} = updateStackBottom() @@ -663,6 +738,7 @@ proc makeProcWrapper(name, prc: NimNode, isMethod: bool): NimNode = pythonException(e) var p {.volatile.}: proc(s, a, kwg: PPyObject): PPyObject {.nimcall.} = noinline p(`selfIdent`, `argsIdent`, `kwargsIdent`) + else: let (parseArgs, call) = makeCallNimProcWithPythonArgs(prc.name, prc.getFormalParams, argsIdent, kwargsIdent) result = quote do: @@ -754,8 +830,31 @@ proc exportProc(prc: NimNode, procName: string, wrap: bool): NimNode = var procName = procName if procName.len == 0: procName = $procIdent - - let isMethod = prc.params.len > 1 and $prc.params[1][0] == "self" + + var isMethod = false + if prc.params.kind == nnkFormalParams: + if (prc.params.len > 1 and $prc.params[1][0] == "self"): + isMethod = true + if (prc.params.len == 1 and prc.params[0].kind == nnkIdent and $prc.params[0] == "self"): + isMethod = true + var isInitializer, isReprFunc : bool + if isMethod: + var typename : string + if prc.params[1][1].kind == nnkIdent: + typename = $prc.params[1][1] + else: + typename = $prc.params[1][1][0] + isInitializer = "init" & typeName == procName + isReprFunc = "$" == procName + + if isInitializer: + if prc.params[0].kind != nnkEmpty: + raise newException(ValueError, "Initializer method should not return anything!") + if isReprFunc: + if prc.params[0].kind != nnkIdent or $prc.params[0] != "string": + raise newException(ValueError, "Repr method should return string!") + if prc.params.len != 2: + raise newException(ValueError, "Repr method should only have one argument (self)!") if prc.kind == nnkIteratorDef: procIdent = newIdentNode($procIdent & "Py_newIter") @@ -764,16 +863,18 @@ proc exportProc(prc: NimNode, procName: string, wrap: bool): NimNode = else: if wrap: procIdent = genSym(nskProc, $procIdent & "Py_wrapper") - result.add(makeProcWrapper(procIdent, prc, isMethod)) + result.add(makeProcWrapper(procIdent, prc, isMethod, isInitializer, isReprFunc)) if isMethod: var typ = prc.params[1][^2] typ = newCall("type", typ) # Workaround nim bug??? - result.add(newCall(bindSym"registerTypeMethod", typ, newLit(procName), comment, procIdent)) + result.add(newCall(bindSym"registerTypeMethod", typ, newLit(procName), comment, procIdent, isInitializer.newLit, isReprFunc.newLit)) else: result.add(newCall(bindSym"registerMethod", newLit(procName), comment, procIdent)) - # echo "procname: ", procName - # echo repr result + + when defined(DEBUG_NIMPY): + echo result.repr + echo "===============" macro exportpyAux(prc: untyped, procName: static[string], wrap: static[bool]): untyped = exportProc(prc, procName, wrap) @@ -1014,6 +1115,24 @@ template toPyDict*(a: untyped): PyObject = proc pyDict*(): PyObject = newPyObjectConsumingRef(toPyDictRaw(())) +proc setModuleDocString*(doc : string) = + let m = curModuleDef + if not m.isNil: + m.doc = cstring(doc) + else: + raise newException(ValueError, "No python module defined") + +proc setDocStringForType*(T: typedesc, doc : string) = + let m = curModuleDef + if not m.isNil: + for t in m.types: + if t.name == ($T).cstring: + t.doc = cstring(doc) + return + raise newException(ValueError, "Type " & $T & " not found in current python module") + else: + raise newException(ValueError, "No python module defined") + ################################################################################ ################################################################################ ################################################################################ diff --git a/nimpy.nimble b/nimpy.nimble index 4f7a5aad0..01f00f735 100644 --- a/nimpy.nimble +++ b/nimpy.nimble @@ -1,4 +1,4 @@ -version = "0.2.0" +version = "0.2.1" author = "Yuriy Glukhov" description = "Nim python integration lib" license = "MIT" @@ -87,8 +87,15 @@ proc runTests(nimFlags = "") = exec "nim c -d:nimpyTestLibPython=" & libPython & " -r " & nimFlags & " " & f.path task test, "Run tests": - runTests() + runTests("--mm:refc") runTests("--mm:orc") + runTests("--mm:arc") task test_orc, "Run tests with --mm:orc": runTests("--mm:orc") + +task test_arc, "Run tests with --mm:arc": + runTests("--mm:arc") + +task test_refc, "Run tests with --mm:refc": + runTests("--mm:refc") diff --git a/tests/texport_pytype b/tests/texport_pytype new file mode 100755 index 0000000000000000000000000000000000000000..9c6d618fcaeecb267cd19c349973bd94e82affb9 GIT binary patch literal 369504 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⅕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 literal 0 HcmV?d00001 diff --git a/tests/texport_pytype.nim b/tests/texport_pytype.nim new file mode 100644 index 000000000..33df3ad24 --- /dev/null +++ b/tests/texport_pytype.nim @@ -0,0 +1,54 @@ +import nimpy +import nimpy/py_types +import nimpy/py_lib as lib +import strformat + +type + PyCustomType* = ref object of PyNimObjectExperimental + a* : int + b* : float + c* : string + +proc initPyCustomType*(self : PyCustomType, aa: int = 1, bb: float = 2.0, cc: string = "default") {.exportpy} = + echo "Calling initPyCustomType for PyCustomType" + self.a = aa + self.b = bb + self.c = cc + +proc destroyPyCustomType*(self : PyCustomType) {.exportpy} = + echo "Calling destroyPyCustomType for PyCustomType" + +proc `$`*(self : PyCustomType) : string {.exportpy} = + echo "Calling $ for PyCustomType" + result = "a: " & $self.a & ", b: " & $self.b & ", c: " & self.c + +proc get_a*(self : PyCustomType) : int {.exportpy} = + echo "Calling get_a for PyCustomType inside nim" + return self.a + +proc set_a*(self : PyCustomType, val : int) {.exportpy} = + echo "Calling set_a for PyCustomType inside nim" + self.a = val + +setModuleDocString("This is a test module") +setDocStringForType(PyCustomType, "This is a test type") + +import unittest +import math + +suite "Test Exporting NimObject as Python Type with __init__, __repr__, __doc__": + let m = pyImport("texport_pytype") + + test "Test __doc__": + check getAttr(m, "__doc__").`$` == "This is a test module" + check getAttr(getAttr(m, "PyCustomType"), "__doc__").`$` == "This is a test type" + + test "Test __init__": + let constructor = getAttr(m, "PyCustomType") + let obj = callObject(constructor, 99, 3.14, "hello") + check obj.get_a().to(int) == 99 + + test "Test __repr__": + let constructor = getAttr(m, "PyCustomType") + let obj = callObject(constructor, 99, 3.14, "hello") + check obj.`$` == "a: 99, b: 3.14, c: hello" \ No newline at end of file From 0fc13e1d68b2ceaea1b642cc64d48d7aa1740e47 Mon Sep 17 00:00:00 2001 From: Yuriy Glukhov Date: Sat, 5 Jul 2025 11:23:39 +0200 Subject: [PATCH 3/5] Removed binary --- tests/texport_pytype | Bin 369504 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 tests/texport_pytype diff --git a/tests/texport_pytype b/tests/texport_pytype deleted file mode 100755 index 9c6d618fcaeecb267cd19c349973bd94e82affb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 369504 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⅕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 From 7024e7c6f596f14fca8d2d11cd814fc8960e8edc Mon Sep 17 00:00:00 2001 From: Yuriy Glukhov Date: Sat, 5 Jul 2025 11:35:07 +0200 Subject: [PATCH 4/5] Add version 3.13 --- nimpy/py_lib.nim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nimpy/py_lib.nim b/nimpy/py_lib.nim index fbb4ac704..10d635194 100644 --- a/nimpy/py_lib.nim +++ b/nimpy/py_lib.nim @@ -373,7 +373,7 @@ proc pythonLibHandleForThisProcess(): LibHandle {.inline.} = loadLib() iterator libPythonNames(): string {.closure.} = - for v in ["3.12", "3.11", "3.10", "3.9", "3.8", "3.7", "3.6", "3.5", "3", + for v in ["3.13", "3.12", "3.11", "3.10", "3.9", "3.8", "3.7", "3.6", "3.5", "3", "", "2.7", "2.6", "2"]: when defined(macosx): From 343aa546167c146127234ff56cc9bca85625baea Mon Sep 17 00:00:00 2001 From: cvanelteren Date: Thu, 11 Sep 2025 14:11:02 +0200 Subject: [PATCH 5/5] add threading example --- tests/releasingGil.nim | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/tests/releasingGil.nim b/tests/releasingGil.nim index 7eae01df2..daafd6a28 100644 --- a/tests/releasingGil.nim +++ b/tests/releasingGil.nim @@ -44,6 +44,10 @@ proc initPyThread*() = # This should be called once at the start of your program mainThreadState = PyEval_SaveThread() +proc deinitPyThread*() = + # Restore the main thread's state before exiting + PyEval_RestoreThread(mainThreadState) + # A way to template your code, and uses a similar structure as the withGIL macro in cython template withPyGIL*(code: untyped) = let state = PyGILState_Ensure() @@ -61,7 +65,7 @@ proc withoutPyGIL*(body: proc()) = PyEval_RestoreThread(threadState) # Example usage -proc pyThreadSafeFunction() {.gcsafe.} = +proc pyThreadSafeFunction() {.thread, gcsafe.} = #[ We are explicitly creating a python object on every function call (nx, g) then we modify the objects. If we would have used a global variable for nx, the GIL should be held as potential modifications would be subject to racing conditions. ]# @@ -70,15 +74,15 @@ proc pyThreadSafeFunction() {.gcsafe.} = let g = nx.path_graph(3) g.nodes()[0]["example_trait"] = "example_value" -# Initialize Python threading -initPyThread() +if isMainModule: + # Initialize Python threading + initPyThread() -# Use in your code -# We are using malebolgia here, but the principle holds for other threading libraries -import malebolgia -var m = malebolgia.createMaster() -m.awaitAll: - for idx in (0 .. 10000): - m.spawn: - pyThreadSafeFunction() -pyThreadSafeFunction() + # Use in your code + # We are using std/threading here, but the principle holds for other threading libraries + var threads: seq[Thread[void]] = @[] + for idx in (0 .. 10): # Start with a small number of threads + threads.add(Thread[void]()) + createThread(threads[idx], pyThreadSafeFunction) + joinThreads(threads) + deinitPyThread()