minotor 10.1.0 → 11.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/.cspell.json +1 -0
  2. package/CHANGELOG.md +9 -3
  3. package/README.md +2 -2
  4. package/dist/cli/perf.d.ts +2 -2
  5. package/dist/cli.mjs +440 -669
  6. package/dist/cli.mjs.map +1 -1
  7. package/dist/parser.cjs.js +274 -573
  8. package/dist/parser.cjs.js.map +1 -1
  9. package/dist/parser.esm.js +274 -573
  10. package/dist/parser.esm.js.map +1 -1
  11. package/dist/router.cjs.js +1 -1
  12. package/dist/router.cjs.js.map +1 -1
  13. package/dist/router.d.ts +1 -2
  14. package/dist/router.esm.js +1 -1
  15. package/dist/router.esm.js.map +1 -1
  16. package/dist/router.umd.js +1 -1
  17. package/dist/router.umd.js.map +1 -1
  18. package/dist/routing/query.d.ts +11 -12
  19. package/dist/routing/result.d.ts +9 -5
  20. package/dist/routing/route.d.ts +5 -6
  21. package/dist/routing/router.d.ts +1 -2
  22. package/dist/stops/io.d.ts +1 -1
  23. package/dist/stops/proto/{stops.d.ts → v1/stops.d.ts} +8 -8
  24. package/dist/stops/stops.d.ts +1 -1
  25. package/dist/stops/stopsIndex.d.ts +1 -1
  26. package/dist/timetable/io.d.ts +2 -2
  27. package/dist/timetable/proto/{timetable.d.ts → v1/timetable.d.ts} +18 -17
  28. package/dist/timetable/route.d.ts +7 -10
  29. package/dist/timetable/time.d.ts +64 -115
  30. package/dist/timetable/timetable.d.ts +1 -2
  31. package/package.json +8 -8
  32. package/src/__e2e__/router.test.ts +29 -15
  33. package/src/__e2e__/timetable/stops.bin +2 -2
  34. package/src/__e2e__/timetable/timetable.bin +2 -2
  35. package/src/cli/minotor.ts +1 -2
  36. package/src/cli/perf.ts +20 -17
  37. package/src/cli/repl.ts +30 -22
  38. package/src/gtfs/__tests__/parser.test.ts +13 -11
  39. package/src/gtfs/__tests__/time.test.ts +2 -2
  40. package/src/gtfs/__tests__/transfers.test.ts +18 -19
  41. package/src/gtfs/__tests__/trips.test.ts +43 -49
  42. package/src/gtfs/time.ts +2 -2
  43. package/src/gtfs/transfers.ts +5 -6
  44. package/src/gtfs/trips.ts +5 -5
  45. package/src/router.ts +1 -2
  46. package/src/routing/__tests__/plotter.test.ts +14 -15
  47. package/src/routing/__tests__/result.test.ts +95 -96
  48. package/src/routing/__tests__/route.test.ts +9 -19
  49. package/src/routing/__tests__/router.test.ts +191 -228
  50. package/src/routing/plotter.ts +11 -7
  51. package/src/routing/query.ts +12 -15
  52. package/src/routing/result.ts +55 -22
  53. package/src/routing/route.ts +34 -36
  54. package/src/routing/router.ts +28 -22
  55. package/src/stops/__tests__/stopFinder.test.ts +3 -3
  56. package/src/stops/io.ts +13 -16
  57. package/src/stops/proto/v1/stops.proto +27 -0
  58. package/src/stops/proto/{stops.ts → v1/stops.ts} +41 -54
  59. package/src/stops/stops.ts +1 -1
  60. package/src/stops/stopsIndex.ts +5 -7
  61. package/src/timetable/__tests__/io.test.ts +15 -26
  62. package/src/timetable/__tests__/route.test.ts +31 -43
  63. package/src/timetable/__tests__/time.test.ts +79 -461
  64. package/src/timetable/__tests__/timetable.test.ts +16 -17
  65. package/src/timetable/io.ts +38 -35
  66. package/src/timetable/proto/{timetable.proto → v1/timetable.proto} +29 -28
  67. package/src/timetable/proto/{timetable.ts → v1/timetable.ts} +103 -109
  68. package/src/timetable/route.ts +25 -55
  69. package/src/timetable/time.ts +125 -229
  70. package/src/timetable/timetable.ts +2 -10
  71. package/dist/timetable/duration.d.ts +0 -46
  72. package/src/stops/proto/stops.proto +0 -27
  73. package/src/timetable/duration.ts +0 -78
package/.cspell.json CHANGED
@@ -47,6 +47,7 @@
47
47
  "Métro",
48
48
  "Minotor",
49
49
  "minotor",
50
+ "Mmin",
50
51
  "Moléson",
51
52
  "moleson",
52
53
  "Montjuïc",
package/CHANGELOG.md CHANGED
@@ -1,6 +1,12 @@
1
- # [10.1.0](https://github.com/aubryio/minotor/compare/v10.0.1...v10.1.0) (2026-01-26)
1
+ # [11.0.0](https://github.com/aubryio/minotor/compare/v10.1.0...v11.0.0) (2026-04-13)
2
2
 
3
3
 
4
- ### Features
4
+ ### Performance Improvements
5
5
 
6
- * improved extended gtfs support ([#60](https://github.com/aubryio/minotor/issues/60)) ([5fe7d6f](https://github.com/aubryio/minotor/commit/5fe7d6f91cff2aa98b8304d11ba18ea77bdd5444))
6
+ * use plain numbers to represent times and durations ([#61](https://github.com/aubryio/minotor/issues/61)) ([b72cc6d](https://github.com/aubryio/minotor/commit/b72cc6d2ed7c0ccabc6b0c0c0c0c1e07fd4b77be))
7
+
8
+
9
+ ### BREAKING CHANGES
10
+
11
+ * new protobuf format and versioning scheme incompatible with earlier versions of the
12
+ library.
package/README.md CHANGED
@@ -84,14 +84,14 @@ Or by location:
84
84
  #### Routing (Browser or Node.js)
85
85
 
86
86
  ```
87
- import { Query, Router, Time } from 'minotor';
87
+ import { Query, Router } from 'minotor';
88
88
 
89
89
  const router = new Router(timetable, stopsIndex);
90
90
 
91
91
  const query = new Query.Builder()
92
92
  .from('Parent8504100')
93
93
  .to('Parent8504748')
94
- .departureTime(Time.fromHMS(8,0,0))
94
+ .departureTime(8*60)
95
95
  .maxTransfers(5)
96
96
  .build();
97
97
  const result = router.route(query);
@@ -9,7 +9,7 @@ type PerformanceResult = {
9
9
  * @param filePath
10
10
  * @returns
11
11
  */
12
- export declare const loadQueriesFromJson: (filePath: string) => Query[];
12
+ export declare const loadQueriesFromJson: (filePath: string, stopsIndex: StopsIndex) => Query[];
13
13
  /**
14
14
  *
15
15
  * @param router
@@ -18,7 +18,7 @@ export declare const loadQueriesFromJson: (filePath: string) => Query[];
18
18
  * @param iterations
19
19
  * @returns
20
20
  */
21
- export declare const testRouterPerformance: (router: Router, stopsIndex: StopsIndex, tasks: Query[], iterations: number) => PerformanceResult[];
21
+ export declare const testRouterPerformance: (router: Router, tasks: Query[], iterations: number) => PerformanceResult[];
22
22
  /**
23
23
  *
24
24
  * @param results