From 75719464e5347d695bc3601999772d9427ae55e6 Mon Sep 17 00:00:00 2001 From: Till Biskup Date: Fri, 23 Feb 2024 16:57:20 +0100 Subject: [PATCH 1/4] Update metadata after initial release. Add readthedocs config --- .readthedocs.yaml | 31 ++++++ CITATION.cff | 11 +- VERSION | 2 +- docs/changelog.rst | 2 +- docs/images/zenodo.10697496.svg | 123 +++++++++++++++++++++ docs/index.rst | 6 +- docs/installing.rst | 11 -- docs/roadmap.rst | 8 -- ocdb/templates/report/latex/literature.bib | 2 +- setup.py | 2 +- 10 files changed, 168 insertions(+), 30 deletions(-) create mode 100644 .readthedocs.yaml create mode 100644 docs/images/zenodo.10697496.svg diff --git a/.readthedocs.yaml b/.readthedocs.yaml new file mode 100644 index 0000000..bf77ed5 --- /dev/null +++ b/.readthedocs.yaml @@ -0,0 +1,31 @@ +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Set the OS, Python version and other tools you might need +build: + os: ubuntu-22.04 + tools: + python: "3.12" + # You can also specify other tool versions: + # nodejs: "19" + # rust: "1.64" + # golang: "1.19" + +# Build documentation in the "docs/" directory with Sphinx +sphinx: + configuration: docs/conf.py + +# Optionally build your docs in additional formats such as PDF and ePub +# formats: +# - pdf +# - epub + +# Optional but recommended, declare the Python requirements required +# to build your documentation +# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html +# python: +# install: +# - requirements: docs/requirements.txt \ No newline at end of file diff --git a/CITATION.cff b/CITATION.cff index b1bfef7..ab3ec0c 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -9,14 +9,13 @@ authors: orcid: "https://orcid.org/0000-0003-2913-0004" type: software license: GPL-3.0 -repository-code: "https://github.com/tillbiskup/ocdb" +repository-code: "https://github.com/PTB-SR/ocdb" keywords: - "optical constants" - "EUV" - "VUV" - "reflectometry" -# Highly recommended starting with the first release: DOI via Zenodo -#identifiers: -# - description: "The concept DOI of the work." -# type: doi -# value: 10.5281/zenodo.######## +identifiers: + - description: "The concept DOI of the work." + type: doi + value: 10.5281/zenodo.10697496 diff --git a/VERSION b/VERSION index ac3575d..8db8587 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.1.0.dev88 +0.1.0.dev89 diff --git a/docs/changelog.rst b/docs/changelog.rst index 3d10e86..1725f51 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -23,7 +23,7 @@ Not yet released Version 0.1.0.rc-1 ================== -Not yet released +Released 2024-02-23 * First public pre-release diff --git a/docs/images/zenodo.10697496.svg b/docs/images/zenodo.10697496.svg new file mode 100644 index 0000000..f8f8e29 --- /dev/null +++ b/docs/images/zenodo.10697496.svg @@ -0,0 +1,123 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + DOI + + + DOI + + 10.5281/zenodo.10697496 + 10.5281/zenodo.10697496 + + diff --git a/docs/index.rst b/docs/index.rst index 7c16e30..1362a3b 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,6 +1,10 @@ .. _OCDB: https://www.ocdb.ptb.de/ +.. image:: images/zenodo.10697496.svg + :target: https://doi.org/10.5281/zenodo.10697496 + :align: right + ==== ocdb ==== @@ -74,7 +78,7 @@ How to cite The Python ocdb package is free software. However, if you use it for your own research, please consider to cite it appropriately: - * Till Biskup. The ocdb Python package (2024). `doi:10.5281/zenodo.######## `_ + * Till Biskup. The ocdb Python package (2024). `doi:10.5281/zenodo.10697496 `_ Furthermore, if you use the data the ocdb package provides access to for your own research, use the appropriate references for each individual dataset, as available from its metadata. Have a look at the documentation of the :class:`ocdb.material.Material` class for details how to conveniently obtain the relevant bibliographic data, either as string or as BibTeX record. diff --git a/docs/installing.rst b/docs/installing.rst index 2559edc..3a4f1eb 100644 --- a/docs/installing.rst +++ b/docs/installing.rst @@ -1,17 +1,6 @@ Installation ============ -.. important:: - - This section assumes the ocdb package to be available officially from the Python Package Index (PyPI), what is not (yet) the case. Hence, for the time being, you need to install it via pip using a local path: - - .. code-block:: bash - - pip install - - Besides that, all other information on this page is still valid. - - Installing the ocdb package is as simple as installing any other Python package, as ocdb is available from the `Python Package Index (PyPI) `_. Simply open a terminal on your computer and type: .. code-block:: bash diff --git a/docs/roadmap.rst b/docs/roadmap.rst index 24f5390..9f5aa7b 100644 --- a/docs/roadmap.rst +++ b/docs/roadmap.rst @@ -5,17 +5,9 @@ Roadmap A few ideas how to develop the project further, currently a list as a reminder for the main developers themselves, in no particular order, though with a tendency to list more important aspects first: -For version 0.1.rc-1 -==================== - - For version 0.1 =============== -* DOI via Zenodo - -* Initial Python package on GitHub and PyPI - * Plotting with range and different *x* axis unit? diff --git a/ocdb/templates/report/latex/literature.bib b/ocdb/templates/report/latex/literature.bib index 4f49ceb..872e53a 100644 --- a/ocdb/templates/report/latex/literature.bib +++ b/ocdb/templates/report/latex/literature.bib @@ -2,7 +2,7 @@ @software{ocdb author = {Till Biskup}, title = {ocdb Python package}, url = {https://pypi.org/project/ocdb/}, - doi = {10.5281/zenodo.1233456789} + doi = {10.5281/zenodo.10697496} } {@ references } \ No newline at end of file diff --git a/setup.py b/setup.py index 26148c5..cf093e6 100644 --- a/setup.py +++ b/setup.py @@ -20,7 +20,7 @@ def read(filename): url="https://www.ocdb.ptb.de/", project_urls={ "Documentation": "https://ocdb-data.readthedocs.io/", - "Source": "https://github.com/ptb-sr/ocdb", + "Source": "https://github.com/PTB-SR/ocdb", }, packages=setuptools.find_packages(exclude=("tests", "docs")), license="GPLv3", From 5bb17ea3cc06e925a8b12aca020d55f06834d185 Mon Sep 17 00:00:00 2001 From: TillBiskupPTB <160010279+TillBiskupPTB@users.noreply.github.com> Date: Fri, 23 Feb 2024 16:08:17 +0100 Subject: [PATCH 2/4] Update python-publish.yml --- .github/workflows/python-publish.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/python-publish.yml b/.github/workflows/python-publish.yml index bdaab28..f255ce5 100644 --- a/.github/workflows/python-publish.yml +++ b/.github/workflows/python-publish.yml @@ -19,7 +19,11 @@ jobs: deploy: runs-on: ubuntu-latest - + environment: + name: pypi + url: https://pypi.org/p/ocdb + permissions: + id-token: write steps: - uses: actions/checkout@v3 - name: Set up Python @@ -33,7 +37,4 @@ jobs: - name: Build package run: python -m build - name: Publish package - uses: pypa/gh-action-pypi-publish@27b31702a0e7fc50959f5ad993c78deac1bdfc29 - with: - user: __token__ - password: ${{ secrets.PYPI_API_TOKEN }} + uses: pypa/gh-action-pypi-publish@release/v1 From f77ca3ef8f16247d2108221d20a8f31d83f4dd86 Mon Sep 17 00:00:00 2001 From: Till Biskup Date: Fri, 23 Feb 2024 17:05:53 +0100 Subject: [PATCH 3/4] Add DOI badge to readme --- README.rst | 4 ++++ VERSION | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/README.rst b/README.rst index c2953ee..7d2573d 100644 --- a/README.rst +++ b/README.rst @@ -2,6 +2,10 @@ ocdb ==== +.. image:: docs/images/zenodo.10697496.svg + :target: https://doi.org/10.5281/zenodo.10697496 + :align: right + *Optical constants for elements and various materials in the EUV and VUV wavelengths.* Welcome! This is ocdb, a **Python package** for easily accessing the X-ray/EUV/VUV **scattering and absorption data** contained in the `Optical Constants Database (OCDB) `_ provided by the German National Metrology Institute, the `Physikalisch-Technische Bundesanstalt, PTB `_. diff --git a/VERSION b/VERSION index 8db8587..91ff3ec 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.1.0.dev89 +0.1.0.dev90 From 13f25ffe84c294eb6ae6a15386d9c9b7b9cd2cf8 Mon Sep 17 00:00:00 2001 From: Till Biskup Date: Fri, 23 Feb 2024 17:10:17 +0100 Subject: [PATCH 4/4] Update roadmap --- VERSION | 2 +- docs/changelog.rst | 4 +++- docs/roadmap.rst | 15 +++++++++------ 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/VERSION b/VERSION index 91ff3ec..9c4d6cc 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.1.0.dev90 +0.1.0.dev91 diff --git a/docs/changelog.rst b/docs/changelog.rst index 1725f51..b0207eb 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -17,7 +17,9 @@ Not yet released * First public release -* ... +* Package available via PyPI, code via `GitHub `_ + +* DOI via Zenodo: https://doi.org/10.5281/zenodo.10697496 Version 0.1.0.rc-1 diff --git a/docs/roadmap.rst b/docs/roadmap.rst index 9f5aa7b..343bf8e 100644 --- a/docs/roadmap.rst +++ b/docs/roadmap.rst @@ -5,25 +5,28 @@ Roadmap A few ideas how to develop the project further, currently a list as a reminder for the main developers themselves, in no particular order, though with a tendency to list more important aspects first: -For version 0.1 +For version 0.2 =============== -* Plotting with range and different *x* axis unit? +* Plotting + + * Range and different *x* axis unit + * Semilog and loglog plots + +* Data from SiO2 + +* Consolidate structure for relevant metadata For later versions ================== -* Data from SiO2 - * Examples section, including Jupyter notebooks? * Integration with ``periodictable`` package * Bidirectional integration? Accessing data from CXRO via ``periodictable`` from within ``ocdb`` package if no data are available from OCDB; accessing OCDB data from within ``periodictable`` via extension mechanism provided by the latter. -* Consolidate structure for relevant metadata - * Support for user contributions * Decide upon sensible file format for data and metadata