Skip to content

Conversation

srivarra
Copy link
Contributor

@srivarra srivarra commented May 11, 2023

If you haven't already, please read through our contributing guidelines before opening your PR

What is the purpose of this PR?

Adds a Conda environment using Python 3.11.
The docker environment now uses a slim Python 3.11 Image.

How did you implement your changes

Environment Changes

Added the environment.yml file, adjusted the Dockerfile, made changes to the README and reformatted the setup.py file.
Support for Python 3.9 to 3.11.

Added the following extensions:

These extensions are not dependencies of Ark, they are installed alongside Ark in the Conda environment.yml and the Docker image Dockerfile, and can be optionally installed with pip install ark-analysis[lab_ext] or pip install .[lab_ext] if you are in the ark directory.

Testing Changes

  • Added a Python Script which runs as the first job in the CI workflow. This will grab the huggingface-dataset cache, and will verify and update it if necessary. (In the future we can add a drop down menu for us to be able to select a specific commit when working with PRs which require dataset changes). The cache is now cross-os enabled, so 1 cache for all tests. Tests are only able to read the cache, not write to it.
  • The fiber segmentation tests do not require the example dataset anymore, so these should be a bit faster.
  • Reduced the cell count for dimensionality_reduction_test.py from 300 to 50.

Removed unused imports in src/ark/, tests/, and templates/

Sorted all imports with isort, removed unused imports.

Remaining issues
Merge the following before this pr:

@srivarra srivarra linked an issue May 11, 2023 that may be closed by this pull request
@srivarra srivarra self-assigned this May 11, 2023
@srivarra srivarra added the dependencies Pull requests that update a dependency file label May 11, 2023
Copy link
Member

@ngreenwald ngreenwald left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should get the sequencing right for all of this. If @cliu72 wants the updated version for her paper to to be 3.9+, then we should wait on merging in #985 until after this.

If not, then we should make a new release once her other requests get merged in, then #985, then this.

@cliu72
Copy link
Contributor

cliu72 commented May 18, 2023

We should get the sequencing right for all of this. If @cliu72 wants the updated version for her paper to to be 3.9+, then we should wait on merging in #985 until after this.

If not, then we should make a new release once her other requests get merged in, then #985, then this.

Yeah I think it'd be good for the updated version of my paper to be 3.9+, since pip install doesn't work anymore with the old version. So I think we can merge this one now.

Copy link
Contributor

@camisowers camisowers left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor comment about the alpineer version, but other than that it looks great.

@srivarra srivarra requested review from ngreenwald and camisowers June 7, 2023 21:19
@srivarra
Copy link
Contributor Author

srivarra commented Jun 7, 2023

@ngreenwald @cliu72 This is good to go.

@camisowers @alex-l-kong Added the fix in for watershed's argument dtype.

Copy link
Member

@ngreenwald ngreenwald left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great! Big upgrades

@srivarra srivarra added this pull request to the merge queue Jun 9, 2023
Merged via the queue into main with commit 5acbee2 Jun 9, 2023
@srivarra srivarra deleted the github_actions/May_updates branch June 9, 2023 22:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Document supported python versions, expand versions Unpin ipywidgets in the future Incorporate cell execution time
5 participants