David Hewitt
5af835daed
pyo3-build-config: fix build for windows gnu targets
2021-08-07 00:25:14 +01:00
David Hewitt
c2d6a50b35
build: revert usage of cargo:rustc-cdylib-link-arg
2021-08-03 20:04:56 +01:00
David Hewitt
4c5aee92d5
pycell: fix calculation of dictoffset on 32-bit Windows
2021-07-31 15:09:12 +01:00
David Hewitt
bbe0e846b0
Merge pull request #1738 from davidhewitt/latest-links
...
docs: use pyo3.rs/latest instead of pyo3.rs/main
2021-07-24 17:57:03 +01:00
David Hewitt
4a71f82099
Merge pull request #1724 from davidhewitt/err-new-no-gil
...
err: don't use with_gil internally in PyErr::new()
2021-07-24 10:13:50 +01:00
David Hewitt
c09947a61c
err: don't use with_gil internally in PyErr::new()
2021-07-24 08:51:17 +01:00
David Hewitt
3794aab11f
docs: use pyo3.rs/latest instead of pyo3.rs/main
2021-07-24 08:47:02 +01:00
David Hewitt
d46d3265cb
pypy: fix FFI definition of Py_Buffer
2021-07-24 08:37:22 +01:00
Ivan Carvalho
bd0e0d808f
Add optional support for conversion from `indexmap::IndexMap` ( #1728 )
...
* Add support to IndexMap
* Fix indexmap version to 1.6.2
* Remove code duplication by mistake
* Fix ambiguity in test
* Minor change for doc.rs
* Add to lib.rs docstring
* Add indexmap to conversion table
* Add indexmap flag in docs.rs action
* Add indexmap feature to CI
* Add note in changelog
* Use with_gil in tests
* Move code to src/conversions/indexmap.rs
* Add PR number to CHANGELOG
Co-authored-by: David Hewitt <1939362+davidhewitt@users.noreply.github.com>
* Add round trip test
* Fix issue in MSRV Ubuntu build
* Fix Github workflow syntax
* Yet Another Attempt to Fix MSRV Ubuntu build
* Specify hashbrown to avoid ambiguity in CI
* Add suggestions
* More flexible version for indexmap
* Add documentation
* Address PR comments
* Export indexmap for docs
Co-authored-by: David Hewitt <1939362+davidhewitt@users.noreply.github.com>
2021-07-22 08:15:26 +01:00
Alex Gaynor
a941b2c65f
Added a changelog entry
2021-07-15 07:14:44 -04:00
David Hewitt
d11943ab6d
macros-backend: don't error on #[doc(hidden)]
2021-07-08 23:41:24 +01:00
David Hewitt
3f8c4ad38e
release: 0.14.1
2021-07-04 16:49:36 +01:00
Georg Brandl
f7235482eb
PyPy: the PyList_GET/SET macros are defined as functions, the PyTuple_ ones do not exist
2021-07-04 15:54:40 +02:00
messense
eaf5dcaab7
Implement `IntoPy<PyObject>` for `&PathBuf` and `&OsString`
2021-07-04 16:18:04 +08:00
David Hewitt
adf6bdba8e
release: 0.14.0
2021-07-03 08:37:00 +01:00
David Hewitt
0215054012
Merge pull request #1702 from ohadravid/to-python-set-non-default-hashbuilder
...
Make `ToPyObject` impl for `HashSet` accept non-default hashers.
2021-06-27 17:29:00 +01:00
Ohad Ravid
fcffcdfae5
Added `size_hint` impls for `{PyDict,PyList,PySet,PyTuple}Iterator`s
2021-06-27 16:10:53 +03:00
Ohad Ravid
43fca5dad7
Make `ToPyObject` impl for `HashSet` accept non-default hashers.
2021-06-27 15:19:01 +03:00
messense
b5b9a480cd
Add `wrap_pyfunction` macro to prelude
2021-06-24 22:34:55 +08:00
mejrs
455cc95c54
implement ffi/cpython/pystate ( #1687 )
...
* dont reexport cpython items twice
* add ffi module level doc
* reorder to header file order
* cargo fmt
* implement cpython/pystate
* fix import errors
* make PyInterpreterState opaque
* update changelog
* fix formatting
2021-06-24 20:05:15 +08:00
David Hewitt
a02353ce34
Merge pull request #1679 from messense/error-cause
...
Add support for setting and retrieving exception cause
2021-06-24 07:58:34 +01:00
messense
2bac6c5a3a
Add support for setting and retrieving exception cause
2021-06-23 20:14:49 +08:00
Gabriel Majeri
b048bfa75f
Update the changelog
2021-06-23 15:03:03 +03:00
David Hewitt
f916867375
pyclass: refactor initialization, call native type dealloc
2021-06-23 07:45:51 +01:00
David Hewitt
a290971759
Merge pull request #1650 from davidhewitt/pymodule-name
...
pymodule: accept `#[pyo3(name = "...")]` option
2021-06-06 11:11:10 +01:00
Georg Brandl
98461a2ef6
PyList tests: simplify construction
2021-06-06 10:28:15 +02:00
David Hewitt
18e0aa17e0
pymodule: accept `#[pyo3(name = "...")]` option
2021-06-06 08:41:20 +01:00
Georg Brandl
3bebc19e2d
PyList: remove get_parked_item, use macros for speed on !abi3
2021-06-06 07:54:38 +02:00
Georg Brandl
60862c308b
Update changelog entry.
2021-06-06 07:08:23 +02:00
David Hewitt
cec4c2d2e9
text_signature: move to `#[pyo3(text_signature = "...")]`
2021-06-05 16:33:03 +01:00
David Hewitt
a5810eaffa
Merge pull request #1619 from birkenfeld/fastcall
...
Implement METH_FASTCALL for pyfunctions.
2021-06-05 12:32:16 +01:00
Georg Brandl
3e8d003faf
Implement METH_FASTCALL for pyfunctions and pymethods.
2021-06-05 12:57:22 +02:00
David Hewitt
97d6f15b32
Merge pull request #1626 from alonblade/cross-sysconfig
...
build.rs: if found more than one candidate, filter on arch
2021-06-05 09:29:00 +01:00
messense
bd1045e289
Add support for extracting PathBuf from pathlib.Path
2021-06-05 14:59:26 +08:00
Alon Levy
e5542f2214
pyo3-build-config: if found more than one candidate, filter on arch
...
If we got more then one file, only take those that contain the arch name.
For ubuntu 20.04 with host architecture x86_64 and a foreign architecture of armhf
this reduces the number of candidates to 1:
$ find /usr/lib/python3.8/ -name '_sysconfigdata*.py' -not -lname '*'
/usr/lib/python3.8/_sysconfigdata__x86_64-linux-gnu.py
/usr/lib/python3.8/_sysconfigdata__arm-linux-gnueabihf.py
CHANGELOG.md: add entry for cross-sysconfigdata filter on arch
commit changelog:
1. initial
2. if filtered list is empty, use pre filtered.
3. clippy is_empty and cloned
2021-05-30 10:07:03 +03:00
Erik Johnston
a56f23d7f2
Add changelog entry
2021-05-26 12:23:47 +01:00
David Hewitt
3e87ea3593
pymodule: don't call PyEval_InitThreads
2021-05-25 11:02:16 +01:00
David Hewitt
355bd0c336
pymodule: tidy up module init
2021-05-25 10:54:16 +01:00
David Hewitt
f4dfafa07b
changelog: fix missing bits
2021-05-25 07:32:47 +01:00
David Hewitt
a109640850
pyfn: deprecate name argument
2021-05-20 08:54:29 +01:00
Tim Robinson
50352f9137
Apply review suggestions
2021-05-15 10:34:34 +01:00
Tim Robinson
c803033f5e
Add to CHANGELOG
2021-05-13 13:17:56 +01:00
David Hewitt
4d46abde73
macros: support `#[pyo3(name = "...")]`
2021-05-07 22:35:52 +01:00
David Hewitt
4613b3dd7e
Merge pull request #1596 from davidhewitt/remove-pytypeinfo-layout
...
type_object: remove layout and base type from PyTypeInfo
2021-05-07 22:32:24 +01:00
David Hewitt
d81abe8344
pyclass: support extending Exception types
2021-05-04 22:00:22 +01:00
David Hewitt
7536554ceb
type_object: remove layout and base type from PyTypeInfo
2021-05-04 21:39:42 +01:00
David Hewitt
3ee84a3c26
Merge pull request #1128 from c410-f3r/array
...
Add support for arbitrary arrays
2021-05-01 16:02:22 +01:00
David Hewitt
c0ff97e525
Merge pull request #1573 from davidhewitt/utc
...
ffi: support PyDateTime_TimeZone_UTC
2021-04-29 22:55:35 +01:00
David Hewitt
7ead166d9d
array: safer implementation of try_create_array
2021-04-26 08:22:14 +01:00
Caio
9bc5089e4b
Add support for arbitrary arrays
2021-04-26 08:22:14 +01:00
David Hewitt
e95e73b55e
ffi: support PyDateTime_TimeZone_UTC
2021-04-22 22:42:57 +01:00
Gregory Szorc
754c27f17d
ffi: Define missing import APIs
...
Co-authored-by: Nicholas Sim <nsim+github@posteo.net>
2021-04-21 21:01:26 +01:00
David Hewitt
48823e22d6
pyproto: deprecate py_methods
2021-04-20 00:21:19 +01:00
David Hewitt
2b9085abdb
build: avoid rebuilds when using clippy in a virtualenv
2021-04-19 09:45:01 +01:00
David Hewitt
eaf75023ed
ffi: prevent segfault with datetime bindings
2021-04-17 11:01:52 +01:00
David Hewitt
aa0b5d8488
buffer: tidy up exceptions
2021-04-12 01:21:48 +01:00
David Hewitt
b7b9f55a93
Merge pull request #1538 from davidhewitt/pypy-3.7
...
pypy: support PyPy 3.7
2021-04-03 07:03:43 +01:00
David Hewitt
5bf0bb80f6
Merge pull request #1539 from davidhewitt/macos-link-args
...
macos: automatically provide required linker arguments
2021-04-03 07:02:33 +01:00
David Hewitt
b213f06df4
macos: automatically provide required linker arguments
2021-04-02 14:18:28 +01:00
David Hewitt
410f61934a
pypy: support PyPy 3.7
2021-04-02 12:11:14 +01:00
David Hewitt
e035b2abcf
pypy: support EnvironmentError, OSError, WindowsError
2021-03-31 08:03:45 +01:00
David Hewitt
2702c33a61
changelog: fix code block
2021-03-28 22:11:15 +01:00
David Hewitt
8ad3827341
Merge pull request #1514 from jameshilliard/cross-env-detection
...
Ensure we are cross compiling when any cross env variables are set.
2021-03-28 12:46:59 +01:00
Sergey Kvachonok
80c747d2c0
Remove `pyconfig.h` header parsing
...
The config header parsing code was supposed to be only invoked when
cross-compiling for Windows, but in reality it fails to correctly parse
the config header files shipped with the upstream Python for Windows.
Given that there are now better options for reliable cross-compiling
for Windows such as `PYO3_CROSS_PYTHON_VERSION` or the `abi3-py3*` features,
it should be OK to remove this config for v0.14.
Update the cross-compilation instructions section of the user guide.
Fixes https://github.com/PyO3/pyo3/issues/1337
2021-03-26 09:57:18 +03:00
David Hewitt
93696889d3
Merge pull request #1496 from PyO3/dependabot/cargo/hashbrown-0.11
...
build(deps): update hashbrown requirement from 0.9 to 0.11
2021-03-25 08:01:31 +00:00
David Hewitt
a2788b052d
hashbrown: support 0.9 or 0.11
2021-03-24 22:35:37 +00:00
James Hilliard
2c3e8b1c50
Ensure we are cross compiling when any cross env variables are set.
2021-03-23 05:13:52 -06:00
David Hewitt
246335bee2
Merge pull request #1505 from scalexm/macro
...
Ignore `syn::Type::Group` in `is_python`
2021-03-20 11:09:04 +00:00
David Hewitt
e34e87ad4a
1505: add CHANGELOG and test
2021-03-20 08:36:19 +00:00
Yuji Kanagawa
acff3b1f3e
Merge pull request #1504 from PyO3/pyclass
...
Add tuple and unit struct support for pyclass macro
2021-03-20 16:14:15 +09:00
messense
acd4601d2f
Remove __doc__ from module's __all__
2021-03-20 11:25:36 +08:00
messense
773a371ba5
Add tuple and unit struct support for pyclass macro
2021-03-19 10:17:06 +08:00
David Hewitt
f22fb423cb
Merge pull request #1503 from davidhewitt/main-tweaks
...
main: tweaks from rename
2021-03-17 21:07:58 +00:00
Yuji Kanagawa
6137e3a726
Merge pull request #1456 from davidhewitt/pyclass-impl-flags
...
pyclass: move flags to PyClassImpl
2021-03-17 12:50:49 +09:00
David Hewitt
4d2913dc06
main: tweaks from rename
2021-03-16 22:14:57 +00:00
David Hewitt
b10cefdca2
pymodule: remove call_function etc.
2021-03-14 11:19:55 +00:00
David Hewitt
31c7af2ac7
pyclass: move flags to PyClassImpl
2021-03-13 22:44:53 +00:00
David Hewitt
78080ebbd2
macros-backend: support noargs for pyproto py_methods
2021-03-08 23:56:08 +00:00
David Hewitt
fe75b2da59
Merge pull request #1482 from PyO3/dependabot/cargo/num-complex-0.4
...
build(deps): update num-complex requirement from 0.3 to 0.4
2021-03-08 22:06:51 +00:00
David Hewitt
5e44c2b0d6
Merge pull request #1473 from davidhewitt/initconfig-limited-api
...
ffi: move initconfig.rs to cpython/initconfig.rs
2021-03-08 21:59:58 +00:00
David Hewitt
993d461287
changelog: add entry for num-complex update
2021-03-08 21:35:50 +00:00
David Hewitt
818039ff93
changelog: add entry for num-bigint update
2021-03-08 08:03:05 +00:00
David Hewitt
23b5fe9e69
ffi: add _Py_InitializeMain
2021-03-06 22:45:19 +00:00
Georg Brandl
e065f9b517
PyModule: rename call* to call_function*
...
For consistency with PyObject/PyAny, where call() means to call the
object itself.
2021-03-04 09:29:28 +01:00
David Hewitt
29a525b327
pyfunction: refactor argument extraction
2021-03-01 17:49:46 +00:00
David Hewitt
ffd5874c3a
pyfunction: fix args conflicting with keyword only arg
2021-03-01 17:49:46 +00:00
David Hewitt
9acf242ccc
tuples: support conversions up to length 12
2021-03-01 08:32:13 +00:00
David Hewitt
593be05b83
Merge pull request #1436 from nw0/ffi-8
...
ffi cleanup: abstract.h
2021-02-28 07:55:35 +00:00
Nicholas Sim
d278aaff54
Remove PyIter_Check, PyIndex_Check under abi3 for Python < 3.8
...
While these are defined as macros in the Python C API, they rely on
access to the PyTypeObject structure, which is not part of the limited
API for those versions.
2021-02-28 13:25:22 +08:00
David Hewitt
1aa1e91ce6
pycfunction: take &'static str arguments to new
...
Co-authored-by: messense <messense@icloud.com>
2021-02-27 09:33:15 +00:00
Nicholas Sim
13bfbd38b4
CHANGELOG: update
2021-02-22 23:04:17 +00:00
Nicholas Sim
24f091b8ff
remove cfg for PyTryFrom impl for PyIterator
2021-02-22 23:03:13 +00:00
Nicholas Sim
f7edd35a9e
ffi cleanup: abstract.h
2021-02-22 23:00:51 +00:00
David Hewitt
9e4e0dbbe0
auto-initialize: remove from default features
2021-02-22 22:34:34 +00:00
Daniil Konovalenko
554cffd60d
add #[pyo3(from_py_with="...")] attribute ( #1411 )
...
* allow from_py_with inside #[derive(FromPyObject)]
* split up FnSpec::parse
2021-02-21 00:15:20 +09:00
David Hewitt
0c3517a6e0
ffi: further removals
2021-02-20 07:22:08 +00:00
Nicholas Sim
04c9388a3d
Merge branch 'master' into ffi-6
2021-02-16 19:46:49 +08:00
Nicholas Sim
d8198f8beb
ffi cleanup: remove PyTypeObject_INIT
...
This should only be used internally. See discussion:
https://github.com/PyO3/pyo3/pull/1429#discussion_r575837123
2021-02-16 19:36:15 +08:00
David Hewitt
7fa3b36eb4
Merge pull request #1428 from PyO3/macos-arm64-cross
...
Don't require PYO3_CROSS_LIB_DIR when compiling for x86_64 from macOS arm64 and reverse
2021-02-14 14:06:12 +00:00
David Hewitt
07c7624506
Merge pull request #1379 from kangalioo/master
...
OsStr and Path conversions
2021-02-14 13:13:53 +00:00