Skip to content

Commit b244e75

Browse files
authored
fix: remove mention of @ember/reactive esmodule package
It seems somewhere in the process, it was decided to not make a "real" published `@ember/reactive` package after all. It's best to remove mention of it here, since it can confuse people.
1 parent 087c30a commit b244e75

1 file changed

Lines changed: 0 additions & 23 deletions

File tree

text/1068-tracked-collections.md

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -228,29 +228,6 @@ const addTo = (obj) => obj[Math.random()] = Math.random();
228228
</template>
229229
```
230230

231-
### `@ember/reactive`
232-
233-
The process of making libraries support wide-ranges of `ember-source` is known. `ember-source` has recently been adapting its release process to use [release-plan][gh-release-plan], so that the [ember.js][gh-emberjs] repo can publish multiple packages seemslessly, rather than always bundle everything under one package.
234-
235-
With those new release capabilities within the [ember.js][gh-emberjs] repo, Instead of a polyfill for older versions of ember, `@ember/reactive`, the package (at the time of this RFC, does not exist, but would have the two exported utilities from it), would be published as its own `type=module` package _and_ included with ember-source, as to not add more dependencies to the package.json going forward.
236-
237-
[gh-release-plan]: https://github.com/embroider-build/release-plan
238-
[gh-emberjs]: https://github.com/emberjs/ember.js/
239-
240-
Why `type=module`?
241-
242-
This is a requirement for some optimization features of packages (webpack / vite), such as _proper_ treeshaking -- without `type=module`, the best optimization we can get is "pay for only what you import". For large projects this isn't so much of a problem, but for small projects (or highly optimized projects), the impact to network transfer/parse/eval is measurable. This RFC is also proposing that `@ember/reactive` be _the_ place for all our ecosystem's reactivity utilities will end up once they've been proven out, tested, and desire for standardization is seen.
243-
244-
For example, other future exports from `@ember/reactive` (in future RFCs), may include:
245-
- Resource
246-
- AsyncResource
247-
- TrackedPromise
248-
- localCopy
249-
- certain [window properties](https://svelte.dev/docs/svelte/svelte-reactivity-window)
250-
- ...and more
251-
252-
without the static analysis guarantees of `type=module`, every consumer of `@ember/reactive` would always have all of these exports in their build.
253-
For some utilities, we can place them under sub-path-exports, such as `@ember/reactive/window`, for window-specific reactive properties, but the exact specifics of each of these can be hashed out in their individual RFCs.
254231

255232
#### Why are the collections under `@ember/reactive/collections`?
256233

0 commit comments

Comments
 (0)