GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — [Feature]: Validate the published package with `publint` and `are-the-types-wrong` · Issue #218 · bQuery/bQuery

[Feature]: Validate the published package with publint and are-the-types-wrong #218

New issue
Copy link
New issue
Copy link
Closed
Closed
[Feature]: Validate the published package with publint and are-the-types-wrong#218
Copy link
Labels
buildChanges to the build and meta filesChanges to the build and meta files

Description

@JosunLP
JosunLP
opened on Sep 18, 2026
Issue body actions

Summary

Nothing verifies the exports map, type resolution under each module-resolution mode, or the contents of the published tarball. The exports map has 24 entries and is edited by hand on every new module.

Proposal

Add publint and @arethetypeswrong/cli to the release job, and to the quality job from #212, running against a fresh bun run build. Both are single-command tools.

Why

Both would have surfaced #219 automatically — subpath entries resolve for ESM but not for require, and types is ordered after import in every subpath entry.

Notes

Effort: under a day · Risk: low.

Roadmap item C7; see the audit in #209.

Activity

  1. JosunLP
    added
    buildChanges to the build and meta filesChanges to the build and meta files
    on Sep 18, 2026
  2. JosunLP
    added 5 commits that reference this issue on Sep 20, 2026

    build: drop the attw ignore and close three gaps in the declaration r…

    f4360d3

    build: close the silent-skip paths in the bundle-size check

    de97328

    Merge branch 'dev' into feat/216-bundle-budgets

    6074a54

    build: validate the published package with publint and are-the-types-…

    8e24663

    Merge origin/dev into feat/216-bundle-budgets

    9b8bd92
  3. JosunLP
    closed this as completedon Sep 21, 2026
  4. JosunLP commented on Sep 21, 2026

    @JosunLP
    JosunLP
    on Sep 21, 2026 – with Claude
    CollaboratorAuthor
    More actions

    Done in #236, merged to dev as 8e24663.

    Your prediction held: publint reported all 23 types-ordering errors from #219 verbatim. It also found a third problem the audit had missed, which #236 fixed as well — 315 × InternalResolutionError: every emitted .d.ts used extensionless relative imports, a hard TS2834 for any consumer with skipLibCheck: false.

    Measured against a real consumer (moduleResolution: nodenext, skipLibCheck: false):

    before: dist/index.d.ts(10,15): error TS2834 ... (×12 shown, tsc exit 2)
    after:  tsc exit 0
    

    Fixed by post-processing the declarations (scripts/postbuild-types.mjs) rather than adding .js extensions across src/ — only the declarations need it, and the rewrite only appends an extension when the target actually exists in dist/.

    A correction I owe this thread. An earlier revision of #236 claimed a .d.cts twin produced green tooling over broken types, and left false-esm ignored on that basis. That conclusion came from testing a single copied declaration, which does push TS1479 one level down. A full .d.cts tree with every specifier resolved to .cjs type-checks cleanly — 0 errors with and without skipLibCheck. That tree shipped in #234, so --ignore-rules false-esm is gone and publint now reports "All good!".

    check:publish runs in the PR gate, the publish workflow and prepublishOnly.

    Closing on merge to dev; it ships with the next release to main.


    Generated by Claude Code

  5. JosunLP
    added 3 commits that reference this issue on Sep 21, 2026

    build: validate the published package with publint and are-the-types-…

    This issue will close once commit 656e795 is merged into the 'main' branch.
    656e795

    release: 1.17.0

    This issue will close once commit f4e7a86 is merged into the 'main' branch.
    f4e7a86

    release: 1.17.0 (#245)

    This issue will close once commit 71a7d16 is merged into the 'main' branch.
    71a7d16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    buildChanges to the build and meta filesChanges to the build and meta files

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      You are visitor 01402520 — GeezerVison does not store the pages you look up.
      Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.