keep-a-changelog 2.3.0 → 2.4.1

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 (207) hide show
  1. package/CHANGELOG.md +17 -2
  2. package/README.md +20 -6
  3. package/esm/_dnt.shims.js +0 -1
  4. package/esm/deps/deno.land/std@0.203.0/semver/_shared.d.ts +42 -0
  5. package/esm/deps/deno.land/std@0.203.0/semver/_shared.js +230 -0
  6. package/esm/deps/deno.land/std@0.203.0/semver/cmp.d.ts +9 -0
  7. package/esm/deps/deno.land/std@0.203.0/semver/cmp.js +35 -0
  8. package/esm/deps/deno.land/std@0.203.0/semver/comparator_format.d.ts +8 -0
  9. package/esm/deps/deno.land/std@0.203.0/semver/comparator_format.js +11 -0
  10. package/esm/deps/deno.land/std@0.203.0/semver/comparator_intersects.d.ts +8 -0
  11. package/esm/deps/deno.land/std@0.203.0/semver/comparator_intersects.js +45 -0
  12. package/esm/deps/deno.land/std@0.203.0/semver/comparator_max.d.ts +9 -0
  13. package/esm/deps/deno.land/std@0.203.0/semver/comparator_max.js +45 -0
  14. package/esm/deps/deno.land/std@0.203.0/semver/comparator_min.d.ts +8 -0
  15. package/esm/deps/deno.land/std@0.203.0/semver/comparator_min.js +32 -0
  16. package/esm/deps/deno.land/std@0.203.0/semver/compare.d.ts +10 -0
  17. package/esm/deps/deno.land/std@0.203.0/semver/compare.js +18 -0
  18. package/esm/deps/deno.land/std@0.203.0/semver/compare_build.d.ts +13 -0
  19. package/esm/deps/deno.land/std@0.203.0/semver/compare_build.js +23 -0
  20. package/esm/deps/deno.land/std@0.203.0/semver/constants.d.ts +42 -0
  21. package/esm/deps/deno.land/std@0.203.0/semver/constants.js +75 -0
  22. package/esm/deps/deno.land/std@0.203.0/semver/difference.d.ts +4 -0
  23. package/esm/deps/deno.land/std@0.203.0/semver/difference.js +26 -0
  24. package/esm/deps/deno.land/std@0.203.0/semver/eq.d.ts +4 -0
  25. package/esm/deps/deno.land/std@0.203.0/semver/eq.js +7 -0
  26. package/esm/deps/deno.land/std@0.203.0/semver/format.d.ts +12 -0
  27. package/esm/deps/deno.land/std@0.203.0/semver/format.js +54 -0
  28. package/esm/deps/deno.land/std@0.203.0/semver/gt.d.ts +3 -0
  29. package/esm/deps/deno.land/std@0.203.0/semver/gt.js +5 -0
  30. package/esm/deps/deno.land/std@0.203.0/semver/gte.d.ts +3 -0
  31. package/esm/deps/deno.land/std@0.203.0/semver/gte.js +5 -0
  32. package/esm/deps/deno.land/std@0.203.0/semver/gtr.d.ts +3 -0
  33. package/esm/deps/deno.land/std@0.203.0/semver/gtr.js +5 -0
  34. package/esm/deps/deno.land/std@0.203.0/semver/increment.d.ts +28 -0
  35. package/esm/deps/deno.land/std@0.203.0/semver/increment.js +207 -0
  36. package/esm/deps/deno.land/std@0.203.0/semver/is_semver.d.ts +17 -0
  37. package/esm/deps/deno.land/std@0.203.0/semver/is_semver.js +41 -0
  38. package/esm/deps/deno.land/std@0.203.0/semver/is_semver_comparator.d.ts +12 -0
  39. package/esm/deps/deno.land/std@0.203.0/semver/is_semver_comparator.js +31 -0
  40. package/esm/deps/deno.land/std@0.203.0/semver/is_semver_range.d.ts +12 -0
  41. package/esm/deps/deno.land/std@0.203.0/semver/is_semver_range.js +22 -0
  42. package/esm/deps/deno.land/std@0.203.0/semver/lt.d.ts +3 -0
  43. package/esm/deps/deno.land/std@0.203.0/semver/lt.js +5 -0
  44. package/esm/deps/deno.land/std@0.203.0/semver/lte.d.ts +3 -0
  45. package/esm/deps/deno.land/std@0.203.0/semver/lte.js +5 -0
  46. package/esm/deps/deno.land/std@0.203.0/semver/ltr.d.ts +3 -0
  47. package/esm/deps/deno.land/std@0.203.0/semver/ltr.js +5 -0
  48. package/esm/deps/deno.land/std@0.203.0/semver/max_satisfying.d.ts +9 -0
  49. package/esm/deps/deno.land/std@0.203.0/semver/max_satisfying.js +14 -0
  50. package/esm/deps/deno.land/std@0.203.0/semver/min_satisfying.d.ts +9 -0
  51. package/esm/deps/deno.land/std@0.203.0/semver/min_satisfying.js +14 -0
  52. package/esm/deps/deno.land/{std@0.173.0 → std@0.203.0}/semver/mod.d.ts +88 -176
  53. package/esm/deps/deno.land/std@0.203.0/semver/mod.js +313 -0
  54. package/esm/deps/deno.land/std@0.203.0/semver/neq.d.ts +3 -0
  55. package/esm/deps/deno.land/std@0.203.0/semver/neq.js +5 -0
  56. package/esm/deps/deno.land/std@0.203.0/semver/outside.d.ts +11 -0
  57. package/esm/deps/deno.land/std@0.203.0/semver/outside.js +67 -0
  58. package/esm/deps/deno.land/std@0.203.0/semver/parse.d.ts +8 -0
  59. package/esm/deps/deno.land/std@0.203.0/semver/parse.js +66 -0
  60. package/esm/deps/deno.land/std@0.203.0/semver/parse_comparator.d.ts +7 -0
  61. package/esm/deps/deno.land/std@0.203.0/semver/parse_comparator.js +28 -0
  62. package/esm/deps/deno.land/std@0.203.0/semver/parse_range.d.ts +7 -0
  63. package/esm/deps/deno.land/std@0.203.0/semver/parse_range.js +292 -0
  64. package/esm/deps/deno.land/std@0.203.0/semver/range_format.d.ts +8 -0
  65. package/esm/deps/deno.land/std@0.203.0/semver/range_format.js +11 -0
  66. package/esm/deps/deno.land/std@0.203.0/semver/range_intersects.d.ts +8 -0
  67. package/esm/deps/deno.land/std@0.203.0/semver/range_intersects.js +35 -0
  68. package/esm/deps/deno.land/std@0.203.0/semver/range_max.d.ts +7 -0
  69. package/esm/deps/deno.land/std@0.203.0/semver/range_max.js +15 -0
  70. package/esm/deps/deno.land/std@0.203.0/semver/range_min.d.ts +7 -0
  71. package/esm/deps/deno.land/std@0.203.0/semver/range_min.js +14 -0
  72. package/esm/deps/deno.land/std@0.203.0/semver/rcompare.d.ts +8 -0
  73. package/esm/deps/deno.land/std@0.203.0/semver/rcompare.js +10 -0
  74. package/esm/deps/deno.land/std@0.203.0/semver/rsort.d.ts +3 -0
  75. package/esm/deps/deno.land/std@0.203.0/semver/rsort.js +5 -0
  76. package/esm/deps/deno.land/std@0.203.0/semver/sort.d.ts +3 -0
  77. package/esm/deps/deno.land/std@0.203.0/semver/sort.js +5 -0
  78. package/esm/deps/deno.land/std@0.203.0/semver/test_comparator.d.ts +8 -0
  79. package/esm/deps/deno.land/std@0.203.0/semver/test_comparator.js +10 -0
  80. package/esm/deps/deno.land/std@0.203.0/semver/test_range.d.ts +8 -0
  81. package/esm/deps/deno.land/std@0.203.0/semver/test_range.js +16 -0
  82. package/esm/deps/deno.land/std@0.203.0/semver/types.d.ts +44 -0
  83. package/esm/deps/deno.land/std@0.203.0/semver/types.js +2 -0
  84. package/esm/src/Changelog.d.ts +4 -2
  85. package/esm/src/Changelog.js +25 -4
  86. package/esm/src/Release.d.ts +5 -4
  87. package/esm/src/Release.js +21 -22
  88. package/esm/src/deps.d.ts +2 -1
  89. package/esm/src/deps.js +1 -1
  90. package/esm/test/changelog.custom.type.md +2 -3
  91. package/esm/test/changelog.expected.linted.md +3 -4
  92. package/esm/test/changelog.expected.md +3 -4
  93. package/esm/test/changelog.md +3 -4
  94. package/esm/test/empty.expected.md +2 -2
  95. package/package.json +2 -2
  96. package/script/_dnt.shims.js +0 -1
  97. package/script/deps/deno.land/std@0.203.0/semver/_shared.d.ts +42 -0
  98. package/script/deps/deno.land/std@0.203.0/semver/_shared.js +248 -0
  99. package/script/deps/deno.land/std@0.203.0/semver/cmp.d.ts +9 -0
  100. package/script/deps/deno.land/std@0.203.0/semver/cmp.js +39 -0
  101. package/script/deps/deno.land/std@0.203.0/semver/comparator_format.d.ts +8 -0
  102. package/script/deps/deno.land/std@0.203.0/semver/comparator_format.js +15 -0
  103. package/script/deps/deno.land/std@0.203.0/semver/comparator_intersects.d.ts +8 -0
  104. package/script/deps/deno.land/std@0.203.0/semver/comparator_intersects.js +49 -0
  105. package/script/deps/deno.land/std@0.203.0/semver/comparator_max.d.ts +9 -0
  106. package/script/deps/deno.land/std@0.203.0/semver/comparator_max.js +49 -0
  107. package/script/deps/deno.land/std@0.203.0/semver/comparator_min.d.ts +8 -0
  108. package/script/deps/deno.land/std@0.203.0/semver/comparator_min.js +36 -0
  109. package/script/deps/deno.land/std@0.203.0/semver/compare.d.ts +10 -0
  110. package/script/deps/deno.land/std@0.203.0/semver/compare.js +22 -0
  111. package/script/deps/deno.land/std@0.203.0/semver/compare_build.d.ts +13 -0
  112. package/script/deps/deno.land/std@0.203.0/semver/compare_build.js +27 -0
  113. package/script/deps/deno.land/std@0.203.0/semver/constants.d.ts +42 -0
  114. package/script/deps/deno.land/std@0.203.0/semver/constants.js +78 -0
  115. package/script/deps/deno.land/std@0.203.0/semver/difference.d.ts +4 -0
  116. package/script/deps/deno.land/std@0.203.0/semver/difference.js +30 -0
  117. package/script/deps/deno.land/std@0.203.0/semver/eq.d.ts +4 -0
  118. package/script/deps/deno.land/std@0.203.0/semver/eq.js +11 -0
  119. package/script/deps/deno.land/std@0.203.0/semver/format.d.ts +12 -0
  120. package/script/deps/deno.land/std@0.203.0/semver/format.js +58 -0
  121. package/script/deps/deno.land/std@0.203.0/semver/gt.d.ts +3 -0
  122. package/script/deps/deno.land/std@0.203.0/semver/gt.js +9 -0
  123. package/script/deps/deno.land/std@0.203.0/semver/gte.d.ts +3 -0
  124. package/script/deps/deno.land/std@0.203.0/semver/gte.js +9 -0
  125. package/script/deps/deno.land/std@0.203.0/semver/gtr.d.ts +3 -0
  126. package/script/deps/deno.land/std@0.203.0/semver/gtr.js +9 -0
  127. package/script/deps/deno.land/std@0.203.0/semver/increment.d.ts +28 -0
  128. package/script/deps/deno.land/std@0.203.0/semver/increment.js +211 -0
  129. package/script/deps/deno.land/std@0.203.0/semver/is_semver.d.ts +17 -0
  130. package/script/deps/deno.land/std@0.203.0/semver/is_semver.js +45 -0
  131. package/script/deps/deno.land/std@0.203.0/semver/is_semver_comparator.d.ts +12 -0
  132. package/script/deps/deno.land/std@0.203.0/semver/is_semver_comparator.js +35 -0
  133. package/script/deps/deno.land/std@0.203.0/semver/is_semver_range.d.ts +12 -0
  134. package/script/deps/deno.land/std@0.203.0/semver/is_semver_range.js +26 -0
  135. package/script/deps/deno.land/std@0.203.0/semver/lt.d.ts +3 -0
  136. package/script/deps/deno.land/std@0.203.0/semver/lt.js +9 -0
  137. package/script/deps/deno.land/std@0.203.0/semver/lte.d.ts +3 -0
  138. package/script/deps/deno.land/std@0.203.0/semver/lte.js +9 -0
  139. package/script/deps/deno.land/std@0.203.0/semver/ltr.d.ts +3 -0
  140. package/script/deps/deno.land/std@0.203.0/semver/ltr.js +9 -0
  141. package/script/deps/deno.land/std@0.203.0/semver/max_satisfying.d.ts +9 -0
  142. package/script/deps/deno.land/std@0.203.0/semver/max_satisfying.js +18 -0
  143. package/script/deps/deno.land/std@0.203.0/semver/min_satisfying.d.ts +9 -0
  144. package/script/deps/deno.land/std@0.203.0/semver/min_satisfying.js +18 -0
  145. package/script/deps/deno.land/{std@0.173.0 → std@0.203.0}/semver/mod.d.ts +88 -176
  146. package/script/deps/deno.land/std@0.203.0/semver/mod.js +330 -0
  147. package/script/deps/deno.land/std@0.203.0/semver/neq.d.ts +3 -0
  148. package/script/deps/deno.land/std@0.203.0/semver/neq.js +9 -0
  149. package/script/deps/deno.land/std@0.203.0/semver/outside.d.ts +11 -0
  150. package/script/deps/deno.land/std@0.203.0/semver/outside.js +71 -0
  151. package/script/deps/deno.land/std@0.203.0/semver/parse.d.ts +8 -0
  152. package/script/deps/deno.land/std@0.203.0/semver/parse.js +70 -0
  153. package/script/deps/deno.land/std@0.203.0/semver/parse_comparator.d.ts +7 -0
  154. package/script/deps/deno.land/std@0.203.0/semver/parse_comparator.js +32 -0
  155. package/script/deps/deno.land/std@0.203.0/semver/parse_range.d.ts +7 -0
  156. package/script/deps/deno.land/std@0.203.0/semver/parse_range.js +296 -0
  157. package/script/deps/deno.land/std@0.203.0/semver/range_format.d.ts +8 -0
  158. package/script/deps/deno.land/std@0.203.0/semver/range_format.js +15 -0
  159. package/script/deps/deno.land/std@0.203.0/semver/range_intersects.d.ts +8 -0
  160. package/script/deps/deno.land/std@0.203.0/semver/range_intersects.js +39 -0
  161. package/script/deps/deno.land/std@0.203.0/semver/range_max.d.ts +7 -0
  162. package/script/deps/deno.land/std@0.203.0/semver/range_max.js +19 -0
  163. package/script/deps/deno.land/std@0.203.0/semver/range_min.d.ts +7 -0
  164. package/script/deps/deno.land/std@0.203.0/semver/range_min.js +18 -0
  165. package/script/deps/deno.land/std@0.203.0/semver/rcompare.d.ts +8 -0
  166. package/script/deps/deno.land/std@0.203.0/semver/rcompare.js +14 -0
  167. package/script/deps/deno.land/std@0.203.0/semver/rsort.d.ts +3 -0
  168. package/script/deps/deno.land/std@0.203.0/semver/rsort.js +9 -0
  169. package/script/deps/deno.land/std@0.203.0/semver/sort.d.ts +3 -0
  170. package/script/deps/deno.land/std@0.203.0/semver/sort.js +9 -0
  171. package/script/deps/deno.land/std@0.203.0/semver/test_comparator.d.ts +8 -0
  172. package/script/deps/deno.land/std@0.203.0/semver/test_comparator.js +14 -0
  173. package/script/deps/deno.land/std@0.203.0/semver/test_range.d.ts +8 -0
  174. package/script/deps/deno.land/std@0.203.0/semver/test_range.js +20 -0
  175. package/script/deps/deno.land/std@0.203.0/semver/types.d.ts +44 -0
  176. package/script/deps/deno.land/std@0.203.0/semver/types.js +3 -0
  177. package/script/src/Changelog.d.ts +4 -2
  178. package/script/src/Changelog.js +24 -3
  179. package/script/src/Release.d.ts +5 -4
  180. package/script/src/Release.js +20 -21
  181. package/script/src/deps.d.ts +2 -1
  182. package/script/src/deps.js +5 -6
  183. package/script/test/changelog.custom.type.md +2 -3
  184. package/script/test/changelog.expected.linted.md +3 -4
  185. package/script/test/changelog.expected.md +3 -4
  186. package/script/test/changelog.md +3 -4
  187. package/script/test/empty.expected.md +2 -2
  188. package/esm/_dnt.test_shims.d.ts +0 -5
  189. package/esm/deps/deno.land/std@0.133.0/fmt/colors.d.ts +0 -270
  190. package/esm/deps/deno.land/std@0.133.0/testing/_diff.d.ts +0 -23
  191. package/esm/deps/deno.land/std@0.133.0/testing/asserts.d.ts +0 -167
  192. package/esm/deps/deno.land/std@0.173.0/semver/mod.js +0 -1420
  193. package/esm/test/Change.test.d.ts +0 -1
  194. package/esm/test/deps.d.ts +0 -1
  195. package/esm/test/fixture/CustomRelease.d.ts +0 -8
  196. package/esm/test/parser.test.d.ts +0 -1
  197. package/esm/test/test.d.ts +0 -1
  198. package/script/_dnt.test_shims.d.ts +0 -5
  199. package/script/deps/deno.land/std@0.133.0/fmt/colors.d.ts +0 -270
  200. package/script/deps/deno.land/std@0.133.0/testing/_diff.d.ts +0 -23
  201. package/script/deps/deno.land/std@0.133.0/testing/asserts.d.ts +0 -167
  202. package/script/deps/deno.land/std@0.173.0/semver/mod.js +0 -1458
  203. package/script/test/Change.test.d.ts +0 -1
  204. package/script/test/deps.d.ts +0 -1
  205. package/script/test/fixture/CustomRelease.d.ts +0 -8
  206. package/script/test/parser.test.d.ts +0 -1
  207. package/script/test/test.d.ts +0 -1
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.lte = void 0;
4
+ const compare_js_1 = require("./compare.js");
5
+ /** Less than or equal to comparison */
6
+ function lte(s0, s1) {
7
+ return (0, compare_js_1.compare)(s0, s1) <= 0;
8
+ }
9
+ exports.lte = lte;
@@ -0,0 +1,3 @@
1
+ import type { SemVer, SemVerRange } from "./types.js";
2
+ /** Greater than range comparison */
3
+ export declare function ltr(version: SemVer, range: SemVerRange): boolean;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ltr = void 0;
4
+ const outside_js_1 = require("./outside.js");
5
+ /** Greater than range comparison */
6
+ function ltr(version, range) {
7
+ return (0, outside_js_1.outside)(version, range, "<");
8
+ }
9
+ exports.ltr = ltr;
@@ -0,0 +1,9 @@
1
+ import type { SemVer, SemVerRange } from "./types.js";
2
+ /**
3
+ * Returns the highest version in the list that satisfies the range, or `undefined`
4
+ * if none of them do.
5
+ * @param versions The versions to check.
6
+ * @param range The range of possible versions to compare to.
7
+ * @returns The highest version in versions that satisfies the range.
8
+ */
9
+ export declare function maxSatisfying(versions: SemVer[], range: SemVerRange): SemVer | undefined;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.maxSatisfying = void 0;
4
+ const sort_js_1 = require("./sort.js");
5
+ const test_range_js_1 = require("./test_range.js");
6
+ /**
7
+ * Returns the highest version in the list that satisfies the range, or `undefined`
8
+ * if none of them do.
9
+ * @param versions The versions to check.
10
+ * @param range The range of possible versions to compare to.
11
+ * @returns The highest version in versions that satisfies the range.
12
+ */
13
+ function maxSatisfying(versions, range) {
14
+ const satisfying = versions.filter((v) => (0, test_range_js_1.testRange)(v, range));
15
+ const sorted = (0, sort_js_1.sort)(satisfying);
16
+ return sorted.pop();
17
+ }
18
+ exports.maxSatisfying = maxSatisfying;
@@ -0,0 +1,9 @@
1
+ import type { SemVer, SemVerRange } from "./types.js";
2
+ /**
3
+ * Returns the lowest version in the list that satisfies the range, or `undefined` if
4
+ * none of them do.
5
+ * @param versions The versions to check.
6
+ * @param range The range of possible versions to compare to.
7
+ * @returns The lowest version in versions that satisfies the range.
8
+ */
9
+ export declare function minSatisfying(versions: SemVer[], range: SemVerRange): SemVer | undefined;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.minSatisfying = void 0;
4
+ const sort_js_1 = require("./sort.js");
5
+ const test_range_js_1 = require("./test_range.js");
6
+ /**
7
+ * Returns the lowest version in the list that satisfies the range, or `undefined` if
8
+ * none of them do.
9
+ * @param versions The versions to check.
10
+ * @param range The range of possible versions to compare to.
11
+ * @returns The lowest version in versions that satisfies the range.
12
+ */
13
+ function minSatisfying(versions, range) {
14
+ const satisfying = versions.filter((v) => (0, test_range_js_1.testRange)(v, range));
15
+ const sorted = (0, sort_js_1.sort)(satisfying);
16
+ return sorted.shift();
17
+ }
18
+ exports.minSatisfying = minSatisfying;
@@ -10,6 +10,28 @@
10
10
  *
11
11
  * A leading `"="` or `"v"` character is stripped off and ignored.
12
12
  *
13
+ * ## Format
14
+ *
15
+ * Semantic versions can be formatted as strings, by default they
16
+ * are formatted as `full`. Below is a diagram showing the various
17
+ * formatting options.
18
+ *
19
+ * ```
20
+ * ┌───── full
21
+ * ┌───┴───┐
22
+ * ├───────── release
23
+ * ┌───┴───┐ │
24
+ * ├───────────── primary
25
+ * ┌─┴─┐ │ │
26
+ * 1.2.3-pre.1+b.1
27
+ * │ │ │ └─┬─┘ └┬┘
28
+ * │ │ │ │ └── build
29
+ * │ │ │ └─────── pre
30
+ * │ │ └─────────── patch
31
+ * │ └───────────── minor
32
+ * └─────────────── major
33
+ * ```
34
+ *
13
35
  * ## Ranges
14
36
  *
15
37
  * A `version range` is a set of `comparators` which specify versions that satisfy
@@ -76,10 +98,17 @@
76
98
  * will append the value of the string as a prerelease identifier:
77
99
  *
78
100
  * ```javascript
79
- * semver.increment("1.2.3", "prerelease", "beta");
101
+ * semver.increment(parse("1.2.3"), "prerelease", "beta");
80
102
  * // "1.2.4-beta.0"
81
103
  * ```
82
104
  *
105
+ * ### Build Metadata
106
+ *
107
+ * Build metadata is `.` delimited alpha-numeric string.
108
+ * When parsing a version it is retained on the `build: string[]` field
109
+ * of the semver instance. When incrementing there is an additional parameter that
110
+ * can set the build metadata on the semver instance.
111
+ *
83
112
  * ### Advanced Range Syntax
84
113
  *
85
114
  * Advanced range syntax desugars to primitive comparators in deterministic ways.
@@ -216,183 +245,66 @@
216
245
  *
217
246
  * @example
218
247
  * ```ts
219
- * import * as semver from "https://deno.land/std@$STD_VERSION/semver/mod.ts";
220
- *
221
- * semver.valid("1.2.3"); // "1.2.3"
222
- * semver.valid("a.b.c"); // null
223
- * semver.satisfies("1.2.3", "1.x || >=2.5.0 || 5.0.0 - 7.2.3"); // true
224
- * semver.gt("1.2.3", "9.8.7"); // false
225
- * semver.lt("1.2.3", "9.8.7"); // true
226
- * semver.minVersion(">=1.0.0"); // "1.0.0"
248
+ * import {
249
+ * parse,
250
+ * parseComparator,
251
+ * parseRange,
252
+ * gt,
253
+ * lt,
254
+ * format
255
+ * } from "https://deno.land/std@$STD_VERSION/semver/mod.ts";
256
+ *
257
+ * const semver = parse("1.2.3");
258
+ * const range = parseRange("1.x || >=2.5.0 || 5.0.0 - 7.2.3");
259
+ *
260
+ * const s0 = parse("1.2.3");
261
+ * const s1 = parse("9.8.7");
262
+ * gt(s0, s1); // false
263
+ * lt(s0, s1); // true
264
+ *
265
+ * format(semver) // "1.2.3"
227
266
  * ```
228
267
  *
229
268
  * @module
230
269
  */
231
- export type ReleaseType = "pre" | "major" | "premajor" | "minor" | "preminor" | "patch" | "prepatch" | "prerelease";
232
- export type Operator = "===" | "!==" | "" | "=" | "==" | "!=" | ">" | ">=" | "<" | "<=";
233
- export interface Options {
234
- /**
235
- * Set to suppress the default behavior of excluding prerelease tagged
236
- * versions from ranges unless they are explicitly opted into.
237
- */
238
- includePrerelease?: boolean;
239
- }
270
+ export * from "./cmp.js";
271
+ export * from "./comparator_format.js";
272
+ export * from "./comparator_intersects.js";
273
+ export * from "./comparator_max.js";
274
+ export * from "./comparator_min.js";
275
+ export * from "./compare_build.js";
276
+ export * from "./compare.js";
277
+ export * from "./constants.js";
278
+ export * from "./difference.js";
279
+ export * from "./eq.js";
280
+ export * from "./format.js";
281
+ export * from "./gt.js";
282
+ export * from "./gte.js";
283
+ export * from "./gtr.js";
284
+ export * from "./test_comparator.js";
285
+ export * from "./test_range.js";
286
+ export * from "./increment.js";
287
+ export * from "./is_semver_comparator.js";
288
+ export * from "./is_semver_range.js";
289
+ export * from "./is_semver.js";
290
+ export * from "./lt.js";
291
+ export * from "./lte.js";
292
+ export * from "./ltr.js";
293
+ export * from "./max_satisfying.js";
294
+ export * from "./min_satisfying.js";
295
+ export * from "./neq.js";
296
+ export * from "./outside.js";
297
+ export * from "./parse_comparator.js";
298
+ export * from "./parse_range.js";
299
+ export * from "./parse.js";
300
+ export * from "./range_format.js";
301
+ export * from "./range_intersects.js";
302
+ export * from "./range_max.js";
303
+ export * from "./range_min.js";
304
+ export * from "./rcompare.js";
305
+ export * from "./rsort.js";
306
+ export * from "./sort.js";
307
+ export * from "./types.js";
308
+ export * from "./lte.js";
309
+ export * from "./lte.js";
240
310
  export declare const SEMVER_SPEC_VERSION = "2.0.0";
241
- /**
242
- * Attempt to parse a string as a semantic version, returning either a `SemVer`
243
- * object or `null`.
244
- */
245
- export declare function parse(version: string | SemVer | null, options?: Options): SemVer | null;
246
- /** Returns the parsed version, or null if it's not valid. */
247
- export declare function valid(version: string | SemVer | null, options?: Options): string | null;
248
- export declare class SemVer {
249
- raw: string;
250
- options: Options;
251
- major: number;
252
- minor: number;
253
- patch: number;
254
- version: string;
255
- build: ReadonlyArray<string>;
256
- prerelease: Array<string | number>;
257
- constructor(version: string | SemVer, options?: Options);
258
- format(): string;
259
- compare(other: string | SemVer): 1 | 0 | -1;
260
- compareMain(other: string | SemVer): 1 | 0 | -1;
261
- comparePre(other: string | SemVer): 1 | 0 | -1;
262
- compareBuild(other: string | SemVer): 1 | 0 | -1;
263
- increment(release: ReleaseType, identifier?: string): SemVer;
264
- toString(): string;
265
- }
266
- /**
267
- * Returns the version incremented by the release type
268
- * (major, minor, patch, or prerelease), or null if it's not valid.
269
- *
270
- * `premajor` in one call will bump the version up to the next major version and
271
- * down to a prerelease of that major version. `preminor`, and `prepatch` work
272
- * the same way.
273
- *
274
- * If called from a non-prerelease version, the `prerelease` will work the same
275
- * as `prepatch`. It increments the patch version, then makes a prerelease. If
276
- * the input version is already a prerelease it simply increments it.
277
- */
278
- export declare function increment(version: string | SemVer, release: ReleaseType, options?: Options, identifier?: string): string | null;
279
- /**
280
- * Returns difference between two versions by the release type (`major`,
281
- * `premajor`, `minor`, `preminor`, `patch`, `prepatch`, or `prerelease`), or
282
- * null if the versions are the same.
283
- */
284
- export declare function difference(version1: string | SemVer, version2: string | SemVer, options?: Options): ReleaseType | null;
285
- export declare function compareIdentifiers(a: string | number | null, b: string | number | null): 1 | 0 | -1;
286
- export declare function rcompareIdentifiers(a: string | null, b: string | null): 1 | 0 | -1;
287
- /** Returns the major version number. */
288
- export declare function major(v: string | SemVer, options?: Options): number;
289
- /** Returns the minor version number. */
290
- export declare function minor(v: string | SemVer, options?: Options): number;
291
- /** Returns the patch version number. */
292
- export declare function patch(v: string | SemVer, options?: Options): number;
293
- /**
294
- * Returns `0` if `v1 == v2`, or `1` if `v1` is greater, or `-1` if `v2` is
295
- * greater. Sorts in ascending order if passed to `Array.sort()`,
296
- */
297
- export declare function compare(v1: string | SemVer, v2: string | SemVer, options?: Options): 1 | 0 | -1;
298
- /**
299
- * The same as {@linkcode compare} but considers `build` when two versions are
300
- * equal. Sorts in ascending order if passed to `Array.sort()`.
301
- */
302
- export declare function compareBuild(a: string | SemVer, b: string | SemVer, options?: Options): 1 | 0 | -1;
303
- /**
304
- * Returns `0` if `v1 == v2`, or `-1` if `v1` is greater, or `1` if `v2` is
305
- * greater. Sorts in descending order if passed to `Array.sort()`,
306
- */
307
- export declare function rcompare(v1: string | SemVer, v2: string | SemVer, options?: Options): 1 | 0 | -1;
308
- export declare function sort<T extends string | SemVer>(list: T[], options?: Options): T[];
309
- export declare function rsort<T extends string | SemVer>(list: T[], options?: Options): T[];
310
- /** Greater than comparison */
311
- export declare function gt(v1: string | SemVer, v2: string | SemVer, options?: Options): boolean;
312
- /** Less than comparison */
313
- export declare function lt(v1: string | SemVer, v2: string | SemVer, options?: Options): boolean;
314
- /**
315
- * This is true if they're logically equivalent, even if they're not the exact
316
- * same string.
317
- */
318
- export declare function eq(v1: string | SemVer, v2: string | SemVer, options?: Options): boolean;
319
- /**
320
- * This is true if they're not logically equivalent, even if they're the exact
321
- * same string.
322
- */
323
- export declare function neq(v1: string | SemVer, v2: string | SemVer, options?: Options): boolean;
324
- /** Greater than or equal comparison */
325
- export declare function gte(v1: string | SemVer, v2: string | SemVer, options?: Options): boolean;
326
- /** Less than or equal comparison */
327
- export declare function lte(v1: string | SemVer, v2: string | SemVer, options?: Options): boolean;
328
- /**
329
- * Pass in a comparison string, and it'll call the corresponding comparison
330
- * function. `"==="` and `"!=="` do simple string comparison, but are included
331
- * for completeness. Throws if an invalid comparison string is provided.
332
- */
333
- export declare function cmp(v1: string | SemVer, operator: Operator, v2: string | SemVer, options?: Options): boolean;
334
- export declare class Comparator {
335
- semver: SemVer;
336
- operator: "" | "=" | "<" | ">" | "<=" | ">=";
337
- value: string;
338
- options: Options;
339
- constructor(comp: string | Comparator, options?: Options);
340
- parse(comp: string): void;
341
- test(version: string | SemVer): boolean;
342
- intersects(comp: Comparator, options?: Options): boolean;
343
- toString(): string;
344
- }
345
- export declare class Range {
346
- range: string;
347
- raw: string;
348
- options: Options;
349
- includePrerelease: boolean;
350
- set: ReadonlyArray<ReadonlyArray<Comparator>>;
351
- constructor(range: string | Range | Comparator, options?: Options);
352
- format(): string;
353
- parseRange(range: string): ReadonlyArray<Comparator>;
354
- test(version: string | SemVer): boolean;
355
- intersects(range?: Range, options?: Options): boolean;
356
- toString(): string;
357
- }
358
- export declare function toComparators(range: string | Range, options?: Options): string[][];
359
- /** Returns true if the version satisfies the range. */
360
- export declare function satisfies(version: string | SemVer, range: string | Range, options?: Options): boolean;
361
- /**
362
- * Returns the highest version in the list that satisfies the range, or `null`
363
- * if none of them do.
364
- */
365
- export declare function maxSatisfying<T extends string | SemVer>(versions: ReadonlyArray<T>, range: string | Range, options?: Options): T | null;
366
- /**
367
- * Returns the lowest version in the list that satisfies the range, or `null` if
368
- * none of them do.
369
- */
370
- export declare function minSatisfying<T extends string | SemVer>(versions: ReadonlyArray<T>, range: string | Range, options?: Options): T | null;
371
- /** Returns the lowest version that can possibly match the given range. */
372
- export declare function minVersion(range: string | Range, options?: Options): SemVer | null;
373
- /** Returns the valid range or null if it's not valid. */
374
- export declare function validRange(range: string | Range | null, options?: Options): string | null;
375
- /**
376
- * Returns true if version is less than all the versions possible in the range.
377
- */
378
- export declare function ltr(version: string | SemVer, range: string | Range, options?: Options): boolean;
379
- /**
380
- * Returns true if version is greater than all the versions possible in the range.
381
- */
382
- export declare function gtr(version: string | SemVer, range: string | Range, options?: Options): boolean;
383
- /**
384
- * Returns true if the version is outside the bounds of the range in either the
385
- * high or low direction. The hilo argument must be either the string '>' or
386
- * '<'. (This is the function called by {@linkcode gtr} and {@linkcode ltr}.)
387
- */
388
- export declare function outside(version: string | SemVer, range: string | Range, hilo: ">" | "<", options?: Options): boolean;
389
- /**
390
- * Returns an array of prerelease components, or null if none exist.
391
- *
392
- * @example
393
- * `prerelease("1.2.3-alpha.1") -> ["alpha", 1]`
394
- */
395
- export declare function prerelease(version: string | SemVer, options?: Options): ReadonlyArray<string | number> | null;
396
- /** Returns true if the two supplied ranges or comparators intersect. */
397
- export declare function intersects(range1: string | Range | Comparator, range2: string | Range | Comparator, options?: Options): boolean;
398
- export default SemVer;