Skip to content

Commit 1aa7e09

Browse files
committed
Add CHANGELOG.md
1 parent 135287d commit 1aa7e09

1 file changed

Lines changed: 54 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# Changelog
2+
3+
All notable changes to this project are documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
6+
7+
## [5.0.1] - 2026-02-07
8+
9+
### Added
10+
11+
- **Tests:** New `test/api.test.ts` with coverage for invalid inputs (`set`/`get` with non-string), no-match behavior (`get` returns `null` when no route matches), and edge cases.
12+
13+
---
14+
15+
## [5.0.0] - 2026-02-07
16+
17+
Major release: TypeScript migration, modern tooling, and CI updates.
18+
19+
### Added
20+
21+
- **TypeScript:** Library rewritten in TypeScript; source lives in `src/`, built output in `dist/`. Type definitions shipped via `types` in `package.json`.
22+
- **TypeScript usage:** README and example updated to ESM + `import Parth from 'parth'`. Documented type imports: `ParthOptions`, `ParthResult`.
23+
- **CI:** GitHub Actions workflow (`.github/workflows/ci.yml`) replacing Travis. Runs `dist`, `lint`, `test`, and `verify:publish` on Node 20, 22, and 24.
24+
- **Publish verification:** `verify:publish` script and `test/verify-publish/` (pack, install in a consumer project, run smoke test). Runs automatically after `npm test` via `posttest`.
25+
26+
### Changed
27+
28+
- **API surface:** Default export is the `Parth` class (constructor). No behavioral change from v4 for valid usage.
29+
- **Entry point:** `main` is now `dist/index.js` (compiled from TypeScript). `files` in `package.json` limited to `dist`.
30+
- **Example:** `example.js` replaced by `example.ts` (ESM, TypeScript). Removed the `-l` listing of internal properties.
31+
- **Linting:** ESLint flat config (`eslint.config.mjs`). Config files renamed to `.mjs` (e.g. `jest.config.mjs`).
32+
- **Testing:** Mocha replaced with Jest; tests in `test/**/*.test.ts`.
33+
- **Engines:** Node.js requirement raised to `>=20` (from `>=14`). CI tests on Node 20, 22, and 24.
34+
- **CI branch:** Workflow runs only on `main` (no longer `master`/`main`).
35+
36+
### Removed
37+
38+
- **Travis CI:** `.travis.yml` and Travis badge from README.
39+
- **Legacy JS:** `index.js`, `lib/util.js`, and `.eslintrc` removed in favor of TypeScript and new ESLint config.
40+
- **Dependency:** `lodash.merge` removed; implementation uses `lodash.clonedeep` only.
41+
- **README:** “parth properties” section (e.g. `store`, `regex`) replaced by a short TypeScript section; “todo” section removed.
42+
43+
### Fixed
44+
45+
- **package.json:** `engines` field corrected from a string to a proper object (`"node": ">=20"`).
46+
47+
---
48+
49+
## [4.2.3] and earlier
50+
51+
See git history for changes prior to the v5.0.0 TypeScript migration (e.g. `git log -p` on older tags).
52+
53+
[5.0.1]: https://github.com/stringparser/parth/compare/v5.0.0...v5.0.1
54+
[5.0.0]: https://github.com/stringparser/parth/compare/v4.2.3...v5.0.0

0 commit comments

Comments
 (0)