Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Nov 14, 2025

Describe the PR

This PR adds publint to validate the package exports and ensure both the main library and Nuxt module work correctly for consumers.

Small replication

Publint runs inline in the build job and validates:

  • Package exports are correctly defined
  • Type definitions are properly exported
  • The package works correctly in various module systems (ESM, CommonJS)

Changes Made:

  • Added publint: ^0.3.15 as a dev dependency to both bootstrap-vue-next and @bootstrap-vue-next/nuxt packages
  • Added publint script to both package.json files
  • Integrated publint into the CI workflow to run inline in the build job after building both packages
  • Added publint task to turbo.json with proper dependency on build task

CI Workflow Structure:

The CI workflow runs publint inline in the build job:

  • Build job: Builds packages, then runs publint validation on both packages inline
  • Test jobs: Run in parallel with build job

This approach keeps build validation in a single job for simplicity.

Testing:

  • ✅ All linting tests pass
  • ✅ All unit tests pass (1643 tests)
  • ✅ Publint runs successfully on both packages
  • ✅ CI integration validated with inline publint execution

Fixes #2908

PR checklist

What kind of change does this PR introduce? (check at least one)

  • Bugfix 🐛 - fix(...)
  • Feature - feat(...)
  • ARIA accessibility - fix(...)
  • Documentation update - docs(...)
  • Other (please describe)

The PR fulfills these requirements:

  • Pull request title and all commits follow the Conventional Commits convention or has an override in this pull request body This is very important, as the CHANGELOG is generated from these messages, and determines the next version type. Pull requests that do not follow conventional commits or do not have an override will be denied
Original prompt

This section details on the original issue you should resolve

<issue_title>Add publint to the build process</issue_title>
<issue_description>### Clear and concise description of the problem

We want to add publint so we can ensure the lib works as its supposed to

Suggested solution

Add publint

Alternative

No response

Additional context

No response</issue_description>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

@bolt-new-by-stackblitz
Copy link

Review PR in StackBlitz Codeflow Run & review this pull request in StackBlitz Codeflow.

@coderabbitai
Copy link

coderabbitai bot commented Nov 14, 2025

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands and usage tips.

@VividLemon
Copy link
Member

@copilot There is also the nuxt package that also needs to be checked

Copy link
Contributor Author

Copilot AI commented Nov 17, 2025

@copilot There is also the nuxt package that also needs to be checked

Added publint to the Nuxt package as well. Both packages now have publint integrated into the build process and CI workflow. (80138d5)

Copilot AI changed the title [WIP] Add publint to the build process Add publint to the build process Nov 17, 2025
@VividLemon VividLemon marked this pull request as ready for review November 17, 2025 19:54
@VividLemon
Copy link
Member

@copilot in the ci yaml file, make the publint a new job that depends on the output of build. Build will make an artifact and upload it for use in the publint job

@pkg-pr-new
Copy link

pkg-pr-new bot commented Nov 17, 2025

bsvn-vite-ts

npm i https://pkg.pr.new/bootstrap-vue-next/bootstrap-vue-next@2909
npm i https://pkg.pr.new/bootstrap-vue-next/bootstrap-vue-next/@bootstrap-vue-next/nuxt@2909

commit: c8fdf0d

Copy link
Contributor Author

Copilot AI commented Nov 17, 2025

@copilot in the ci yaml file, make the publint a new job that depends on the output of build. Build will make an artifact and upload it for use in the publint job

Refactored the CI workflow to create a separate publint job that depends on the build job. The build job now uploads artifacts (dist folders and package.json files) which the publint job downloads and uses for validation. (3b4fec1)

@VividLemon
Copy link
Member

@copilot on second thought, revert the changes that uploads the build file and put the publint command back into the build job

Copy link
Contributor Author

Copilot AI commented Nov 17, 2025

@copilot on second thought, revert the changes that uploads the build file and put the publint command back into the build job

Reverted the artifact upload/download changes. Publint now runs inline in the build job after the build step, as it was before. (c8fdf0d)

@VividLemon VividLemon merged commit 4f85d27 into main Nov 17, 2025
8 checks passed
xvaara added a commit to xvaara/bootstrap-vue-next that referenced this pull request Nov 30, 2025
* upstream/main: (28 commits)
  fix(BToggle)! Remove redundant attribute cleanup & update docs for accessibility attributes on show/hide components (bootstrap-vue-next#2918)
  chore: release main (bootstrap-vue-next#2912)
  fix: allow custom component props in orchestrator create methods with type safety (bootstrap-vue-next#2922)
  fix(BModal): prevent focus trap error when no tabbable elements exist (bootstrap-vue-next#2864)
  Update package description for clarity (bootstrap-vue-next#2917)
  Update project description for clarity and detail
  test: add event emission tests for BTable and BTableLite (bootstrap-vue-next#2915)
  fix(BTableLite): Use primary key to persist row-details state when items change (bootstrap-vue-next#2871)
  chore: release main (bootstrap-vue-next#2896)
  feat(BTable): add configurable debouncing
  ci: Add publint to the build process (bootstrap-vue-next#2909)
  docs(Offcanvas): Parity pass (bootstrap-vue-next#2900)
  fix(directives): Robustness fixes for directives (bootstrap-vue-next#2906)
  docs(BFormInput): document @wheel.prevent for disabling mousewheel events (bootstrap-vue-next#2903)
  fix(typings): Fix paths to `*.d.mts` files (bootstrap-vue-next#2907)
  feat: add name and form props to BFormRating for form submission (bootstrap-vue-next#2895)
  docs: refactor docs to avoid duplication and boilerplate code (bootstrap-vue-next#2891)
  docs(BToast): Parity (bootstrap-vue-next#2887)
  docs(BModal): fix attribute to hide footer (bootstrap-vue-next#2888)
  docs(BPlaceholder): Parity pass (bootstrap-vue-next#2886)
  ...
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.

Add publint to the build process

2 participants