Migrate Range to TypeScript by jdeniau · Pull Request #2128 · immutable-js/immutable-js · GitHub
Skip to content

Migrate Range to TypeScript - #2128

Merged
jdeniau merged 5 commits into
6.xfrom
ts-migrate-range
Jun 28, 2025
Merged

jdeniau merged 5 commits into
6.xfrom
ts-migrate-range

Conversation

@jdeniau

@jdeniau jdeniau commented Jun 19, 2025

Copy link
Copy Markdown
Member

No description provided.

@jdeniau
jdeniau changed the base branch from main to 6.x June 19, 2025 21:35
@jdeniau jdeniau changed the title ts migrate range Migrate Range to TypeScript Jun 19, 2025
@jdeniau
jdeniau marked this pull request as ready for review June 19, 2025 21:37
@jdeniau
jdeniau merged commit 13fc231 into 6.x Jun 28, 2025
@jdeniau
jdeniau deleted the ts-migrate-range branch June 28, 2025 22:22
jdeniau pushed a commit to jdeniau/immutable-js that referenced this pull request Aug 16, 2026
Each finding from .agents/migration-status.md was traced back to its
originating PR, then fixed or confirmed as an intentional change:

- R1 (isSubset string argument, from immutable-js#2204): keep the new
  character-iteration semantics, consistent with isSuperset and with
  Collection('abc'); documented as a v6 breaking change in the CHANGELOG
  and pinned by multi-char unit tests.
- R2 ('@@iterator' fallback removal, from immutable-js#2127): confirmed intended
  modernisation; explicit CHANGELOG entry, and the two immutable.d.ts
  docstrings no longer mention @@iterator. immutable.js.flow is left
  untouched since Flow's @@iterator syntax denotes Symbol.iterator.
- R3 (reverseFactory reverse-iteration keys, ?? 0 from immutable-js#2206, NaN keys
  already in v5): fixed by counting down from the number returned by
  ensureSize(collection) - the reversed sequence has the same size as
  its source. Regression tests cover both __iterate (reduceRight) and
  __iterator (keyed reverse) paths; CHANGELOG entry since the NaN
  behaviour shipped in v5.
- R4 (wholeSlice with begin === undefined, from immutable-js#2128): restored the
  faithful v5 form (begin !== undefined && begin <= -size) so slice()
  with no arguments goes through sliceFactory again, on empty
  collections too; identity regression test added.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0122shfP2ngkkjuXZBWoeFGW
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant