Page MenuHomeSoftware Heritage

Allow chardata in <codemeta:affiliation>, to be compatible with existing metadata
ClosedPublic

Authored by vlorentz on Mar 8 2022, 5:43 PM.

Details

Summary

Manually validate <codemeta:affiliation>. Unfortunately, this cannot be
validated by codemeta.xsd, because Codemeta has conflicting requirements:

  1. https://codemeta.github.io/terms/ requires it to be Text (represented by simple content), but
  2. https://doi.org/10.5063/SCHEMA/CODEMETA-2.0 requires it to be an Organization (represented by complex content)

See https://github.com/codemeta/codemeta/pull/239 for a "discussion" about
this issue.

Depends on D7319.

Diff Detail

Unit TestsFailed

TimeTest
529 msJenkins > .tox.py3.lib.python3.7.site-packages.swh.deposit.tests.api.test_checks::test_api_checks_check_metadata_ko_schema[affiliation-with-no-name]
metadata_ko = '<entry xmlns="http://www.w3.org/2005/Atom"\n xmlns:swh="https://www.softwareheritage.org/schema/2018/deposit"\n...hema:url>some-metadata-provenance-url</schema:url>\n </swh:metadata-provenance>\n </swh:deposit>\n</entry>\n' expected_summaries = [{'fields': ['codemeta:author'], 'summary': '.*Reason: affiliation does not have a <codemeta:name> element.*'}] swh_checks_deposit = <swh.deposit.api.private.deposit_check.APIChecks object at 0x7fdfecf8e470>
732 msJenkins > .tox.py3.lib.python3.7.site-packages.swh.deposit.tests.api.test_checks::test_api_checks_check_metadata_ko_schema[empty-affiliation]
metadata_ko = '<entry xmlns="http://www.w3.org/2005/Atom"\n xmlns:swh="https://www.softwareheritage.org/schema/2018/deposit"\n...hema:url>some-metadata-provenance-url</schema:url>\n </swh:metadata-provenance>\n </swh:deposit>\n</entry>\n' expected_summaries = [{'fields': ['codemeta:author'], 'summary': '.*Reason: affiliation does not have a <codemeta:name> element.*'}] swh_checks_deposit = <swh.deposit.api.private.deposit_check.APIChecks object at 0x7fdfec6a6588>
561 msJenkins > .tox.py3.lib.python3.7.site-packages.swh.deposit.tests.api.test_checks::test_api_checks_check_metadata_ok[chardata-in-affiliation]
metadata_ok = '<entry xmlns="http://www.w3.org/2005/Atom"\n xmlns:swh="https://www.softwareheritage.org/schema/2018/deposit"\n...hema:url>some-metadata-provenance-url</schema:url>\n </swh:metadata-provenance>\n </swh:deposit>\n</entry>\n' swh_checks_deposit = <swh.deposit.api.private.deposit_check.APIChecks object at 0x7fdfedf2ef28>
402 msJenkins > .tox.py3.lib.python3.7.site-packages.swh.deposit.tests.cli.test_client::test_cli_client_generate_metadata_ok
slug = '850cb0a9-35ef-4031-91c2-50aa1653337c' def test_cli_client_generate_metadata_ok(slug):
1,029 msJenkins > .tox.py3.lib.python3.7.site-packages.swh.deposit.tests.api.test_basic_auth::test_service_document_basic
View Full Test Results (4 Failed · 320 Passed)

Event Timeline

Build has FAILED

Patch application report for D7320 (id=26465)

Could not rebase; Attempt merge onto cac1511329...

Merge made by the 'recursive' strategy.
 swh/deposit/api/checks.py            |  80 ++++++-
 swh/deposit/tests/api/test_checks.py | 389 ++++++++++++++++++++++++++++++++---
 swh/deposit/xsd/codemeta.xsd         |  45 +++-
 3 files changed, 484 insertions(+), 30 deletions(-)
Changes applied before test
commit b63ec62acace324a2c7698b72060ae099deaabe7
Merge: cac15113 8837f11d
Author: Jenkins user <jenkins@localhost>
Date:   Tue Mar 8 16:44:05 2022 +0000

    Merge branch 'diff-target' into HEAD

commit 8837f11d640bd7875543517350bda9c7e1d10301
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Mar 8 17:40:42 2022 +0100

    Allow chardata in <codemeta:affiliation>, to be compatible with existing metadata
    
    Manually validate <codemeta:affiliation>. Unfortunately, this cannot be
    validated by codemeta.xsd, because Codemeta has conflicting requirements:
    1. https://codemeta.github.io/terms/ requires it to be Text (represented
       by simple content), but
    2. https://doi.org/10.5063/SCHEMA/CODEMETA-2.0 requires it to be an
       Organization (represented by complex content)
    
    See https://github.com/codemeta/codemeta/pull/239 for a discussion about
    this issue.

commit 62ea1fe1b8515b8a9481b023456bec7452c787d8
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Mar 8 16:15:06 2022 +0100

    Add support for YYYY and YYYY-MM as date formats
    
    They are allowed by ISO8601, via schema.org, via codemeta; but not by XML Schema's
    date format.

commit abdae94994885cb0bb6d025b8349b34c8aa56d97
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 15:15:06 2022 +0100

    Add more Person fields to the schema

commit 8fc582894c08fb1cd65c0a0dc6557404fcfa1935
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 12:23:07 2022 +0100

    Add more simpletypes to the schema.

commit 96706f67cf53dbb76bce84232c954b1f322b8ab4
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 12:17:55 2022 +0100

    Add <codemeta:affiliation> to the schema.

commit 6e85cb9fdcbe5ee1e19d3cc1bcfd1fa42639b56b
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 11:46:56 2022 +0100

    test_checks: Make failure more readable

commit 4d3653e309fe0f8a1b895cbe24389a9239baa3d1
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 11:36:23 2022 +0100

    test_checks: Add names to pytest parameters + reorder them + remove duplicate
    
    It makes it easier to identify tests when failing + helps git to
    make readable diffs.

Link to build: https://jenkins.softwareheritage.org/job/DDEP/job/tests-on-diff/805/
See console output for more information: https://jenkins.softwareheritage.org/job/DDEP/job/tests-on-diff/805/console

Harbormaster returned this revision to the author for changes because remote builds failed.Mar 8 2022, 5:51 PM
Harbormaster failed remote builds in B27350: Diff 26465!

Build is green

Patch application report for D7320 (id=26470)

Could not rebase; Attempt merge onto cac1511329...

Merge made by the 'recursive' strategy.
 swh/deposit/api/checks.py            |  80 ++++++-
 swh/deposit/tests/api/test_checks.py | 389 ++++++++++++++++++++++++++++++++---
 swh/deposit/tests/cli/test_client.py |   4 +-
 swh/deposit/xsd/codemeta.xsd         |  46 ++++-
 4 files changed, 487 insertions(+), 32 deletions(-)
Changes applied before test
commit 1d592d2e67588ccb2188e2cb3181e126475d47f5
Merge: cac15113 de6a705e
Author: Jenkins user <jenkins@localhost>
Date:   Tue Mar 8 17:05:13 2022 +0000

    Merge branch 'diff-target' into HEAD

commit de6a705e75650f589773d5410870e3763dbfb1b6
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Mar 8 17:40:42 2022 +0100

    Allow chardata in <codemeta:affiliation>, to be compatible with existing metadata
    
    Manually validate <codemeta:affiliation>. Unfortunately, this cannot be
    validated by codemeta.xsd, because Codemeta has conflicting requirements:
    1. https://codemeta.github.io/terms/ requires it to be Text (represented
       by simple content), but
    2. https://doi.org/10.5063/SCHEMA/CODEMETA-2.0 requires it to be an
       Organization (represented by complex content)
    
    See https://github.com/codemeta/codemeta/pull/239 for a discussion about
    this issue.

commit f48b0a53c4493e9dfd4e42f3836c4a558ecb62de
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Mar 8 16:15:06 2022 +0100

    Add support for YYYY and YYYY-MM as date formats
    
    They are allowed by ISO8601, via schema.org, via codemeta; but not by XML Schema's
    date format.

commit c66b1399af83a5df6f4595cdb05aeacf09d7aefa
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 15:15:06 2022 +0100

    Add more Person fields to the schema

commit e8dd85b6b6164155882ce49ddc2a3f4b0cff5f08
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 12:23:07 2022 +0100

    Add more simpletypes to the schema.

commit 96706f67cf53dbb76bce84232c954b1f322b8ab4
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 12:17:55 2022 +0100

    Add <codemeta:affiliation> to the schema.

commit 6e85cb9fdcbe5ee1e19d3cc1bcfd1fa42639b56b
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 11:46:56 2022 +0100

    test_checks: Make failure more readable

commit 4d3653e309fe0f8a1b895cbe24389a9239baa3d1
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 11:36:23 2022 +0100

    test_checks: Add names to pytest parameters + reorder them + remove duplicate
    
    It makes it easier to identify tests when failing + helps git to
    make readable diffs.

See https://jenkins.softwareheritage.org/job/DDEP/job/tests-on-diff/809/ for more details.

Build is green

Patch application report for D7320 (id=26477)

Could not rebase; Attempt merge onto cac1511329...

Updating cac15113..3a101e67
Fast-forward
 swh/deposit/api/checks.py            |  80 ++++++-
 swh/deposit/tests/api/test_checks.py | 389 ++++++++++++++++++++++++++++++++---
 swh/deposit/tests/cli/test_client.py |   4 +-
 swh/deposit/xsd/codemeta.xsd         |  46 ++++-
 4 files changed, 487 insertions(+), 32 deletions(-)
Changes applied before test
commit 3a101e67c1a41af2fe84943a8934a694fda23e04
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Mar 8 17:40:42 2022 +0100

    Allow chardata in <codemeta:affiliation>, to be compatible with existing metadata
    
    Manually validate <codemeta:affiliation>. Unfortunately, this cannot be
    validated by codemeta.xsd, because Codemeta has conflicting requirements:
    1. https://codemeta.github.io/terms/ requires it to be Text (represented
       by simple content), but
    2. https://doi.org/10.5063/SCHEMA/CODEMETA-2.0 requires it to be an
       Organization (represented by complex content)
    
    See https://github.com/codemeta/codemeta/pull/239 for a discussion about
    this issue.

commit 87744c57b2d8900e6000e504c567f1a5d22bf31d
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Mar 8 16:15:06 2022 +0100

    Add support for YYYY and YYYY-MM as date formats
    
    They are allowed by ISO8601, via schema.org, via codemeta; but not by XML Schema's
    date format.

commit 64efae98071a0b9c9e01bbbcb18c9e26b8230379
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 15:15:06 2022 +0100

    Add more Person fields to the schema

commit 2ec5a89af955992f5c7dbbd63f3ee63573b47a03
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 12:23:07 2022 +0100

    Add more simpletypes to the schema.

commit 043b96dad34dd7b4a351db8bfcac60e681839b0d
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 12:17:55 2022 +0100

    Add <codemeta:affiliation> to the schema.

commit e288319cfe7d048bff09556bb6c5aae75eb3a7b2
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 11:46:56 2022 +0100

    test_checks: Make failure more readable

commit fb702b02ad6a7c218350900d4f45a2093cd5e9ad
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 11:36:23 2022 +0100

    test_checks: Add names to pytest parameters + reorder them + remove duplicate
    
    It makes it easier to identify tests when failing + helps git to
    make readable diffs.

See https://jenkins.softwareheritage.org/job/DDEP/job/tests-on-diff/816/ for more details.

Build is green

Patch application report for D7320 (id=26732)

Could not rebase; Attempt merge onto 6f37ab6eb7...

Updating 6f37ab6e..dcae5160
Fast-forward
 swh/deposit/api/checks.py            |  80 +++++++++-
 swh/deposit/tests/api/test_checks.py | 292 ++++++++++++++++++++++++++++++++++-
 swh/deposit/tests/cli/test_client.py |   4 +-
 swh/deposit/xsd/codemeta.xsd         |  45 +++++-
 4 files changed, 406 insertions(+), 15 deletions(-)
Changes applied before test
commit dcae516085b6260cb60c029105e755e9e7cc27b4
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Mar 8 17:40:42 2022 +0100

    Allow chardata in <codemeta:affiliation>, to be compatible with existing metadata
    
    Manually validate <codemeta:affiliation>. Unfortunately, this cannot be
    validated by codemeta.xsd, because Codemeta has conflicting requirements:
    1. https://codemeta.github.io/terms/ requires it to be Text (represented
       by simple content), but
    2. https://doi.org/10.5063/SCHEMA/CODEMETA-2.0 requires it to be an
       Organization (represented by complex content)
    
    See https://github.com/codemeta/codemeta/pull/239 for a discussion about
    this issue.

commit 2c5840c859667ba673d1f00204b95b0ca6f4db0b
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Mar 8 16:15:06 2022 +0100

    Add support for YYYY and YYYY-MM as date formats
    
    They are allowed by ISO8601, via schema.org, via codemeta; but not by XML Schema's
    date format.

commit 136016c2f60fb4453525a7d2a457e3e3b8a4f06a
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 15:15:06 2022 +0100

    Add more Person fields to the schema

commit 172e8d55f41ae18cff532520abdb701945bde335
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Mon Feb 28 12:23:07 2022 +0100

    Add more simpletypes to the schema.

See https://jenkins.softwareheritage.org/job/DDEP/job/tests-on-diff/824/ for more details.

This revision is now accepted and ready to land.Mar 28 2022, 1:35 PM

Build is green

Patch application report for D7320 (id=26943)

Rebasing onto c83df715a3...

Current branch diff-target is up to date.
Changes applied before test
commit df04906e6733400194dae2ff5633124416919c47
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Mar 8 17:40:42 2022 +0100

    Allow chardata in <codemeta:affiliation>, to be compatible with existing metadata
    
    Manually validate <codemeta:affiliation>. Unfortunately, this cannot be
    validated by codemeta.xsd, because Codemeta has conflicting requirements:
    1. https://codemeta.github.io/terms/ requires it to be Text (represented
       by simple content), but
    2. https://doi.org/10.5063/SCHEMA/CODEMETA-2.0 requires it to be an
       Organization (represented by complex content)
    
    See https://github.com/codemeta/codemeta/pull/239 for a discussion about
    this issue.

See https://jenkins.softwareheritage.org/job/DDEP/job/tests-on-diff/826/ for more details.