| 1 | "effect/Duration#decode": |
| 2 | replacement: "Duration.fromInputUnsafe" |
| 3 | note: "The throwing DurationInput decoder was renamed." |
| 4 | "effect/Duration#decodeUnknown": |
| 5 | replacement: "Duration.fromInput" |
| 6 | note: "The safe decoder was renamed and accepts Duration.Input, returning Option<Duration>." |
| 7 | "effect/Duration#Duration": |
| 8 | replacement: "Duration.Duration" |
| 9 | note: "The model remains and now also supports negative infinity; its type-id value is private." |
| 10 | "effect/Duration#DurationInput": |
| 11 | replacement: "Duration.Input" |
| 12 | note: "The input type was renamed and expanded with negative values and Temporal.Duration-like objects." |
| 13 | "effect/Duration#DurationValue": |
| 14 | replacement: "Duration.DurationValue" |
| 15 | note: "The tagged value remains and adds NegativeInfinity; its object fields are no longer readonly." |
| 16 | "effect/Duration#formatIso": |
| 17 | replacement: "none" |
| 18 | note: "ISO 8601 duration formatting was removed from the v4 Duration module. The v4 source and migration guides expose no direct replacement; retain a local formatter when this wire format is required." |
| 19 | "effect/Duration#fromIso": |
| 20 | replacement: "none" |
| 21 | note: "ISO 8601 duration parsing was removed from the v4 Duration module. The v4 source and migration guides expose no direct replacement; use a dedicated ISO parser and pass the resulting parts to Duration.fromInput." |
| 22 | "effect/Duration#greaterThan": |
| 23 | replacement: "Duration.isGreaterThan" |
| 24 | note: "The comparison was renamed with the is prefix." |
| 25 | "effect/Duration#greaterThanOrEqualTo": |
| 26 | replacement: "Duration.isGreaterThanOrEqualTo" |
| 27 | note: "The comparison was renamed with the is prefix." |
| 28 | "effect/Duration#lessThan": |
| 29 | replacement: "Duration.isLessThan" |
| 30 | note: "The comparison was renamed with the is prefix." |
| 31 | "effect/Duration#lessThanOrEqualTo": |
| 32 | replacement: "Duration.isLessThanOrEqualTo" |
| 33 | note: "The comparison was renamed with the is prefix." |
| 34 | "effect/Duration#matchWith": |
| 35 | replacement: "Duration.matchPair" |
| 36 | note: "The two-duration matcher was renamed." |
| 37 | "effect/Duration#TypeId": |
| 38 | replacement: "none" |
| 39 | note: "The Duration type id is private in v4. Use Duration.isDuration to narrow unknown values." |
| 40 | "effect/Duration#unsafeDivide": |
| 41 | replacement: "Duration.divideUnsafe" |
| 42 | note: "The unsafe prefix moved to the end of the division function name." |
| 43 | "effect/Duration#unsafeFormatIso": |
| 44 | replacement: "none" |
| 45 | note: "ISO 8601 duration formatting was removed from v4. The v4 Duration exports and migration guides contain no direct unsafe formatter; retain a local formatter if required." |
| 46 | "effect/Duration#unsafeToNanos": |
| 47 | replacement: "Duration.toNanosUnsafe" |
| 48 | note: "The unsafe prefix moved to the end of the nanosecond conversion name." |