ember-test-waiters
ember-test-waiters copied to clipboard
Quest: Prep for v4: V2 Addon conversion
NOTE: the main branch will not be releasable during this time, because we need to complete the plan, so that there is minimal/zero disruption to folks' test suites.
Here is a preview of what's in the next major:
- https://github.com/emberjs/ember-test-waiters/pull/470
In order of blockers:
- [x] create v3 branch from this commit -- done: https://github.com/emberjs/ember-test-waiters/tree/v3
- [x] release another v3 version, since the types fix is still unreleased.
we should keep changes on this branch to the bare minimum, as we don't want to need to sync back to
mainunless we really have to. NOTE that the v3 branch is a snapshot of what this repo looked like before everything is this quest issues started happening
- [x] release another v3 version, since the types fix is still unreleased.
we should keep changes on this branch to the bare minimum, as we don't want to need to sync back to
- [x] https://github.com/emberjs/ember-test-waiters/pull/454
- [x] https://github.com/emberjs/ember-test-waiters/pull/453
- [x] https://github.com/emberjs/ember-test-waiters/pull/452
Can happen in any order
- [x] extract test-app(s)
- [x] create boilerplate for all test apps at once, so the following has more reasonable diffs https://github.com/emberjs/ember-test-waiters/pull/460
- [x] extract tests from addon to their own test-app https://github.com/emberjs/ember-test-waiters/pull/463
- [x] separate test-app for ember-concurrency@v3 (it has babel transforms, and the types are different) https://github.com/emberjs/ember-test-waiters/pull/465
- [x] separate test-app for ember-concurrency@v2 (it requires ember-concurrency-ts, which uses a version of
ComputedPropertywhich is different from the built-in types) https://github.com/emberjs/ember-test-waiters/pull/464 - [x] separate test-app with
ember-fetch@v8- https://github.com/emberjs/ember-test-waiters/pull/471
- [x] ensure all test-apps are type-checked
- https://github.com/emberjs/ember-test-waiters/pull/473
- [x] implement solution for force-highlander
- [x] implement in
mainbranch -- already implemented a long time ago viagetGlobaland storing theWAITERSonglobalThis.
- [x] implement in
- [ ] convert
@ember/test-waitersto a native package- https://github.com/emberjs/ember-test-waiters/pull/476
- [ ] cleanup tasks
- [ ] Do not import from 'ember' - this import path will be deprecated very soon
- [ ] move duplicate WAITER_NAME handling to be based off the
WAITERS' keys. (allows deleting code) - [ ] move the noop waiter to be a constant, rather than being initialized for every occurrence.
- [ ] remove
@ts-ignorefrom the test-apps - [ ] add support for native
fetch-- coordinate with https://github.com/ember-cli/ember-fetch/issues/738
- [ ] update README so that folks can discover how to best ensure only one copy of
@ember/test-waitersis present across all their dependencies (which won't be required for the waiter system to work, but will be required to get improvements across the whole dep graph)- [ ] ~~add notes for addon authors to utilize
peerDependencieswith@ember/test-waiters(with permissive range, which would be allowed post-globalThisusage)~~ with state held onglobalThis, we don't needpeerDependencies, we can allow duplicates of test-waiters. Usingdependenciesinstead ofpeerDependenciescan help make installation experience smoother for folks, however everyone should end up having@ember/test-waitersdeclared in their apps anyway. - [ ] note that peers however help with install time and debugging but won't be necessary for things to work.
- [ ] ~~add notes for addon authors to utilize
- [ ] release new version of
ember-test-waitersthat re-exports everything from@ember/test-waitersthis is needed because some super old projects import from ember-test-waiters, and if someone is using v4 of test waiters, yet part of their dep graph uses the super old ember-test-waiters, we may want to do this to allow users control over which@ember/test-waiterstheir deep dep ofember-test-waitersis using. We may also want to "wait and see" if this problem even exists.- [ ] declare
ember-test-waitersas deprecated https://www.npmjs.com/package/ember-test-waiters
- [ ] declare
- [ ] review changes for changelog
- https://github.com/emberjs/ember-test-waiters/pull/470
- [ ] release v4