CARVIEW |
Select Language
HTTP/2 200
date: Mon, 14 Jul 2025 18:42:50 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
x-repository-download: git clone https://github.com/w3c/epubcheck.git
etag: W/"86cc2dab622127f49e11f1e9785a96b9"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=y3h46iUldH%2BLohX%2Bqg3edPjttQ4kARaF%2BSS6DciwPEgVu1hypJ93%2Fi3DhHj4GY1WkJWg6NZB7x%2Fnp5GtcuVHO9uq%2BmhIxUQOK7Rf3FlACoEtbq5Fc6Zfw%2FcoPaTIgmQ%2B4J9cTU%2F58G3WrOtKosbRI1jpY7Wo2oOP70RrZDqvX%2B8fDI37JVnogHqqfDmG4LX8MzckbzFG7%2FD5Rxvo8gdg0L5h5w0f82aAsj9FIBhaZ2ZcFDXrQHhEapRdJlKBssIWFs5RrcV1TxYEeAQgfIGraA%3D%3D--7Op4%2FascDtZVbE6y--6aH8ybaB3U2%2BrNH4sqLfBQ%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.2128804896.1752518569; Path=/; Domain=github.com; Expires=Tue, 14 Jul 2026 18:42:49 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Tue, 14 Jul 2026 18:42:49 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: C6A2:1CB426:15F7FED:1B182B2:68754FA9
feat: check file name uniqueness wiht Unicode canonical case fold nor… · w3c/epubcheck@111e772 · GitHub
Copy file name to clipboardExpand all lines: src/main/java/com/adobe/epubcheck/messages/DefaultSeverities.java
Copy file name to clipboardExpand all lines: src/main/java/com/adobe/epubcheck/messages/MessageId.java
Copy file name to clipboardExpand all lines: src/main/java/com/adobe/epubcheck/ocf/OCFChecker.java
Copy file name to clipboard
Copy file name to clipboardExpand all lines: src/main/resources/com/adobe/epubcheck/messages/MessageBundle.properties
Copy file name to clipboard
Copy file name to clipboard
Copy file name to clipboardExpand all lines: src/test/resources/epub3/04-ocf/ocf.feature
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 418
Commit 111e772
committed
feat: check file name uniqueness wiht Unicode canonical case fold normalization
This commit changes the OCF container file name uniqueness check to
perform the Unicode canonical case fold normalization step defined in
https://www.w3.org/TR/charmod-norm/#CanonicalFoldNormalizationStep
That is, we normalize the file name to NFD then apply full case folding
before checking for uniqueness.
Previously the behaviors was:
- we checked for uniqueness of the lower case form (String.toLowerCase)
- we checked for uniqueness of the NFC-normalized lower case
This was flawed, since String.toLowerCase is not equivalent to Unicode
full case folding.
Also, previously, only a warning (OPF-061) was reported when names
were not unique after NFC normalization. This is now an error, using
the same code as the other uniqueness failures (OPF-060).
This commit removes OPF-061, which is no longer used.
Fixes #12461 parent bfd30b5 commit 111e772Copy full SHA for 111e772
File tree
Expand file treeCollapse file tree
10 files changed
+69
-25
lines changedFilter options
- src
- main
- java
- com/adobe/epubcheck
- messages
- ocf
- org/w3c/epubcheck/util/text
- resources/com/adobe/epubcheck/messages
- test/resources/epub3/04-ocf
- files
Expand file treeCollapse file tree
10 files changed
+69
-25
lines changedsrc/main/java/com/adobe/epubcheck/messages/DefaultSeverities.java
Copy file name to clipboardExpand all lines: src/main/java/com/adobe/epubcheck/messages/DefaultSeverities.java-1Lines changed: 0 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
248 | 248 |
| |
249 | 249 |
| |
250 | 250 |
| |
251 |
| - | |
252 | 251 |
| |
253 | 252 |
| |
254 | 253 |
| |
|
src/main/java/com/adobe/epubcheck/messages/MessageId.java
Copy file name to clipboardExpand all lines: src/main/java/com/adobe/epubcheck/messages/MessageId.java-1Lines changed: 0 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
242 | 242 |
| |
243 | 243 |
| |
244 | 244 |
| |
245 |
| - | |
246 | 245 |
| |
247 | 246 |
| |
248 | 247 |
| |
|
src/main/java/com/adobe/epubcheck/ocf/OCFChecker.java
Copy file name to clipboardExpand all lines: src/main/java/com/adobe/epubcheck/ocf/OCFChecker.java+13-16Lines changed: 13 additions & 16 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
25 | 25 |
| |
26 | 26 |
| |
27 | 27 |
| |
28 |
| - | |
29 | 28 |
| |
30 | 29 |
| |
31 | 30 |
| |
32 |
| - | |
33 | 31 |
| |
34 | 32 |
| |
35 | 33 |
| |
36 | 34 |
| |
37 | 35 |
| |
38 | 36 |
| |
39 | 37 |
| |
| 38 | + | |
40 | 39 |
| |
41 | 40 |
| |
42 | 41 |
| |
| |||
296 | 295 |
| |
297 | 296 |
| |
298 | 297 |
| |
299 |
| - | |
300 |
| - | |
301 |
| - | |
302 |
| - | |
303 |
| - | |
304 |
| - | |
305 |
| - | |
306 |
| - | |
307 |
| - | |
308 |
| - | |
309 |
| - | |
310 |
| - | |
311 | 298 |
| |
312 | 299 |
| |
313 | 300 |
| |
| |||
318 | 305 |
| |
319 | 306 |
| |
320 | 307 |
| |
321 |
| - | |
| 308 | + | |
322 | 309 |
| |
323 |
| - | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
324 | 321 |
| |
325 | 322 |
| |
326 | 323 |
| |
|
src/main/java/org/w3c/epubcheck/util/text/UnicodeUtils.java
Copy file name to clipboard+39Lines changed: 39 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + |
src/main/resources/com/adobe/epubcheck/messages/MessageBundle.properties
Copy file name to clipboardExpand all lines: src/main/resources/com/adobe/epubcheck/messages/MessageBundle.properties+1-2Lines changed: 1 addition & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
238 | 238 |
| |
239 | 239 |
| |
240 | 240 |
| |
241 |
| - | |
242 |
| - | |
| 241 | + | |
243 | 242 |
| |
244 | 243 |
| |
245 | 244 |
| |
|
File renamed without changes.
File renamed without changes.
src/test/resources/epub3/04-ocf/files/ocf-filename-duplicate-after-compatibility-normalization-valid.epub
Copy file name to clipboard1.78 KB
Binary file not shown.
src/test/resources/epub3/04-ocf/files/ocf-filename-duplicate-after-full-case-folding-error.epub
Copy file name to clipboard1.81 KB
Binary file not shown.
src/test/resources/epub3/04-ocf/ocf.feature
Copy file name to clipboardExpand all lines: src/test/resources/epub3/04-ocf/ocf.feature+16-5Lines changed: 16 additions & 5 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
29 | 29 |
| |
30 | 30 |
| |
31 | 31 |
| |
32 |
| - | |
33 |
| - | |
| 32 | + | |
| 33 | + | |
34 | 34 |
| |
35 | 35 |
| |
36 | 36 |
| |
37 | 37 |
| |
38 |
| - | |
39 |
| - | |
40 |
| - | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
41 | 47 |
| |
42 | 48 |
| |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
43 | 54 |
| |
44 | 55 |
| |
45 | 56 |
| |
|
You can’t perform that action at this time.
0 commit comments