Commit Graph

3356 Commits

Author SHA1 Message Date
David Hewitt 6b681143cc
Merge pull request #1664 from PyO3/pylist_opt
PyList: remove get_parked_item, use macros for speed on !abi3
2021-06-06 08:31:18 +01:00
Georg Brandl c57afeb332
Merge pull request #1661 from PyO3/optimize_forwarding
Optimize f(*args, **kwds) function argument "parsing"
2021-06-06 08:27:33 +02: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 bd6788b2fa Argument parsing: optimize the f(*args, **kwds) case.
Use the VARARGS calling convention and just pass through the two objects.
2021-06-06 07:48:38 +02:00
Georg Brandl 4d2c173dbe
Merge pull request #1660 from PyO3/method_defs 2021-06-06 07:47:21 +02:00
Georg Brandl 60862c308b Update changelog entry. 2021-06-06 07:08:23 +02:00
Georg Brandl c670c57ddb Refactor PyMethodDef creation too. 2021-06-06 07:07:48 +02:00
Georg Brandl a8d2649032 Refactor wrapper generation, and enable fastcall for static/class methods. 2021-06-06 07:07:46 +02:00
David Hewitt 4c6d46c86b
Merge pull request #1663 from davidhewitt/ci-3.10-dev
ci: use latest Python 3.10 beta
2021-06-05 19:42:05 +01:00
David Hewitt c342af7138 ci: use latest Python 3.10 beta 2021-06-05 18:58:52 +01:00
David Hewitt bd0aa2cdee
Merge pull request #1659 from davidhewitt/pyo3-pass-module
pyfunction: document `#[pyo3(pass_module)]`
2021-06-05 18:44:48 +01:00
David Hewitt 9b8b133905 pyfunction: document `#[pyo3(pass_module)]` 2021-06-05 17:36:50 +01:00
David Hewitt 51fbf61717
Merge pull request #1658 from davidhewitt/pyo3-text-signature
text_signature: move to `#[pyo3(text_signature = "...")]`
2021-06-05 17:31:32 +01: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
David Hewitt b3d3be600b
Merge pull request #1655 from davidhewitt/bench-tuple-new
bench_tuple: add benchmark for `PyTuple::new`
2021-06-05 09:27:40 +01:00
messense f49f4440b4
Merge pull request #1654 from messense/pathlib
Add support for extracting PathBuf from pathlib.Path
2021-06-05 15:49:30 +08:00
David Hewitt 681f9ccefa bench_tuple: add benchmark for `PyTuple::new` 2021-06-05 08:46:05 +01:00
David Hewitt 3292ccf5e4
Merge pull request #1653 from PyO3/pytuple_fast
PyTuple: use fast macros on !abi3
2021-06-05 08:10:42 +01:00
messense bd1045e289 Add support for extracting PathBuf from pathlib.Path 2021-06-05 14:59:26 +08:00
Georg Brandl 90188c6917 PyTuple: use fast macros on !abi3
They were already defined, but not used so far.
2021-06-05 08:36:40 +02:00
David Hewitt 81934c5684
Merge pull request #1652 from messense/pytest-bench
Run pytest pyo3-benchmarks on CI
2021-06-05 07:21:02 +01:00
David Hewitt 15366b9b48
Merge pull request #1651 from davidhewitt/tuple-get-set
pyclass: allow `#[pyo3(get, set, name = "foo")]`
2021-06-04 19:26:51 +01:00
messense 9bc77400eb Run pytest pyo3-benchmarks on CI 2021-06-04 23:10:48 +08:00
David Hewitt c9ce569d29
Merge pull request #1639 from messense/bench
Add automated continuous benchmarking
2021-06-04 14:34:01 +01:00
messense c4c5324a73 Add automated continuous benchmarking 2021-06-04 20:46:31 +08:00
David Hewitt d011467e63 pyclass: allow `#[pyo3(get, set, name = "foo")]` 2021-06-04 11:30:40 +01:00
David Hewitt 106cf25991
Merge pull request #1645 from mejrs/pyo3get-faq
faq: add section about pyo3(get) cloning fields
2021-06-03 21:41:34 +01:00
mejrs dbf9a91a8b mark toml field as toml 2021-05-31 21:05:52 +02:00
mejrs e2cb176f6c mark non-rust code as text fields 2021-05-31 20:58:38 +02:00
mejrs 63e6d66ffb add faq doctest 2021-05-31 20:55:18 +02:00
mejrs 161f1bd678 faq: add section about pyo3(get) cloning fields 2021-05-31 17:16:25 +02:00
Georg Brandl d680fbee0a
Merge pull request #1643 from mejrs/main 2021-05-31 15:14:31 +02:00
mejrs d86559b163 move manual builds to its own header 2021-05-31 12:39:00 +02:00
mejrs 088ad61df2 removed trailing space 2021-05-30 15:48:53 +02:00
mejrs 38642aa397 clarify multiple-pymethods' supported platforms 2021-05-30 14:20:08 +02:00
mejrs ce3b0d1dc0 add renaming method to guide 2021-05-30 14:13:24 +02: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
mejrs b703aa56de
Update src/lib.rs
Co-authored-by: Georg Brandl <georg@python.org>
2021-05-30 02:47:22 +02:00
mejrs c13a1b0060
Update src/lib.rs
Co-authored-by: Georg Brandl <georg@python.org>
2021-05-30 02:47:15 +02:00
mejrs e8f4abe469
Update src/lib.rs
Co-authored-by: Georg Brandl <georg@python.org>
2021-05-30 02:47:07 +02:00
mejrs 3228b301e0
Update src/lib.rs
Co-authored-by: Georg Brandl <georg@python.org>
2021-05-30 02:20:45 +02:00
mejrs 435a2bdce5
Update src/lib.rs
Co-authored-by: Georg Brandl <georg@python.org>
2021-05-30 02:20:39 +02:00
mejrs 1922e98273
Update src/lib.rs
Co-authored-by: Georg Brandl <georg@python.org>
2021-05-30 02:20:33 +02:00
mejrs ace6682e5a
Update src/lib.rs
Co-authored-by: Georg Brandl <georg@python.org>
2021-05-30 02:20:27 +02:00
David Hewitt 8bf3adee3a
Merge pull request #1641 from 1tgr/for-each
Simplify code generated for for_each_method_def and for_each_proto_slot
2021-05-29 16:05:10 +01:00
Tim Robinson 1ba32178dd Method and slot visitors accept slices instead of individual items 2021-05-29 09:38:15 +01:00
Tim Robinson 030aa43544 Simplify code generated for for_each_method_def and for_each_proto_slot 2021-05-29 09:10:38 +01:00