David Hewitt
b59ee9b54b
misc: tidy ups pre 0.16
2022-02-27 10:02:28 +00:00
Georg Brandl
0678f11266
Protocols: implement __getattribute__
...
converting tp_getattro to a shared slot
Fixes #2186
2022-02-26 20:05:50 +01:00
Georg Brandl
03dc96bff1
Py/PyAny: remove PartialEq impl and add is() ( #2183 )
2022-02-25 19:39:45 +00:00
David Hewitt
7c865fcc25
Merge pull request #2173 from davidhewitt/deprecate-pyproto
...
pyproto: deprecate protocol traits
2022-02-24 23:54:40 +00:00
David Hewitt
424644181b
pymethods: add support for inplace concat & repeat
2022-02-24 23:07:24 +00:00
Rico Hageman
ed698c4b43
Add documentation related to from_py_with for the FromPyObject trait
2022-02-24 22:54:30 +01:00
Bruno Kolenbrander
af0cef0e59
Merge branch 'main' into object
2022-02-23 10:13:29 +01:00
mejrs
be84e0fbb9
Add numeric and object protocol examples
2022-02-23 10:09:45 +01:00
David Hewitt
253507b5dd
migration: add note on pymethods -> pyproto
2022-02-23 07:50:55 +00:00
Georg Brandl
a21cf677e3
docs: remove/deprecate pyproto
2022-02-23 07:50:55 +00:00
David Hewitt
d8ee35e19c
Merge pull request #2165 from mejrs/auto_trait
...
Implement Auto trait
2022-02-23 07:16:17 +00:00
mejrs
9e29c1058c
Gut specialization and implement auto trait
...
Implement auto trait
Implement auto trait
Undo oopsie
Fix versions
Fix CI errors
Fix CI
Remove more specialization remnants
2022-02-22 22:43:23 +01:00
David Hewitt
79123b396c
pyclass: deprecate gc option
2022-02-15 08:01:46 +00:00
David Hewitt
676295b8de
pymethods: support gc protocol
2022-02-15 08:01:23 +00:00
David Hewitt
f5b2a88a70
refactor: include __new__ as slot
2022-02-09 08:07:14 +00:00
David Hewitt
75e44585de
refactor: pass tp_alloc and tp_free via slots
2022-02-09 08:07:14 +00:00
b05902132
78f5afc82e
Finish implementation for pyclass enums
2022-02-07 22:17:11 +00:00
David Hewitt
4fd01c3cd6
fix: guide example for pyclass expansion
2022-02-07 07:46:12 +00:00
David Hewitt
9def53317f
Merge pull request #2153 from davidhewitt/simplify-intrinsic-items
...
refactor: inline pyclass_intrinsic_items
2022-02-07 00:05:30 +00:00
David Hewitt
e39881c208
refactor: inline pyclass_intrinsic_items
2022-02-06 23:26:57 +00:00
David Hewitt
f75579a489
python-3.11: support buffer API on abi3
2022-02-06 22:46:45 +00:00
David Hewitt
ecfd2c2434
pyclass: simplify generated code for PyClassImpl
2022-02-05 16:58:01 +00:00
David Hewitt
558549e1c2
pyproto: split into new feature
2022-02-05 16:51:31 +00:00
David Hewitt
53c170078d
pymethods: seq methods from mapping methods
2022-02-05 15:59:22 +00:00
mejrs
463543ad58
Annotate Rust blocks with "rust"
2022-01-29 01:03:57 +01:00
Jakub Kołodziejczak
d1542a8a79
docs(guide): example of loading python file from path at runtime in a way that it sees its dependencies ( #2109 )
...
* docs(guide): example of loading python file from path at runtime in a way that it sees its dependencies
* docs: editorial fixes
suggested by @mejrs
Co-authored-by: Bruno Kolenbrander <59372212+mejrs@users.noreply.github.com>
Co-authored-by: Bruno Kolenbrander <59372212+mejrs@users.noreply.github.com>
2022-01-24 11:03:47 +01:00
Jakub Kołodziejczak
020488efee
docs: example how to include multiple Python files into the binary and at runtime ( #2095 )
2022-01-17 10:57:39 +01:00
messense
ce80b7e0f3
Switch from tox to nox
2022-01-17 00:24:33 +08:00
David Hewitt
2cee7feaaf
Merge pull request #2083 from aviramha/magic_methods
...
verify py method args count
2022-01-07 00:13:05 +00:00
Aviram Hassan
50659b6b02
__ipow__
now supports modulo argument on Python 3.8+.
...
`pyo3-macros-backend` is now compiled with PyO3 cfgs to enable different magic method definitions based on version.
Add check for correct number of arguments on magic methods.
2022-01-03 09:53:56 +02:00
David Hewitt
cf965155f4
pymethods: support buffer protocol
2021-12-30 15:48:55 +00:00
David Hewitt
e33b3e6a5b
opt: don't emit T::dict_offset and T::weakref_offset without attributes
2021-12-30 14:57:27 +00:00
Bruno Kolenbrander
4d1d859a64
Merge branch 'main' into aliases
2021-12-24 22:28:22 +01:00
James Hilton-Balfe
a5511b8f8a
Fix markdown link ( #2071 )
2021-12-22 16:51:03 +00:00
mejrs
9512ce4e87
Fix call example
2021-12-22 12:12:16 +01:00
Bruno Kolenbrander
39cac9075b
Organize examples + add __call__ example ( #2043 )
...
* Add decorator example crate and split off chapter
* Move not-examples to their own folder
* Add some readme's
* Make black happy
* Make clippy happy
* Add decorator example crate and split off chapter
* Fix ci
* Add empty workspace key
* Try fix ci
* fix ci
* reuse target dir for examples CI
* add pytests folder to makefile recipes
* fix ci, try 2
* add missing pyproject.toml
* remove TOX_TESTENV_PASSENV from Makefile
Co-authored-by: David Hewitt <1939362+davidhewitt@users.noreply.github.com>
2021-12-15 00:45:26 +00:00
Georg Brandl
a5b76bc365
pyo3_path, part 4: rename to crate
to keep consistent with serde
2021-12-09 07:36:48 +01:00
Georg Brandl
e4f608f605
pyo3_path, part 2: add pyo3_path options and use them.
2021-12-09 07:24:18 +01:00
David Hewitt
2ac30ec411
err: tweak names, inlining and docs
2021-11-27 08:26:04 +00:00
David Hewitt
e9b46f76da
Merge pull request #1985 from PyO3/is_instance_of
...
add PyType::is_subclass_of and PyAny::is_instance_of
2021-11-20 14:56:36 +00:00
David Hewitt
ded44eebfb
Merge pull request #2006 from davidhewitt/drop-py36
...
python: drop support for 3.6
2021-11-20 14:04:31 +00:00
Georg Brandl
43893158b1
switch is_instance/is_instance_of, is_subclass/is_subclass_of
2021-11-20 13:18:43 +00:00
David Hewitt
cc91a7c574
Merge pull request #2007 from davidhewitt/remove-0.14-deprecations
...
deprecations: remove items deprecated in PyO3 0.14
2021-11-20 13:09:04 +00:00
David Hewitt
70030f130d
python: drop support for 3.6
2021-11-20 13:02:42 +00:00
David Hewitt
c9a4cd1f87
deprecations: remove items deprecated in PyO3 0.14
2021-11-19 16:33:29 +00:00
David Hewitt
b9cc10f3fb
pyo3-build-config: don't enable resolve-config by default
2021-11-19 14:19:24 +00:00
Dan Svoboda
d9a3f67287
Fix broken relative markdown link in guide
...
This link needs to point up one dir to the location of class.md
2021-11-15 14:04:53 -05:00
Gertjan van Zwieten
0e40277112
add missing annotation to PyCounter.__call__
...
This patch annotates the `__call__` method of `PyCounter` in example: callable
objects with `#[args(args="*", kwargs="**")]`. Without it (at least in PyO3
0.15.0) the example fails with `TypeError: counter.__call__() missing 1
required positional argument: 'args'`.
2021-11-15 09:01:05 +01:00
David Hewitt
a978b0875a
Merge pull request #1968 from KRunchPL/guide-python-typing-hints
...
#1959 - Add Python Typing Hints to the Guide
2021-11-11 23:00:53 +00:00
David Hewitt
20091826a5
Merge pull request #1976 from davidhewitt/pyo3-build-config-docs
...
docs: pyo3 config files
2021-11-11 08:53:36 +00:00