choderalab / pymbar

Python implementation of the multistate Bennett acceptance ratio (MBAR)
http://pymbar.readthedocs.io
MIT License
240 stars 93 forks source link

Detailed 4.0 project planning for release #445

Open mrshirts opened 2 years ago

mrshirts commented 2 years ago

Moving from the general task #255 to specific tasks

Lnaden commented 2 years ago

It looks like Conda JAX is usable as is with some small tweaking: https://github.com/google/jax/issues/189. There is some odd nuance with a couple of caveates:

Lnaden commented 2 years ago

@mrshirts can you make a nudge or re-trigger #402 so we can see what the errors are exactly?

Lnaden commented 2 years ago

Address pytest issues with flaky? (Levi?)

We do have the flaky plugin setup to be used in one test already. I'm going to keep triggering tests locally and on my fork to see if I can figure out which tests are problematic.

mrshirts commented 2 years ago

For #402, that will take a couple of days, I need to revisit what is actually the right way to do this.

mrshirts commented 2 years ago

The specific test failure I got was:

test_mbar_solvers.py:20: PytestUnknownMarkWarning: Unknown pytest.mark.flaky - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.flaky(max_runs=2) # Uses flaky plugin for pytest

But that was running pytest v 7.1.1 locally, so I guess the issue was that I was running w/o the plugin?

Lnaden commented 2 years ago

The specific test failure I got was:

That's the generic error message from pytest if you try to use a mark it doesn't recognize (or don't have the plugin to recognize). The test will run fine without the flaky plugin, so its a relatively harmless warning. I have that one test marked flaky because it can stochastically fail rarely. Post 4.0, it may not even be a valid test anymore since we are changing the way solvers work. For now, the GitHub Actions CI installs the plugin so it should not throw the warning in online testing.

mattwthompson commented 2 years ago

I've had pretty good success pulling down JAX from conda-forge, with the caveat that I haven't needed CUDA acceleration and for a brief period of time all of the builds were broken on macOS because the feedstock was more or less only maintained by automation. But it's generally available and not been a pain to install lately.

mattwthompson commented 2 years ago

And a totally trivial suggestion, but you might want to remove devtools/conda-recipe now that the conda builds happen in the feedstock.