Alpineer
Toolbox for Multiplexed Imaging. Contains scripts and little tools which are used throughout ark-analysis, mibi-bin-tools, and toffy
Requirements
- Python Poetry
- Recommeded to install it with either:
- Official Installer:
curl -sSL https://install.python-poetry.org | python3 -
- pipx, (requires
pipx
)- If you are using
pipx
, run the following installation commandsbrew install pipx pipx ensurepath
- If you are using
- Official Installer:
- Recommeded to install it with either:
- pre-commit
brew isntall pre-commit
Setup
-
Clone the repo:
git clone https://github.com/angelolab/alpineer.git
-
cd
intoalpineer
. -
Install the pre-commit hooks with
pre-commit install
-
Set up
python-poetry
foralpineer
- Run
poetry install
to installalpineer
into your virtual environment. (Poetry utilizes Python's Virtual Environments) - Run
poetry install --with test
: Installs all the dependencies needed for tests (labeled undertool.poetry.group.test.dependencies
) - Run
poetry install --with dev
: Installs all the dependencies needed for development (labeled undertool.poetry.group.dev.dependencies
) - You may combine these as well with
poetry install --with dev,test
. Installing the base dependencies and the two optional groups.
- Run
-
In order to test to see if Poetry is working properly, run
poetry show --tree
. This will output the dependency tree for the base dependencies (labeled undertool.poetry.dependencies
).Sample Output:
matplotlib 3.6.1 Python plotting package ├── contourpy >=1.0.1 │ └── numpy >=1.16 ├── cycler >=0.10 ├── fonttools >=4.22.0 ├── kiwisolver >=1.0.1 ├── numpy >=1.19 ├── packaging >=20.0 │ └── pyparsing >=2.0.2,<3.0.5 || >3.0.5 ├── pillow >=6.2.0 ├── pyparsing >=2.2.1 ├── python-dateutil >=2.7 │ └── six >=1.5 └── setuptools-scm >=7 ├── packaging >=20.0 │ └── pyparsing >=2.0.2,<3.0.5 || >3.0.5 ├── setuptools * ├── tomli >=1.0.0 └── typing-extensions * natsort 8.2.0 Simple yet flexible natural sorting in Python. numpy 1.23.4 NumPy is the fundamental package for array computing with Python. pillow 9.1.1 Python Imaging Library (Fork) pip 22.3 The PyPA recommended tool for installing Python packages. tifffile 2022.10.10 Read and write TIFF files └── numpy >=1.19.2
Development Notes
- I'd highly suggest refering to Poetry's extensive documentation on installing packages, updating packages and more.
- Tests can be ran with
poetry run pytest
. No additional arguments needed, they are all stored in thepyproject.toml
file.- As an aside, if you need to execute code in the poetry venv, use prefix your command with
poetry run
- As an aside, if you need to execute code in the poetry venv, use prefix your command with
Updating
- In order to update
alpineer
's dependencies we can run:poetry update
: for all dependenciespoetry update <package>
: where<package>
can be something likenumpy
.
- To update Poetry itself, run
poetry self update
.
Questions?
Feel free to open an issue on our GitHub page