• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

rero / sonar / 32007055265
95%
master: 95%

Build:
Build:
LAST BUILD BRANCH: sonar-dev
DEFAULT BRANCH: master
Ran 17 Aug 2026 07:54AM UTC
Jobs 1
Files 287
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

17 Aug 2026 07:43AM UTC coverage: 94.697% (+0.009%) from 94.688%
32007055265

push

github

PascalRepond
fix(projects): accept the quoted ETag in the `If-Match` header

Saving a project from the editor always failed with a 400 and
`{'if_match': ['Not a valid integer.']}`. `invenio-records-resources`
exposes the revision id as a quoted ETag but parses `If-Match` with
`ma.fields.Int()` on the raw header, so the API rejects the very ETag
it emitted. `invenio-records-rest` is unaffected: it delegates to
werkzeug's `request.if_match`, which handles entity-tags. Projects
being our only resource on `invenio-records-resources`, the mismatch
surfaced there alone, once the ng-core editor started sending back the
ETag it reads on load.

* Unquote the header in `ProjectsRecordResource` before invenio's
  parser reads it; `unquote_etag` also covers weak tags and leaves a
  bare revision number untouched, so the workaround stays harmless
  once fixed upstream (still open in `invenio-records-resources`
  master, hence the TODO)
* Cover `delete` too: no client sends `If-Match` on a deletion today,
  but the endpoint carries the same defect
* Test the round trip end to end — the ETag from a `GET` is accepted,
  a stale revision still yields a 412

Co-Authored-by: Pascal Repond <pascal.repond@rero.ch>

17 of 17 new or added lines in 2 files covered. (100.0%)

7607 of 8033 relevant lines covered (94.7%)

0.95 hits per line

Jobs
ID Job ID Ran Files Coverage
1 32007055265.1 17 Aug 2026 07:54AM UTC 287
94.7
GitHub Action Run
Source Files on build 32007055265
  • Tree
  • List 287
  • Changed 2
  • Source Changed 2
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #32007055265
  • e29d20ab on github
  • Prev Build on staging (#31708172657)
  • Next Build on staging (#32015241076)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc