Although the package has not reached 1.0, Boolean Private Limited treats the public API as stable from version 0.3.0 onward.
- Minor releases add exports, optional fields, query capabilities, and datasets without removing existing behavior.
- Patch releases contain compatible corrections, documentation, and maintenance changes.
- An export, field, or entry point must be deprecated for at least one minor release before removal.
- A breaking JavaScript or TypeScript API change requires a major release and a migration guide.
- Country, zone, and location IDs are never reassigned. Renames preserve the ID and retain the former name as an alias.
- Data corrections, additions, classifications, and deprecations are normal compatible updates. Applications that require an unchanged snapshot should pin an exact package version.
The legacy Country.dialingCode, Country.nationality, MvLocation.status, and MvLocation.details fields remain supported while their richer plural or structured equivalents are available.
The package publishes equivalent ESM and CommonJS entry points. The minimum Node.js version follows supported Node release lines and is declared in package.json. Browser applications should use ESM so bundlers can select lightweight dataset and per-zone entry points.
The project can move to 1.0 after all of the following are true:
- The API has completed at least one quarterly review cycle without a breaking redesign.
- At least two production applications have exercised the package and query helpers.
- ESM, CommonJS, TypeScript declarations, schemas, and documented entry points remain covered by automated compatibility tests.
- Any remaining pre-1.0 migration guidance is incorporated into the main documentation.
Reaching 1.0 will formalize the existing compatibility promise; it is not intended to trigger a redesign.