Skip to content

Commit 4002777

Browse files
committed
Merge branch 'develop' into tiny-tweaks
2 parents 0501f2c + 547f7e2 commit 4002777

File tree

272 files changed

+3562
-2580
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

272 files changed

+3562
-2580
lines changed

.github/workflows/release.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,17 @@
1+
# Copyright (c) 2024-2026 CRS4
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
115
# This workflow is triggered on push to tags and runs the following steps:
216
# 1. Check and Build Distribution
317
# 2. Publish to TestPyPI

.github/workflows/testing.yaml

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,17 @@
1+
# Copyright (c) 2024-2026 CRS4
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
115
name: 🧪 CI Pipeline 1 -- Testing
216

317
# Controls when the action will run. Triggers the workflow on push or pull request
@@ -25,9 +39,9 @@ env:
2539
FORCE_COLOR: "1" # Force color output in CI
2640

2741
jobs:
28-
# Verifies pep8, pyflakes and circular complexity
29-
flake8:
30-
name: 🚨 Lint Python Code
42+
# Verifies pep8, pyflakes, circular complexity, and spelling
43+
lint:
44+
name: 🚨 Lint and spellcheck
3145
runs-on: ubuntu-latest
3246
steps:
3347
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
@@ -39,14 +53,16 @@ jobs:
3953
python-version: ${{ env.PYTHON_VERSION }}
4054
- name: 🔽 Install flake8
4155
run: pip install flake8
42-
- name: Run checks
56+
- name: Lint Python code
4357
run: flake8 -v rocrate_validator tests
58+
- name: ⌛ Spell check code and profiles (covers Python and SHACL)
59+
uses: crate-ci/[email protected]
4460

4561
# Runs the tests
4662
test:
4763
name: ⌛ Run tests
4864
runs-on: ubuntu-latest
49-
needs: [flake8]
65+
needs: [lint]
5066
steps:
5167
- name: ⬇️ Checkout
5268
uses: actions/checkout@v4

.gitignore

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,17 @@
1+
# Copyright (c) 2024-2026 CRS4
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
115
.DS_Store
216
**/__pycache__
317
**/*.pyc
@@ -13,3 +27,7 @@ docs/_build
1327
**/.coverage
1428
**/.coverage.*
1529
**/.report
30+
31+
# ignore IDE files
32+
.vscode/
33+
.idea/

.gitlab-ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2024-2025 CRS4
1+
# Copyright (c) 2024-2026 CRS4
22
#
33
# Licensed under the Apache License, Version 2.0 (the "License");
44
# you may not use this file except in compliance with the License.

.readthedocs.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,17 @@
1+
# Copyright (c) 2024-2026 CRS4
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
115
# Read the Docs configuration file for Sphinx projects
216
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
317

CITATION.cff

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
cff-version: 1.2.0
2+
message: "If you use this software, please cite it using these metadata."
3+
title: "rocrate-validator"
4+
abstract: "A Python package to validate RO-Crates."
5+
type: software
6+
authors:
7+
- family-names: "Piras"
8+
given-names: "Marco Enrico"
9+
orcid: https://orcid.org/0000-0002-5207-0030
10+
- family-names: "Leo"
11+
given-names: "Simone"
12+
orcid: https://orcid.org/0000-0001-8271-5429
13+
- family-names: "Pireddu"
14+
given-names: "Luca"
15+
orcid: https://orcid.org/0000-0002-4663-5613
16+
- family-names: Chadwick
17+
given-names: Eli
18+
orcid: https://orcid.org/0000-0002-0035-6475
19+
- family-names: Bauer
20+
given-names: Daniel
21+
orcid: https://orcid.org/0000-0001-9447-460X
22+
repository-code: "https://github.com/crs4/rocrate-validator"
23+
url: "https://github.com/crs4/rocrate-validator"
24+
keywords:
25+
- "RO-Crate"
26+
- "validation"
27+
- "metadata"
28+
- "FAIR"
29+
license: "Apache-2.0"

docs/3_usage_api.rst

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ Formatting Validation Results
6969
Validation results can be rendered using different output formatters provided by
7070
the library. Two formatter types are available: *text* and *JSON*.
7171
Both rely on the ``rich`` Python library and integrate with the
72-
``rocrate_validator.io.output.console.Console`` class, which extends
72+
``rocrate_validator.utils.io_helpers.output.console.Console`` class, which extends
7373
``rich.console.Console`` to support custom formatter registration.
7474

7575
To format results, create a ``Console`` instance, register one formatter,
@@ -86,8 +86,8 @@ to a file.
8686

8787
.. code-block:: python
8888
89-
from rocrate_validator.io.output.console import Console
90-
from rocrate_validator.io.output.text import TextOutputFormatter
89+
from rocrate_validator.utils.io_helpers.output.console import Console
90+
from rocrate_validator.utils.io_helpers.output.text import TextOutputFormatter
9191
9292
console = Console()
9393
console.register_formatter(TextOutputFormatter())
@@ -114,8 +114,8 @@ programmatic processing, or integration with external tools.
114114

115115
.. code-block:: python
116116
117-
from rocrate_validator.io.output.console import Console
118-
from rocrate_validator.io.output.json import JSONOutputFormatter
117+
from rocrate_validator.utils.io_helpers.output.console import Console
118+
from rocrate_validator.utils.io_helpers.output.json import JSONOutputFormatter
119119
120120
console = Console()
121121
console.register_formatter(JSONOutputFormatter())

docs/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2024-2025 CRS4
1+
# Copyright (c) 2024-2026 CRS4
22
#
33
# Licensed under the Apache License, Version 2.0 (the "License");
44
# you may not use this file except in compliance with the License.

0 commit comments

Comments
 (0)