

{"id":884,"date":"2026-09-17T12:50:26","date_gmt":"2026-09-17T10:50:26","guid":{"rendered":"https:\/\/project.inria.fr\/shanoir\/?p=884"},"modified":"2026-09-17T12:50:26","modified_gmt":"2026-09-17T10:50:26","slug":"patch-release-shanoir-v2-14-1","status":"publish","type":"post","link":"https:\/\/project.inria.fr\/shanoir\/patch-release-shanoir-v2-14-1\/","title":{"rendered":"PATCH release: Shanoir v2.14.1"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">We just released the new patch version v2.14.1 of Shanoir on the two production servers : Neurinfo and OFSEP.<br>Here are the main developments we have done:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Solr search: fixed &#8220;Apply study card&#8221; failing with a LazyInitializationException on dataset acquisitions<\/li>\n\n\n\n<li>Events: cascade deletions (acquisitions, datasets) no longer publish their own events, only the parent one<\/li>\n\n\n\n<li>VIP: fixed the user\/event relation for executions, so monitoring events are attributed to the right user<\/li>\n\n\n\n<li>VIP: <code>parentId<\/code> added to the DatasetProcessing DTO, fixing processed-dataset download through py_noir\/eCAN<\/li>\n\n\n\n<li>Processed datasets: DICOM metadata node restored on dataset-processing outputs<\/li>\n\n\n\n<li>Processed datasets: A task is published in the job list for a Dataset Processing deletion<\/li>\n\n\n\n<li>Processed datasets: Dataset processing without output datasets deletion failure fixed<\/li>\n\n\n\n<li>Subject deletion: examinations are again really deleted in ms datasets, fixing the transaction that left examination rows behind while the task reported success<\/li>\n\n\n\n<li>Subject deletion: userId now propagated to child events, with unit test coverage<\/li>\n\n\n\n<li>ShanoirUploader: the configured proxy is now used when checking for updates<\/li>\n\n\n\n<li>ShanoirUploader: study cards filtered by the study&#8217;s acquisition centers, and matching device serial number bubbled up<\/li>\n\n\n\n<li>ShanoirUploader: magnetic field strength only validated for MR modality (fixes PET imports with &#8220;unknown&#8221;)<\/li>\n\n\n\n<li>ShanoirUploader: fixed the 500 errors on the findSubjectByIdentifier endpoint (regression reintroduced by a bad merge)<\/li>\n\n\n\n<li>Maintenance: shanoir-downloader submodule bumped (Keycloak authorization-code with PKCE auth flow)<\/li>\n\n\n\n<li>Maintenance: docker-compose service images bumped to the latest release version<\/li>\n\n\n\n<li>CI: free disk space before building the Docker images to avoid intermittent &#8220;no space left on device&#8221; failures<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">You can find all the release notes, including this one <a href=\"https:\/\/github.com\/fli-iam\/shanoir-ng\/wiki\/release-notes#release-notes-v2141-2026-09-xx-future-patch-release\" data-type=\"link\" data-id=\"https:\/\/github.com\/fli-iam\/shanoir-ng\/wiki\/release-notes#release-notes-v2141-2026-09-xx-future-patch-release\">here<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>We just released the new patch version v2.14.1 of Shanoir on the two production servers : Neurinfo and OFSEP.Here are the main developments we have done: You can find all the release notes, including this one here<\/p>\n<p> <a class=\"continue-reading-link\" href=\"https:\/\/project.inria.fr\/shanoir\/patch-release-shanoir-v2-14-1\/\"><span>Continue reading<\/span><i class=\"crycon-right-dir\"><\/i><\/a> <\/p>\n","protected":false},"author":2669,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_members_access_role":[],"_members_access_error":""},"categories":[1],"tags":[],"class_list":["post-884","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/project.inria.fr\/shanoir\/wp-json\/wp\/v2\/posts\/884","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/project.inria.fr\/shanoir\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/project.inria.fr\/shanoir\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/project.inria.fr\/shanoir\/wp-json\/wp\/v2\/users\/2669"}],"replies":[{"embeddable":true,"href":"https:\/\/project.inria.fr\/shanoir\/wp-json\/wp\/v2\/comments?post=884"}],"version-history":[{"count":5,"href":"https:\/\/project.inria.fr\/shanoir\/wp-json\/wp\/v2\/posts\/884\/revisions"}],"predecessor-version":[{"id":890,"href":"https:\/\/project.inria.fr\/shanoir\/wp-json\/wp\/v2\/posts\/884\/revisions\/890"}],"wp:attachment":[{"href":"https:\/\/project.inria.fr\/shanoir\/wp-json\/wp\/v2\/media?parent=884"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/project.inria.fr\/shanoir\/wp-json\/wp\/v2\/categories?post=884"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/project.inria.fr\/shanoir\/wp-json\/wp\/v2\/tags?post=884"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}