Skip to content

chore(release): 1.1.0 - #186

Merged
dangreen merged 1 commit into
mainfrom
simple-release
Aug 3, 2026
Merged

chore(release): 1.1.0#186
dangreen merged 1 commit into
mainfrom
simple-release

Conversation

@github-actions

@github-actions github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

nano_kit

1.1.0 (2026-08-03)

✨ Highlights

Self-closing tags in rich text (@nano_kit/intl)

rich (and mapTags) now understand self-closing tags like <br/> and <br /> — handy for line breaks and other void elements in translations. Handlers for such tags are called with empty chunks. Unknown self-closing tags are still stripped as markup.

const [$t] = messages('pages', {
  sticker: rich({
    br: () => '\n'
  })
})

// 'First line<br/>second line' → ['First line', '\n', 'second line']

Rich tag handlers receive an unique index (@nano_kit/intl)

Every tag handler now gets an unique index as the second argument — use it as a key for framework nodes:

const [$t] = messages('pages', {
  sticker: rich({
    title: (chunks, i) => <strong key={i}>{chunks}</strong>,
    br: (_, i) => <br key={i} />
  })
})

No more key warnings and Children.toArray(t.sticker) workarounds in React.

Bonus: mapTags is now reentrant — nested calls from tag handlers no longer clobber the outer call's parsing state.

Features

  • intl: pass unique index to rich tag handlers to use as framework key (#187) (5b4008b)
  • intl: support self-closing tags in rich-text formatter (#185) (fa4fcb8)

@nano_kit/intl

1.1.0 (2026-08-03)

✨ Highlights

Self-closing tags in rich text (@nano_kit/intl)

rich (and mapTags) now understand self-closing tags like <br/> and <br /> — handy for line breaks and other void elements in translations. Handlers for such tags are called with empty chunks. Unknown self-closing tags are still stripped as markup.

const [$t] = messages('pages', {
  sticker: rich({
    br: () => '\n'
  })
})

// 'First line<br/>second line' → ['First line', '\n', 'second line']

Rich tag handlers receive an unique index (@nano_kit/intl)

Every tag handler now gets an unique index as the second argument — use it as a key for framework nodes:

const [$t] = messages('pages', {
  sticker: rich({
    title: (chunks, i) => <strong key={i}>{chunks}</strong>,
    br: (_, i) => <br key={i} />
  })
})

No more key warnings and Children.toArray(t.sticker) workarounds in React.

Bonus: mapTags is now reentrant — nested calls from tag handlers no longer clobber the outer call's parsing state.

Features

  • pass unique index to rich tag handlers to use as framework key (#187) (5b4008b)
  • support self-closing tags in rich-text formatter (#185) (fa4fcb8)

This PR was generated with simple-release.

📄 Cheatsheet

You can configure the bot's behavior through a pull request comment using the !simple-release/set-options command.

Command Format

!simple-release/set-options

```json
{
  "bump": {},
  "publish": {}
}
```

Useful Parameters

Bump

Parameter Type Description
version string Force set specific version
as 'major' | 'minor' | 'patch' | 'prerelease' Release type
prerelease string Pre-release identifier (e.g., "alpha", "beta")
firstRelease boolean Whether this is the first release
skip boolean Skip version bump
byProject Record<string, object> Per-project bump options for monorepos

Publish

Parameter Type Description
skip boolean Skip publishing
access 'public' | 'restricted' Package access level
tag string Tag for npm publication

Usage Examples

Force specific version

!simple-release/set-options

```json
{
  "bump": {
    "version": "2.0.0"
  }
}
```

Force major bump

!simple-release/set-options

```json
{
  "bump": {
    "as": "major"
  }
}
```

Create alpha pre-release

!simple-release/set-options

```json
{
  "bump": {
    "prerelease": "alpha"
  }
}
```

Publish with specific access and tag

!simple-release/set-options

```json
{
  "bump": {
    "prerelease": "beta"
  },
  "publish": {
    "access": "public",
    "tag": "beta"
  }
}
```

Custom Changelog Preamble

You can add custom markdown to the top of the changelog (right after the version header) using the !simple-release/set-preamble command. The markdown after the command line becomes the preamble.

!simple-release/set-preamble

## What's new?

- The website was completely redesigned
- The new API gives you awesome possibilities

In a monorepo, pass the full package name after the command to target a single package's changelog. Wrap the name in backticks so GitHub keeps it as text instead of a mention:

!simple-release/set-preamble `@your-org/core`

## Core changes

- New plugin system

Use one comment per package, plus one without a name for the whole release.

Access Restrictions

The commands can only be used by users with permissions:

  • repository owner
  • organization member
  • collaborator

Notes

  • The last comment with !simple-release/set-options command takes priority
  • The last !simple-release/set-preamble comment per package takes priority
  • JSON must be valid, otherwise the set-options command will be ignored
  • Parameters apply only to the current release execution
  • The commands can be updated by editing the comment or adding a new one

@dangreen
dangreen marked this pull request as ready for review August 3, 2026 14:08
@codecov

codecov Bot commented Aug 3, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.96%. Comparing base (5b4008b) to head (7a08843).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #186   +/-   ##
=======================================
  Coverage   83.96%   83.96%           
=======================================
  Files         138      138           
  Lines        2988     2988           
  Branches      564      564           
=======================================
  Hits         2509     2509           
  Misses        340      340           
  Partials      139      139           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@dangreen

dangreen commented Aug 3, 2026

Copy link
Copy Markdown
Member

!simple-release/set-preamble

✨ Highlights

Self-closing tags in rich text (@nano_kit/intl)

rich (and mapTags) now understand self-closing tags like <br/> and <br /> — handy for line breaks and other void elements in translations. Handlers for such tags are called with empty chunks. Unknown self-closing tags are still stripped as markup.

const [$t] = messages('pages', {
  sticker: rich({
    br: () => '\n'
  })
})

// 'First line<br/>second line' → ['First line', '\n', 'second line']

Rich tag handlers receive an unique index (@nano_kit/intl)

Every tag handler now gets an unique index as the second argument — use it as a key for framework nodes:

const [$t] = messages('pages', {
  sticker: rich({
    title: (chunks, i) => <strong key={i}>{chunks}</strong>,
    br: (_, i) => <br key={i} />
  })
})

No more key warnings and Children.toArray(t.sticker) workarounds in React.

Bonus: mapTags is now reentrant — nested calls from tag handlers no longer clobber the outer call's parsing state.

@dangreen
dangreen merged commit 3d2aec6 into main Aug 3, 2026
@dangreen
dangreen deleted the simple-release branch August 3, 2026 14:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant