-
Notifications
You must be signed in to change notification settings - Fork 765
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
release: 0.22.3 #4518
release: 0.22.3 #4518
Commits on Sep 3, 2024
-
Configuration menu - View commit details
-
Copy full SHA for be10c5e - Browse repository at this point
Copy the full SHA be10c5eView commit details -
Improve error messages for #[pyfunction] defined inside #[pymethods] (#…
…4349) * Improve error messages for #[pyfunction] defined inside #[pymethods] Make error message more specific when `#[pyfunction]` is used in `#[pymethods]`. Effectively, this replaces the error message: ``` error: static method needs #[staticmethod] attribute ``` To: ``` functions inside #[pymethods] do not need to be annotated with #[pyfunction] ``` ...and also removes the other misleading error messages to the function in question. Fixes #4340 Co-authored-by: László Vaskó <1771332+vlaci@users.noreply.github.com> * review fixes --------- Co-authored-by: László Vaskó <1771332+vlaci@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for cd70cec - Browse repository at this point
Copy the full SHA cd70cecView commit details -
Update dict.get_item binding to use PyDict_GetItemRef (#4355)
* Update dict.get_item binding to use PyDict_GetItemRef Refs #4265 * test: add test for dict.get_item error path * test: add test for dict.get_item error path * test: add test for dict.get_item error path * fix: fix logic error in dict.get_item bindings * update: apply david's review suggestions for dict.get_item bindings * update: create ffi::compat to store compatibility shims * update: move PyDict_GetItemRef bindings to spot in order from dictobject.h * build: fix build warning with --no-default-features * doc: expand release note fragments * fix: fix clippy warnings * respond to review comments * Apply suggestion from @mejrs * refactor so cfg is applied to functions * properly set cfgs * fix clippy lints * Apply @davidhewitt's suggestion * deal with upstream deprecation of new_bound
Configuration menu - View commit details
-
Copy full SHA for 6710dcd - Browse repository at this point
Copy the full SHA 6710dcdView commit details -
fix: adding tests for pyclass hygiene cases (#4359)
* fix: updated pyclass heighten check to validate for eq and ord, fixing Ok issue in eq implementation. identified similar issues in Complex enum and tuple enum, resolved serveral cases, but working on current error coming from traits not being in scope * fix: fully qualified clone and from calls for enums. * update: added changelog entry --------- Co-authored-by: MG <mg@rookie.ninja>
Configuration menu - View commit details
-
Copy full SHA for 37e9122 - Browse repository at this point
Copy the full SHA 37e9122View commit details -
fix incorrect spans on
ret
andpy
local varianbles in emitted code (#4382) * fix incorrect spans on `ret` and `py` local varianbles in emitted code * add newsfragment
Configuration menu - View commit details
-
Copy full SHA for 9e36baa - Browse repository at this point
Copy the full SHA 9e36baaView commit details -
Configuration menu - View commit details
-
Copy full SHA for ebd4747 - Browse repository at this point
Copy the full SHA ebd4747View commit details -
fix returning tuples from async fns (#4407)
Fixes #4400 As the return value is ultimately communicated back via a StopIteration exception instance, a peculiar behavior of `PyErr::new` is encountered here: when the argument is a tuple `arg`, it is used to construct the exception as if calling from Python `Exception(*arg)` and not `Exception(arg)` like for every other type of argument. This comes from from CPython's `PyErr_SetObject` which ultimately calls `_PyErr_CreateException` where the "culprit" is found here: https://github.com/python/cpython/blob/main/Python/errors.c#L33 We can fix this particular bug in the invocation of `PyErr::new` but it is a more general question if we want to keep reflecting this somewhat surprising CPython behavior, or create a better API, introducing a breaking change.
Configuration menu - View commit details
-
Copy full SHA for d103c76 - Browse repository at this point
Copy the full SHA d103c76View commit details -
Add PyList_GetItemRef and use it in list.get_item (#4410)
* Add PyList_GetItemRef bindings and compat shim * Use PyList_GetItemRef in list.get_item() * add release notes * apply code review comments * Update newsfragments/4410.added.md Co-authored-by: David Hewitt <mail@davidhewitt.dev> * apply `all()` doc cfg hints --------- Co-authored-by: David Hewitt <mail@davidhewitt.dev>
Configuration menu - View commit details
-
Copy full SHA for 5e6e432 - Browse repository at this point
Copy the full SHA 5e6e432View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4275773 - Browse repository at this point
Copy the full SHA 4275773View commit details -
Fix a soundness bug with
PyClassInitializer
(#4454)From now you cannot initialize a `PyClassInitializer<SubClass>` with `PyClassInitializer::from(Py<BaseClass>).add_subclass(SubClass)`. This was out of bounds write. Now it panics. See details at #4452.
Configuration menu - View commit details
-
Copy full SHA for 2fc6e62 - Browse repository at this point
Copy the full SHA 2fc6e62View commit details -
Configuration menu - View commit details
-
Copy full SHA for 36ca4a1 - Browse repository at this point
Copy the full SHA 36ca4a1View commit details -
ffi: define compat for
Py_NewRef
andPy_XNewRef
(#4445)* ffi: define compat for `Py_NewRef` and `Py_XNewRef` * add missing inline hint Co-authored-by: Nathan Goldbaum <nathan.goldbaum@gmail.com> * don't use std::ffi::c_int (requires MSRV 1.64) * add test to guard against ambiguity * fix `Py_NewRef` cfg on PyPy --------- Co-authored-by: Nathan Goldbaum <nathan.goldbaum@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 2b0a36e - Browse repository at this point
Copy the full SHA 2b0a36eView commit details -
Configuration menu - View commit details
-
Copy full SHA for b0c4256 - Browse repository at this point
Copy the full SHA b0c4256View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1ad96b3 - Browse repository at this point
Copy the full SHA 1ad96b3View commit details -
Use vectorcall (where possible) when calling Python functions (#4456)
* Use vectorcall (where possible) when calling Python functions This works without any changes to user code. The way it works is by creating a methods on `IntoPy` to call functions, and specializing them for tuples. This currently supports only non-kwargs for methods, and kwargs with somewhat slow approach (converting from PyDict) for functions. This can be improved, but that will require additional API. We may consider adding more impls IntoPy<Py<PyTuple>> that specialize (for example, for arrays and `Vec`), but this i a good start. * Add vectorcall benchmarks * Fix Clippy (elide a lifetime) --------- Co-authored-by: David Hewitt <mail@davidhewitt.dev>
Configuration menu - View commit details
-
Copy full SHA for 196c5fe - Browse repository at this point
Copy the full SHA 196c5feView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5d4a155 - Browse repository at this point
Copy the full SHA 5d4a155View commit details -
Configuration menu - View commit details
-
Copy full SHA for 09d6dbe - Browse repository at this point
Copy the full SHA 09d6dbeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5abc496 - Browse repository at this point
Copy the full SHA 5abc496View commit details
Commits on Sep 13, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 01bd06c - Browse repository at this point
Copy the full SHA 01bd06cView commit details -
ci: swap .python-version file for explicit versions in actions yml (#…
…4462) * ci: swap .python-version file for explicit versions in actions yml * pin valgrind job to 3.12.4
Configuration menu - View commit details
-
Copy full SHA for 1c82750 - Browse repository at this point
Copy the full SHA 1c82750View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3f4b125 - Browse repository at this point
Copy the full SHA 3f4b125View commit details -
Configuration menu - View commit details
-
Copy full SHA for bed8161 - Browse repository at this point
Copy the full SHA bed8161View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4057c6e - Browse repository at this point
Copy the full SHA 4057c6eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9acf868 - Browse repository at this point
Copy the full SHA 9acf868View commit details -
Configuration menu - View commit details
-
Copy full SHA for d183248 - Browse repository at this point
Copy the full SHA d183248View commit details -
Configuration menu - View commit details
-
Copy full SHA for a8e9c73 - Browse repository at this point
Copy the full SHA a8e9c73View commit details -
type_object: fix new clippy complaint about length of doc comment (#4527
Configuration menu - View commit details
-
Copy full SHA for 076555f - Browse repository at this point
Copy the full SHA 076555fView commit details -
ci: fix nightly warning about unreachable pattern (#4437)
* ci: fix nightly warning about unreachable pattern * add comment
Configuration menu - View commit details
-
Copy full SHA for b9f65d5 - Browse repository at this point
Copy the full SHA b9f65d5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 01a22ed - Browse repository at this point
Copy the full SHA 01a22edView commit details -
Configuration menu - View commit details
-
Copy full SHA for f0b6bfd - Browse repository at this point
Copy the full SHA f0b6bfdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8978b22 - Browse repository at this point
Copy the full SHA 8978b22View commit details -
Configuration menu - View commit details
-
Copy full SHA for d8510d1 - Browse repository at this point
Copy the full SHA d8510d1View commit details