microsoft / fast

The adaptive interface system for modern web experiences.
https://www.fast.design
Other
9.28k stars 595 forks source link

fix: prevent array splice notification on non-mutating splice() calls #6786

Closed nicholasrice closed 1 year ago

nicholasrice commented 1 year ago

Pull Request

📖 Description

This PR fixes a bug where array observer would notify a splice when the mutation that occurred did not alter the array values. It appears in FE2 migration, an attempt to optimize for single-splice processing short-cut the projection process, which would detect non-mutation scenarios like splicing an array with the same values.

This issue has significant impact of the repeat directive, causing it to disconnect and re-connect views un-necessarily.

🎫 Issues

fixes ##6431

👩‍💻 Reviewer Notes

📑 Test Plan

✅ Checklist

General

Component-specific

⏭ Next Steps