pytensor icon indicating copy to clipboard operation
pytensor copied to clipboard

build(ci-requirements): create an environment YAML config for CI tests (Ubuntu) #449

Open lmmx opened this issue 1 year ago • 7 comments

Motivation for these changes

As requested in:

  • #449

Implementation details

You can specify both a package positional argument and (one or more) --file / -f argument which points to a conda format environment yml or traditional txt requirements file.

Initially I just did the Ubuntu test env pointed to in the issue (#449)

Checklist

Major / Breaking Changes

  • N/A

New features

  • Use config files to store dependencies not CI (separating state and behaviour)

Bugfixes

  • N/A

Documentation

  • N/A

Maintenance

  • N/A

lmmx avatar Dec 07 '23 19:12 lmmx

@ricardoV94 should we have different yml files for each platform we test on? See here as a template to follow.

jessegrabowski avatar Dec 07 '23 20:12 jessegrabowski

@jessegrabowski I was wondering what to call the dir I put the yml config in! Will change and then review the CI workflow for other platforms to target in the same fashion.

You already have an environment.yml in the top-level dir though so may have to edit other references to that if I move it.

lmmx avatar Dec 07 '23 20:12 lmmx

I'm not sure if that environment.yml is used for much, it looks like docs only from a quick search? I would support getting rid of it entirely.

jessegrabowski avatar Dec 07 '23 20:12 jessegrabowski

I've now covered the benchmark environment and the other numba & jax environment config files too. (09b8a01)

lmmx avatar Dec 07 '23 20:12 lmmx

Any issue with putting these inside the .github/workflows directory?

ricardoV94 avatar Dec 08 '23 17:12 ricardoV94

PyMC puts them in their own folder here; the PR was this way at my recommendation. I guess there's no reason why they couldn't be in the .github folder instead, just for consistency between the packages?

jessegrabowski avatar Dec 13 '23 08:12 jessegrabowski

PyMC puts them in their own folder here; the PR was this way at my recommendation. I guess there's no reason why they couldn't be in the .github folder instead, just for consistency between the packages?

PyMC ones are sometimes recommended for devs, but here we are not doing that, so I would keep the root folder uncluttered. Not a strong preference though

ricardoV94 avatar Dec 13 '23 08:12 ricardoV94