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

Celeritas: new version 0.5.1 #48678

Merged
merged 3 commits into from
Jan 22, 2025
Merged

Celeritas: new version 0.5.1 #48678

merged 3 commits into from
Jan 22, 2025

Conversation

sethrj
Copy link
Contributor

@sethrj sethrj commented Jan 22, 2025

This adds Celeritas 0.5.1, marks 0.5.0 as deprecated, and omits a removed (but harmless) cmake option from the command line for newer versions.

@sethrj sethrj changed the title Celeritas: new version 0.5 Celeritas: new version 0.5.1 Jan 22, 2025
Copy link
Contributor

@wdconinc wdconinc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we avoid deprecating older versions right away? This leads to users upgrading spack (even the regular develop-$(date) weekly snapshots, or develop with a git pull) and finding out that their environments don't concretize anymore unless they upgrade. I'd prefer we give them a path to upgrade on their own terms and timeline, e.g. keep the two most recent versions not deprecated.

I don't think we should use deprecation to force users to upgrade more quickly than they chose, but instead use it to reduce our support burden (or prevent users from running with insecure software).

@drbenmorgan
Copy link
Member

I'll defer to @sethrj on the deprecation question for Celeritas, I guess this is going to be on a package by package basis (I'm thinking with my Geant4 hat on here, and whether it's good for upstream projects to formally document a deprecation policy that can inform spack here).

@wdconinc
Copy link
Contributor

I'll defer to @sethrj on the deprecation question for Celeritas, I guess this is going to be on a package by package basis (I'm thinking with my Geant4 hat on here, and whether it's good for upstream projects to formally document a deprecation policy that can inform spack here).

And I am fully willing to defer to the maintainers here, regardless what you decide, but I wanted to raise the point. For geant4 for example, since you brought it up, it has been very helpful to have input on whether newer datasets can be used with older geant4 versions etc. But I note that even so, geant4 has not deprecated any older versions since there is often interest in being able to replicate older simulations, even if it is understood that these older versions are not encouraged for new simulations.

@sethrj
Copy link
Contributor Author

sethrj commented Jan 22, 2025

Certainly, and honestly I didn't realize how severe the "avoid deprecated" mandate was... I know there have been many conversations over the years, often led by @adamjstewart

@wdconinc
Copy link
Contributor

I didn't realize how severe the "avoid deprecated" mandate was

The story could be different if we could "un-deprecate" selected packages. E.g. I am ok with deprecated celeritas versions, but not with deprecated openssh versions.

@adamjstewart
Copy link
Member

My thoughts on deprecation are roughly documented here: https://spack.readthedocs.io/en/latest/packaging_guide.html#deprecating-old-versions

Basically, if you have a good reason like security vulnerability or packaging complexity, I'm pro-deprecation, but if you have no reason other than it lets me delete 1 line, then I'm anti-deprecation.

@sethrj
Copy link
Contributor Author

sethrj commented Jan 22, 2025

Is "has bugs that won't be fixed until the next major revision" a good reason?

@wdconinc
Copy link
Contributor

Is "has bugs that won't be fixed until the next major revision" a good reason?

By that reason, wouldn't we deprecate every single older version, for every package? Is there a package out there that has no bugs and only adds new features (without bugs) in each new release?

wdconinc
wdconinc previously approved these changes Jan 22, 2025
Copy link
Contributor

@wdconinc wdconinc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Checksum verified. @sethrj Please feel free to merge.

@adamjstewart
Copy link
Member

Agreed, all versions of all software have bugs, we don't usually remove them. Reproducibility is important, and not all software works with the latest version of all other software.

@sethrj
Copy link
Contributor Author

sethrj commented Jan 22, 2025

By that reason, wouldn't we deprecate every single older version, for every package? Is there a package out there that has no bugs and only adds new features (without bugs) in each new release?

It's not uncommon to keep a stable branch around that gets incremental patches; CMake for example introduces new features in minor, and maintains a few older minor versions with bugfix patches.

@wdconinc wdconinc enabled auto-merge (squash) January 22, 2025 17:10
@sethrj
Copy link
Contributor Author

sethrj commented Jan 22, 2025

Thanks @wdconinc @adamjstewart @drbenmorgan for the discussion and review!

@wdconinc wdconinc merged commit 58f1e79 into spack:develop Jan 22, 2025
16 checks passed
@sethrj sethrj deleted the celeritas-v0.5.1 branch January 22, 2025 18:35
mtaillefumier pushed a commit to mtaillefumier/spack that referenced this pull request Jan 24, 2025
* Celeritas: add version 0.5

* Fix style

* Un-deprecate non-awful versions
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants