Commit graph

2457 commits

Author SHA1 Message Date
Rene Leveille 3bc951a551 make clippy happy and add to changelog 2020-08-17 11:25:42 -04:00
Rene Leveille e4edc6cdd7 Load compilation options from _sysconfigdata_*.py file
Following the discussion in #1077 this change allows the compilation
script to load the configurations from a _sysconfigdata_ file
in the library directory.

This file is also provided on target systems in the same directory.
At least on Manjaro Linux.
Which could remove the need to run a python script at compile time
for compiling the the host.

I've also addressed the linking need for android in #1082.
2020-08-17 11:25:06 -04:00
Yuji Kanagawa 0e0993ffcc
Merge pull request #1108 from PyO3/test-msrv
Test MSRV on github actions
2020-08-18 00:10:34 +09:00
kngwyu 5a098cfd13 Test MSRV on github actions 2020-08-17 22:10:27 +09:00
David Hewitt 4840619d63
Merge pull request #1103 from davidhewitt/fix-guide-layout
Fix layout of gh-pages guide build
2020-08-13 21:34:02 +01:00
David Hewitt d6b5ca4632 Fix layout of gh-pages guide build 2020-08-13 20:46:31 +01:00
David Hewitt 5efad3d281
Merge pull request #1100 from davidhewitt/github-actions
Migrate from Travis CI to Github Actions
2020-08-13 20:02:17 +01:00
Yuji Kanagawa 9ab7225ee0
Merge pull request #1083 from MoritzLangenstein/fallible_py_bytes_bytearray_new_with
Changed PyByte::new_init and PyByteArray::new_init such that init can fail
2020-08-13 13:18:58 +09:00
David Hewitt 51111dc861 Migrate from Travis CI to Github Actions 2020-08-12 08:09:30 +01:00
Moritz Langenstein e6dc4b2d4d Merge remote-tracking branch 'upstream/master' into fallible_py_bytes_bytearray_new_with 2020-08-11 20:52:49 +00:00
David Hewitt 565e36d989
Merge pull request #1098 from davidhewitt/py-as-into-ref
Py::as_ref and Py::into_ref (remove AsPyRef)
2020-08-11 20:44:53 +01:00
Yuji Kanagawa b17d4fffe2
Merge pull request #1093 from kngwyu/iterator-example
Improve lifetime insertions for #[pyproto]
2020-08-11 18:16:53 +09:00
David Hewitt 6b3c6fdeee Improve docs for Py::as_ref() and Py::into_ref()
Co-authored-by: Georg Brandl <georg@python.org>
2020-08-11 08:36:31 +01:00
David Hewitt c81013ba32
Merge pull request #1099 from birkenfeld/guide-exc
guide: show exporting create_exception! exceptions in a module
2020-08-10 19:36:27 +01:00
Georg Brandl 4467cf51db guide: show exporting create_exception! exceptions in a module 2020-08-10 17:08:52 +02:00
Yuji Kanagawa c4d9ab227e
Merge branch 'master' into iterator-example 2020-08-10 17:11:00 +09:00
kngwyu 093dda375f Improve lifetime insertions for #[pyproto] 2020-08-10 15:18:16 +09:00
David Hewitt 7d0b3b386a Add Py::into_ref 2020-08-09 23:00:34 +01:00
David Hewitt 77ed6d6d69 Remove AsPyRef for just Py::as_ref 2020-08-09 22:47:54 +01:00
David Hewitt bcb90775b4
Merge pull request #1063 from davidhewitt/remove-pyobject
Make `PyObject` a type alias of `Py<PyAny>` (& remove `FromPy`)
2020-08-09 22:06:49 +01:00
David Hewitt 2911fb4477
Merge pull request #1094 from davidhewitt/actions-fmt
Move fmt and clippy to actions
2020-08-09 13:08:15 +01:00
David Hewitt be239d405f Rework Py methods and documentation 2020-08-09 12:29:25 +01:00
David Hewitt 20959ecc92 Rewrite documentation for FromPy and PyObject changes 2020-08-09 12:29:25 +01:00
David Hewitt f29e6bae7a Replace PyObject with type alias for Py<T> 2020-08-09 12:28:21 +01:00
David Hewitt 7901890974 Remove FromPy 2020-08-09 12:28:21 +01:00
David Hewitt 206bf96b11
Merge pull request #1086 from davidhewitt/contributing
Make contributing notes much more helpful
2020-08-09 12:16:38 +01:00
David Hewitt 7fe989693c Move fmt and clippy to actions 2020-08-09 12:15:54 +01:00
Yuji Kanagawa ff9cde46e1
Merge pull request #1097 from kngwyu/refactor-buildrs
Refactor build.rs
2020-08-09 18:31:19 +09:00
kngwyu 5ae8639cc8 Refactor build.rs 2020-08-09 18:07:14 +09:00
Yuji Kanagawa b71018689d
Merge pull request #1096 from davidhewitt/docs-rs
Prefer docs.rs doc links
2020-08-09 16:47:27 +09:00
David Hewitt c44697cd31 Prefer docs.rs doc links 2020-08-08 23:54:11 +01:00
David Hewitt 7e4995f860 Simplify language in Contributing.md 2020-08-08 23:41:31 +01:00
David Hewitt ffd6e562ab
Merge pull request #1090 from davidhewitt/unsendable-test-tidy
Change unsendable test to use Rust thread
2020-08-08 18:21:38 +01:00
David Hewitt ad76a8a5ce Change unsendable test to use Rust thread 2020-08-08 17:45:41 +01:00
David Hewitt 801d955a9c
Merge pull request #1092 from davidhewitt/pypy36
Experimental support for PyPy 3.6
2020-08-08 15:38:27 +01:00
David Hewitt e0376d24aa Experimental support for PyPy 3.6
Co-authored-by: Yuji Kanagawa <yuji.kngw.80s.revive@gmail.com>
2020-08-08 14:54:34 +01:00
Yuji Kanagawa c66bc540c8
Merge pull request #1091 from davidhewitt/remove-redundant-test
Remove redundant iter test
2020-08-08 16:06:04 +09:00
David Hewitt e72b682038 Remove redundant iter test 2020-08-07 13:49:52 +01:00
David Hewitt 3809e2b3e9
Merge pull request #1087 from davidhewitt/tidy-link
Only use `#[link]` for static mut
2020-08-07 09:08:21 +01:00
David Hewitt 616067230a Only use #[link] for static mut 2020-08-07 06:21:39 +01:00
David Hewitt 9c212035ef Make contributing notes much more helpful 2020-08-06 18:39:32 +01:00
David Hewitt 9823019c90
Merge pull request #1036 from davidhewitt/fix-gilguard
Various fixes to edge cases with GILGuard
2020-08-06 15:36:14 +01:00
Moritz Langenstein 4b3422e3b4 Simplified fallible PyBytes::new_with and PyByteArray::new_with API 2020-08-06 14:08:43 +00:00
David Hewitt 1f37dbc1a7 Various fixes to edge cases with GILGuard 2020-08-06 14:32:59 +01:00
David Hewitt 11b6bacc4d
Merge pull request #1039 from davidhewitt/pyo3-interpreter
Rename PYTHON_SYS_EXECUTABLE to PYO3_PYTHON
2020-08-06 14:26:07 +01:00
David Hewitt dc5c2a9b8f Rename PYTHON_SYS_EXECUTABLE to PYO3_PYTHON 2020-08-06 13:27:20 +01:00
Moritz Langenstein aeceb18603 Changed PyByte::new_init and PyByteArray::new_init such that init can fail 2020-08-06 08:48:06 +00:00
Manuel Vázquez Acosta f2ba3e6da7
#1064: Comparisons with __eq__ should not raise TypeError (#1072)
* Add (failing) tests for issue #1064

* Return NotImplemented when richcmp doesn't match the expected type.

* Fix tests that expect TypeError when richcmp returns NotImplemented.

- The python code 'class Other: pass; c2 {} Other()' was raising a NameError:
  c2 not found

- eq and ne never raise a TypeError, so I split the those cases.

* Return NotImplemented for number-like binary operations.

* Add dummy impl PyNumberProtocol for the test struct.

* Rework tests of NotImplemented.

* Make py_ternary_num_func return NotImplemented when type mismatches.

* Return NotImplement for type mismatches in binary inplace operators.

* Reduce boilerplate with `extract_or_return_not_implemented!`

* Extract common definition 'Other' into a function.

* Test explicitly for NotImplemented in the __ipow__ test.

* Add entry in CHANGELOG for PR #1072.

* Add the section 'Emulating numeric types' to the guide.

* Ensure we're returning NotImplemented in tests.

* Simplify the tests: only test we return NotImplemented.

Our previous test were rather indirect: were relying that Python
behaves correctly when we return NotImplemented.

Now we only test that calling a pyclass dunder method returns NotImplemented
when the argument doesn't match the type signature.  This is the expected
behavior.

* Remove reverse operators in tests of NotImplemented

The won't be used because of #844.

* Apply suggestions from code review

Co-authored-by: Yuji Kanagawa <yuji.kngw.80s.revive@gmail.com>

* Add a note about #844 below the list of reflected operations.

Co-authored-by: Yuji Kanagawa <yuji.kngw.80s.revive@gmail.com>
2020-08-05 22:53:16 +09:00
Yuji Kanagawa 3ac327c8e0
Merge pull request #1080 from Hakuyume/use-qualified-path-in-derive
Use qualified path in derive
2020-08-04 21:01:48 +09:00
Toru Ogawa 668e5e9d1f PyObject -> pyo3::PyObject 2020-08-04 20:27:29 +09:00