What's Changed
- JavaScript: fix infinite recursion in scanner gated by a serializable… by @greg-at-moderne in #9614
- JavaScript: refuse a recipe package whose peer range excludes the host by @knutwannheden in #9610
- Python: read the uv.lock spellings uv reads, and name the conflict-gated requirements the engine does not model by @timtebeek in #9574
- Go: align Statement and Expression kinds and visitor dispatch with Java by @greg-at-moderne in #9615
- Remove unused whitespaceSuffixPattern from Java parser visitors by @greg-at-moderne in #9613
- JavaScript: print a YAML scalar's anchor before its tag by @myhau in #9619
- JavaScript: YAML flow scalars keep their line breaks and escapes by @myhau in #9618
- JavaScript: print the tag of a YAML mapping or sequence by @myhau in #9625
- JavaScript: keep text after the last YAML document by @myhau in #9626
- Python: declare the license as an SPDX expression to drop the setuptools deprecation warning by @greg-at-moderne in #9617
- Keep Kotlin's SpacesVisitor stop flag off the shared root cursor by @timtebeek in #9622
- Fail tests that add to the recipes that made changes in a cycle by @timtebeek in #9623
- Write inferred intersection types as their first bound in JavaTemplate parameter stubs by @motlin in #9627
- Load the tooling plugin at the model's own version by @knutwannheden in #9630
- Python: ChangeImport moves an import inside a function,
tryorelsebranch by @knutwannheden in #9629 - Keep setuptools' egg-info out of rewrite-python's test inputs by @knutwannheden in #9621
- Honor declared package manager when selecting JavaScript lock files by @jkschneider in #9548
- Ship SharedMavenPomCacheExtension in rewrite-maven's main artifact by @knutwannheden in #9637
- Read the Code Genome Project credential from ORG_GRADLE_PROJECT_ variables in the tooling init script by @timtebeek in #9639
- Support coordinated dependency upgrades with checked npm peer recovery by @jkschneider in #9640
- Preserve RPC recipe cycles across scan, generate and edit by @jkschneider in #9641
- Compare receivers of Kotlin extension calls in semantic equality by @jkschneider in #9633
- Preserve NaN semantics when negating ordered comparisons by @jkschneider in #9644
- JavaScript: improve readability of tests - real line breaks instead of raw
\nby @myhau in #9634 - Preserve unboxing in Java boolean simplification by @jkschneider in #9645
- Use the control cursor when aligning multiline for headers by @jkschneider in #9646
- Preserve operand evaluation in boolean simplification by @jkschneider in #9648
- Support bounded PNPM 10 native lock regeneration by @jkschneider in #9647
- Measure multiline for headers from the updated loop tree by @jkschneider in #9649
- Handle deleted top-level if statements in scripts by @jkschneider in #9650
- Skip Gradle build files without a GradleProject marker in UpgradeTransitiveDependencyVersion by @knutwannheden in #9654
- JavaScript printers: a marker on a container encloses its delimiters by @knutwannheden in #9653
- JavaScript: pattern debug output shows where and why a match fails by @knutwannheden in #6316
- C#: await tasks in tests instead of blocking on them by @knutwannheden in #9655
- Route recipe repositories' tests through the Maven Central mirror by @knutwannheden in #9657
- JavaScript: add onlyIfResolving to AddDependency by @greg-at-moderne in #9658
New Contributors
Full Changelog: v8.97.1...v8.97.2