Skip to content

Commit 629d33d

Browse files
github-actions[bot]daKmoR
authored andcommitted
Version Packages
1 parent 58824bf commit 629d33d

5 files changed

Lines changed: 52 additions & 62 deletions

File tree

.changeset/brave-donuts-blog.md

Lines changed: 0 additions & 9 deletions
This file was deleted.

.changeset/clean-heads-glow.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/lucky-panthers-brush.md

Lines changed: 0 additions & 45 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,56 @@
11
# Changelog
22

3+
## 0.2.0
4+
5+
### Minor Changes
6+
7+
- cf8eecd: Add a full blog system on top of Page Collections:
8+
- **Page Feeds**: archive Pages can export `feed` to publish a Page Collection as an Atom feed at `<page path>/feed.xml`, served in development and emitted during static builds.
9+
- **Static Params**: parameterized static JavaScript Pages can export `staticParams` to enumerate concrete output documents (for example one tag archive per tag) that build statically and join the Sitemap.
10+
- **Atlas blog layouts**: `atlasPostLayout` renders posts with a byline (date, authors, tag links) and `atlasBlogIndexLayout` renders the paginated post list with feed link, both exported from `@rocket/js/layouts/atlasBlog.js`.
11+
12+
- 1d98f7c: Add Atlas Layout Head Content to documentation, hero, blog post, blog index, and not-found layouts. Shared layout data can now define a synchronous `headContent` callback that receives the current `PageData` and returns trusted Lit markup appended at the end of `<head>`.
13+
14+
Rename the document helper's direct head fragment option from `headerContent` to `headContent`. The obsolete name is removed without a compatibility alias.
15+
16+
- 60e2434: Reliability, correctness, and cleanup pass across the framework.
17+
18+
CLI:
19+
- `rocket --help` now shows the `rocket` name, version, and command descriptions.
20+
- Expected errors print a clean message instead of a stack trace (set `ROCKET_DEBUG=1` for the full error).
21+
- Missing `rocket-config.js` now suggests `npx rocket init` instead of failing with `ERR_MODULE_NOT_FOUND`.
22+
- `rocket build --output-dir` refuses to write (and clear) directories outside the project root on every build path.
23+
- `rocket start` now observes the dev-server child process: crashes no longer leave a hung parent, restarts wait for the old process to exit before respawning, and SIGINT/SIGTERM shut down cleanly and restore the terminal.
24+
25+
Core pipeline:
26+
- `node_modules` is excluded from Page discovery again (the guard was unreachable with the default empty `excludeRegex`).
27+
- `PageData` copies Page Metadata per render, so setting `pageData.title` no longer mutates the shared Page Registry across requests.
28+
- Titles derived from paths with a trailing slash (e.g. `/docs/`) no longer fall back to `Home`.
29+
- The generated `import { html } from 'lit'` detection now parses the module instead of using a regex that false-positived on imports like `htmlEscape`.
30+
- A ```js demo code block without exports now reports a clear authoring error instead of crashing.
31+
- `demo label="..."` code blocks are now consistently detected for Standalone Demo URLs.
32+
- Dynamic paths (e.g. `/blog/:slug/`) no longer clobber their parent menu entry.
33+
- Invalid Registered Component `loading` values now fail with an error naming the component.
34+
- `includeGlobs` is validated and the user config object is no longer mutated; config import works on Windows via file URLs.
35+
- `treeFromPages` page trees are computed lazily and route `URLPattern`s are cached per route path.
36+
37+
Components and hydration:
38+
- `hydrate:onHover` now actually hydrates (it was parsed but never wired).
39+
- Click/focus/hover hydration triggers now match light-DOM descendants of the host element.
40+
- The hydration loader no longer leaks a `MediaQueryList` listener per element, and cleanup runs whenever any element hydrated.
41+
- `rocket-drawer` closed state is removed from the tab order and accessibility tree, closes on Escape, and manages focus.
42+
- `rocket-social-link` validates the icon name, caches SVG file reads, and lists supported names in its error.
43+
- The Social Preview Playground prefers the selected Page's title/description, debounces typing, and skips redundant iframe reloads and `history.replaceState` calls.
44+
- The markdown import hook sends module-dependency messages explicitly fire-and-forget (awaiting a reply can deadlock Node's module-hooks thread), and `makeAsyncPort`'s `sendAndWait` now returns the reply promise instead of a resolvers object.
45+
46+
Layouts and generated output:
47+
- The default layout uses `<nav aria-label="Site">` and `<main>` landmarks; `defaultHtmlMenu` renders valid nested lists and no-link sections as text. `treeToHtml` item functions now receive the rendered child list as a fifth argument and must place it inside the returned item.
48+
- The Atlas hero layout no longer injects a hardcoded `/examples` nav link when `navLinks` is not configured.
49+
- The Atlas 404 layout reuses the shared header logo renderer (correct alt text) and guards against a missing logo.
50+
- Social Preview Image builds reuse one Chromium instance across captures, and Linux falls back to a locally installed browser when the bundled Chromium is unavailable.
51+
- Redirect sources/targets containing whitespace are rejected at config time (they would corrupt Netlify `_redirects`).
52+
- The dev server caches Public Asset discovery instead of re-walking `public/` on every request.
53+
354
## 0.1.2
455

556
### Patch Changes

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@rocket/js",
3-
"version": "0.1.2",
3+
"version": "0.2.0",
44
"description": "HTML-first static-site metaframework for content sites and Web Component docs.",
55
"license": "MIT",
66
"type": "module",

0 commit comments

Comments
 (0)