\ifdefined\HCode
\begin{html}
<a id="news-section"></a>
\end{html}
\fi
\chapter*{News}

\labelWithConsistentHTMLTag{release-25-3}
\section*{Release notes for \texttt{v25.3}.}

  The March release of 2025 consists of 57 commits made by 2 authors.

  This release contains various bugfixes, minor UI revisions, minor feature
  updates, and contains the foundation for an extra security layer to prevent
  cross-site scripting vulnerabilities.

  The release date slipped a couple of days because yours truly wanted to
  give last-minute changes a little bit of time to make sure no regressions
  occurred before formalizing the release.

\subsection*{New features}
\begin{itemize}
\item{Implement API endpoints for reviewers
    (\commitLink{1de7f680840ec882752de1fe53004a4bed16f568},
    \commitLink{038e931b96eeabb72d4f0c305c0dc0ee2afab696},
    \commitLink{2f5963553910929ef479eadeb1c770780fd8df93}).}
\item{Report number of search results in the \code{/v2/articles/search} endpoint.
    (\commitLink{a8917a837e9d5d70a618ff50fd29bb7cc959febd}).}
\item{Add \code{SoftwareSourceCode} to RO-Crate output
    (\commitLink{79cf0b32ada27780ef0efadc0d20556c8717eb84}).}
\end{itemize}

\subsection*{UI revisions}
\begin{itemize}
\item{Revise the ``Cite'' and ``Collect'' buttons on landing pages
    (\commitLink{b0b9dbd1f21e1aec464985daff7c5af100bc5346}).}
\item{Remove the need for a ``save URL'' button in the dataset metadata form
    (\commitLink{a853085c98417bcfe8b50d0e41e56a61ef31456e}).}
\item{Revise the versions drop-down menu on landing pages
    (\commitLink{e5b89ce23eec6e1284a22db4802d05e459f29454}).}
\item{Fix tile scaling on the main page for different zoom levels
    (\commitLink{7a30bfa47ef1c3977180dcc4b0ec31f7ff06e89a}).}
\end{itemize}
\subsection*{Security}

\begin{itemize}
\item{Addressed a Cross-Site-Scripting vulnerability in the search functionality
    (\commitLink{40b12a5597407a3d67eec5a5cb570d0725197d92}).}
\item{Only display e-mail address of authors to the creators of such records.
    (\commitLink{05a56fa18367da28e2366a90e92a43af4639dc5f}).}
\end{itemize}

\subsection*{Bugfixes}
\begin{itemize}
\item{Fix author ordering for collections.
    (\commitLink{244017a014a4b4d36c8b4d21709996fdf24af635}).}
\item{Fix bug in cached responses in the IIIF Image API implementation
    (\commitLink{88d68c78783a654864e4264c6b60a01793d58e44}).}
\item{Fix bug with proportional scaling in the IIIF Image API implementation
    (\commitLink{05d5c7a8550e63c395a75c73b873b1b70c08bedd}).}
\item{Fix various bugs with rendering HTML entities and tags.
    (\commitLink{d3667ed8bcee0028ceee945351af1182d67d3e99},
    \commitLink{3b19d7de8c647be71708252c6de123a93fecc327},
    \commitLink{08e4fc77a90b780b491ca9aa701fa758b43f4a5a},
    \commitLink{3a1f3dde5e0e72518c2860afeda8c45eca112e6f}).}
\item{Avoid a divide-by-zero situation with quota usage calculation
    (\commitLink{cefde15ddb393507004e7f69d8c2658650a88fa2}).}
\item{Fix creating datasets with repeated fields using the v2 API
    (\commitLink{74fe025dbc8b6369920ee7a5fe2f3cea35b2e358},
    \commitLink{87127c1f818110d68644e668388f1c61535f5525}).}
\item{Fix setting default fields when creating a dataset using the API
    (\commitLink{7f183389d608121c46cd168cbe40681b72789f71}).}
\item{Fix returning Git statistics for empty Git repositories
    (\commitLink{be3630a63cfc3f933be9b130b0825602d5898e98},
    \commitLink{2cffe955a2f4a95afb56cb41016559fbce8bbc53},
    \commitLink{c3227a768dd1cd476105f8a86e1de3a752af336f}).}
\end{itemize}

\subsection*{Technical debt}
\begin{itemize}
\item{Work towards a stricter Content-Security-Policy by avoiding inline use
    of \code{style} attributes, \code{script} elements, and event handlers
    (\commitLink{b862fdf3d558e9ef030f36ce34d2564999fd94c6},
    \commitLink{18b3bbe3e721f0154365fb0ed1252620b516fe8d},
    \commitLink{f08542ecb8f554950bd8387b01b16640cfc70935},
    \commitLink{1c248a1e238b0fc4bce3766fb7a196d631beec95},
    \commitLink{99cf348f833b2180425778f900d280d83706dee1},
    \commitLink{7524bbbd26f4ecee67165d44437b2ad41f1d5919},
    \commitLink{4d6696335e3fb8a2e01d4b3b5d9176b70c8190be}).}
\item{Avoid hard-coded versions in the documentation for the RPM download links
    (\commitLink{21be87dc0efdf5615eefe339ee1ae9c67df6e0c2}).}
\item{Avoid repetitive text in the documentation by using macros
    (\commitLink{088f8a13cf79b47adb731b3d24c672695198c863},
    \commitLink{f3dc9c8cd6a84af0c830fcc905d73eaef03828bc}).}
\item{Build Docker images with C development libraries to work around
    ``xmlsec'' build issues.
    (\commitLink{2c03cb3cb02bfc85279986f7508291349bf5c609}).}
\end{itemize}

\labelWithConsistentHTMLTag{release-25-2}
\section*{Release notes for \texttt{v25.2}.}

  The February release of 2025 consists of 75 commits made by 2 authors.

  The major new features in this release are initial support for RO-Crate
  and direct support for S3 buckets.  The release was delayed to include an
  important security fix for a Cross-Site-Scripting vulnerability found
  by Aaron Liebig.  Many thanks for reporting and assisting in resolving
  this vulnerability.

\subsection*{New features}
\begin{itemize}
\item{Implement initial support for RO-Crates
    (\commitLink{5ffee87a7b9cfefacea984deb4c78f5007581e8e},
    \commitLink{96ee261fff36d08e7a2bd2f882a7a7e98d434c75}).}
\item{Implement support for S3 buckets via \code{boto3}
    (\commitLink{1077e2503c1e9e338849c5dee250a1e6483137b4},
    \commitLink{67fe48dbc538d2f00bf687504451e60611021287},
    \commitLink{2e5394b417518efbff5accbbe06f65cf7ba896cb},
    \commitLink{09e20e40551404e0957f1fd2f742ffa156442294},
    \commitLink{30209a7544a35d2da700e8f02d86f30bcb651082},
    \commitLink{7e6d147fce19329126c91f2a056070d54e1b093f}).}
\item{Implement ability to extract/replay log entries
    (\commitLink{a5a2c090389776346944b47554c129f4e686f97e}).}
\end{itemize}

\subsection*{Security}

\begin{itemize}
\item{Addressed a Cross-Site-Scripting vulnerability
    (\commitLink{38e89a0c8ef351bdb524ff8bcb30b44b3ba8d04f}).}
\end{itemize}

\subsection*{Bugfixes}
\begin{itemize}
\item{Improve rendering for accessibility
    (\commitLink{a3e456cf172c52b41b071133d9d71883e606c786},
    \commitLink{7cb7654fcb751cd303bf447abde95a7b57f36d7c},
    \commitLink{11bba959809595d1fc233be6ddd3cba4575a97fc},
    \commitLink{c74ef45f1523a4e0a4905021a31996a40e4ced97}).}
\item{Apply user interface updates
    (\commitLink{b2c213ac9db2d306c8c874c0c8d60367414ba33b},
    \commitLink{3f13e0c7592125911e9d1dfe442c13c80f2e8c1b},
    \commitLink{98606dfcc2e8ddf5d8574f7476b13dd688c314cf},
    \commitLink{858f7b7aa5dca16bf3a1043e581f16b42951a569},
    \commitLink{d4db446034d81d9961ea2e4d888a1d685dbde2ab},
    \commitLink{c327f196f6f2eed3cbbad4d1f3c2136a3cb5898c},
    \commitLink{22107051ea5a31a8c3e5488f59936baee782b7a1},
    \commitLink{c87550cc5a176c0d9b706f6da6ee8de2c907a83d},
    \commitLink{6642dcf94bd118659cd0541485dbc032b3497561}).}
\item{Enhance the documentation
    (\commitLink{57192bbb83aec6512dbcbdf4c26203ebe18fe099},
    \commitLink{3a864f07a09e9d16997208b5cb32b6aedc7c18e4},
    \commitLink{be65be335b4807bedbc89f6b1ed5683969001a3a},
    \commitLink{ea4e623dbe2dd66091595cdb551cb6a32e175c75},
    \commitLink{1c6267ec4e4c21c66344b3ad1481049743542259},
    \commitLink{8d4d81266a2efc210d74bbe5e923821fb9cd278d}).}
\item{Show precise error messages when input validation fails in the
    edit-dataset and edit-collection forms
    (\commitLink{bfd2110f7a5de061cc9921ef4c184be433fbbab3}).}
\end{itemize}

\subsection*{Technical debt}
\begin{itemize}
\item{Remove \code{urllib3} as explicit dependency
    (\commitLink{672eaff0c058b3e71dabed0161faf505a5beb141}).}
\item{Prevent comments in query templates from being sent to the SPARQL
    endpoint (\commitLink{9ac703556e8f20a36c1fda6f5b77e165695e9001}).}
\end{itemize}

\labelWithConsistentHTMLTag{release-25-1}
\section*{Release notes for \texttt{v25.1}.}

  The January release of 2025 consists of 85 commits made by 3 authors.

  In this release we included an RPM package for Enterprise Linux 9.  This RPM
  depends on packages in the \href{https://docs.fedoraproject.org/en-US/epel/}%
  {Extra Packages for Enterprise Linux (EPEL) repository}.

\subsection*{New features}
\begin{itemize}
  \item{CodeMeta API output is more complete
      (\commitLink{91ed59d8650f70022131ede59d388bb1a5b76cd0},
      \commitLink{860edfec55ffa24be3609bc24c87a78e70587236},
      \commitLink{3f150a246a4978d51df0ab658cba42c78a3b26a2},
      \commitLink{5daa47e5f97a39cf2dc27eceb8314de0d0284b62}).}
  \item{A second port to bind the web service on can now be configured
      (\commitLink{dff68a6d6bbf3f7548803857deeb1adb6cf9f320}).}
  \item{Enable searching by author (\commitLink{18a242fcde0f0bfa6036021c20d4eca91602d5a8},
      \commitLink{fe09578657d71894cec45cad36b4a62c10165a8b}).}
  \item{Enable institution reviewing (\commitLink{cbd1092cccfacaf8d3191d1130fc1b34154b555b},
      \commitLink{cb67f83bfa4749c3c468b430efe82f3fb4c34efc}).}
  \item{Improve indexability by search engines
      (\commitLink{cc58483902f0760673c2a91567991b18829b112a},
      \commitLink{20fe6fd9a5c6952af9368eae00755cc248c3c0a1}).}
\end{itemize}
\subsection*{Bugfixes}
\begin{itemize}
  \item{Related versions of a dataset are communicated to DataCite
      (\commitLink{1539117be2a7679bafa5a94366f79a832bd759c1}).}
  \item{HTML output of the documentation is responsive to browser widths
      (\commitLink{934ed9310f1153960b95aff4944a0a729d153549}).}
  \item{Restore ability to create new collection versions
      (\commitLink{545de472c734161d223d94aa61b0d025eea07fec}).}
  \item{Display embargoed datasets in the search results
      (\commitLink{c86dcf85bee8af42988346cc12511341f1d3c6fc}).}
  \item{Fixed building RPM packages (\commitLink{1f629fa0d0ea5acbb45b1ea5652f9cfe8bc431f3},
      \commitLink{e4c10571a8da9c6b5c63e48d3bd1bce700ab0311}).}
  \item{Fixed HTTP \texttt{PUT} behavior for \texttt{/v2/account/collections/<id>/articles}
      (\commitLink{107ea693e170689b83213e668f9e75b59f9348c3}.)}
\end{itemize}
\subsection*{Technical debt}
\begin{itemize}
  \item{Unified the development environment instructions between GNU/Linux,
      Windows and macOS (\commitLink{8921d35c1a0909e331b4737b6c0bb6713fb77743},
      \commitLink{ca9b5831c19948f098106917c34bc4ff383543d2}).}
  \item{Run-time configurable properties are stored in a separate module
      (\commitLink{a8e353db6e29342adb038950eacf350e89dda7bf}).}
  \item{Improve error handling (\commitLink{bdf77edd810bb9d22c111b11e34e265c3e286f31},
      \commitLink{23c3b53d297b11bacab08d2436b723637773a78d},
      \commitLink{609c9864e357101f39e0dfb8cfc0b045889d9d17}).}
  \item{Embed simplified 'zipfly' (\commitLink{0fe0904a2aa25fc19094ee2c57a1b1d6fda4b4ad}).}
\end{itemize}

\labelWithConsistentHTMLTag{release-24-12}
\section*{Release notes for \texttt{v24.12}.}

\subsection*{New features}
\begin{itemize}
  \item{Add specific logging for when the server would respond an HTTP 500 error (\commitLink{1dcd141f7c75e82a5f970d0ac8ddba7e8915bf9c}).}
\end{itemize}
\subsection*{Bugfixes}
\begin{itemize}
  \item{Fix a problem with downloading Git repositories as ZIP (\commitLink{a8c2da4c544b10a493d67c515a5fca191222ba29}).}
  \item{Avoid returning an internal server error when using paging in the API (\commitLink{2629ef56ff43946067edf7e147f48867830691f6}).}
  \item{Fix lay-out bug on the landing pages (\commitLink{a3ff6a54ee80359ad3d2299e968ab28766b86505}).}
  \item{Fix bug when filtering on groups in the API (\commitLink{187f4344f5d0e50bcf7063f28dda9bfccc8229ae}).}
\end{itemize}
\subsection*{Technical debt}
\begin{itemize}
  \item{Refactor parts of the codebase (\commitLink{0370836d5bdff62f04f5815893658284aff3ca48},
      \commitLink{dd7602a66691840ffe6c2d444a36dd4256c23627}, \commitLink{aa8eda2fc0b5cf65cd38d4002d358e65312a845d},
      \commitLink{3fb51635c82ad612681db5a3244d93e62cd8f616}, \commitLink{dd6ccca45a7505b96e002a2bb79fc75b5384570c},
      \commitLink{58c1fcedcec678d27c1d0daf9559dfab45fdb8f6})}
  \item{Reduce build-system files (\commitLink{e73966fede6e1e2fc8ea2256f107b650a23400a0}).}
  \item{Bump the minimal required Python version to 3.9 (\commitLink{208c7e08f6162fd78a456079e079d5f609f67e68}).}
\end{itemize}
