Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python versions #55

Merged
merged 14 commits into from
Nov 14, 2023
2 changes: 1 addition & 1 deletion .github/workflows/testing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.7, 3.8, 3.9]
python-version: [3.9, 3.10, 3.11]
fail-fast: false
steps:

Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -85,3 +85,4 @@ target/

.vscode/

pyscicat/_version.py
27 changes: 26 additions & 1 deletion docs/source/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,29 @@
At the command line
```
$ pip install pyscicat
```
```

## Optional installation
There are several collections of dependency that can be install along with pyscicat. Note that the following examples add single quotes around the optional dependency to make them work on `zsh`, the default shell for MacOS.

### h5py
pyscicat includes helper utilities for ingesting NeXus files. To use these, install the hdf5 option:

```
pip install '.[hdf5]'
```

### dev
If you are developing pyscicat itself, you will want to install the dev dependencies:

```
pip install '.[dev]'
```

### docs
If you are developing pyscicat documentation and want to generate it locally on your machine:

```
pip install '.[docs]'
```

61 changes: 61 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,59 @@
[build-system]
requires = ["hatchling", "hatch-vcs"]
build-backend = "hatchling.build"


[project]
name = "pyscicat"
description = "a python API to communicate with the Scicat API"
readme = { file = "README.md", content-type = "text/markdown" }
authors = [
{ name = "Scicat Project Contributors", email = "dmcreynolds@lbl.gov" },
]
maintainers = [
{ name = "Scicat Project Team", email = "dmcreynolds@lbl.gov" },
]
requires-python = ">=3.9"
dependencies = [
"pydantic",
"requests"
]
classifiers= [
"Development Status :: 2 - Pre-Alpha",
"Natural Language :: English",
"Programming Language :: Python :: 3.7"
]
dynamic = ["version"]
[project.urls]
Homepage = "https://github.com/scicatproject/pyscicat"

[project.optional-dependencies]
hdf5 = [
"hdf5plugin",
"h5py",
]
dev = [
"codecov",
"coverage",
"flake8",
"pytest",
"sphinx",
"twine",
"black",
"requests_mock",
]
docs = [
"ipython",
"matplotlib",
"mistune <2.0.0", # temporary while sphinx sorts this out
"myst-parser",
"numpydoc",
"sphinx-click",
"sphinx-copybutton",
"sphinxcontrib.openapi",
"sphinx_rtd_theme",
]

[tool.black]
include = '\.pyi?$'
exclude = '''
Expand All @@ -17,3 +73,8 @@ exclude = '''
| tests/data
)/
'''


[tool.hatch]
version.source = "vcs"
build.hooks.vcs.version-file = "pyscicat/_version.py"
Loading
Loading