docs: add release notes for ownCloud Classic 10.16.5 and 11.0.1 - #145
Conversation
|
Both were tagged on 2026-09-25 and the release notes stopped at 11.0.0 and 10.16.4, so administrators had no entry for either. Both are security releases. Entries are grouped by the prefix core's own changelog entry carries - Security, Change, Bugfix - rather than re-classified here, and follow the existing patch-release template: the "Dear ownCloud administrator" paragraph, an IMPORTANT admonition, then discrete Security Fixes / Changes / Notable Bugfixes sections. 11.0.1 has 15 entries (3/3/9), 10.16.5 has 12 (4/1/7). Each is cited with the PR the changelog entry itself cites, which for the 10.16 line is the pair of master PR and 10.16 backport. Two items got more than a bullet because they change what an administrator will observe: The Imagick coder pinning (#41834) changes which files get a thumbnail at all. Media types come from the file name extension, so a file whose extension does not match its content now falls back to a media type icon instead of being rendered. That is in a NOTE with the affected extension list, which of those providers are registered on a stock install, and the font extensions that behave differently. It is the one part of either release that can look like a regression. The release tarball repackaging (#41824) matters to anyone who runs `occ integrity:check-app` or an anti-virus gate over the tarball, since `files_antivirus` was shipping its EICAR acceptance data. No Known Issues subsection: no patch-release section since 10.15.0 has one. Verified against the tags rather than transcribed by eye: the package lists and CVE list were diffed programmatically against changelog/10.16.5_2026-09-25/ and changelog/11.0.1_2026-09-25/ in owncloud/core and match exactly (26, 22 and 17 items). All 36 cited core PR/issue numbers were resolved through the API and exist. Worth noting for a future reader: #41676 really is the checkPropFind priority fix even though its title reads "chore(deps): update PHP dependencies" - that PR bundled both, which is why the citation looks wrong and is not. Rendered and checked in the built site: both sections appear in the right descending order, the toc picks them up (53 entries), the NOTE and IMPORTANT admonitions render as admonitions, and no attribute reference or list continuation was left unresolved. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Signed-off-by: Thomas Müller <323649642+oc-tmueller@users.noreply.github.com>
The two attributes that carry a full version into the docker install pages: `latest-server-download-version` in global-attributes.yml, which the 11.0 page uses for the image tag in four places, and the page-local `:docker-image-version:` on the 10.16 page. Both pages tell the reader to pin a full version rather than use `latest`, so the version they name has to move with the release or the advice points at the previous one. Caveat, deliberate: `owncloud/server` on Docker Hub has no 10.16.5 or 11.0.1 tag yet. Its newest are 11.0.0 and 10.16.4 from 2026-09-21. Both bumps are in flight in owncloud-docker/server and the tags appear when those merge, so this documents a tag that is queued rather than one that resolves today. Holding the release notes for it seemed worse than a short window where the docker snippet is ahead. Note that nothing in the test suite guards either attribute: static-files.test.js cross-checks only `latest-*-version`, so `latest-server-download-version` going stale is invisible to CI. That gap is now written down in README.md by #144. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Signed-off-by: Thomas Müller <323649642+oc-tmueller@users.noreply.github.com>
Review follow-up on the 10.16.5 and 11.0.1 sections.
The three closing paragraphs of 10.16.5's dependency security bullet
rendered *inside* the last package row. A `+` continuation after a `**`
item attaches to that item, not to its parent, so "This closes sixteen
advisories…", the dom-sanitizer paragraph and the php-jwt paragraph all
appeared indented under `symfony/routing (v5.4.52 to v5.4.53)` - reading as
if sixteen CVEs, the branch pin and the php-jwt exception were all about
symfony/routing. The prose now precedes the nested list, which is the shape
the 10.16.2 bullet already uses. Verified in the built page: the nested
list is exactly the seven package rows and nothing else.
The `checkPropFind` bullet linked #41676, which is **closed and was never
merged** (`merged: false`, head `sabre-update-20260711`). The change
shipped via #41797, merge commit 23ccb865d6 on 2026-08-30, which carried
`changelog/unreleased/41676` and so kept the abandoned PR's number as the
entry's filename. Core's changelog cites the dead number; reproducing it
faithfully would have sent every reader to an unrelated closed PR, so the
link is #41797 now. This also corrects the previous commit message, which
argued #41676 was right on the strength of its file list alone - the files
matched because that PR authored the fix, but it is not how the fix landed.
10.16.5's Oracle path-hash bullet said the notice is what "PHP 8 reports",
in a section whose release line supports PHP 7.4 only - so it described a
symptom no 10.16 installation can see. It now says that outright, and that
the stored hash was never wrong either way because `md5(null)` coerces to
`md5('')`. The 11.0.1 wording is untouched, where PHP 8 is the runtime and
the original sentence is correct.
Rebuilt: 51 pass, 1 skip, 0 fail. #41676 no longer appears anywhere in the
page.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Signed-off-by: Thomas Müller <323649642+oc-tmueller@users.noreply.github.com>
Round-2 review follow-up, both prose only. The Oracle path-hash deprecation is PHP **8.1**'s - the RFC deprecating null for non-nullable internal parameters - so PHP 8.0 is silent too and "appears on PHP 8" over-claimed in a sentence whose whole point is runtime precision. It also read as though the 10.16 test suite surfaces it, but that suite pins 7.4 on this branch and 7.4 raises nothing; it was found on the 11.x line under PHP 8.3. Both are now stated as such. The `checkPropFind` bullet now names #41676 as well. It is closed and unmerged, so it cannot be the citation, but core's changelog cites it and a reader cross-referencing the two sources otherwise finds nothing that matches - and #41797 is a dependency-bump PR cited twice in the same section. The bullet says which PR authored the change and which one shipped it. Also corrected: the fix ordered `checkPropFind` ahead of listeners of *equal priority*, not "alphabetically" - sabre/event compares priority and nothing else. Rebuilt: 51 pass, 1 skip, 0 fail, no unresolved attribute references. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Signed-off-by: Thomas Müller <323649642+oc-tmueller@users.noreply.github.com>
Both sections are now the heading, the standard "Dear ownCloud administrator" paragraph pointing at the changelog, and a one-line security-release notice matching the wording 10.16.4 already uses. The enumerated Security Fixes / Changes / Notable Bugfixes blocks are gone: they restated the changelog at length, and counting the security fixes in the banner made these releases read as far more alarming than the ones either side of them. The changelog is where that detail belongs and the intro paragraph already links it. That also drops the preview-behaviour NOTE and the dependency and CVE tables. 77 lines become 6 for 11.0.1, 70 become 6 for 10.16.5. Rebuilt: 51 pass, 1 skip, 0 fail. Both sections still appear in the toc, and neither now renders a sub-heading, list or admonition other than the one IMPORTANT. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Signed-off-by: Thomas Müller <323649642+oc-tmueller@users.noreply.github.com>
70bf5f1 to
32fb774
Compare
Resolved —
|
Why
owncloud/coretagged v10.16.5 and v11.0.1 on 2026-09-25. The release notes stopped at 11.0.0 and 10.16.4, so administrators had no entry for either.What
Deliberately short. Each new section is the heading, the standard "Dear ownCloud administrator" paragraph pointing at
{oc-changelog-url}, and a one-line security-release notice using the wording 10.16.4 already uses:No per-entry breakdown. An earlier revision of this branch enumerated all 27 changelog entries across the two releases with prose, dependency tables and the CVE list. That restated the changelog at length, and counting the security fixes in the banner made these two releases read as far more alarming than the ones either side of them. The changelog is where that detail belongs, and the intro paragraph links it.
Docker image pins
latest-server-download-version→11.0.1(the 11.0 install page uses it in four places plusdot.env) and the page-local:docker-image-version:→10.16.5on the 10.16 page. Both pages tell the reader to pin a full version instead of usinglatest, so the version they name has to move with the release.Both tags are live on Docker Hub as of 2026-09-25 13:09Z, via owncloud-docker/server#714 (10.16.5) and owncloud-docker/server#715 (11.0.1) — so nothing here points at a tag that does not resolve.
Nothing in the test suite guards either attribute:
static-files.test.jscross-checks onlylatest-*-version, solatest-server-download-versiongoing stale is invisible to CI. That gap is written down in README.md by #144.Verification
npm run antora && npm test→ 51 pass, 1 skip, 0 fail. Both new sections appear in the TOC in the right descending order and render nothing but the oneIMPORTANT— no sub-heading, list or other admonition. The two docker pages renderowncloud/server:11.0.1andowncloud/server:10.16.5respectively.config-docs-in-syncis red for a pre-existing reason unrelated to this PR and is not a required check — see the comment below.Follow-ups this PR does not take
11.0and11tags that 11.0.0 never had (it only ever published its exact version). The 11.0 docker page could gain a sentence about them. Notelatestdeliberately stays on the 10.x line, so that page's existing "do not uselatest" warning is correct as it stands.v10.16.5bumps sabre/event 5.1.7 → 5.1.9 but does not carry themethod:PROPFINDpriority fix that 11.0.1 has (, 99). 5.1.9 (baadb7cf) replacedarray_multisort, which tie-broke on the listener values, withusorton priority alone.Sabre\DAV\Server::__construct()addsCorePluginbefore ownCloud addsFilesPlugin, both at the default priority, andCorePlugin::httpPropFind()ends inreturn false, which interrupts the chain — whileFilesPlugin::checkPropFind()is what throwsNotFoundwhen aSharedStorageshare lacksPERMISSION_READ, i.e. it guards create-only / file-drop shares. Worth stressing thatusortis unstable on PHP 7.4, the only version 10.16 supports, so the honest claim is "the ordering that fix guarantees is no longer guaranteed", not "the check is bypassed". A PROPFIND against a file-drop share on a10.16.5container settles it.🤖 Generated with Claude Code