ceps icon indicating copy to clipboard operation
ceps copied to clipboard

[CEP XXXX] Versioning of Existing conda Standards

Open beckermr opened this issue 9 months ago • 13 comments

Checklist for submitter

  • [x] I am submitting a new CEP: Versioning of Existing conda Standards.
    • [x] I am using the CEP template by creating a copy cep-0000.md named cep-XXXX.md in the root level.
  • [ ] I am submitting modifications to CEP XX.
  • [ ] Something else: (add your description here).

Checklist for CEP approvals

  • [ ] The vote period has ended and the vote has passed the necessary quorum and approval thresholds.
  • [ ] A new CEP number has been minted. Usually, this is ${greatest-number-in-main} + 1.
  • [ ] The cep-XXXX.md file has been renamed accordingly.
  • [ ] The # CEP XXXX - header has been edited accordingly.
  • [ ] The CEP status in the table has been changed to approved.
  • [ ] The last modification date in the table has been updated accordingly.
  • [ ] The pre-commit checks are passing.

beckermr avatar Mar 14 '25 20:03 beckermr

pre-commit.ci autofix

beckermr avatar Mar 14 '25 21:03 beckermr

@conda/steering-council comments welcome!

beckermr avatar Mar 14 '25 21:03 beckermr

From https://github.com/conda/ceps/pull/81#issuecomment-2725756535:

Also please call the existing format v0.

My understanding from meta.yaml vs recipe.yaml was that v0's were not standardized ever. That's why I am/was using v1 for environment.yml in https://github.com/conda/ceps/pull/81.

Happy to change that assumption though. I'll drop some comments here for clarity.

jaimergp avatar Mar 18 '25 11:03 jaimergp

Also, conda-lock is already using v1 vs v2: https://github.com/conda/conda-lock/tree/main/conda_lock/lockfile.

jaimergp avatar Mar 18 '25 11:03 jaimergp

And same with repodata.json, never standardized but the current code in conda distinguishes between versions 1 and 2: https://github.com/conda/conda/blob/9eb05d85702aa78fd3793b840d79a910764544f1/conda/core/subdir_data.py#L264

This language is supported by CEP 15 too.

jaimergp avatar Mar 18 '25 11:03 jaimergp

Aaand more examples in this search. paths.json versions are 1-indexed, and so are content-trust signatures.

I think we are going to have trouble accepting such a long list of exceptions for this CEP.

My current opinion is that meta.yaml is v0 because it was never and will never be standardized properly given the complexity of the schema, Jinja and selector features. But in all other cases so far, the opportunity for v1 versioning via a proper standardization process is feasible.

jaimergp avatar Mar 18 '25 11:03 jaimergp

Oh no :/

beckermr avatar Mar 18 '25 11:03 beckermr

OK @jaimergp. I reversed the logic of the CEP and went with existing things as v1 with an exclusion for recipe formats.

beckermr avatar Mar 19 '25 12:03 beckermr

pre-commit.ci autofix

jaimergp avatar Mar 20 '25 18:03 jaimergp

pre-commit.ci autofix

beckermr avatar Mar 21 '25 02:03 beckermr

@conda/steering-council I plan to put this CEP up for a vote in ~2.5 weeks. Please send any comments, suggestions, etc. before then!

beckermr avatar Mar 31 '25 11:03 beckermr

Hello @conda/steering-council. Requesting a vote for this CEP.

This vote falls under the "Enhancement Proposal Approval" policy of the conda governance policy, please vote and/or comment on this proposal at your earliest convenience.

It needs 60% of the Steering Council to vote yes to pass.

To vote, please use the following form to vote. If you have questions concerning the proposal, you may also leave a comment or code review.

This vote will end on 2025-05-06, End of Day, Anywhere on Earth (AoE).

@xhochy (Uwe Korn)

  • [x] yes
  • [ ] no
  • [ ] abstain

@cj-wright (Christopher J. 'CJ' Wright)

  • [ ] yes
  • [ ] no
  • [ ] abstain

@mariusvniekerk (Marius van Niekerk)

  • [ ] yes
  • [ ] no
  • [ ] abstain

@chenghlee (Cheng H. Lee)

  • [x] yes
  • [ ] no
  • [ ] abstain

@ocefpaf (Filipe Fernandes)

  • [x] yes
  • [ ] no
  • [ ] abstain

@marcelotrevisani (Marcelo Duarte Trevisani)

  • [x] yes
  • [ ] no
  • [ ] abstain

@msarahan (Michael Sarahan)

  • [ ] yes
  • [ ] no
  • [ ] abstain

@mbargull (Marcel Bargull)

  • [x] yes
  • [ ] no
  • [ ] abstain

@jakirkham (John Kirkham)

  • [ ] yes
  • [ ] no
  • [ ] abstain

@jezdez (Jannis Leidel)

  • [x] yes
  • [ ] no
  • [ ] abstain

@wolfv (Wolf Vollprecht)

  • [x] yes
  • [ ] no
  • [ ] abstain

@jaimergp (Jaime Rodríguez-Guerra)

  • [x] yes
  • [ ] no
  • [ ] abstain

@baszalmstra (Bas Zalmstra)

  • [x] yes
  • [ ] no
  • [ ] abstain

@beckermr (Matthew R. Becker)

  • [x] yes
  • [ ] no
  • [ ] abstain

@hind-m (Hind Montassif)

  • [x] yes
  • [ ] no
  • [ ] abstain

@trallard (Tania Allard)

  • [x] yes
  • [ ] no
  • [ ] abstain

jaimergp avatar Apr 22 '25 12:04 jaimergp

@cj-wright, @mariusvniekerk, @chenghlee, @ocefpaf, @marcelotrevisani, @msarahan, @mbargull, @jakirkham, @wolfv: your mid-period reminder to vote, thanks!

jaimergp avatar Apr 28 '25 10:04 jaimergp

The vote is closed, and we have the following result:

  • Total possible voters: 16.
  • Valid votes: 12 / 16 = 75%.

Yes votes (12 / 100%):

  1. @xhochy
  2. @chenghlee
  3. @ocefpaf
  4. @marcelotrevisani
  5. @mbargull
  6. @jezdez
  7. @wolfv
  8. @jaimergp
  9. @baszalmstra
  10. @beckermr
  11. @hind-m
  12. @trallard

No votes (0 / 0.00%).

Abstain votes (0 / 0.00%).

Not voted (4):

  1. @cj-wright
  2. @mariusvniekerk
  3. @msarahan
  4. @jakirkham

Invalid votes (0).

12/16 votes = 75% meets the minimum quorum. 12/12 YES votes meets the approval threshold (60%).

As per the governance, the @conda/steering-council has approved this CEP.

jaimergp avatar May 07 '25 14:05 jaimergp