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

Improve maintenance and contribution process #4697

Open
6 of 20 tasks
jezdez opened this issue Jan 6, 2023 · 2 comments
Open
6 of 20 tasks

Improve maintenance and contribution process #4697

jezdez opened this issue Jan 6, 2023 · 2 comments
Assignees
Labels
epic a highlevel collection of smaller related issues source::anaconda created by members of Anaconda, Inc.

Comments

@jezdez
Copy link
Member

jezdez commented Jan 6, 2023

Checklist

  • I added a descriptive title
  • I searched open reports and couldn't find a duplicate

Summary

In a recent conda community call and in Anaconda internal discussions, we were reminded that conda-build has had less focus from the conda maintainer team than conda itself.

My guess is that a lack of in-depth experience with conda package building made maintenance more difficult than conda. Plus, many of the use cases and scenarios encoded in conda-build are outside the scope of regular software development and are easier to code review and engage with when being a package builder.

As such, to improve the maintenance of conda-build, we should focus on:

  • Simplifying the maintenance and contributing process further
  • Adding experienced packagers to the maintenance team
  • Tapping into the existing knowledge in the community of using conda-build
  • Having at least one person of conda maintainer team skilled up by being mentored in the packaging practitioners

Linked Issues & PRs

Short-term

  1. locked source::anaconda type::task
    beeankha kenodegard
  2. in-progress source::anaconda type::task
    jezdez
  3. severity::4 source::anaconda type::task
  4. 3 of 7
    epic source::anaconda type::task
  5. source::anaconda type::feature
  6. backlog in-progress source::anaconda type::feature
    dholth
  7. severity::3 source::anaconda source::community source::partner type::task
    wolfv

Mid-term

Long-term

Resources

@jezdez jezdez added epic a highlevel collection of smaller related issues source::anaconda created by members of Anaconda, Inc. labels Jan 6, 2023
@jezdez jezdez self-assigned this Jan 6, 2023
@jezdez jezdez pinned this issue Jan 9, 2023
@jezdez jezdez changed the title Simplify maintenance and contribution process Improve maintenance and contribution process Jan 26, 2023
@jaimergp
Copy link
Contributor

Thanks for writing this out! And what is this fancy style for issue grouping? 😮

Now, about the proposal itself :D I see a few items around the declarative boa format. This is still WIP, afaik; even if the current draft is functional, last time we talked we mentioned a few ideas to change it a bit so it resembles a GHA-like workflow a bit more (steps with referenceable identifiers, non-semantic keys for conditions, maybe a couple more things?). Is the idea to iterate together, to follow development as it happens, more collaboration? It feels like we might be chasing a moving target if we start blindly.

Also, I don't see as many items talking about the (many) bugs in meta.yaml right now. Is the overall plan to phase out meta.yaml as is, without trying to address the existing problems, or are we missing a couple items talking about that kind of maintenance? All these efforts can be pursued in parallel by several teams, but meta.yaml is in wide usage today and it still bites builders daily (see this thread for a recent example of a long-time filed bug that affected a seasoned maintainer).

I'm mainly talking about the inconsistencies in the outputs feature, lacking documentation and overall how-to. Even official writeups about how to navigate the known limitations would be helpful! The conda-forge linter even has some logic to detect some common pitfalls, but ideally these are fixed instead of avoided. Having a thorough investigation (including triaging but also interviews with builders) to map this out in documentation would be super helpful already, and it doesn't involve touching the (quite daunting) code at all :D

@kenodegard
Copy link
Contributor

And what is this fancy style for issue grouping? 😮

Tasklists

Is the idea to iterate together, to follow development as it happens, more collaboration?

Yes. Nothing has been decided about the future of conda-build recipes, I expect meta.yaml to be supported for the foreseeable future.

I'm mainly talking about the inconsistencies in the outputs feature

There's no reason we cannot address the known issues with meta.yaml. During the ongoing test pruning/review I found several inconsistencies which would be easy to address if we dedicate some time to it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
epic a highlevel collection of smaller related issues source::anaconda created by members of Anaconda, Inc.
Projects
None yet
Development

No branches or pull requests

3 participants