question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Request for clarification of conda-forges role in development.

See original GitHub issue

This issue is intended to help clarify how developers should approach using conda-forge in terms of development and releases. My goal is to balance my own efficiency and the efficiency of conda-forge. I do not want to abuse the time of the maintainers or the CI services. Ultimately, it would be useful for this information to make it into the docs.

Recently, I staged my first recipe (conda-forge/staged-recipes#2499). This package is part of a greater whole, and all of it is still pre-alpha at best, so it was marked as dev.

A comment was left by @jakirkham asking if a non-dev version was available, which caused me to rethink my perception of where conda-forge sits in the development/release cycle and how I should be using it.

My previous perception was because conda-forge integrates many CI platforms, it was part of the development process; part of setting up a new python project would be to get a (potentially empty) package into the conda-forge feedstock in order to leverage the CI services during development. As it is, I manually manage CI configurations and integrations for Appveyor and Travis. I saw conda-forge as a means to not have to do that anymore.

However, after this comment, I began to think maybe conda-forge is not a development tool, but instead, a release tool. I should be providing my own CI solution for evaluating dev grade builds (commits to master), and only using conda-forge when a package has been deemed safe for public consumption.

These are my questions:

  • How would conda-forge like me to use their service?
  • What grade of release is appropriate for conda-forge?
  • In a development process, what, if anything, should happen between a commit hitting master and that commit getting picked up by conda-forge?
    • Should these commits be making it to conda-forge at all?
    • What about a non-master branch?
  • If conda-forge is not intended to be part of the development cycle, are there any aspects of it that can be leveraged to make setting up and maintaining CI for development easier?

Issue Analytics

  • State:closed
  • Created 7 years ago
  • Comments:5 (4 by maintainers)

github_iconTop GitHub Comments

4reactions
ChrisBarker-NOAAcommented, Mar 16, 2017

This is just my personal opinion-- but no, conda forge is NOT there to support development.

And it seems we are frequently hitting various limits, so we shouldn’t extend its use, even though it might be convenient.

  • How would conda-forge like me to use their service?

To make your package easily available to end users.

  • What grade of release is appropriate for conda-forge?

I’m not inclined to be pedantic about this – so anything you’d want your users that are not involved with development to use. Usually this is “releases”, but you may want to make previews available if the project is young.

  • In a development process, what, if anything, should happen between a commit hitting master and that commit getting picked up by conda-forge?
    • Should these commits be making it to conda-forge at all?

No

    • What about a non-master branch?

No!

I’d say only if you tag a release.

    • If conda-forge is not intended to be part of the development cycle, are there any aspects of it that can be leveraged to make setting up and maintaining CI for development easier?

The code is all open source, it may be helpful as a framework to borrow from.

-CHB

2reactions
astrofrogcommented, Mar 18, 2017

@artPlusPlus - if you are interested in using conda as part of your Travis/AppVeyor builds in your own project, you may instead be interersted in https://github.com/astropy/ci-helpers, which removes a lot of the required boilerplate code.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Private package installation in Amazon SageMaker running in ...
You can configure CodeArtifact to fetch software packages from public repositories such as PyPI. PyPI helps you find and install software ...
Read more >
Vincent R. Nijs - Rady School of Management
Vincent Nijs is an Associate Professor of Marketing at the Rady School of Management, inaugural Co-Director of Master of Science in Business Analytics ......
Read more >
conda-forge | community driven packaging for conda
Report an issue with a package. Search for the appropriate feedstock repository. The list of existing feedstocks is a good place to start....
Read more >
Releases · sbmlteam/libsbml - GitHub
The development branch is the main branch and we encourage users to create and submit pull requests against this branch. We are no...
Read more >
[sbml-discuss] Release of libSBML-5.19.0 - Google Groups
The development branch is the main branch and we encourage users to create and submit pull requests against this branch. We are no...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found