Skip to content
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

0.13 Release #1306

Closed
davidhewitt opened this issue Dec 5, 2020 · 14 comments · Fixed by #1333
Closed

0.13 Release #1306

davidhewitt opened this issue Dec 5, 2020 · 14 comments · Fixed by #1333

Comments

@davidhewitt
Copy link
Member

davidhewitt commented Dec 5, 2020

So I think we are getting close to releasing 0.13; I wanted to open this issue just to plan what still needs to be done:

Also do we have anything we need to add to the migration guide or any other new features which need better docs before releasing?

@alex
Copy link
Contributor

alex commented Dec 5, 2020

Wooo! I'm very excited to see the abi3 work in a release.

@alex
Copy link
Contributor

alex commented Dec 11, 2020

Besides the work to complete #1279, is there anything else that needs doing to be able to release?

@kngwyu
Copy link
Member

kngwyu commented Dec 12, 2020

I don't see any blocker and am preparing the release.

@davidhewitt
Copy link
Member Author

I would suggest we also include the bugfix #1303

It's new functionality in 0.13 which is currently implemented incorrectly

@davidhewitt
Copy link
Member Author

I think we're getting close now. I'd still like to have a decision on #1279, because it fixes some missing trait impls and cleans up other code.

Also I just remembered #1288 - if we can do something about this before the release, I think it'd be very helpful for users.

@davidhewitt
Copy link
Member Author

I updated the list at the top of the issue with the PRs which we're waiting to have merged before the release.

@kngwyu
Copy link
Member

kngwyu commented Dec 15, 2020

Thank you for updating.
I also added #1320 to the list.

@alex
Copy link
Contributor

alex commented Dec 19, 2020

@davidhewitt
Copy link
Member Author

Thanks, I updated the top list!

@davidhewitt
Copy link
Member Author

All outstanding PRs addressed! I'm going to open a release PR shortly...

@awestlake87
Copy link
Contributor

awestlake87 commented Dec 22, 2020

Hey, just FYI I think this release broke my numpy dependency as a result of #1279:

    Checking numpy v0.12.1
error: no rules expected the token `,`
   --> /opt/.cargo/registry/src/github.com-1ecc6299db9ec823/numpy-0.12.1/src/array.rs:113:42
    |
113 | pyobject_native_type_named!(PyArray<T, D>, T, D);
    |                                          ^ no rules expected this token in macro call
error: cannot find macro `pyobject_native_type_convert` in this scope
   --> /opt/.cargo/registry/src/github.com-1ecc6299db9ec823/numpy-0.12.1/src/array.rs:104:1
    |
104 | pyobject_native_type_convert!(
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: a macro with a similar name exists: `pyobject_native_type_core`
    | 
   ::: /opt/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.13.0/src/types/mod.rs:131:1
    |
131 | macro_rules! pyobject_native_type_core {
    | -------------------------------------- similarly named macro `pyobject_native_type_core` defined here
error: cannot find macro `pyobject_native_type_fmt` in this scope
   --> /opt/.cargo/registry/src/github.com-1ecc6299db9ec823/numpy-0.12.1/src/array.rs:114:1
    |
114 | pyobject_native_type_fmt!(PyArray<T, D>, T, D);
    | ^^^^^^^^^^^^^^^^^^^^^^^^ help: a macro with a similar name exists: `pyobject_native_type`
    | 
   ::: /opt/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.13.0/src/types/mod.rs:157:1
    |
157 | macro_rules! pyobject_native_type {
    | --------------------------------- similarly named macro `pyobject_native_type` defined here
error: cannot find macro `pyobject_native_type_fmt` in this scope
   --> /opt/.cargo/registry/src/github.com-1ecc6299db9ec823/numpy-0.12.1/src/dtype.rs:35:1
    |
35  | pyobject_native_type_fmt!(PyArrayDescr);
    | ^^^^^^^^^^^^^^^^^^^^^^^^ help: a macro with a similar name exists: `pyobject_native_type`
    | 
   ::: /opt/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.13.0/src/types/mod.rs:157:1
    |
157 | macro_rules! pyobject_native_type {
    | --------------------------------- similarly named macro `pyobject_native_type` defined here
    Checking futures v0.3.8
error[E0277]: the trait bound `PyArray<T, D>: PyTypeInfo` is not satisfied
   --> /opt/.cargo/registry/src/github.com-1ecc6299db9ec823/numpy-0.12.1/src/array.rs:101:19
    |
101 | unsafe impl<T, D> type_object::PyLayout<PyArray<T, D>> for npyffi::PyArrayObject {}
    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `PyTypeInfo` is not implemented for `PyArray<T, D>`
    | 
   ::: /opt/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.13.0/src/type_object.rs:18:30
    |
18  | pub unsafe trait PyLayout<T: PyTypeInfo> {
    |                              ---------- required by this bound in `PyLayout`
error[E0277]: the trait bound `PyArray<T, D>: PyTypeInfo` is not satisfied
   --> /opt/.cargo/registry/src/github.com-1ecc6299db9ec823/numpy-0.12.1/src/array.rs:102:12
    |
102 | impl<T, D> type_object::PySizedLayout<PyArray<T, D>> for npyffi::PyArrayObject {}
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `PyTypeInfo` is not implemented for `PyArray<T, D>`
    | 
   ::: /opt/.cargo/registry/src/github.com-1ecc6299db9ec823/pyo3-0.13.0/src/type_object.rs:30:28
    |
30  | pub trait PySizedLayout<T: PyTypeInfo>: PyLayout<T> + Sized {}
    |                            ---------- required by this bound in `PySizedLayout`
error: aborting due to 6 previous errors

Looks like this change was intentional, but it's causing issues for me because numpy v0.12.1 depends on pyo3 >=0.12 so it selects pyo3 v0.13 even though the current numpy release only works up to v0.12.4.

Are there any plans to release a v0.12.2 for numpy that caps the pyo3 version?

Update:
If anyone else is having this issue, adding the following patch fixed the issue for me:

[patch.crates-io]
numpy = { git = "https://github.com/awestlake87/rust-numpy", branch = "v0.12-fix" }

@davidhewitt
Copy link
Member Author

Ah, that's unfortunate. I expect @kngwyu plans to release 0.13 numpy soon - we should probably push a 0.12.2 like you say that caps the version.

@davidhewitt
Copy link
Member Author

I opened PyO3/rust-numpy#170 which will hopefully be released soon to fix the downstream issue.

@awestlake87
Copy link
Contributor

Awesome, I appreciate it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants