You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Sure, let's go with a release soon. @jturner314, can I add you as an owner of the crate too? Only intended to grow the team and have multiple of us in each role. I can manage the release if you want to.
Any other things we need to wrap up before a new version? Due to “rapid” Rust feature adoption, it seems best to continue the 0.x version track.
@jturner314, can I add you as an owner of the crate too?
I think you made me an owner of the crates (ndarray, ndarray-rand, and ndarray-parallel) right after you gave me permission to push to the GitHub repository. AFAICT, I'm not an owner of the GitHub repository, though, which might be a good idea (improve our bus factor). Do you have any thoughts on #424?
I can manage the release if you want to.
It doesn't matter to me; I don't mind doing it. I'm just not quite sure about the procedure. It's just:
Bump the version in Cargo.toml, commit, and push to GitHub.
Add a git tag to that commit and push it to GitHub.
Build the crate with cargo package.
Publish the crate with cargo publish.
right? I remember at one time you mentioned a cargo extension that made releases simpler, but I don't remember what it was. We want to release the crates in this order:
Release the new version of ndarray.
Update the ndarray dependency in ndarray-rand and ndarray-parallel.
Release the new versions of ndarray-rand and ndarray-parallel.
Am I missing something?
Any other things we need to wrap up before a new version?
I just created #480, which is a breaking change. Depending on what you think of it, we can merge/close it. The other open PRs won't be ready in the short-term or don't require breaking changes.
The changelog is up-to-date with everything in master. (I updated it in #481.)
Due to “rapid” Rust feature adoption, it seems best to continue the 0.x version track.
I agree. In particular, const generics and specialization are on the horizon, which may benefit from some breaking changes. I'd also like to finish a few other things before we release 1.0 (e.g. changing strides to be represented internally as isize instead of usize, which may result in a few publicly visible changes, and adding ArrayPtr and ArrayPtrMut types (see #388)).
cargo release is the tool I've been using, without its version-bump feature. It makes it easy to do the tag and publish and push. For example, as a general rule, one wants to publish && git push, so that the push only happens if the publish is successful. Avoids "failed" tags in the repo.
I'll add you as an owner, but it looks like we need an organisation for that. Organsation makes sense anyway, but as a nod to the issue about it, it's only the business of those that contribute to the repo.
I think we're ready for the release. I took a look at cargo-release, and it looks really convenient. Personally, though, if I do the release, I'll be most comfortable doing the steps manually so that I know exactly what's happening.
@bluss I'll plan to release the new versions on Friday, Aug. 31, following the steps listed below unless you have any objections or you say that you'd prefer to handle the release yourself.
Activity
bluss commentedon Aug 27, 2018
Sure, let's go with a release soon. @jturner314, can I add you as an owner of the crate too? Only intended to grow the team and have multiple of us in each role. I can manage the release if you want to.
Any other things we need to wrap up before a new version? Due to “rapid” Rust feature adoption, it seems best to continue the 0.x version track.
jturner314 commentedon Aug 28, 2018
I think you made me an owner of the crates (
ndarray,ndarray-rand, andndarray-parallel) right after you gave me permission to push to the GitHub repository. AFAICT, I'm not an owner of the GitHub repository, though, which might be a good idea (improve our bus factor). Do you have any thoughts on #424?It doesn't matter to me; I don't mind doing it. I'm just not quite sure about the procedure. It's just:
Cargo.toml, commit, and push to GitHub.cargo package.cargo publish.right? I remember at one time you mentioned a cargo extension that made releases simpler, but I don't remember what it was. We want to release the crates in this order:
ndarray.ndarraydependency inndarray-randandndarray-parallel.ndarray-randandndarray-parallel.Am I missing something?
I just created #480, which is a breaking change. Depending on what you think of it, we can merge/close it. The other open PRs won't be ready in the short-term or don't require breaking changes.
The changelog is up-to-date with everything in
master. (I updated it in #481.)I agree. In particular, const generics and specialization are on the horizon, which may benefit from some breaking changes. I'd also like to finish a few other things before we release 1.0 (e.g. changing strides to be represented internally as
isizeinstead ofusize, which may result in a few publicly visible changes, and addingArrayPtrandArrayPtrMuttypes (see #388)).bluss commentedon Aug 28, 2018
cargo release is the tool I've been using, without its version-bump feature. It makes it easy to do the tag and publish and push. For example, as a general rule, one wants to publish && git push, so that the push only happens if the publish is successful. Avoids "failed" tags in the repo.
I'll add you as an owner, but it looks like we need an organisation for that. Organsation makes sense anyway, but as a nod to the issue about it, it's only the business of those that contribute to the repo.
termoshtt commentedon Aug 29, 2018
That's good. Thanks comment.
jturner314 commentedon Aug 30, 2018
I think we're ready for the release. I took a look at
cargo-release, and it looks really convenient. Personally, though, if I do the release, I'll be most comfortable doing the steps manually so that I know exactly what's happening.@bluss I'll plan to release the new versions on Friday, Aug. 31, following the steps listed below unless you have any objections or you say that you'd prefer to handle the release yourself.
Cargo.tomlandREADME.rstfiles.master(with the Release ndarray 0.12, ndarray-rand 0.8, and ndarray-parallel 0.9 #482 merge commit) and usegit statusto make sure that the repository is clean.ndarraycrate:cargo package. If this fails, stop and figure out what's wrong.cargo publish. If this fails, stop and figure out what's wrong.git tag 0.12.0and push it to GitHub withgit push upstream 0.12.0.ndarray-randcrate:cdintondarray-randdirectory.cargo package. If this fails, stop and figure out what's wrong.cargo publish. If this fails, stop and figure out what's wrong.git tag ndarray-rand-0.8.0and push it to GitHub withgit push upstream ndarray-rand-0.8.0.ndarray-parallelcrate:cdintoparalleldirectory.cargo package. If this fails, stop and figure out what's wrong.cargo publish. If this fails, stop and figure out what's wrong.git tag parallel-0.9.0and push it to GitHub withgit push upstream parallel-0.9.0.All of the releases (and tags) will be on the the merge commit of #482.
bluss commentedon Aug 30, 2018
Nice, sounds good
jturner314 commentedon Sep 1, 2018
All done!
ndarray0.12.0,ndarray-rand0.8.0, andndarray-parallel0.9.0 have been released. 🎉