create-prenta 1.5.1 → 1.5.2

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,5 +1,11 @@
1
1
  # create-actuate-cms
2
2
 
3
+ ## 1.5.2
4
+
5
+ ### Patch Changes
6
+
7
+ - af9fc45: Cut Astro miss-path latency: parallel `/resolve` post extras, one-query layout inherit, 12s abort on SEO proxy and public redirects, Cache-Control on `/blog`, Server-Timing on `/resolve`, and in-process single-flight for `getPublishedDocument`.
8
+
3
9
  ## 1.5.1
4
10
 
5
11
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"astro-site.d.ts","sourceRoot":"","sources":["../../src/templates/astro-site.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE;IACnC,2EAA2E;IAC3E,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;CACnC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAk5BzB;AAED,qFAAqF;AACrF,wBAAgB,YAAY,CAAC,OAAO,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAErE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAExE"}
1
+ {"version":3,"file":"astro-site.d.ts","sourceRoot":"","sources":["../../src/templates/astro-site.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE;IACnC,2EAA2E;IAC3E,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;CACnC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA06BzB;AAED,qFAAqF;AACrF,wBAAgB,YAAY,CAAC,OAAO,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAErE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAExE"}
@@ -166,7 +166,7 @@ export const {
166
166
  cache: siteCache,
167
167
  });
168
168
  `,
169
- 'src/lib/cms-proxy.ts': `import { rewritePublicOrigin } from '@prenta/core';
169
+ 'src/lib/cms-proxy.ts': `import { DEFAULT_SITE_CLIENT_TIMEOUT_MS, rewritePublicOrigin } from '@prenta/core';
170
170
 
171
171
  /** CMS host origin (no trailing slash). */
172
172
  export function cmsOrigin(): string {
@@ -191,9 +191,25 @@ export async function proxyCmsSeoArtifact(
191
191
  opts: { accept?: string; publicOrigin: string },
192
192
  ): Promise<Response> {
193
193
  const from = cmsOrigin();
194
- const res = await fetch(\`\${from}\${upstreamPath}\`, {
195
- headers: { accept: opts.accept ?? '*/*' },
196
- });
194
+ let res: Response;
195
+ try {
196
+ res = await fetch(\`\${from}\${upstreamPath}\`, {
197
+ headers: { accept: opts.accept ?? '*/*' },
198
+ signal: AbortSignal.timeout(DEFAULT_SITE_CLIENT_TIMEOUT_MS),
199
+ });
200
+ } catch (err) {
201
+ const name = err instanceof Error ? err.name : '';
202
+ if (name === 'TimeoutError' || name === 'AbortError') {
203
+ return new Response('Gateway Timeout', {
204
+ status: 504,
205
+ headers: {
206
+ 'Content-Type': 'text/plain; charset=utf-8',
207
+ 'Cache-Control': 'public, max-age=10, s-maxage=10',
208
+ },
209
+ });
210
+ }
211
+ throw err;
212
+ }
197
213
  const raw = await res.text();
198
214
  const body = rewritePublicOrigin(raw, {
199
215
  publicOrigin: opts.publicOrigin,
@@ -318,9 +334,17 @@ export const prerender = false;
318
334
 
319
335
  import BaseLayout from '../../layouts/BaseLayout.astro';
320
336
  import { getLiveCollection } from 'astro:content';
337
+ import { publicPageCacheControl } from '../../lib/cms';
321
338
 
322
339
  const { entries, error } = await getLiveCollection('posts');
323
340
  const posts = error ? [] : entries;
341
+
342
+ // Do not pin a feed-error page at the CDN for an hour (home / catch-all
343
+ // only set the long TTL after a successful /resolve).
344
+ Astro.response.headers.set(
345
+ 'Cache-Control',
346
+ error ? 'public, max-age=10, s-maxage=10' : publicPageCacheControl(),
347
+ );
324
348
  ---
325
349
  <BaseLayout title="Blog" description="Latest posts from Prenta CMS">
326
350
  <main style="max-width:42rem;margin:2rem auto;padding:0 1rem;font:16px/1.5 system-ui">
@@ -831,7 +855,7 @@ When you add a static marketing/registry page, start with
831
855
 
832
856
  ## Freshness: cache-static + purge-on-publish
833
857
 
834
- Published pages use \`publicPageCacheControl()\` from
858
+ Published pages — including \`/blog\` — use \`publicPageCacheControl()\` from
835
859
  \`@prenta/core/astro/cache\` (**cache-static** defaults:
836
860
  \`s-maxage=3600, stale-while-revalidate=86400\`) and are evicted the moment an
837
861
  editor publishes:
@@ -1 +1 @@
1
- {"version":3,"file":"astro-site.js","sourceRoot":"","sources":["../../src/templates/astro-site.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"astro-site.js","sourceRoot":"","sources":["../../src/templates/astro-site.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-prenta",
3
- "version": "1.5.1",
3
+ "version": "1.5.2",
4
4
  "description": "Scaffold a new Prenta CMS project",
5
5
  "repository": {
6
6
  "type": "git",