Contributing to ASLPREP
This document explains how to prepare a new development environment and update an existing environment, as necessary.
Development in Docker is encouraged, for the sake of consistency and portability.
By default, work should be built off of
pennlinc/aslprep:unstable,
which tracks the main
branch,
or pennlinc/aslprep:latest
,
which tracks the latest release version
(see the Installation guide for the basic procedure for running).
Adding dependencies
New dependencies to be inserted into the Docker image will either be Python or non-Python dependencies. Python dependencies may be added in three places, depending on whether the package is large or if non-release versions are required. The image must be rebuilt after any dependency changes.
Python dependencies should generally be included in the REQUIRES
list in aslprep/__about__.py.
If the latest version in PyPI is sufficient,
then no further action is required.
Code-Server Development Environment (Experimental)
1. Build the Docker image
We will use the Dockerfile_devel
file to build
our development docker image:
$ mkdir $HOME/projects
$ cd $HOME/projects/aslprep
$ git clone https://github.com/PennLINC/aslprep.git
$ docker build -t aslprep_devel -f Dockerfile_devel .
2. Run the Docker image
We can start a docker container using the image we built (aslprep_devel
):
$ docker run -it -p 127.0.0.1:8445:8080 -v ${PWD}:/src/aslprep aslprep_devel:latest
Note
If you are using windows shell, ${PWD}
may not be defined.
Instead, use the absolute path to your ASLPrep directory.