David Hewitt
2b0b853912
Add CHANGELOG to the guide
2020-09-05 14:44:39 +01:00
Sebastian Pütz
06cd7c7d5a
Fix some more docs.
2020-09-05 11:24:12 +02:00
kngwyu
d2a10b688f
Introduce all-apis feature to support abi3
2020-09-05 17:52:41 +09:00
Sebastian Pütz
e65b849ab6
Doc fixes, changelog and rename.
2020-09-05 10:20:22 +02:00
Yuji Kanagawa
62a175e398
Merge pull request #1132 from alex/abi3-class-creation
...
Use PyType_Spec for creating new types in Rust
2020-09-05 16:11:10 +09:00
Sebastian Pütz
9137855e81
Add documentation for accessing PyModule in #[pyfunction]s.
2020-09-04 10:02:40 +02:00
Sebastian Pütz
4aae523e54
Rename add_module to add_submodule, documentation fixes.
2020-09-04 09:02:49 +02:00
Sebastian Pütz
795c054511
Possible to pass PyModule as first arg.
...
This commit makes it possible to access the module of a function
by passing the `need_module` argument to the pyfn and pyfunction
macros.
2020-09-04 09:01:21 +02:00
David Hewitt
313ad656f6
Merge pull request #1147 from sebpuetz/feature-gate-getnameobject
...
Gate PyModuleGetNameObject on PyPy.
2020-09-03 18:27:40 +01:00
Sebastian Pütz
3214249010
Make python function wrapper creation fallible.
...
Wrapping a function can fail if we can't get the module name.
Based on suggestion by @kngwyu
2020-09-03 15:48:32 +02:00
Sebastian Pütz
1f017b66fb
Move py fn wrapper argument expansion to associated function.
...
Suggestion by @kngwyu.
Additionally replace some `expect` calls with error handling.
2020-09-03 15:21:33 +02:00
Sebastian Pütz
5bbca1a052
Set the module of `#[pyfunction]`s.
...
Previously neither the module nor the name of the module of
pyfunctions were registered. This commit passes the module and
its name when creating a new pyfunction.
PyModule::add_function and PyModule::add_module have been added and are
set to replace `add_wrapped` in a future release. `add_wrapped` is kept
for compatibility reasons during the transition.
Depending on whether a `PyModule` or `Python` is the argument for the
Python function-wrapper, the module will be registered with the function.
2020-09-03 14:49:28 +02:00
Sebastian Pütz
acbb3eed60
Replace PyFunction_New with extern C function.
...
PyFunction_New was previously implemented as a Rust function
wrapper around a call to the extern C function PyFunction_NewExt
with a hard-coded third argument. This commit removes the Rust
wrapper and directly exposes the function from the CPython API.
2020-09-03 14:49:28 +02:00
Sebastian Pütz
6395c86de4
Gate PyModuleGetNameObject on PyPy.
2020-09-03 14:47:13 +02:00
David Hewitt
74f981120d
Merge pull request #1146 from programmerjake/fix-snake-case-warning
...
Add #[allow(non_snake_case)] to function with generated name
2020-09-03 08:27:43 +01:00
Jacob Lifshay
7acf8d9f57
Add #[allow(non_snake_case)] to function with generated name
...
Fixes #1145
2020-09-02 20:32:51 -07:00
Alex Gaynor
400462063d
Proof of concept of using PEP384s PyType_Spec
2020-09-02 16:54:39 -04:00
David Hewitt
3c24d27a66
Merge pull request #1141 from davidhewitt/guide-subchapters
...
Start splitting long guide pages into subchapters
2020-09-02 19:44:48 +01:00
Yuji Kanagawa
e2fcd8f5a5
Merge pull request #1137 from davidhewitt/tidy-proc-macros
...
Refactor proc_macro optional / python detection
2020-09-03 00:14:08 +09:00
Yuji Kanagawa
9ecd9892aa
Merge pull request #1138 from davidhewitt/ci-no-fail-fast
...
Disable fail-fast in CI test
2020-09-03 00:04:17 +09:00
Yuji Kanagawa
1c696714e7
Merge pull request #1139 from davidhewitt/ci-color
...
Enable colored cargo output in CI
2020-09-03 00:03:30 +09:00
Yuji Kanagawa
1b2095140d
Merge pull request #1142 from davidhewitt/reduce-coverage-noise
...
Allow tiny coverage drop in PR to reduce "failure" noise
2020-09-02 23:57:58 +09:00
David Hewitt
6a6ce3f9f7
Allow tiny coverage drop in PR to reduce "failure" noise
2020-09-02 08:10:51 +01:00
David Hewitt
3e86e4c247
Refactor proc_macro optional / python detection
2020-09-02 08:01:21 +01:00
David Hewitt
025f365cbe
Enable colored cargo output in CI
2020-09-01 22:49:02 +01:00
David Hewitt
81afdaf6cd
Start splitting long guide pages into subchapters
2020-09-01 22:44:27 +01:00
David Hewitt
ffe543f65d
Merge pull request #1140 from davidhewitt/union-doc
...
Add doc for extracting Union via FromPyObject
2020-09-01 22:41:27 +01:00
David Hewitt
f0650ebd94
Add doc for extracting Union via FromPyObject
2020-09-01 22:04:57 +01:00
David Hewitt
1255848e3e
Disable fail-fast in CI test
2020-09-01 20:56:13 +01:00
David Hewitt
c5065893dd
Merge pull request #1135 from sebpuetz/remove-duplicate-pool
...
Remove duplicate pool and py in py_init.
2020-09-01 20:47:04 +01:00
David Hewitt
9477ee85e7
Merge pull request #1136 from sebpuetz/reduce-compile-panics
...
Remove proc-macro panics.
2020-09-01 20:29:20 +01:00
Sebastian Puetz
4e7fe6e638
Remove proc-macro panics.
2020-09-01 20:27:47 +02:00
Sebastian Puetz
74ecd15580
Remove duplicate pool and py in py_init.
2020-09-01 19:45:27 +02:00
Yuji Kanagawa
4a05f2782c
Merge pull request #1129 from alex/limit-tuples
...
Use CPython stable APIs for implementing tuples.
2020-08-31 22:15:58 +09:00
Alex Gaynor
958ce796e9
Use CPython stable APIs for implementing tuples.
...
Refs #1125
Reduces the number of compilation failures with `--features abi3` from 56 to 53.
2020-08-31 08:46:50 -04:00
Yuji Kanagawa
729f2f42e7
Merge pull request #1065 from sebpuetz/union
...
FromPyObject derivation for structs and enums
2020-08-31 21:28:49 +09:00
David Hewitt
3151c4876e
Merge pull request #1127 from alex/limit-buffers
...
Do not include PyBuffer APIs when building for abi3
2020-08-31 09:39:56 +01:00
Yuji Kanagawa
10d83bf7dd
Merge pull request #1124 from davidhewitt/module-constant
...
Use IntoPy<PyObject> for PyModule::add
2020-08-31 17:39:26 +09:00
Alex Gaynor
3e32b75284
Do not include PyBuffer APIs when building for abi3
...
Refs #1125
Reduces the number of compilation failures with `--features abi3` from 87 to 56.
2020-08-30 15:29:14 -04:00
David Hewitt
494ed63af0
Merge pull request #1126 from alex/limit-tp-name
...
Reduce the direct access to tp_name which is not part of the limited API
2020-08-30 20:10:58 +01:00
Alex Gaynor
d93a5e308f
Reduce the direct access to tp_name which is not part of the limited API
...
Refs #1125
2020-08-30 14:36:21 -04:00
Sebastian Pütz
0f32f886b8
More FromPyObject derive suggestions by @davidhewitt
2020-08-30 19:16:59 +02:00
David Hewitt
82cb815afa
Use IntoPy<PyObject> for PyModule::add
2020-08-30 16:24:20 +01:00
Sebastian Pütz
7a9f4a1633
FromPyObject derive suggestions by @kngwyu
2020-08-30 15:33:50 +02:00
Yuji Kanagawa
bd12d89a3e
Merge pull request #1122 from davidhewitt/guide-introduction
...
Add introduction to guide
2020-08-30 21:56:03 +09:00
David Hewitt
21cdb8ab7e
Add introduction to guide
2020-08-30 13:03:28 +01:00
Sebastian Pütz
53a858c5c1
Add documentation for FromPyObject derivation.
2020-08-30 13:35:06 +02:00
Sebastian Pütz
a8c5379eff
Add compile fail tests for FromPyObject derives + some fixes.
...
Fix some error messages and accidental passes.
2020-08-30 12:54:13 +02:00
Sebastian Pütz
7781bb78de
Specify item key and attr name as arguments.
2020-08-30 10:22:01 +02:00
Sebastian Pütz
60fe4925f5
'#[derive(FromPyObject)]` changes suggested by @davidwhewitt.
2020-08-30 10:22:01 +02:00