Skip to content

feat!: migrate to Bun, publish ESM-only exports, add framework integr… - #30

Merged
dschewchenko merged 1 commit into
mainfrom
v3
Dec 19, 2025
Merged

dschewchenko merged 1 commit into
mainfrom
v3

Conversation

@dschewchenko

Copy link
Copy Markdown
Owner

…ations

  • Tooling: switch scripts/CI to Bun

  • Packaging: ESM-only build, modern exports map + wildcard subpath exports for integrations (permask/)

  • Integrations: express, fastify, h3, nitro, nestjs, hono, koa, itty-router, elysia (thin adapters)

  • Core: add PermaskError, base64 helpers, portable packBitmasks/unpackBitmasks, add formatBitmask

    BREAKING CHANGE: package is ESM-only (CJS/UMD entry points removed)
    BREAKING CHANGE: unpackBitmasks now throws PermaskError on invalid input
    BREAKING CHANGE: createPermask().create now throws PermaskError for unknown groups

…ations

- Tooling: switch scripts/CI to Bun
- Packaging: ESM-only build, modern exports map + wildcard subpath exports for integrations (permask/<integration>)
- Integrations: express, fastify, h3, nitro, nestjs, hono, koa, itty-router, elysia (thin adapters)
- Core: add PermaskError, base64 helpers, portable packBitmasks/unpackBitmasks, add formatBitmask

  BREAKING CHANGE: package is ESM-only (CJS/UMD entry points removed)
  BREAKING CHANGE: unpackBitmasks now throws PermaskError on invalid input
  BREAKING CHANGE: createPermask().create now throws PermaskError for unknown groups
@github-actions

Copy link
Copy Markdown

Coverage Report

Status Category Percentage Covered / Total
🔵 Lines 92.59% 275 / 297
🔵 Statements 92.87% 300 / 323
🔵 Functions 95.95% 95 / 99
🔵 Branches 87.02% 114 / 131
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
src/errors.ts 100% 100% 100% 100%
src/index.ts 100% 100% 100% 100%
src/permask.ts 100% 100% 100% 100%
src/constants/permission.ts 100% 100% 100% 100%
src/integrations/elysia/index.ts 100% 100% 100% 100%
src/integrations/elysia/options.ts 100% 100% 100% 100%
src/integrations/express/index.ts 100% 87.5% 100% 100%
src/integrations/express/options.ts 100% 100% 100% 100%
src/integrations/fastify/index.ts 100% 100% 100% 100%
src/integrations/fastify/options.ts 100% 100% 100% 100%
src/integrations/h3/index.ts 100% 100% 100% 100%
src/integrations/h3/options.ts 100% 100% 100% 100%
src/integrations/hono/index.ts 100% 100% 100% 100%
src/integrations/hono/options.ts 100% 100% 100% 100%
src/integrations/itty-router/index.ts 100% 100% 100% 100%
src/integrations/itty-router/options.ts 100% 100% 100% 100%
src/integrations/koa/index.ts 100% 100% 100% 100%
src/integrations/koa/options.ts 100% 100% 100% 100%
src/integrations/nestjs/index.ts 97.22% 81.81% 100% 96.96% 228
src/integrations/nestjs/options.ts 100% 100% 100% 100%
src/integrations/nitro/index.ts 100% 100% 100% 100%
src/utils/base64.ts 51.61% 30% 100% 50% 16-28, 44-54
src/utils/bitmask.ts 84.84% 100% 80% 82.14% 31-45, 88-89
src/utils/format.ts 100% 93.33% 100% 100%
src/utils/pack.ts 96.29% 86.66% 100% 95.91% 57-59, 93
Generated in workflow #66 for commit c727e88 by the Vitest Coverage Report Action

@dschewchenko
dschewchenko merged commit 29e4ccd into main Dec 19, 2025
1 check passed
@dschewchenko
dschewchenko deleted the v3 branch December 19, 2025 16:05
github-actions Bot pushed a commit that referenced this pull request Dec 19, 2025
# [3.0.0](v2.1.1...v3.0.0) (2025-12-19)

* feat!: migrate to Bun, publish ESM-only exports, add framework integrations ([#30](#30)) ([29e4ccd](29e4ccd))

### BREAKING CHANGES

* package is ESM-only (CJS/UMD entry points removed)
* unpackBitmasks now throws PermaskError on invalid input
* createPermask().create now throws PermaskError for unknown groups
dschewchenko added a commit that referenced this pull request Dec 19, 2025
…ations (#30)

- Tooling: switch scripts/CI to Bun
- Packaging: ESM-only build, modern exports map + wildcard subpath exports for integrations (permask/<integration>)
- Integrations: express, fastify, h3, nitro, nestjs, hono, koa, itty-router, elysia (thin adapters)
- Core: add PermaskError, base64 helpers, portable packBitmasks/unpackBitmasks, add formatBitmask

  BREAKING CHANGE: package is ESM-only (CJS/UMD entry points removed)
  BREAKING CHANGE: unpackBitmasks now throws PermaskError on invalid input
  BREAKING CHANGE: createPermask().create now throws PermaskError for unknown groups
dschewchenko added a commit that referenced this pull request Dec 19, 2025
…ations (#30) (#32)

- Tooling: switch scripts/CI to Bun
- Packaging: ESM-only build, modern exports map + wildcard subpath exports for integrations (permask/<integration>)
- Integrations: express, fastify, h3, nitro, nestjs, hono, koa, itty-router, elysia (thin adapters)
- Core: add PermaskError, base64 helpers, portable packBitmasks/unpackBitmasks, add formatBitmask

  BREAKING CHANGE: package is ESM-only (CJS/UMD entry points removed)
  BREAKING CHANGE: unpackBitmasks now throws PermaskError on invalid input
  BREAKING CHANGE: createPermask().create now throws PermaskError for unknown groups
github-actions Bot pushed a commit that referenced this pull request Dec 19, 2025
# [3.0.0](v2.1.1...v3.0.0) (2025-12-19)

* feat!: migrate to Bun, publish ESM-only exports, add framework integrations ([#30](#30)) ([#32](#32)) ([31df744](31df744))

### BREAKING CHANGES

* package is ESM-only (CJS/UMD entry points removed)
* unpackBitmasks now throws PermaskError on invalid input
* createPermask().create now throws PermaskError for unknown groups
github-actions Bot pushed a commit that referenced this pull request Jul 16, 2026
# [3.0.0](v2.1.1...v3.0.0) (2026-07-16)

* feat!: migrate to Bun, publish ESM-only exports, add framework integrations ([#30](#30)) ([#32](#32)) ([31df744](31df744))

### BREAKING CHANGES

* package is ESM-only (CJS/UMD entry points removed)
* unpackBitmasks now throws PermaskError on invalid input
* createPermask().create now throws PermaskError for unknown groups
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