From 746eb5e3f7350e4ab34913bf210bcdfbafb113ed Mon Sep 17 00:00:00 2001 From: James Gebbie-Rayet Date: Fri, 16 Oct 2026 16:01:35 +0100 Subject: [PATCH 1/6] Add web metadata for CodeEntropy project Added metadata for CodeEntropy project including authors, descriptions, and links. --- .github/web-meta.yaml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 .github/web-meta.yaml diff --git a/.github/web-meta.yaml b/.github/web-meta.yaml new file mode 100644 index 00000000..1696c025 --- /dev/null +++ b/.github/web-meta.yaml @@ -0,0 +1,20 @@ +name: "CodeEntropy" +shortdesc: "This code is a complete and generally applicable set of tools for computing entropy of macromolecular systems from the forces sampled in a MD simulation." +longdesc: "CodeEntropy is a Python package for computing the configurational entropy of macromolecular systems using forces sampled from molecular dynamics (MD) simulations. It implements the multiscale cell correlation method to provide accurate and efficient entropy estimates, supporting a wide range of applications in molecular simulation and statistical mechanics." +authors: + Arghya Chakravorty: "https://orcid.org/0000-0002-4467-1135" + Donald Chung-HK: "" + Sarah Fegan: "https://orcid.org/0009-0007-1030-228X" + James Gebbie-Rayet: "https://orcid.org/0000-0001-8271-3431" + Sarah Harris: "https://orcid.org/0000-0002-2812-1651" + Richard Henchman: "https://orcid.org/0000-0002-0461-6625" + Jonathan Higham: "https://orcid.org/0000-0002-9779-9968" + Jas Kalayan: "https://orcid.org/0000-0002-6833-1864" + Ioana Papa: "https://orcid.org/0009-0000-2287-4081" + Harry Swift: "https://orcid.org/0009-0007-3323-753X" +category: "scientific" +image: "codeentropy-logo-chip-dark.svg" +github: "https://github.com/CCPBioSim/CodeEntropy" +docs: "https://codeentropy.readthedocs.io" +pypi: true +conda: true From 58c178ebecbad8d3a7f81286775d3fe25d0eb009 Mon Sep 17 00:00:00 2001 From: James Gebbie-Rayet Date: Fri, 16 Oct 2026 17:15:06 +0100 Subject: [PATCH 2/6] Update web-meta.yaml to remove author information Removed author details from the web metadata. --- .github/web-meta.yaml | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/.github/web-meta.yaml b/.github/web-meta.yaml index 1696c025..0041084b 100644 --- a/.github/web-meta.yaml +++ b/.github/web-meta.yaml @@ -1,17 +1,5 @@ -name: "CodeEntropy" shortdesc: "This code is a complete and generally applicable set of tools for computing entropy of macromolecular systems from the forces sampled in a MD simulation." longdesc: "CodeEntropy is a Python package for computing the configurational entropy of macromolecular systems using forces sampled from molecular dynamics (MD) simulations. It implements the multiscale cell correlation method to provide accurate and efficient entropy estimates, supporting a wide range of applications in molecular simulation and statistical mechanics." -authors: - Arghya Chakravorty: "https://orcid.org/0000-0002-4467-1135" - Donald Chung-HK: "" - Sarah Fegan: "https://orcid.org/0009-0007-1030-228X" - James Gebbie-Rayet: "https://orcid.org/0000-0001-8271-3431" - Sarah Harris: "https://orcid.org/0000-0002-2812-1651" - Richard Henchman: "https://orcid.org/0000-0002-0461-6625" - Jonathan Higham: "https://orcid.org/0000-0002-9779-9968" - Jas Kalayan: "https://orcid.org/0000-0002-6833-1864" - Ioana Papa: "https://orcid.org/0009-0000-2287-4081" - Harry Swift: "https://orcid.org/0009-0007-3323-753X" category: "scientific" image: "codeentropy-logo-chip-dark.svg" github: "https://github.com/CCPBioSim/CodeEntropy" From 30c9b301c2995fb09152f380c806c375bd9e0980 Mon Sep 17 00:00:00 2001 From: James Gebbie-Rayet Date: Fri, 16 Oct 2026 17:35:51 +0100 Subject: [PATCH 3/6] Remove GitHub and docs links from web-meta.yaml Removed GitHub and documentation links from web-meta.yaml. --- .github/web-meta.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/web-meta.yaml b/.github/web-meta.yaml index 0041084b..ba325b94 100644 --- a/.github/web-meta.yaml +++ b/.github/web-meta.yaml @@ -2,7 +2,5 @@ shortdesc: "This code is a complete and generally applicable set of tools for co longdesc: "CodeEntropy is a Python package for computing the configurational entropy of macromolecular systems using forces sampled from molecular dynamics (MD) simulations. It implements the multiscale cell correlation method to provide accurate and efficient entropy estimates, supporting a wide range of applications in molecular simulation and statistical mechanics." category: "scientific" image: "codeentropy-logo-chip-dark.svg" -github: "https://github.com/CCPBioSim/CodeEntropy" -docs: "https://codeentropy.readthedocs.io" pypi: true conda: true From ad5e07b09c4e92ee2c246c63e14f85c3bb07b34c Mon Sep 17 00:00:00 2001 From: James Gebbie-Rayet Date: Fri, 16 Oct 2026 20:31:42 +0100 Subject: [PATCH 4/6] Add build dispatch payload step to release workflow --- .github/workflows/release.yaml | 62 ++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 04be2415..1f2a6256 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -155,6 +155,68 @@ jobs: --data-urlencode "topic=software releases" \ --data-urlencode "content=${CONTENT}" + - name: checkout + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + + - name: Build dispatch payload + id: payload + shell: bash + env: + NAME: ${{ github.event.repository.name }} + REPO_URL: ${{ github.server_url }}/${{ github.repository }} + VERSION: ${{ github.event.inputs.version }} + META_FILE: .github/web-meta.yaml + CFF_FILE: CITATION.cff + run: | + for f in "$META_FILE" "$CFF_FILE"; do + if [ ! -f "$f" ]; then + echo "::error::$f not found in $(pwd)" + ls -la . .github + exit 1 + fi + done + + # Constructed URLs (Read the Docs slugs are lowercase) + github_url="$REPO_URL" + docs_url="https://${NAME,,}.readthedocs.io/" + + # Metadata from web-meta.yaml + meta=$(yq -o=json '.' "$META_FILE") + + # Authors from CITATION.cff -> { "Full Name": "orcid url" } + authors=$(yq -o=json '.authors' "$CFF_FILE" | jq -c ' + map({ + key: ( + if .name then .name + else ([."given-names", ."family-names"] | map(select(. != null)) | join(" ")) + end + ), + value: (.orcid // "") + }) | from_entries') + + payload=$(jq -nc \ + --arg name "$NAME" \ + --arg github "$github_url" \ + --arg docs "$docs_url" \ + --arg version "$VERSION" \ + --argjson meta "$meta" \ + --argjson authors "$authors" \ + '{ + name: $name, + meta: ({github: $github, docs: $docs} + $meta + {version: $version, authors: $authors}) + }') + + echo "payload: $payload" + echo "json=$payload" >> "$GITHUB_OUTPUT" + + - name: Post version to website metadata repo + uses: peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697 # v4.0.1 + with: + token: ${{ secrets.BUILD_TOKEN }} + repository: ccpbiosim/ccpbiosim.github.io + event-type: workshops + client-payload: ${{ steps.payload.outputs.json }} + pypi: name: make pypi release needs: [tag, release] From f66a636b6ca53ad57d0fbc54ae230980ae0b51d0 Mon Sep 17 00:00:00 2001 From: James Gebbie-Rayet Date: Fri, 16 Oct 2026 21:08:52 +0100 Subject: [PATCH 5/6] Add ghcr field to web-meta.yaml --- .github/web-meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/web-meta.yaml b/.github/web-meta.yaml index ba325b94..2f2ebf06 100644 --- a/.github/web-meta.yaml +++ b/.github/web-meta.yaml @@ -4,3 +4,4 @@ category: "scientific" image: "codeentropy-logo-chip-dark.svg" pypi: true conda: true +ghcr: false From d898d349b118c58404f0d61c29d9e599c9de9a2f Mon Sep 17 00:00:00 2001 From: James Gebbie-Rayet Date: Fri, 16 Oct 2026 21:27:44 +0100 Subject: [PATCH 6/6] Change event type from 'workshops' to 'software' --- .github/workflows/release.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 1f2a6256..72c545a8 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -214,7 +214,7 @@ jobs: with: token: ${{ secrets.BUILD_TOKEN }} repository: ccpbiosim/ccpbiosim.github.io - event-type: workshops + event-type: software client-payload: ${{ steps.payload.outputs.json }} pypi: