Skip to content

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

Merged
dschewchenko merged 1 commit intomainfrom
v3
Dec 19, 2025
Merged

feat!: migrate to Bun, publish ESM-only exports, add framework integr…#30
dschewchenko merged 1 commit intomainfrom
v3

Conversation

@dschewchenko
Copy link
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

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
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