About maser4py
maser4py offers modules to handle data from several space and ground radio observatory.
It comes with the following submodules:
- maser-data for radio data parsing features
- maser-plot for radio data plotting features
- maser-tools for additional support programs
Read maser4py main documentation for details.
maser4py is developed in the framework of the MASER project.
Installation
To install the full package, run the following command:
pip install maser4py[all]
or use one of the extra options:
datato get maser-data submodule featuresplotto get maser-plot submodule featurestoolsto get maser-tools submodule featuresjupyterfor Jupyter notebook supportjupytextfor Jupyter notebook text supportallto install all the submodules above
For example if you want to use maser4py with maser-data and maser-plot submodules:
pip install maser4py[data,plot]
Usage
Examples of usage can be found in the examples folder.
Examples can also be run as Jupyter notebooks on Binder You can also launch a Binder environment and browse through the notebook examples.
Development
To contribute to the development of the package, you will need to install a local copy of maser4py:
git clone https://gitlab.obspm.fr/maser/maser4py.git
Then, you can install the package locally, by using pip install -e .[all] or by using poetry (see below).
Requirements
maser4py requirements are detailed in the pyproject.toml file
poetry
To install the package, it is recommended to use poetry:
pip install poetry
CDF file format
To use maser4py to read CDF files you have to install the CDF library and the spacepy.pycdf package.
Installing a local copy of maser4py
Use the following command to install the package from a local copy:
poetry install
Tests
Use pytest -m "not test_data_required" to skip tests that require test data (and to skip auto download).
pip install -e path/to/project/folder
Build the documentation
Use sphinx-build docs/source docs/public to build the documentation.
Manually publish maser and generate a new DOI
To publish maser with poetry you will have to build a dist package:
poetry build
And then publish the package on pypi (and/or on Gitlab, see https://python-poetry.org/docs/cli/#publish):
poetry publish
maser comes with a Python client (see .ci/zenodo.py) to interact with the Zenodo API and generate automatically a DOI for each new version of maser.
To archive maser on Zenodo:
- Create an access token
- Is this the first maser deposit on Zenodo ?
- Yes it's the first deposit, so you don't need any ID
- No, it's a new version of
maser. Then browse to the first record of maser on Zenodo and check the URL :https://zenodo.org/record/<DEPOSITION_ID>to get themaserdeposition ID.
- Use the following command to deposit the package on Zenodo:
python .ci/zenodo.py -p ./ -t <ACCESS_TOKEN> -a ./dist/maser4py-X.Y.Z.tar.gz -id <DEPOSITION_ID>
- Browse to the
maserrecord on Zenodo, check the metadata/files and publish the package to finally generate the DOI.
Notes :
- the
--sandboxkeyword can be used to deposit files on the Zenodo test server - the
--publishkeyword can be used to automatically publish the new record and generate the DOI. But be careful, once published, there is no way to modify a record on Zenodo without publishing a new version.
Metadata
Release files for maser4py 0.17.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| maser4py-0.17.3.tar.gz | 14.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| maser4py-0.17.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 28.7 kB
Release files / maser4py-0.17.3.tar.gz
| Download URL | maser4py-0.17.3.tar.gz |
|---|---|
| Size | 14.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
34da851c6ec9c92bb02ceba66fc378eeddac84067f18485f01c0acc420822697
|
|
BLAKE2b-256 checksum How to use checksums |
0b50cf68d581de505730a50dc70dd71971296132720c718db95f329d4cc39b22
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.2.1 CPython/3.12.6 Darwin/25.3.0
|
Release files / maser4py-0.17.3-py3-none-any.whl
| Download URL | maser4py-0.17.3-py3-none-any.whl |
|---|---|
| Size | 14.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
209f800506e601345c9ea40d31533ec255fe0c7b7629933dbe541a2727b8809a
|
|
BLAKE2b-256 checksum How to use checksums |
8574ead7d9d537ffb61f7ec72aa50e64e1329ef80ee1daba113425ae91e84d10
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.2.1 CPython/3.12.6 Darwin/25.3.0
|
Security for maser4py 0.17.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.