Skip to content

Commit 649a3fd

Browse files
committed
Merge branch 'release/v0.4.4'
2 parents 41f611f + 5ba92c3 commit 649a3fd

File tree

461 files changed

+16858
-12626
lines changed

Some content is hidden

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

461 files changed

+16858
-12626
lines changed

.github/ISSUE_TEMPLATE/bug-report.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: Bug Report
22
description: Report an issue or a bug.
33
title: "[BUG]: << Please use a comprehensive title... >>"
4-
labels: [ Defect ]
4+
labels: [Defect]
55

66
body:
77
- type: markdown

.github/ISSUE_TEMPLATE/documentation-improvement.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: Documentation Improvement
22
description: Report a documentation improvement.
33
title: "[DOCUMENTATION]: << Please use a comprehensive title... >>"
4-
labels: [ Documentation ]
4+
labels: [Documentation]
55

66
body:
77
- type: markdown

.github/ISSUE_TEMPLATE/feature-request.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: Feature Request
22
description: Suggest a new feature to implement.
33
title: "[FEATURE]: << Please use a comprehensive title... >>"
4-
labels: [ Feature ]
4+
labels: [Feature]
55

66
body:
77
- type: markdown

.github/ISSUE_TEMPLATE/question.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: Question
22
description: Ask a question.
33
title: "[DISCUSSION]: << Please use a comprehensive title... >>"
4-
labels: [ Discussion ]
4+
labels: [Discussion]
55

66
body:
77
- type: markdown

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ is available to guide the process: https://www.colour-science.org/contributing/.
1717
- [ ] Unit tests have been implemented and passed.
1818
- [ ] Pyright static checking has been run and passed.
1919
- [ ] Pre-commit hooks have been run and passed.
20-
- [ ] New transformations have been added to the *Automatic Colour Conversion Graph*.
20+
- [ ] New transformations have been added to the _Automatic Colour Conversion Graph_.
2121
- [ ] New transformations have been exported to the relevant namespaces, e.g. `colour`, `colour.models`.
2222

2323
<!-- The unit tests can be invoked with `poetry run invoke tests` -->

.github/workflows/continuous-integration-documentation.yml

Lines changed: 42 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -12,45 +12,45 @@ jobs:
1212
fail-fast: false
1313
runs-on: ${{ matrix.os }}
1414
steps:
15-
- uses: actions/checkout@v1
16-
- name: Environment Variables
17-
run: |
18-
echo "CI_PYTHON_VERSION=${{ matrix.python-version }}" >> $GITHUB_ENV
19-
echo "CI_PACKAGE=colour" >> $GITHUB_ENV
20-
echo "CI_SHA=${{ github.sha }}" >> $GITHUB_ENV
21-
echo "MPLBACKEND=AGG" >> $GITHUB_ENV
22-
echo "COLOUR_SCIENCE__DOCUMENTATION_BUILD=True" >> $GITHUB_ENV
23-
shell: bash
24-
- name: Set up Python ${{ matrix.python-version }}
25-
uses: actions/setup-python@v1
26-
with:
27-
python-version: ${{ matrix.python-version }}
28-
- name: Install Dependencies
29-
run: |
30-
sudo apt-get update
31-
sudo apt-get --yes install graphviz graphviz-dev latexmk texlive-full
32-
- name: Install Poetry
33-
env:
34-
POETRY_VERSION: 1.4.0
35-
run: |
36-
curl -sSL https://install.python-poetry.org | POETRY_HOME=$HOME/.poetry python3 -
37-
echo "$HOME/.poetry/bin" >> $GITHUB_PATH
38-
shell: bash
39-
- name: Install Package Dependencies
40-
run: |
41-
poetry run python -m pip install --upgrade pip
42-
poetry install
43-
poetry run python -c "import imageio;imageio.plugins.freeimage.download()"
44-
shell: bash
45-
- name: Build Documentation
46-
run: |
47-
poetry run invoke docs
48-
shell: bash
49-
- uses: actions/upload-artifact@v2
50-
with:
51-
name: ${{ env.CI_PACKAGE }}-plots
52-
path: |
53-
docs/_static/Basics_*.png
54-
docs/_static/Examples_*.png
55-
docs/_static/Plotting_*.png
56-
docs/_static/Tutorial_*.png
15+
- uses: actions/checkout@v1
16+
- name: Environment Variables
17+
run: |
18+
echo "CI_PYTHON_VERSION=${{ matrix.python-version }}" >> $GITHUB_ENV
19+
echo "CI_PACKAGE=colour" >> $GITHUB_ENV
20+
echo "CI_SHA=${{ github.sha }}" >> $GITHUB_ENV
21+
echo "MPLBACKEND=AGG" >> $GITHUB_ENV
22+
echo "COLOUR_SCIENCE__DOCUMENTATION_BUILD=True" >> $GITHUB_ENV
23+
shell: bash
24+
- name: Set up Python ${{ matrix.python-version }}
25+
uses: actions/setup-python@v4
26+
with:
27+
python-version: ${{ matrix.python-version }}
28+
- name: Install Dependencies
29+
run: |
30+
sudo apt-get update
31+
sudo apt-get --yes install graphviz graphviz-dev latexmk texlive-full
32+
- name: Install Poetry
33+
env:
34+
POETRY_VERSION: 1.4.0
35+
run: |
36+
curl -sSL https://install.python-poetry.org | POETRY_HOME=$HOME/.poetry python3 -
37+
echo "$HOME/.poetry/bin" >> $GITHUB_PATH
38+
shell: bash
39+
- name: Install Package Dependencies
40+
run: |
41+
poetry run python -m pip install --upgrade pip
42+
poetry install
43+
poetry run python -c "import imageio;imageio.plugins.freeimage.download()"
44+
shell: bash
45+
- name: Build Documentation
46+
run: |
47+
poetry run invoke docs
48+
shell: bash
49+
- uses: actions/upload-artifact@v2
50+
with:
51+
name: ${{ env.CI_PACKAGE }}-plots
52+
path: |
53+
docs/_static/Basics_*.png
54+
docs/_static/Examples_*.png
55+
docs/_static/Plotting_*.png
56+
docs/_static/Tutorial_*.png

.github/workflows/continuous-integration-quality-unit-tests.yml

Lines changed: 68 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -8,74 +8,74 @@ jobs:
88
strategy:
99
matrix:
1010
os: [macOS-latest, ubuntu-22.04, windows-latest]
11-
python-version: [3.9, '3.10', 3.11]
11+
python-version: [3.9, "3.10", 3.11, 3.12]
1212
fail-fast: false
1313
runs-on: ${{ matrix.os }}
1414
steps:
15-
- uses: actions/checkout@v1
16-
- name: Environment Variables
17-
run: |
18-
echo "CI_PYTHON_VERSION=${{ matrix.python-version }}" >> $GITHUB_ENV
19-
echo "CI_PACKAGE=colour" >> $GITHUB_ENV
20-
echo "CI_SHA=${{ github.sha }}" >> $GITHUB_ENV
21-
echo "COVERALLS_REPO_TOKEN=${{ secrets.COVERALLS_REPO_TOKEN }}" >> $GITHUB_ENV
22-
echo "MPLBACKEND=AGG" >> $GITHUB_ENV
23-
shell: bash
24-
- name: Set up Python 3.9 for Pre-Commit
25-
uses: actions/setup-python@v1
26-
with:
27-
python-version: 3.9
28-
- name: Set up Python ${{ matrix.python-version }}
29-
uses: actions/setup-python@v1
30-
with:
31-
python-version: ${{ matrix.python-version }}
32-
- name: Install Dependencies (Ubuntu)
33-
if: matrix.os == 'ubuntu-22.04'
34-
run: |
35-
sudo apt-get update
36-
sudo apt-get --yes install graphviz graphviz-dev libboost-all-dev libilmbase-dev libopenexr-dev libpng-dev libtiff5-dev
37-
- name: Install Poetry
38-
env:
39-
POETRY_VERSION: 1.4.0
40-
run: |
41-
curl -sSL https://install.python-poetry.org | POETRY_HOME=$HOME/.poetry python3 -
42-
echo "$HOME/.poetry/bin" >> $GITHUB_PATH
43-
shell: bash
44-
- name: Install Package Dependencies (Ubuntu)
45-
if: matrix.os == 'ubuntu-22.04'
46-
run: |
47-
poetry run python -m pip install --upgrade pip
48-
poetry install
49-
poetry run python -c "import imageio;imageio.plugins.freeimage.download()"
50-
shell: bash
51-
- name: Install Package Dependencies (macOS & Windows)
52-
if: matrix.os == 'macOS-latest' || matrix.os == 'windows-latest'
53-
run: |
54-
poetry run python -m pip install --upgrade pip
55-
poetry install --without graphviz
56-
poetry run python -c "import imageio;imageio.plugins.freeimage.download()"
57-
shell: bash
58-
- name: Install OpenImageIO (macOs)
59-
if: matrix.os == 'macOS-latest' && matrix.python-version == '3.11'
60-
run: |
61-
brew install openimageio
62-
ls /usr/local/Cellar/openimageio/*/lib/python*/site-packages/OpenImageIO/
63-
ln -s /usr/local/Cellar/openimageio/*/lib/python*/site-packages/OpenImageIO/OpenImageIO*.so /Library/Frameworks/Python.framework/Versions/${{ matrix.python-version }}/lib/python${{ matrix.python-version }}/site-packages/OpenImageIO.so
64-
shell: bash
65-
- name: Pre-Commit (All Files)
66-
run: |
67-
poetry run pre-commit run --all-files
68-
shell: bash
69-
- name: Test Optimised Python Execution
70-
run: |
71-
poetry run python -OO -c "import $CI_PACKAGE"
72-
shell: bash
73-
- name: Test with Pytest
74-
run: |
75-
poetry run python -W ignore -m pytest --doctest-modules --ignore=$CI_PACKAGE/examples --cov=$CI_PACKAGE $CI_PACKAGE
76-
shell: bash
77-
- name: Upload Coverage to coveralls.io
78-
if: matrix.os == 'macOS-latest' && matrix.python-version == '3.11'
79-
run: |
80-
if [ -z "$COVERALLS_REPO_TOKEN" ]; then echo \"COVERALLS_REPO_TOKEN\" secret is undefined!; else poetry run coveralls; fi
81-
shell: bash
15+
- uses: actions/checkout@v1
16+
- name: Environment Variables
17+
run: |
18+
echo "CI_PYTHON_VERSION=${{ matrix.python-version }}" >> $GITHUB_ENV
19+
echo "CI_PACKAGE=colour" >> $GITHUB_ENV
20+
echo "CI_SHA=${{ github.sha }}" >> $GITHUB_ENV
21+
echo "COVERALLS_REPO_TOKEN=${{ secrets.COVERALLS_REPO_TOKEN }}" >> $GITHUB_ENV
22+
echo "MPLBACKEND=AGG" >> $GITHUB_ENV
23+
shell: bash
24+
- name: Set up Python 3.9 for Pre-Commit
25+
uses: actions/setup-python@v4
26+
with:
27+
python-version: 3.9
28+
- name: Set up Python ${{ matrix.python-version }}
29+
uses: actions/setup-python@v4
30+
with:
31+
python-version: ${{ matrix.python-version }}
32+
- name: Install Dependencies (Ubuntu)
33+
if: matrix.os == 'ubuntu-22.04'
34+
run: |
35+
sudo apt-get update
36+
sudo apt-get --yes install graphviz graphviz-dev libboost-all-dev libilmbase-dev libopenexr-dev libpng-dev libtiff5-dev
37+
- name: Install Poetry
38+
env:
39+
POETRY_VERSION: 1.4.0
40+
run: |
41+
curl -sSL https://install.python-poetry.org | POETRY_HOME=$HOME/.poetry python3 -
42+
echo "$HOME/.poetry/bin" >> $GITHUB_PATH
43+
shell: bash
44+
- name: Install Package Dependencies (Ubuntu)
45+
if: matrix.os == 'ubuntu-22.04'
46+
run: |
47+
poetry run python -m pip install --upgrade pip
48+
poetry install
49+
poetry run python -c "import imageio;imageio.plugins.freeimage.download()"
50+
shell: bash
51+
- name: Install Package Dependencies (macOS & Windows)
52+
if: matrix.os == 'macOS-latest' || matrix.os == 'windows-latest'
53+
run: |
54+
poetry run python -m pip install --upgrade pip
55+
poetry install --without graphviz
56+
poetry run python -c "import imageio;imageio.plugins.freeimage.download()"
57+
shell: bash
58+
- name: Install OpenImageIO (macOs)
59+
if: matrix.os == 'macOS-latest' && matrix.python-version == '3.11'
60+
run: |
61+
brew install openimageio
62+
ls /usr/local/Cellar/openimageio/*/lib/python*/site-packages/OpenImageIO/
63+
ln -s /usr/local/Cellar/openimageio/*/lib/python*/site-packages/OpenImageIO/OpenImageIO*.so /Library/Frameworks/Python.framework/Versions/${{ matrix.python-version }}/lib/python${{ matrix.python-version }}/site-packages/OpenImageIO.so
64+
shell: bash
65+
- name: Pre-Commit (All Files)
66+
run: |
67+
poetry run pre-commit run --all-files
68+
shell: bash
69+
- name: Test Optimised Python Execution
70+
run: |
71+
poetry run python -OO -c "import $CI_PACKAGE"
72+
shell: bash
73+
- name: Test with Pytest
74+
run: |
75+
poetry run python -W ignore -m pytest --doctest-modules --ignore=$CI_PACKAGE/examples --cov=$CI_PACKAGE $CI_PACKAGE
76+
shell: bash
77+
- name: Upload Coverage to coveralls.io
78+
if: matrix.os == 'macOS-latest' && matrix.python-version == '3.11'
79+
run: |
80+
if [ -z "$COVERALLS_REPO_TOKEN" ]; then echo \"COVERALLS_REPO_TOKEN\" secret is undefined!; else poetry run coveralls; fi
81+
shell: bash

.github/workflows/continuous-integration-static-type-checking.yml

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -12,24 +12,24 @@ jobs:
1212
fail-fast: false
1313
runs-on: ${{ matrix.os }}
1414
steps:
15-
- uses: actions/checkout@v1
16-
- name: Environment Variables
17-
run: |
18-
echo "CI_PACKAGE=colour" >> $GITHUB_ENV
19-
shell: bash
20-
- name: Set up Python ${{ matrix.python-version }}
21-
uses: actions/setup-python@v1
22-
with:
23-
python-version: ${{ matrix.python-version }}
24-
- name: Install Dependencies (macOS)
25-
if: matrix.os == 'macOS-latest'
26-
run: |
27-
brew install graphviz
28-
export GRAPHVIZ_DIR="/usr/local/Cellar/graphviz/<VERSION>"
29-
pip install pygraphviz --global-option=build_ext --global-option="-I$GRAPHVIZ_DIR/include" --global-option="-L$GRAPHVIZ_DIR/lib"
30-
- name: Install Package Dependencies
31-
run: |
32-
pip install -r requirements.txt
33-
- name: Static Type Checking
34-
run: |
35-
pyright --skipunannotated
15+
- uses: actions/checkout@v1
16+
- name: Environment Variables
17+
run: |
18+
echo "CI_PACKAGE=colour" >> $GITHUB_ENV
19+
shell: bash
20+
- name: Set up Python ${{ matrix.python-version }}
21+
uses: actions/setup-python@v4
22+
with:
23+
python-version: ${{ matrix.python-version }}
24+
- name: Install Dependencies (macOS)
25+
if: matrix.os == 'macOS-latest'
26+
run: |
27+
brew install graphviz
28+
export GRAPHVIZ_DIR="/usr/local/Cellar/graphviz/<VERSION>"
29+
pip install pygraphviz --global-option=build_ext --global-option="-I$GRAPHVIZ_DIR/include" --global-option="-L$GRAPHVIZ_DIR/lib"
30+
- name: Install Package Dependencies
31+
run: |
32+
pip install -r requirements.txt
33+
- name: Static Type Checking
34+
run: |
35+
pyright --skipunannotated

.pre-commit-config.yaml

Lines changed: 52 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,57 @@
11
repos:
2-
- repo: https://github.com/ikamensh/flynt/
3-
rev: '1.0.1'
2+
- repo: https://github.com/pre-commit/pre-commit-hooks
3+
rev: "v4.5.0"
44
hooks:
5-
- id: flynt
6-
- repo: https://github.com/charliermarsh/ruff-pre-commit
7-
rev: 'v0.0.285'
5+
- id: check-added-large-files
6+
- id: check-case-conflict
7+
- id: check-merge-conflict
8+
- id: check-symlinks
9+
- id: check-yaml
10+
exclude: config-aces-reference.ocio.yaml
11+
- id: debug-statements
12+
- id: end-of-file-fixer
13+
- id: mixed-line-ending
14+
- id: name-tests-test
15+
args: ["--pytest-test-first"]
16+
- id: requirements-txt-fixer
17+
- id: trailing-whitespace
18+
- repo: https://github.com/codespell-project/codespell
19+
rev: v2.2.6
820
hooks:
9-
- id: ruff
10-
- repo: https://github.com/psf/black
11-
rev: 23.7.0
21+
- id: codespell
22+
args: ["--ignore-words-list=co-ordinates,exitance,fro,hart,ist"]
23+
exclude: "BIBLIOGRAPHY.bib|CONTRIBUTORS.rst"
24+
- repo: https://github.com/ikamensh/flynt
25+
rev: "1.0.1"
1226
hooks:
13-
- id: black
14-
language_version: python3.9
15-
- repo: https://github.com/keewis/blackdoc
16-
rev: v0.3.8
27+
- id: flynt
28+
args: [--verbose]
29+
- repo: https://github.com/PyCQA/isort
30+
rev: "5.12.0"
1731
hooks:
18-
- id: blackdoc
19-
language_version: python3.9
32+
- id: isort
33+
- repo: https://github.com/astral-sh/ruff-pre-commit
34+
rev: "v0.1.6"
35+
hooks:
36+
- id: ruff
37+
- repo: https://github.com/psf/black-pre-commit-mirror
38+
rev: 23.11.0
39+
hooks:
40+
- id: black
41+
language_version: python3.9
42+
- repo: https://github.com/adamchainz/blacken-docs
43+
rev: 1.16.0
44+
hooks:
45+
- id: blacken-docs
46+
language_version: python3.9
47+
- repo: https://github.com/pre-commit/mirrors-prettier
48+
rev: "v3.1.0"
49+
hooks:
50+
- id: prettier
51+
exclude: config-aces-reference.ocio.yaml
52+
- repo: https://github.com/pre-commit/pygrep-hooks
53+
rev: "v1.10.0"
54+
hooks:
55+
- id: rst-backticks
56+
- id: rst-directive-colons
57+
- id: rst-inline-touching-normal

0 commit comments

Comments
 (0)