umberto 10.7.5 → 10.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
Changelog
|
|
2
2
|
=========
|
|
3
3
|
|
|
4
|
+
## [10.8.0](https://github.com/cksource/umberto/compare/v10.7.5...v10.8.0) (September 7, 2026)
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* Added support for the `llmsTxtProjects` configuration option, which lists the projects that publish an `llms.txt` index. Documentation pages in the Gloria theme now emit `<link rel="alternate" type="text/markdown">` for their own `.md` counterpart, and pages of a listed project also emit `<link rel="describedby">` for that project's index. The documentation landing page points at the `llms.txt` file of the website instead.
|
|
9
|
+
|
|
10
|
+
|
|
4
11
|
## [10.7.5](https://github.com/cksource/umberto/compare/v10.7.4...v10.7.5) (August 13, 2026)
|
|
5
12
|
|
|
6
13
|
### Bug fixes
|
|
@@ -32,17 +39,6 @@ Changelog
|
|
|
32
39
|
|
|
33
40
|
* Replaced webpack with Rolldown for building theme scripts. The theme bundles are now built as ES modules with code splitting and loaded via `<script type="module">`, keeping dynamically imported dependencies (such as the shiki grammars in the Gloria theme) in separate, lazily loaded chunks. The output targets ES2022 instead of the Babel-transpiled ES5, and `webpack`, `babel-loader`, `@babel/core`, and `@babel/preset-env` are no longer dependencies of the package.
|
|
34
41
|
|
|
35
|
-
|
|
36
|
-
## [10.7.1](https://github.com/cksource/umberto/compare/v10.7.0...v10.7.1) (July 15, 2026)
|
|
37
|
-
|
|
38
|
-
### Bug fixes
|
|
39
|
-
|
|
40
|
-
* Fixed source links for CKEditor 5 packages in API documentation so they now point to the public repository. Links for the latest documentation point to the `master` branch, and links for LTS documentation point to the matching `release-v*` branch.
|
|
41
|
-
|
|
42
|
-
### Other changes
|
|
43
|
-
|
|
44
|
-
* Improved the performance of the documentation build. Pug templates of XML components used in Markdown are now compiled once and reused across pages, instead of being recompiled for every component occurrence. This shortens the page generation phase by about 20%.
|
|
45
|
-
|
|
46
42
|
---
|
|
47
43
|
|
|
48
44
|
To see all releases, visit the [release page](https://github.com/cksource/umberto/releases).
|
package/package.json
CHANGED
|
@@ -107,6 +107,7 @@ export const projectLocals = ( ctx, {
|
|
|
107
107
|
disableSearch,
|
|
108
108
|
shouldInjectNoIndexMeta,
|
|
109
109
|
og,
|
|
110
|
+
llmsTxtProjects,
|
|
110
111
|
quickNavigationProjects,
|
|
111
112
|
navigationShowEmptyCategories
|
|
112
113
|
} = {} ) => {
|
|
@@ -197,5 +198,6 @@ export const projectLocals = ( ctx, {
|
|
|
197
198
|
locals.isLts = /\/ckeditor5\/(lts-v\d+)(?:\/|$)/.test( `/${ locals.path }` );
|
|
198
199
|
|
|
199
200
|
locals.mainOg = og || {};
|
|
201
|
+
locals.llmsTxtProjects = llmsTxtProjects || [];
|
|
200
202
|
} );
|
|
201
203
|
};
|
|
@@ -156,6 +156,7 @@ export const buildDocumentation = options => {
|
|
|
156
156
|
extraStyles,
|
|
157
157
|
extraScripts,
|
|
158
158
|
og: mainConfig.og,
|
|
159
|
+
llmsTxtProjects: mainConfig.llmsTxtProjects || [],
|
|
159
160
|
additionalDocumentation: mainConfig.additionalDocumentation,
|
|
160
161
|
canonicalUrlBeginning: mainConfig.canonicalUrlBeginning,
|
|
161
162
|
macrosVariables: mainConfig.variables,
|
|
@@ -321,6 +322,7 @@ async function buildProjects( rootPath, projectPaths, options = {} ) {
|
|
|
321
322
|
vwo: options.vwo,
|
|
322
323
|
feedbackWidget: options.feedbackWidget,
|
|
323
324
|
og: options.og,
|
|
325
|
+
llmsTxtProjects: options.llmsTxtProjects,
|
|
324
326
|
canonicalUrlBeginning: options.canonicalUrlBeginning,
|
|
325
327
|
macrosVariables: options.macrosVariables,
|
|
326
328
|
quickNavigationProjects: options.quickNavigationProjects
|
|
@@ -343,6 +345,7 @@ async function buildProjects( rootPath, projectPaths, options = {} ) {
|
|
|
343
345
|
vwo: options.vwo,
|
|
344
346
|
feedbackWidget: options.feedbackWidget,
|
|
345
347
|
og: options.og,
|
|
348
|
+
llmsTxtProjects: options.llmsTxtProjects,
|
|
346
349
|
canonicalUrlBeginning: options.canonicalUrlBeginning,
|
|
347
350
|
macrosVariables: options.macrosVariables,
|
|
348
351
|
quickNavigationProjects: options.quickNavigationProjects
|
|
@@ -405,6 +408,7 @@ async function buildProjects( rootPath, projectPaths, options = {} ) {
|
|
|
405
408
|
extraScriptsPaths: extraScripts,
|
|
406
409
|
disableSearch: options.disableSearch,
|
|
407
410
|
og: options.og,
|
|
411
|
+
llmsTxtProjects: options.llmsTxtProjects,
|
|
408
412
|
// Force displaying empty categories in the navigation tree when the documentation is being built partially.
|
|
409
413
|
navigationShowEmptyCategories: Array.isArray( guidesToProcess )
|
|
410
414
|
} );
|
|
@@ -515,6 +519,7 @@ async function buildApis( projectConfigs, options = {} ) {
|
|
|
515
519
|
feedbackWidget: options.feedbackWidget,
|
|
516
520
|
pathJoin: upath.join,
|
|
517
521
|
mainOg: options.og || {},
|
|
522
|
+
llmsTxtProjects: options.llmsTxtProjects || [],
|
|
518
523
|
isNightly: options.docSearch?.indexName?.includes( 'nightly' ) || false,
|
|
519
524
|
isLts: /\/ckeditor5\/(lts-v\d+)(?:\/|$)/.test( `/${ BASE_PATH }` )
|
|
520
525
|
},
|
|
@@ -596,7 +601,9 @@ function buildSdks( projectConfigs, options = {} ) {
|
|
|
596
601
|
vwo: options.vwo,
|
|
597
602
|
feedbackWidget: options.feedbackWidget,
|
|
598
603
|
pathJoin: upath.join,
|
|
599
|
-
mainOg: options.og || {}
|
|
604
|
+
mainOg: options.og || {},
|
|
605
|
+
llmsTxtProjects: options.llmsTxtProjects || [],
|
|
606
|
+
isLts: /\/ckeditor5\/(lts-v\d+)(?:\/|$)/.test( `/${ BASE_PATH }` )
|
|
600
607
|
},
|
|
601
608
|
projectConfig: config,
|
|
602
609
|
canonicalUrlBeginning: getCanonicalBeginning( { config, options, hexoManager } )
|
|
@@ -49,6 +49,26 @@ if ( page[ 'dc-description' ] || ogConfig.description )
|
|
|
49
49
|
if page.BASE_PATH && page.BASE_PATH !== '.' && !page.BASE_PATH.includes( 'latest' )
|
|
50
50
|
link( rel = 'canonical' href = page.canonicalUrlBeginning + page.path.replace( page.BASE_PATH, projectLocals.latestBasePath ) )
|
|
51
51
|
|
|
52
|
+
//- The `docs` build writes a Markdown counterpart for `*/latest/**` pages only. That rules out the LTS output,
|
|
53
|
+
//- and it is why these relations cannot sit inside the `canonical` guard above, which skips `latest` projects.
|
|
54
|
+
- const projects = llmsTxtProjects || [];
|
|
55
|
+
- const buildGeneratesMarkdown = projects.length > 0 && !isLts;
|
|
56
|
+
- const markdownProjectKey = page.BASE_PATH && page.BASE_PATH !== '.' ? page.BASE_PATH.split( '/' )[ 0 ] : null;
|
|
57
|
+
- const hasMarkdownVersion = markdownProjectKey && buildGeneratesMarkdown && !page.path.includes( '/getting-started/legacy/' );
|
|
58
|
+
|
|
59
|
+
if hasMarkdownVersion
|
|
60
|
+
link( rel = 'alternate' type = 'text/markdown' href = relative_url( page.path, page.path.replace( /\.html$/, '.md' ) ) )
|
|
61
|
+
|
|
62
|
+
if projects.includes( markdownProjectKey )
|
|
63
|
+
if page.groupId === 'api-reference'
|
|
64
|
+
link( rel = 'describedby' href = 'llms.txt' )
|
|
65
|
+
else
|
|
66
|
+
link( rel = 'describedby' href = relative_url( page.path, markdownProjectKey + '/llms.txt' ) )
|
|
67
|
+
|
|
68
|
+
//- The way in for an agent that arrives from the website rather than from an article.
|
|
69
|
+
else if !markdownProjectKey && mainOg && mainOg.hostname
|
|
70
|
+
link( rel = 'describedby' href = mainOg.hostname + '/llms.txt' )
|
|
71
|
+
|
|
52
72
|
if page.isSnippetPage
|
|
53
73
|
//UMBERTO: SNIPPET: HEAD
|
|
54
74
|
|