Creating "test-versions" (or beta versions) of packages

Is there a way to create test versions of packages that are not full releases?

For example: In my specific research group we want to push updates to older package, however, before we do that, we want test the updated version of the package on all of our different machines (osx, windows, linux) locally.

Is there a way I could create a test/beta release that is only downloadable and accessible within the group? If not, is there a way to create intermediate releases / a way to specify test releases so they do not bombard our channel with seemingly “new” releases even though those are test versions?

I have the same problem and use this method: Knowledge Base — conda-forge 2023.07.27 documentation

Another method is to download the packages from CI Maintaining packages — conda-forge 2023.07.27 documentation

The first method requires a different branch to be setup, but installing is easy since you only need to pass in a special channel name. The second method is nice since it you don’t need to worry about setting up a separate branch and channel.

I use the second method when I’m just testing a package myself, but I have a _rc channel setup for a few packages I maintain so the wider community can test them before a release.

Thanks, great pointers here already. I have an additional question regarding this, namely: How acceptable is it to submit packages when they are still in the very early stages of development?

In my case I’m building a Snakemake workflow that uses a self-developed Python package, but I cannot seem to install it into containers from the local channel (i.e., on my machine). The only way to use it, it seems, is to install it from conda-forge, for which I’d need to submit it in the first place, although it’s still highly experimental. Is this acceptable?

Have you considered putting them on a user channel? I also build Snakemake pipelines and this is what I do for custom packages.

My interpretation of the Intended Usage statement is that Conda Forge is not for pre-release versions. It can depend on the reviewer, but I do consider package maturity in assessing whether I will approve a PR to staged-recipes.

1 Like

Thanks! A user channel sounds like a better solution indeed. Where would I be able to create one? Or would I have to self-host somewhere accessible via HTTPS?

It is free to set up an account. See Accounts — Anaconda documentation.