Skip to content

Remove ember-source and glimmer tracking as a peer dependency#550

Merged
mkszepp merged 1 commit intomasterfrom
remove-peer-deps
May 12, 2025
Merged

Remove ember-source and glimmer tracking as a peer dependency#550
mkszepp merged 1 commit intomasterfrom
remove-peer-deps

Conversation

@mkszepp
Copy link
Copy Markdown
Collaborator

@mkszepp mkszepp commented May 12, 2025

  • ember-source: removed because the embroider / auto-import know what we intend - it's not bad to have if someone manages their dep graph correctly, which is easier with pnpm, but not everyone gets it right, and folks have a hard time tracking down errors
  • @glimmer/tracking removed because it's a real package, but one we don't want to use. This comes up in embroider/vite where the presence of real packages always takes precedence over virtual packages. This is actually problematic because it can break reactivity in subtle ways, even if a dep graph is correct - allowing duplicates of dependencies, which for the glimmer internals, we don't want.

ref ember-cli/ember-addon-blueprint#35

@mkszepp mkszepp added the bug label May 12, 2025
@mkszepp mkszepp merged commit 7a8ccf4 into master May 12, 2025
20 checks passed
@mkszepp mkszepp deleted the remove-peer-deps branch May 12, 2025 12:47
NullVoxPopuli added a commit to emberjs/ember-qunit that referenced this pull request May 13, 2025
is extraneous, and the embroider/auto-import infra know where to get ember-source from.
It's not _wrong_ to include, but it requires folks' manage their deps correctly -- so we can be a little more forgiving to maintainers by just omitting this.


From PR descriptions elsewhere:

- ember-source: removed because the embroider / auto-import know what we intend - it's not bad to have if someone manages their dep graph correctly, which is easier with pnpm, but not everyone gets it right, and folks have a hard time tracking down errors
- @glimmer/tracking removed because it's a real package, but one we don't want to use. This comes up in embroider/vite where the presence of real packages always takes precedence over virtual packages. This is actually problematic because it can break reactivity in subtle ways, even if a dep graph is correct - allowing duplicates of dependencies, which for the glimmer internals, we don't want.
 

Related:
- ember-power-addons/ember-power-calendar#550
- lifeart/ember-click-outside-modifier#47
- tracked-tools/ember-async-data#854
- warp-drive-data/warp-drive#9986
- ember-animation/ember-animated#779
- emberjs/ember-element-helper#125
- CrowdStrike/ember-headless-form#574
- adopted-ember-addons/ember-sortable#620
- ember-cli/ember-app-blueprint#7
- ember-cli/ember-cli#10697
- ember-cli/ember-addon-blueprint#35
- embroider-build/addon-blueprint#339
- ember-polyfills/ember-functions-as-helper-polyfill#151
- jelhan/ember-style-modifier#312
- jmurphyau/ember-truth-helpers#211
- ember-modifier/ember-modifier#949
- tracked-tools/tracked-toolbox#211
- emberjs/ember-test-helpers#1543
- NullVoxPopuli/ember-resources#1189
- NullVoxPopuli/ember-modify-based-class-resource#20
- universal-ember/kolay#187
- universal-ember/reactiveweb#139
- universal-ember/ember-primitives#471
- universal-ember/docs-support#77
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant