Expensify / App

Welcome to New Expensify: a complete re-imagination of financial collaboration, centered around chat. Help us build the next generation of Expensify by sharing feedback and contributing to the code.
https://new.expensify.com
MIT License
3.36k stars 2.78k forks source link

[HOLD for payment 2024-08-19] [TS] Memoize utility lacks correct typings for transformKey option when called with constructable #46067

Closed kacper-mikolajczak closed 1 month ago

kacper-mikolajczak commented 2 months ago

Details

This is a known regression, which originates from https://github.com/Expensify/App/pull/43868

memoize module lacks correct typings for transformKey option when called with constructables (entities which are initialized with new keyword).

Steps to reproduce

  1. Wrap constructable (some class for example) with memoize method
  2. Pass configuration (second argument) with transformKey callback
  3. Check the typings of transformKey callback's arguments

Expected behaviour

transformKey arguments match constructor's arguments

Actual behaviour

transformKey arguments are typed as readonly [] (empty tuple)

Screenshot 2024-07-23 at 21 54 48
melvin-bot[bot] commented 2 months ago

Triggered auto assignment to @cead22, see https://stackoverflow.com/c/expensify/questions/7972 for more details.

melvin-bot[bot] commented 1 month ago

Reviewing label has been removed, please complete the "BugZero Checklist".

melvin-bot[bot] commented 1 month ago

The solution for this issue has been :rocket: deployed to production :rocket: in version 9.0.18-10 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:

If no regressions arise, payment will be issued on 2024-08-19. :confetti_ball:

melvin-bot[bot] commented 1 month ago

Skipping the payment summary for this issue since all the assignees are employees or vendors. If this is incorrect, please manually add the payment summary SO.