commits
Add unit tests for markdown.ts and make frontmatter optional: parseFrontmatter
now extracts title from headings when no frontmatter is present,
and updateFrontmatterWithAtUri creates a new frontmatter block when none exists.
Upload local images as blobs and replace paths with CIDs in markdown content.
Remove links to unpublished notes to avoid dangling references.
github.action_repository/ref inside a composite action resolve to the
current step's action (actions/checkout), not the parent composite
action. Use github.action_path which points to the already-downloaded
action source.
The state file is rebuilt from the PDS by `sequoia sync` on every run,
so committing it is unnecessary and caused failures when .gitignore
blocked the `git add`.
The CLI uses crypto.subtle in getContentHash() but relied on the
Bun-global crypto object. This fails in Node.js environments (e.g.
GitHub Actions). Explicitly importing from node:crypto works in both.
Allows users to publish their content to ATProtocol by adding
a single step to their GitHub Actions workflow. Includes state
sync, publish, and optional commit-back of updated frontmatter.
Also fixes a bug I just noticed in the Subscribe help page.
`updateDocument` previously built a fresh record from frontmatter only and called `putRecord`, silently dropping any PDS-side fields such as `bskyPostRef`. This broke the `<sequoia-comments>` web component after the first re-publish.
Fix: fetch the existing record with `getRecord` before writing, spread its fields into the new record, then overwrite with the fresh frontmatter-derived values. This preserves all PDS-side fields while still updating the document content correctly.
Fixes stevedylandev/sequoia#5
Biome can use .editorconfig, so use consistent settings. Also refactors biome.json to use ubiquitously in the project.
Unfortunately, markdown files - which we can hopefully associate .mdx files with - aren't supported yet. See https://github.com/biomejs/biome/issues/3718.
Fixes #15, parsing YAML and TOML using dedicated libraries that support multiline strings correctly.
Also adds tests that were run before and after changes. Multiline string tests expectedly failed before.
Added a `--verbose` flag to `publish` that shows the post URL. Unfortunately, the resolved source path may not be the rended page path, but at least the CLI will show it now.
`updateDocument` previously built a fresh record from frontmatter only and called `putRecord`, silently dropping any PDS-side fields such as `bskyPostRef`. This broke the `<sequoia-comments>` web component after the first re-publish.
Fix: fetch the existing record with `getRecord` before writing, spread its fields into the new record, then overwrite with the fresh frontmatter-derived values. This preserves all PDS-side fields while still updating the document content correctly.
Fixes stevedylandev/sequoia#5