Skip to content

pyxnat/pyxnat

Repository files navigation

pyxnat

https://coveralls.io/repos/github/pyxnat/pyxnat/badge.svg?branch=master

https://gitlab.com/xgrg/tweetit/-/raw/master/resources/008-pyxnat-v1.4.gif?inline=false

Where to get it

The source code is currently hosted on GitHub at: https://github.com/pyxnat/pyxnat

Binary installers for the latest released version are available at the Python package index. pyxnat can be installed using pip with the following command:

pip install pyxnat

Dependencies

  • requests v2.20 or higher
  • python-lxml v4.3.2 or higher recommended, earlier versions may work.

For development purposes:

See the full installation instructions for recommended and optional dependencies.

Installation from sources

To install pyxnat from source, from the pyxnat directory (same one where you found this file after cloning the git repo), execute:

python setup.py install

Documentation

The official documentation is hosted at: https://pyxnat.github.io/pyxnat

Running the test suite

Until v1.1 tests were exclusively performed on XNAT Central using a dedicated user account (nosetests). Yet some tests were not allowed to run due to restricted permissions. In v1.1, tests were restructured and were directed to two independent XNAT instances based on permission level. Hence XNAT Central is still used for most tests with read access whereas other tests requiring write permissions are run on a local XNAT instance in a Docker container.

Consequently, running the test suite now requires the following:

  • pytest v7.1+
  • coverage v3.6+
  • docker v18+

Setting up a local Docker-powered XNAT instance may be achieved easily using docker-compose and any available recipe. We recommend the one from the following repository (maintained by the XNAT team). Once the repository cloned, run the following command (possibly as sudo)

docker-compose up -d

After a couple of minutes, the XNAT instance should be up and running locally. You may check it out visiting http://localhost.

The script tests/setup_xnat.py may then be executed to populate the local instance before running the tests.

Finally run the tests with the following command (from the root of the project):

pytest --cov pyxnat

The file .github/workflows/ci.yml (used for CI) features these described steps and may be referred to for further information.

Building the documentation

Building the docs requires to have setuptools and sphinx (v2.0+) installed. Then run the command:

python setup.py build_sphinx

The docs are built in the build/sphinx/html folder.

Contribute to pyxnat

To contribute to pyxnat, first create an account on GitHub. Once this is done, fork the pyxnat repository to have you own repository, clone it using git clone on the computers where you want to work. Make changes in your clone, push them to your GitHub fork, test them on several computers and when you are happy with them, send a pull request to the main repository.

License

BSD 3