comparison python/pydc/README.txt @ 61:c5a69c454963 default tip

- allow use of 'None' with 'Z' - bumped version to 1.4 (be in sync current dyncall version)
author Tassilo Philipp
date Mon, 03 Apr 2023 19:06:07 +0200
parents 8e905c0798c7
children
comparison
equal deleted inserted replaced
60:8e905c0798c7 61:c5a69c454963
1 dyncall python bindings 1 dyncall python bindings
2 Copyright 2007-2016 Daniel Adler 2 Copyright 2007-2016 Daniel Adler
3 2018-2022 Tassilo Philipp 3 2018-2023 Tassilo Philipp
4 4
5 Dec 4, 2007: initial 5 Dec 4, 2007: initial
6 Mar 22, 2016: update to dyncall 0.9, includes breaking sig char changes 6 Mar 22, 2016: update to dyncall 0.9, includes breaking sig char changes
7 Apr 19, 2018: update to dyncall 1.0 7 Apr 19, 2018: update to dyncall 1.0
8 Apr 7, 2020: update to dyncall 1.1, Python 3 support, using the Capsule 8 Apr 7, 2020: update to dyncall 1.1, Python 3 support, using the Capsule
19 Feb 2, 2021: added callback support (comes with some bigger refactoring); 19 Feb 2, 2021: added callback support (comes with some bigger refactoring);
20 allow CPython's Py{CObject,Capsule} to be used as 'p'ointers 20 allow CPython's Py{CObject,Capsule} to be used as 'p'ointers
21 Aug 3, 2022: added p2Z() helper function (e.g. helpful when working with 21 Aug 3, 2022: added p2Z() helper function (e.g. helpful when working with
22 string 'p'ointers that eventually need to be free()'d, as no 22 string 'p'ointers that eventually need to be free()'d, as no
23 implicit 'Z' conversion is taking place) 23 implicit 'Z' conversion is taking place)
24 24 Apr 3, 2023: allowing 'None' for 'Z' params
25 25
26 26
27 27
28 28
29 BUILD/INSTALLATION 29 BUILD/INSTALLATION
30 ================== 30 ==================
31 31
101 | (PyCObject,PyCapsule) | (PyCObject,PyCapsule) | void* | int,long (Py_ssize_t) | int (Py_ssize_t) @@@ test 101 | (PyCObject,PyCapsule) | (PyCObject,PyCapsule) | void* | int,long (Py_ssize_t) | int (Py_ssize_t) @@@ test
102 'Z' | str (PyString) ! | str (PyUnicode) ! | const char* (UTF-8 for unicode) | str (PyString) | str (PyUnicode) 102 'Z' | str (PyString) ! | str (PyUnicode) ! | const char* (UTF-8 for unicode) | str (PyString) | str (PyUnicode)
103 | unicode (PyUnicode) ! | - | const char* (UTF-8 for unicode) | str (PyString) | str (PyUnicode) 103 | unicode (PyUnicode) ! | - | const char* (UTF-8 for unicode) | str (PyString) | str (PyUnicode)
104 | - | bytes (PyBytes) ! | const char* (UTF-8 for unicode) | str (PyString) | str (PyUnicode) 104 | - | bytes (PyBytes) ! | const char* (UTF-8 for unicode) | str (PyString) | str (PyUnicode)
105 | bytearray (PyByteArray) ! | bytearray (PyByteArray) ! | const char* (UTF-8 for unicode) | str (PyString) | str (PyUnicode) 105 | bytearray (PyByteArray) ! | bytearray (PyByteArray) ! | const char* (UTF-8 for unicode) | str (PyString) | str (PyUnicode)
106 | None (Py_None) | None (Py_None) | const char* (always NULL) | None (Py_None) | None (Py_None)
106 107
107 Annotations: 108 Annotations:
108 # converted to 1 if True and 0 otherwise 109 # converted to 1 if True and 0 otherwise
109 @ converted to False if 0 and True otherwise 110 @ converted to False if 0 and True otherwise
110 % range/length checked 111 % range/length checked