Skip to content
Closed
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
204 changes: 99 additions & 105 deletions .github/workflows/pypi.yml
Original file line number Diff line number Diff line change
@@ -1,105 +1,99 @@
name: upload-pypi

on:
release:
types: [published]

permissions:
contents: write
id-token: write


jobs:
release-build:
runs-on: ubuntu-latest

steps:
- name: Set version from release tag
run: echo "VERSION=${{ github.event.release.tag_name }}" >> $GITHUB_ENV
- uses: actions/checkout@v4

- uses: actions/setup-python@v5
with:
python-version: "3.x"

- name: Build release distributions
run: |
# NOTE: put your own distribution build steps here.
python -m pip install build
python -m build

- name: Upload distributions
uses: actions/upload-artifact@v4
with:
name: release-dists
path: dist/

pypi-publish:
runs-on: ubuntu-latest
needs:
- release-build
permissions:
# IMPORTANT: this permission is mandatory for trusted publishing
id-token: write

# Dedicated environments with protections for publishing are strongly recommended.
# For more information, see: https://docs.github.com/en/actions/deployment/targeting-different-environments/using-environments-for-deployment#deployment-protection-rules
environment:
name: pypi
# OPTIONAL: uncomment and update to include your PyPI project URL in the deployment status:
#url: https://pypi.org/p/${GITHUB_REPOSITORY#*/}
#
# ALTERNATIVE: if your GitHub Release name is the PyPI project version string
# ALTERNATIVE: exactly, uncomment the following line instead:
url: https://pypi.org/project/${GITHUB_REPOSITORY#*/}/${{ github.event.release.name }}

steps:
- name: Retrieve release distributions
uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/

- name: Publish release distributions to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
packages-dir: dist/
sign-package:
runs-on: ubuntu-latest
needs:
- release-build
steps:
- name: Download all the dists
uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/
- name: Sign the dists with Sigstore
uses: sigstore/gh-action-sigstore-python@v3.0.0
with:
inputs: >-
./dist/*.tar.gz
./dist/*.whl
publish-to-testpypi:
name: Publish Python 🐍 distribution 📦 to TestPyPI
needs:
- release-build
runs-on: ubuntu-latest

environment:
name: testpypi
url: https://test.pypi.org/p/${GITHUB_REPOSITORY#*/}

permissions:
id-token: write # IMPORTANT: mandatory for trusted publishing

steps:
- name: Download all the dists
uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/
- name: Publish distribution 📦 to TestPyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
repository-url: https://test.pypi.org/legacy/
name: upload-pypi

on:
release:
types: [published]

permissions:
contents: write
id-token: write


jobs:
release-build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # required for setuptools-scm to determine version from tags

- uses: actions/setup-python@v5
with:
python-version: "3.x"

- name: Build release distributions
run: |
python -m pip install build
python -m build

- name: Upload distributions
uses: actions/upload-artifact@v4
with:
name: release-dists
path: dist/

pypi-publish:
runs-on: ubuntu-latest
needs:
- release-build
permissions:
# IMPORTANT: this permission is mandatory for trusted publishing
id-token: write

environment:
name: pypi
url: https://pypi.org/project/ckanext-matolabtheme/${{ github.event.release.name }}

steps:
- name: Retrieve release distributions
uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/

- name: Publish release distributions to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
packages-dir: dist/

sign-package:
runs-on: ubuntu-latest
needs:
- release-build
steps:
- name: Download all the dists
uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/
- name: Sign the dists with Sigstore
uses: sigstore/gh-action-sigstore-python@v3.0.0
with:
inputs: >-
./dist/*.tar.gz
./dist/*.whl

publish-to-testpypi:
name: Publish Python distribution to TestPyPI
needs:
- release-build
runs-on: ubuntu-latest

environment:
name: testpypi
url: https://test.pypi.org/p/ckanext-matolabtheme

permissions:
id-token: write # IMPORTANT: mandatory for trusted publishing

steps:
- name: Download all the dists
uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/
- name: Publish distribution to TestPyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
repository-url: https://test.pypi.org/legacy/
20 changes: 9 additions & 11 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install requirements
Expand Down Expand Up @@ -54,14 +54,12 @@ jobs:
CKAN_REDIS_URL: redis://redis:6379/1

steps:
- uses: actions/checkout@v3
- name: Install requirements
run: |
pip install -r requirements.txt
pip install -r dev-requirements.txt
- name: Install requirements (common)
- uses: actions/checkout@v4
with:
fetch-depth: 0 # required for setuptools-scm
- name: Install extension
run: |
pip install -e .
pip install -e ".[dev]"
# Replace default path to CKAN core config file with the one on the container
sed -i -e 's/use = config:.*/use = config:\/srv\/app\/src\/ckan\/test-core.ini/' test.ini
- name: Setup extension
Expand All @@ -70,6 +68,6 @@ jobs:
- name: Run tests
run: pytest --ckan-ini=test.ini --cov=ckanext.matolabtheme --disable-warnings ckanext/matolabtheme || ([ $? = 5 ] && exit 0 || exit $?)
- name: Upload coverage report to codecov
uses: codecov/codecov-action@v1
uses: codecov/codecov-action@v4
with:
file: ./coverage.xml--cov=ckanext.matolabtheme
files: ./coverage.xml
2 changes: 1 addition & 1 deletion MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
include README.rst
include README.md
include LICENSE
include requirements.txt
recursive-include ckanext/matolabtheme *.html *.json *.js *.less *.css *.mo *.yml
Expand Down
17 changes: 4 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,8 @@ Compatibility with core CKAN versions:
| CKAN version | Compatible? |
| --------------- | ------------- |
| 2.9 and earlier | not tested |
| 2.10 | yes |
| 2.11 | yes |

Suggested values:

* "yes"
* "not tested" - I can't think of a reason why it wouldn't work
* "not yet" - there is an intention to get it working
* "no"
| 2.10 | ✓ CI tested |
| 2.11 | ✓ CI tested |


## Installation
Expand Down Expand Up @@ -66,13 +59,11 @@ If no contact_url is given, it will relate to the about page!

## Developer installation

To install ckanext-csvtocsvw for development, activate your CKAN virtualenv and
do:
To install ckanext-matolabtheme for development, activate your CKAN virtualenv and do:
```bash
git clone https://github.com/Mat-O-Lab/ckanext-matolabtheme.git
cd ckanext-matolabtheme
python setup.py develop
pip install -r dev-requirements.txt
pip install -e ".[dev]"
```

## Tests
Expand Down
15 changes: 9 additions & 6 deletions ckanext/matolabtheme/i18n/ckanext-matolabtheme.pot
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ckanext-matolabtheme 0.0.0\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-05-26 08:35+0000\n"
"POT-Creation-Date: 2025-05-27 08:34+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
Expand Down Expand Up @@ -224,7 +224,9 @@ msgstr ""
msgid ""
"Legal basis: The legal basis for processing is Art. 6 par. 1 (b), par. 3 (b) "
"GDPR in conjunction with Art. 4 State Data Protection Act "
"\"Landesdatenschutzgesetz\" (LSDG)."
"\"Landesdatenschutzgesetz\" (LSDG) respectively Art. 20 par. 1 KITG in "
"conjunction with Art. 12 par. 1 Higher Education Acts "
"\"Landeshochschulgesetz\" (LHG)."
msgstr ""

#: ckanext/matolabtheme/templates/matolabtheme/dataprivacy.html:49
Expand Down Expand Up @@ -283,9 +285,9 @@ msgid ""
"Legal basis: The legal basis for the processing of personal data using "
"technically necessary cookies in accordance with § 25 (2) Telecommunications "
"Digital Services Data Protection Act \"Telekommunikation-Digitale-Dienste-"
"Datenschutz-Gesetz\" (TDDDG) is Art. 6(1)(f) of the GDPR. The legitimate "
"interest of the operator in data processing according to Art. 6(1)(f) of the "
"GDPR is also present in the aforementioned purposes."
"Datenschutz-Gesetz\" (TDDDG) is Art. 6 par. 1 (e), par. 3 (b) GDPR in "
"conjunction with Art. 4 LDSG respectively Art. 20 par. 1 KITG in conjunction "
"with Art. 12 par. 1 LHG."
msgstr ""

#: ckanext/matolabtheme/templates/matolabtheme/dataprivacy.html:65
Expand Down Expand Up @@ -320,7 +322,8 @@ msgstr ""
#: ckanext/matolabtheme/templates/matolabtheme/dataprivacy.html:71
msgid ""
"Legal basis: The legal basis for the processing of this data is Art. 6 para. "
"1 lit. e GDPR in conjunction with Art. 4 LDSG or other relevant legal "
"1 lit. e GDPR in conjunction with Art. 4 LDSG respectively Art. 20 para. 1 "
"KITG in conjunction with Art. 12 para. 1 LHG or other relevant legal "
"provisions."
msgstr ""

Expand Down
Binary file modified ckanext/matolabtheme/i18n/de/LC_MESSAGES/ckanext-matolabtheme.mo
Binary file not shown.
27 changes: 15 additions & 12 deletions ckanext/matolabtheme/i18n/de/LC_MESSAGES/ckanext-matolabtheme.po
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ckanext-matolabtheme 0.0.1\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-05-26 08:35+0000\n"
"POT-Creation-Date: 2025-05-27 08:34+0000\n"
"PO-Revision-Date: 2025-02-10 09:30+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: de\n"
Expand Down Expand Up @@ -255,10 +255,13 @@ msgstr "Empfänger: Eine Weitergabe der Daten an Dritte findet nicht statt."
msgid ""
"Legal basis: The legal basis for processing is Art. 6 par. 1 (b), par. 3 "
"(b) GDPR in conjunction with Art. 4 State Data Protection Act "
"\"Landesdatenschutzgesetz\" (LSDG)."
"\"Landesdatenschutzgesetz\" (LSDG) respectively Art. 20 par. 1 KITG in "
"conjunction with Art. 12 par. 1 Higher Education Acts "
"\"Landeshochschulgesetz\" (LHG)."
msgstr ""
"Die Rechtsgrundlage für die Verarbeitung ist Art. 6 Abs. 1 lit. e, Abs. 3"
" lit. b DS-GVO in Verbindung mit Art. 4 Landesdatenschutzgesetz (LDSG). "
" lit. b DS-GVO in Verbindung mit Art. 4 Landesdatenschutzgesetz (LDSG) "
"bzw. Art. 20 Abs. 1 KITG i.V.m. § 12 Abs. 1 Landeshochschulgesetz (LHG)."

#: ckanext/matolabtheme/templates/matolabtheme/dataprivacy.html:49
msgid ""
Expand Down Expand Up @@ -341,16 +344,14 @@ msgid ""
"technically necessary cookies in accordance with § 25 (2) "
"Telecommunications Digital Services Data Protection Act "
"\"Telekommunikation-Digitale-Dienste-Datenschutz-Gesetz\" (TDDDG) is Art."
" 6(1)(f) of the GDPR. The legitimate interest of the operator in data "
"processing according to Art. 6(1)(f) of the GDPR is also present in the "
"aforementioned purposes."
" 6 par. 1 (e), par. 3 (b) GDPR in conjunction with Art. 4 LDSG "
"respectively Art. 20 par. 1 KITG in conjunction with Art. 12 par. 1 LHG."
msgstr ""
"Rechtsgrundlage: Die Rechtsgrundlage für die Verarbeitung "
"personenbezogener Daten unter Verwendung von technisch erforderlichen "
"Cookies i.S.d. § 25 Abs. 2 Telekommunikation-Digitale-Dienste-"
"Datenschutz-Gesetz (TDDDG) ist Art. 6 Abs. 1 lit. f DS-GVO. In o.g. "
"Zwecken liegt auch das berechtigte Interesse des Betreibers an der "
"Datenverarbeitung nach Art. 6 Abs. 1 lit. f DS-GVO."
"Datenschutz-Gesetz (TDDDG) ist Art. 6 Abs. 1 lit. e, Abs. 3 lit. b DS-GVO"
" i.V.m. Art. 4 LSDG bzw. Art. 20 Abs. 1 KITG i.V.m Art. 12 Abs. 1 LHG."

#: ckanext/matolabtheme/templates/matolabtheme/dataprivacy.html:65
msgid ""
Expand Down Expand Up @@ -401,12 +402,14 @@ msgstr ""
#: ckanext/matolabtheme/templates/matolabtheme/dataprivacy.html:71
msgid ""
"Legal basis: The legal basis for the processing of this data is Art. 6 "
"para. 1 lit. e GDPR in conjunction with Art. 4 LDSG or other relevant "
"para. 1 lit. e GDPR in conjunction with Art. 4 LDSG respectively Art. 20 "
"para. 1 KITG in conjunction with Art. 12 para. 1 LHG or other relevant "
"legal provisions."
msgstr ""
"Rechtsgrundlage: Die Rechtsgrundlage für die Verarbeitung dieser Daten "
"ist Art. 6 Abs. 1 lit. e DS-GVO i.V.m. Art. 4 LDSG, bzw. weitere in Frage"
" kommende Rechtsvorschriften."
"ist Art. 6 Abs. 1 lit. e DS-GVO i.V.m. Art. 4 LDSG, bzw. Art. 20 Abs. 1 "
"KITG i.V.m Art. 12 Abs. 1 LHGoder weiteren in Frage kommende "
"Rechtsvorschriften."

#: ckanext/matolabtheme/templates/matolabtheme/dataprivacy.html:72
msgid ""
Expand Down
Loading
Loading