Sergey Kvachonok
328e7d69f6
pyo3-build-config: Try "default" cross-compilation
...
Try to generalize `windows_hardcoded_cross_compile()`
to all supported target platforms (when possible).
Rename it to `default_cross_compile()` and add some unit tests.
Rewrite `load_cross_compile_config()` to fall back to
the default interpreter configuration when no other config
information sources are available.
2022-04-01 11:32:46 +03:00
Sergey Kvachonok
54ae025722
pyo3-build-config: Make lib_dir
optional in CrossCompileConfig
...
Change the `CrossCompileConfig` structure definition and make
the public `lib_dir` field optional to support more flexible
cross-compilation configuration in the future.
FIXME: This change breaks the public `pyo3-build-config` crate API.
Update the sysconfigdata extraction functions to fall through
when `lib_dir` field is not set.
WIP: Add `unwrap()` stubs to the main cross compile switch.
2022-04-01 11:32:46 +03:00
Adam Reichold
601e3d6517
Merge pull request #2253 from ravenexp/target-lexicon
...
pyo3-build-config: Replace `TargetInfo` with `target_lexicon::Triple`
2022-04-01 10:16:35 +02:00
Sergey Kvachonok
9b45a19161
pyo3-build-config: Replace TargetInfo
with target_lexicon::Triple
...
Add a new public crate function `cross_compile_from_to()` using
`target_lexicon::Triple` arguments instead of plain strings
used in `cross_compile()`.
Deprecate `pyo3_build_config::cross_compile()` since v0.17.
Attempt to extract common code patterns into methods and standalone
helper functions. Add docstrings to the new private items.
Make some of the new helper functions public within the PyO3 crate
and reuse them in the build scripts.
Add PYO3_CROSS_PYTHON_VERSION parsing unit test.
Add a ChangeLog entry mentioning the new `pyo3-build-config` API.
2022-04-01 09:36:49 +03:00
Bruno Kolenbrander
78efebd993
Expand some documentation ( #2256 )
...
* use `is` where appropriate
* Rework safety docs
2022-03-30 12:56:14 +02:00
messense
0f49bedf67
Merge pull request #2258 from messense/black-22.3.0
...
Update black to 22.3.0
2022-03-30 12:02:55 +08:00
messense
8febab1fe9
Update black to 22.3.0
2022-03-30 11:22:26 +08:00
David Hewitt
9b92d98414
Merge pull request #2252 from messense/xtask-actions
...
Don't capture output when running command in xtask
2022-03-28 12:02:49 +01:00
messense
b22d33793d
Don't capture output when running command in xtask
2022-03-28 11:52:30 +08:00
David Hewitt
de060573d3
Merge pull request #2250 from messense/pep573-fns
...
Add FFI definitions for PEP 573 functions
2022-03-28 03:43:35 +01:00
David Hewitt
9dca5cffbb
Merge pull request #2251 from mityax/main
...
Add rustimport to tools section in readme
2022-03-28 03:36:34 +01:00
messense
03d34ab34d
Show xtask stdout and stderr when running in GitHub
...
Actions
2022-03-27 22:16:46 +08:00
mityax
4d7c84b459
Fix typo
2022-03-26 22:44:17 +05:30
mityax
08a390a397
Add rustimport to tools section in readme
2022-03-26 22:43:11 +05:30
messense
733a2c68f5
Update changelog entry
2022-03-26 21:27:49 +08:00
messense
23e220985a
Mark METH_FASTCALL
as limited API on Python 3.10+
...
0b9c4c6fcf (diff-adb492ab0eb13648d50d0d79e4b6e5517b27f983ab3b21b63e77f54132c98e9dR76)
2022-03-26 21:27:49 +08:00
messense
f3f0a612d8
Add FFI definition for PyModule_AddType
2022-03-26 21:27:49 +08:00
messense
92c132569f
Add FFI definitions for PEP 573 functions
2022-03-26 21:27:44 +08:00
David Hewitt
8a21db93f3
Merge pull request #2249 from davidhewitt/gh-pages-ci
...
ci: avoid race between bench and guide
2022-03-25 11:08:33 +00:00
David Hewitt
35a27a8d04
ci: avoid race between bench and guide
2022-03-25 10:10:54 +00:00
Bruno Kolenbrander
43944aef76
Create a better error message for moving self ( #2238 )
2022-03-24 10:27:37 +01:00
David Hewitt
16ee22c7cc
Merge pull request #2244 from mejrs/lint-more
...
Add more lints
2022-03-23 13:40:35 +00:00
mejrs
00ea040834
Feedback
2022-03-23 13:30:32 +01:00
David Hewitt
2813c87eaf
Merge pull request #2092 from aganders3/export-conf
...
Add export-config feature to pyo3-build-config
2022-03-23 11:16:04 +00:00
mejrs
1b9763fef2
Fix merge conflict
2022-03-23 10:10:35 +01:00
messense
7f62c96ead
Merge pull request #2242 from ravenexp/fix-max-abi3-version
...
Fix `abi3-py310` feature implementation: use Python 3.10 ABI when available.
2022-03-23 16:55:23 +08:00
Bruno Kolenbrander
fb689340b4
Merge branch 'main' into lint-more
2022-03-23 09:34:31 +01:00
David Hewitt
60d42b07b4
Merge pull request #2243 from ravenexp/simple-fastcall
...
pyo3-macros-backend: Replace `pyo3-build-config` with `abi3` feature
2022-03-23 08:01:34 +00:00
mejrs
6f1cf1b662
Add more lints
2022-03-23 08:07:28 +01:00
Sergey Kvachonok
7a44aa1070
pyo3-macros-backend: Replace pyo3-build-config
with abi3
feature
...
Python 3.6 and older are not supported by the current PyO3 version,
so the removed interpreter version check was a no-op.
`pyo3_build_config::get()` attempts to read a config file from disk
when PyO3 is cross-compiling, which is probably bad for rust-analyzer
and other IDEs that attempt to sandbox the proc macro code.
2022-03-23 09:48:15 +03:00
Sergey Kvachonok
5237000317
pyo3-build-config: Fix abi3-py310
feature
...
Fix `abi3-py310` feature: use Python 3.10 ABI when available
instead of silently falling back to the 3.9 ABI.
2022-03-23 09:45:25 +03:00
Ashley Anderson
272d2bc0e6
Merge branch 'main' into export-conf
2022-03-22 12:59:54 -04:00
David Hewitt
87c79c0319
Merge pull request #2234 from davidhewitt/pyclass-args-refactor
...
pyclass: unify pyclass with its pyo3 arguments
2022-03-22 11:38:05 +00:00
David Hewitt
49c1d22606
docs: for #2234
2022-03-22 10:38:36 +00:00
messense
4339214ded
Merge pull request #2239 from zh-jq/patch-v0.16.2
...
allow to compile with parking_lot 0.12
2022-03-22 14:39:46 +08:00
messense
ad8ffaad2e
Update changelog for parking_lot supported versions
2022-03-22 13:51:58 +08:00
messense
0aead58fcd
Fix minimal package version for parking_lot
2022-03-22 13:50:29 +08:00
zhangjingqiang
847ffe563c
allow to compile with parking_lot 0.12
2022-03-22 13:50:25 +08:00
David Hewitt
d146a2a80d
Merge pull request #2240 from davidhewitt/syn-patch
...
macros: fix syn patch version
2022-03-22 03:36:20 +00:00
David Hewitt
c734b116f9
macros: fix syn patch version
2022-03-21 23:53:08 +00:00
Ashley Anderson
4a62a62cae
Improvements based on code review: API and documentation.
2022-03-21 12:55:39 -04:00
Mo Mirza
143b7d368f
Replace nbsp with space ( #2237 )
...
This fixes markdown heading rendering
2022-03-20 16:45:33 +01:00
David Hewitt
5cc3ce99f1
pyclass: unify pyclass with its pyo3 arguments
2022-03-20 08:24:09 +00:00
messense
b8dd626194
Merge pull request #2235 from alex/pybytes-as-bytes
...
Added an as_bytes method for Py<PyBytes>
2022-03-20 12:01:53 +08:00
Alex Gaynor
69655454c1
Added an as_bytes method for Py<PyBytes>
...
This allows for obtaining a slice that's not lexically bound to the GIL which can be helpful to avoid copying.
2022-03-19 13:28:06 -04:00
Bruno Kolenbrander
16ad15e04f
Expand on xtask ( #2176 )
...
* Fix Windows OSError
* Ignore .pyd files
* Put things in modules
* Rename functions to `run`
* Expand on cargo xtask
* Try to work around missing installs
* Run all things by default, but not llvm-cov
* Test msrv
* Fix more OSErrors
* Various refinements and docs
* Various refinements
* Various refinements
2022-03-18 22:13:23 +00:00
Ashley Anderson
bbe7a493d6
Refactor to serialize the whole InterpreterConfig into DEP_PYTHON_PYO3_CONFIG
2022-03-17 12:10:38 -04:00
Ashley Anderson
6e0a20c8cf
Mention export-config feature in the guide.
2022-03-17 11:20:37 -04:00
Ashley Anderson
bc356f23e0
Fix coverage for pyo3-build-config CI ("full" feature)
2022-03-17 11:20:37 -04:00
Ashley Anderson
161d79fae3
Fix test for MSRV
2022-03-17 11:20:37 -04:00