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

1 review library build process #2

Draft
wants to merge 8 commits into
base: dev
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,5 @@ dist/*
ncqc.egg-info/*
__pycache__
.idea
.hypothesis/*
.hypothesis/*
.env
22 changes: 11 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,18 @@
# NetCDF Quality Control Library

[[_TOC_]]

ncqc is a Python library for performing quality control on netCDF files. It was developed by TU Delft, within the framework of the Ruisdael observatory for atmospheric science. This library is focused around the `QualityControl` class, to which a netCDF file and configuration can be added to then perform quality control checks.

## Installation
### Installing from source
Installing ncqc from source requires two steps: creating a wheel file, and using that to install the library. This is done by running the following commands:
```
pip install wheel
pip install setuptools
pip install twine
### Installation from source

python setup.py bdist_wheel
Installing ncqc from source requires two steps, creating a wheel distribution file and installing it.

pip install ./dist/ncqc-0.1.0-py3-none-any.whl
```
Steps:
* create a new virtual environment: `python -m venv venv`
* upgrade pip: `pip install --upgrade pip`
* install requirements for building the wheel: `pip install setuptools wheel build`
* create the wheel: `python -m build`
* install wheel: `pip install dist/*.whl`

## Usage
There are a couple steps to perform quality control checks. These are:
Expand Down Expand Up @@ -241,3 +238,6 @@ Example output dictionary:

## License
GPLv3. See [LICENSE](LICENSE)

# Notes
[^1]: for an overview of virtual environments tools see [Python Tools for Managing Virtual Environments](https://dev.to/bowmanjd/python-tools-for-managing-virtual-environments-3bko)
53 changes: 53 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
[build-system]
build-backend = "setuptools.build_meta"
requires = [
"setuptools",
"wheel",
]

[project]
name='ncqc'
version = "0.1.1"
dependencies = ["PyYAML", "netCDF4", "numpy"]
# dependencies = [
# "netCDF4==1.6.5",
# "PyYAML ~= 6.0.1"
# ]
requires-python = ">= 3.10"
description = "NetCDF Quality Control Python library"
readme = {file = "README.md", content-type = "text/markdown"}
authors = [
{name = "Noky Soekarman"},
{name = "Jesse Vleeschdraager"},
{name = "Mels Lutgerink"},
{name = "Ella Milinović"},
{name = "Vasil Chirov"},
{name = "Andre Castro"},
{name = "Marc Schleiss"},
]
maintainers = [
{name = "Andre Castro"},
{name = "Marc Schleiss"},
]
license = {file = "LICENSE"}
keywords = ["NetCDF", "Quality Control"]
classifiers = [
"Programming Language :: Python :: 3",
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
"Operating System :: OS Independent",
"Topic :: Scientific/Engineering :: Atmospheric Science",
]
[project.optional-dependencies]
test = [
"pytest",
"coverage",
"pylint",
]

[project.urls]
Repository = "https://github.com/ruisdael-observatory/NCQC.git"
Issues = "https://github.com/ruisdael-observatory/NCQC/issues/"


[tool.setuptools.packages.find]
exclude = ["sample_data*", "tests*", "venv*"]
6 changes: 3 additions & 3 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
PyYAML
PyYAML~=6.0.1
pytest
coverage
netCDF4
netCDF4~=1.6.5
pylint
hypothesis
hypothesis
27 changes: 0 additions & 27 deletions setup.py

This file was deleted.