Commit graph

299 commits

Author SHA1 Message Date
konstin 39f151c3bd Upgrade to syn 1.0 2019-08-19 13:11:57 +02:00
Yuji Kanagawa 1f85593d0a
Merge pull request #564 from kngwyu/paste
Replace mashup with paste
2019-08-11 18:42:21 +09:00
konstin 5096f936dc Disable segfaulty subclassing by default
See https://github.com/PyO3/pyo3/issues/220 and https://github.com/PyO3/pyo3/issues/407 for details on those segfaults
2019-08-05 11:52:47 +02:00
kngwyu 41f31e85fd Replace mashup with paste 2019-08-04 23:50:10 +09:00
konstin 1332174e00 Upgrade version check 2019-07-15 13:05:56 +02:00
kngwyu 503ec1a061 Use unindent crate instead of _indoc_runtime 2019-06-15 01:10:18 +09:00
kngwyu 0f9a3b1194 Expose py_run macro 2019-06-13 18:18:06 +09:00
Yuji Kanagawa f2a7c64365
Merge pull request #503 from kngwyu/reject-generics
Reject generics explicitly for #[pyclass]
2019-06-06 19:02:26 +09:00
kngwyu 35f5301675 Reject generics explicitly for #[pyclass] 2019-06-05 18:46:17 +09:00
konstin c76399e73d
Merge pull request #491 from PyO3/less_horrible_build_rs
build.rs configuration as struct instead of strings
2019-06-05 11:26:33 +02:00
konstin 0279b3d69f Release 0.7.0 2019-05-26 17:27:14 +09:00
konstin 9eda9e9f80 build.rs configuration as struct instead of strings
Changes the configuration system from passing around a Vec<String> where each entry was a value for a different part of the configuration (with different types, all wrapped in strings) with a `InterpreterConfig` struct.

Also removes some outdated code.
2019-05-16 23:24:55 +02:00
konstin b5e23b4a32
Merge branch 'master' into fix_minimal_versions 2019-04-28 18:30:07 +02:00
konstin c6a5c054e1
Merge pull request #469 from PyO3/remove_doc_comment
Remove doc-comment
2019-04-28 18:26:51 +02:00
konstin e966c1cd1d Fix compilation with -Z minimal versions
This pulls in the fix from https://github.com/dtolnay/indoc/pull/29
2019-04-28 13:05:07 +02:00
konstin cd15719765 Remove doc-comment 2019-04-28 10:36:32 +02:00
konstin aeae195cb4 [WIP] Use syn::ext::IdentExt::unraw 2019-04-28 10:09:55 +02:00
Alexander Niederbühl faa3feda3f Merge branch 'master' into doctest 2019-04-23 21:58:09 +02:00
konstin 7149a1fecb
Bump to 0.7.0-alpha.1 (#457) 2019-04-23 18:55:35 +02:00
Alexander Niederbühl f1b0288d3c Remove docmatic and several workarounds for the doctests 2019-04-19 22:47:21 +02:00
Alexander Niederbühl 5858823e83 Test readme and user guide with doc-comment
Also rename some files for consistency.
2019-04-19 22:38:11 +02:00
ijl 2bb0d05a30 Drop support for python2 2019-03-29 12:37:26 +00:00
konstin 3f27647b1b Bump to 0.6.0 2019-03-28 12:49:59 +01:00
Alexander Niederbühl e2e4733b82 Test examples in user guide with travis
Test could only be activated for Python 3.5 and some tests had to be
ignored, see #381 and #387.
2019-03-09 23:54:28 +01:00
konstin 0cd72ac213 Bump to 0.6.0-alpha.4 2019-02-20 11:30:09 +01:00
konstin 6cb098ee12 Replace py.init_[ref|mut] with Py[Ref|Mut]::new 2019-02-13 21:52:21 +01:00
konstin 9e53418aad Less feature(specialization) 2019-02-01 18:09:51 +01:00
konstin 6f1123e6b1 Update to new inventory version 2019-02-01 16:23:34 +01:00
konstin ae8a37cd0a Allow 0..n pymethod blocks without specialization 2019-02-01 16:23:34 +01:00
konstin 936f0153e8 Migrate to rust 2018 2019-02-01 14:23:29 +01:00
dependabot[bot] 27ef33703b Update spin requirement from 0.4.9 to 0.5.0 (#325)
Updates the requirements on [spin](https://github.com/mvdnes/spin-rs) to permit the latest version.
- [Release notes](https://github.com/mvdnes/spin-rs/releases)
- [Commits](https://github.com/mvdnes/spin-rs/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-14 14:41:10 +01:00
konstin 0deaee01ad Bump to 0.6.0-alpha.1 and update changelog from 0.5.3 2019-01-04 11:53:46 +01:00
dependabot[bot] a3c7cdfd98
Update indoc requirement from 0.2.8 to 0.3.1
Updates the requirements on [indoc](https://github.com/dtolnay/indoc) to permit the latest version.
- [Release notes](https://github.com/dtolnay/indoc/releases)
- [Commits](https://github.com/dtolnay/indoc/commits/0.3.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-03 06:57:55 +00:00
konstin cadd0fb50e Release 0.5.0 2018-11-11 12:26:43 +01:00
konstin 569db5fb02 Add test with generator to PyIterator 2018-11-02 22:59:30 +01:00
konstin da0d6eeb5d Small tooling fixes 2018-11-02 22:32:18 +01:00
konstin 234e2c6998 Release 0.5.0-alpha.3 to fix #256 2018-11-02 16:34:40 +01:00
konstin 3b63cc9178 v0.5.0-alpha.2 2018-10-29 17:36:06 +01:00
kngwyu 6b362a4654 Implement convsersion between num_complex::Complex and PyComplex 2018-09-21 14:23:01 +09:00
kngwyu 7ea875fc49 Implement Add/Sub/Mul/Div for &PyComplex 2018-09-21 12:48:42 +09:00
konstin f9bca1aebe Prerelease 0.5.0-alpha.1 #223 2018-09-17 22:51:58 +02:00
konstin 0372360811 Add test for #219 2018-09-17 19:47:23 +02:00
konstin d92e522243 Syn 0.15 2018-09-09 00:20:04 +02:00
konstin 4c1ff24b2b Fix raw identifiers 2018-09-03 20:50:18 +02:00
konstin a2af5fe71d Advertise pyo3-pack a bit more 2018-08-30 23:20:04 +02:00
konstin c3bcabc50d Revert workspace separation
Apparently setuptools-rust didn't like that
2018-08-22 00:38:49 +02:00
konstin b0f0a44284 Exclude example 2018-08-22 00:02:37 +02:00
konstin 9dd6bb0d2c Get rid of broken workspaces 2018-08-21 23:44:26 +02:00
konstin 9cadbd11de v0.4.1 2018-08-20 14:34:34 +02:00
kngwyu d2210f8a7e Update spin 2018-08-14 18:20:14 +09:00
konstin d0ed68414a Many small improvements 2018-08-04 19:56:59 +02:00
konstin b7dc0ad695 v0.4.0 2018-07-30 23:10:50 +02:00
konstin 2627fa8a08 0.3.2 2018-07-22 21:36:18 +02:00
konstin ff70f45071 (Hopefully) get travis to build the guide for tags 2018-07-18 23:28:14 +02:00
konstin 3adcac6e61 Replace concat_idents with mashup 2018-07-18 23:17:05 +02:00
konstin 3248927db2 Bump versions in the Cargo.toml files
One day I'll get the order right
2018-07-18 14:11:24 +02:00
konstin f6224ca0bc Prepare for 0.3.0 release 2018-07-08 23:41:18 +02:00
konstin 9cb5321317
Merge pull request #183 from peng1999/master
Fix broken links
2018-06-14 16:05:23 +02:00
Peng Guanwen ce4c217527 Fix broken links
This fixes #182
2018-06-14 08:10:39 +00:00
konstin 76510bdd0e Refactoring
This is actually a failed bugfix attempt, but still useful
2018-06-13 18:02:45 +02:00
konstin 54b09c704b Fix -Z minimal-versions 2018-06-06 21:18:42 +02:00
konstin c9db4f0da2 Some cleanup and housekeeping 2018-05-30 15:03:31 +02:00
Stefan Tatschner 44b494c921 Bump regex crate version to 1.0 2018-05-28 21:22:28 +02:00
Martin Larralde 01b7b3feeb Fix link to organisation page in Cargo.toml manifests [ci skip] 2018-05-14 18:53:37 +02:00
konstin 8783d61c02
Merge pull request #139 from konstin/codegen_crate
Move codegen into its own crate
2018-05-05 14:21:42 +02:00
Martin Larralde 3554248615 Bump docmatic test dependency to 0.1.2 2018-05-01 23:01:29 +02:00
Martin Larralde 80b3ce7801 Use new docmatic API 2018-05-01 22:59:49 +02:00
Martin Larralde 4dccd556b7 Fix conversions.md stubs to work with Py2 as well 2018-05-01 22:59:49 +02:00
Martin Larralde 2a618698cf Add docmatic to test dependencies 2018-05-01 22:59:49 +02:00
konstin 2fcac85003 Add version in Cargo.toml
Following https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#specifying-path-dependencies, we need a version for path dependencies
2018-05-01 20:25:20 +02:00
konstin 5a8f5034d6 Fix make test
This is a follow-up to #147
2018-05-01 20:15:43 +02:00
Nikolay Kim d00abc1fa7 use pyo3cls 2018-02-21 10:43:52 -08:00
Nikolay Kim e585f5881d update num-traits 2018-02-21 10:33:38 -08:00
Nikolay Kim 5b9696945f wrong log version 2018-02-21 09:42:52 -08:00
Nikolay Kim 0b9557a245 call_method*() crashes when the method does not exist #113 2018-02-21 09:39:06 -08:00
Nikolay Kim 63a2066a39 can not use workspace for examples 2018-01-19 10:27:37 -08:00
Nikolay Kim c39a1d7e94 Add examples to workspace 2018-01-19 10:10:32 -08:00
Nikolay Kim 324a6b2697 drop RefFromPyObject; allow mut refs #106 2018-01-19 09:04:42 -08:00
Nikolay Kim 3cb57f5579 prepare release 2017-11-27 11:40:03 -08:00
Nikolay Kim 70b07f8112 update version 2017-11-27 11:27:09 -08:00
messense 25e2080a76
Bump pyo3 version to 0.2.2 2017-10-01 20:59:26 +08:00
messense 95d94c19b3
Rustup to 1.22.0-nightly 2017-09-30 2017-10-01 20:32:35 +08:00
messense 826544d706
Bump pyo3 version to 0.2.1 2017-09-27 12:20:18 +08:00
messense fa69b1f99d
Use spin-rs from crates.io 2017-09-25 13:40:38 +08:00
messense 9da1247484
Fix build on rustc nightly-2017-09-16
Use forked version of spin-rs for now.

Closes #79
2017-09-19 19:51:25 +08:00
Nikolay Kim 14db4227c3 back to dev 2017-08-12 10:07:53 -07:00
Nikolay Kim e186b5d2b6 add badges 2017-08-12 09:53:15 -07:00
Nikolay Kim 0abc39ef4f prepare release 2017-08-12 09:31:14 -07:00
Nikolay Kim a120bbf15e Refactor implementation. Drop parameter from constructor 2017-07-26 01:11:00 -07:00
Nikolay Kim ce15dda5b6 Allow to add gc support without implementing PyGCProtocol #57 2017-07-24 12:19:05 -07:00
Nikolay Kim 3e5fadf373 bump to dev 2017-07-23 11:37:44 -07:00
Nikolay Kim 78b826e119 fix doc link 2017-07-23 11:36:26 -07:00
Nikolay Kim 01ab0f828a fix license name 2017-07-23 11:24:39 -07:00
Nikolay Kim 5a386ebb42 prepare release 2017-07-23 11:17:10 -07:00
Nikolay Kim 60b49d15c1 explicit version 2017-07-23 11:11:38 -07:00
Nikolay Kim a7b3abff61 add version 2017-07-23 11:09:59 -07:00
messense 6bbf3d7595 Add rustc version check in build script (#47)
* Add rustc version check in build script

* Update rustc requirement in README.md
2017-07-18 09:33:27 +08:00
Nikolay Kim c1c4648add delay decref until gil available 2017-07-09 12:08:57 +06:00
Nikolay Kim a90d8c241f fix ref counter for get_kwargs 2017-07-04 10:24:04 +06:00
messense 93b1dd8262 Add compile-test (#38) 2017-06-18 23:41:20 +08:00
Nikolay Kim 1008dafea2 fix doc links 2017-06-15 11:30:06 -07:00
Nikolay Kim d15e85800f push all doc files 2017-06-15 11:20:40 -07:00
Nikolay Kim 51115e70f2 update doc link 2017-06-15 10:48:10 -07:00
Nikolay Kim 5bf6ce3864 added __unicode__ method to PyObjectProtocol 2017-06-15 07:48:57 -07:00
Nikolay Kim 3b4d147219 initial impl for py2 2017-06-11 16:35:24 -07:00
Nikolay Kim a584ce12e5 release py objects aftre use 2017-06-06 19:26:59 -07:00
Nikolay Kim 84f5578997 varios cleanups 2017-06-05 20:25:00 -07:00
messense c9717249a2
Use regex 0.2 in build script 2017-05-21 18:08:26 +08:00
Nikolay Kim c9aefd7e5f drop py_class 2017-05-16 23:43:39 -07:00
Nikolay Kim 3e20979f3f implement buffer protocol with proc macro 2017-05-14 12:52:30 -07:00
Nikolay Kim 8a295793a0 include py3 ffi info into crate 2017-05-12 22:05:00 -07:00
Nikolay Kim 3bb7a64db5 drop python27 2017-05-12 19:59:20 -07:00
Nikolay Kim d7ce1c0af0 reference python27-sys directly 2017-04-06 18:59:10 -07:00
Nikolay Kim 23c36f5714 pyclass can provide buffer interface 2017-04-06 18:59:10 -07:00
Nikolay Kim 582b9e4e0f depepndencies 2017-04-06 18:59:10 -07:00
Daniel Grunwald d7a94ba4b1 Add cargo categories. 2017-01-27 22:42:07 +01:00
Daniel Grunwald b7090799b6 Version 0.1.0 2016-12-17 21:41:14 +01:00
Daniel Grunwald b83a5d9bad Bump crate version numbers. 2016-12-17 21:29:02 +01:00
Daniel Grunwald e2d7781433 Add "extension-module" feature to suppress linking pythonX.Y.so.
The symbols are instead kept unresolved, so that they can be used with
any compatible python interpreter, even if the target system uses a
statically linked python and lacks pythonX.Y.so altogether.
2016-12-17 21:17:11 +01:00
Daniel Grunwald 52c05c6bac Adjust python3-sys to Python 3.6 RC headers. 2016-12-10 12:07:42 +01:00
Daniel Grunwald 9aec3f33f1 We only need num-traits, not the full num crate. 2016-04-17 23:35:17 +02:00
Daniel Grunwald ab83b4f4a1 #14; Convert Rust panic to Python SystemError 2016-03-12 01:31:06 +01:00
Daniel Grunwald 7c90651157 Make use of nightly const_fn + shared features optional. 2016-03-06 00:03:17 +01:00
Daniel Grunwald 53353d374b Remove dependency on interpolate_idents.
We now use the generic <DUMMY> hack to avoid duplicate extern "C" symbols.
See rust-lang/rust#26201.

py_module_initializer!() calls now need to manually concatenate the module
name with the prefixes "init" and "PyInit_".
2016-03-05 23:20:53 +01:00
Daniel Grunwald a1654d5d65 cpython 0.0.5 2016-03-05 17:51:55 +01:00
Daniel Grunwald 049bcb3278 libsyntax changed yet again 2015-11-15 18:54:45 +01:00
Daniel Grunwald 669cc56275 Let's see if a path dependency fixes #34. 2015-11-11 23:40:31 +01:00
Daniel Grunwald 56eb23ccbe Use interpolate_idents 0.0.5 2015-11-11 23:40:05 +01:00
Daniel Grunwald e935111c9c Update interpolate_idents to my fork (adjusted for currently Rust nightlies).
Update libc to 0.2.
2015-11-07 17:10:20 +01:00
Daniel Grunwald cb938e1906 Start with non-limited python 3 API:
* pymem.h
* object.h
* code.h
* compile.h
* tupleobject.h

The PEP-384 limited API is available when using the "pep-384" cargo feature.
2015-09-19 15:37:29 +02:00
Daniel Grunwald 86a3d605e1 rust-cpython 0.0.4 2015-08-25 20:02:50 +02:00
Daniel Grunwald 5d16c62cd5 Switch to my interpolate_idents fork until a fix is released 2015-08-02 17:29:04 +02:00
Daniel Grunwald dd93257bd7 rust-cpython 0.0.3 2015-07-08 22:55:24 +02:00
Daniel Grunwald a0d8670268 rust-cpython 0.0.2 2015-07-04 20:28:40 +02:00
Daniel Grunwald 00492e700c Make python 3 the default.
Today is the day :)
2015-06-27 23:50:50 +02:00
Daniel Grunwald ba0643c11c Add support for creating instances of PyRustObjects that involve inheritance.
Prevent panics from unwinding into C code.
2015-06-20 16:02:09 +02:00
James Salter 124a85d749 can build with only a major python 3 version 2015-05-25 15:38:21 +01:00
Daniel Grunwald 8c8779e3fb py_module_initializer! for python 3 2015-05-24 20:06:08 +02:00
James Salter b1eca56ec3 Python 3 build support
* Add python3-sys to rust-cpython as an optional feature, and
  make python27-sys also optional, but still the default
* Parametrise python27-sys/build.rs so that it is python
  version independent, and clone it into python3-sys/build.rs.
  Hopefully this can continue to be maintained as an identical
  file.
* python27-sys and python3-sys gain features for explicitly
  selecting a python version to link to. for python27-sys,
  there's currently only python27; for python3-sys there's
  python 3.4 and 3.5.
* explicitly tell travis to use nightlies (seems to have
  started trying to use 1.0.0)
2015-05-23 15:23:08 +01:00
Daniel Grunwald db8edd7f4e Fix build 2015-05-17 21:35:04 +02:00
James Salter b3e20e900b fix issues in bb13ec, support utf16, python fom PATH
* fix ucs4 build broken by bb13ec
* add utf16 decoding to unicode.from_py_object for
  narrow unicode builds
* change unicode narrow/wide cfg flag to be
  Py_UNICODE_SIZE_4 not Py_UNICODE_WIDE, which doesn't
  appear in sysconfig
* support framework builds on os x
* python27-sys exports compilation flags as cargo vars,
  and rust-python resurrects them as cfg flags
* travis runs against local python27-sys
* rust-cpython depends on git python27-sys, because
  the one on cargo is now incompatible with it (since bb13ec)
2015-05-17 13:20:58 +01:00
James Salter c1acf04e0e Fix refs to std::num::cast -> num::traits::cast
This function was removed from the rust stdlib in
https://github.com/rust-lang/rust/commit/eeb948.

Updated to refer to the 'num' crate instead.
2015-05-09 17:12:26 +01:00
Daniel Grunwald 888967ab5d Update link to documentation. 2015-04-19 07:50:50 +02:00
Daniel Grunwald dd20e00c77 Update for rust beta. 2015-03-09 14:31:20 +01:00
Daniel Grunwald 913f3ea2e5 Adjust to rust nightly 2015-03-08 15:29:44 +01:00
Daniel Grunwald 5566faf235 py_module_initializer macro 2015-01-12 03:00:34 +01:00
Daniel Grunwald d8a1fcd869 update for rust nightly 2015-01-11 04:21:05 +01:00
Daniel Grunwald eca5b4039b Split PythonObjectDowncast from PythonObject 2015-01-05 17:06:40 +01:00
Daniel Grunwald 7ccf5c88f1 Initial commit 2015-01-05 17:05:53 +01:00