Skip to content

Commit 1b3a272

Browse files
committed
Deprecate Ember Proxies
1 parent 7e57442 commit 1b3a272

File tree

1 file changed

+70
-0
lines changed

1 file changed

+70
-0
lines changed

text/1112-deprecate-proxy.md

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
---
2+
stage: accepted
3+
start-date: 2025-06-13T00:00:00.000Z
4+
release-date:
5+
release-versions:
6+
teams: # delete teams that aren't relevant
7+
- cli
8+
- data
9+
- framework
10+
- learning
11+
- steering
12+
- typescript
13+
prs:
14+
accepted: https://github.com/emberjs/rfcs/pull/1112
15+
project-link:
16+
---
17+
18+
<!---
19+
Directions for above:
20+
21+
stage: Leave as is
22+
start-date: Fill in with today's date, 2032-12-01T00:00:00.000Z
23+
release-date: Leave as is
24+
release-versions: Leave as is
25+
teams: Include only the [team(s)](README.md#relevant-teams) for which this RFC applies
26+
prs:
27+
accepted: Fill this in with the URL for the Proposal RFC PR
28+
project-link: Leave as is
29+
-->
30+
31+
# Deprecating Ember Proxies
32+
33+
## Summary
34+
35+
Now that Native Proxy is available in all supported environments, we can deprecate
36+
Ember's custom Proxy handling provided by `ArrayProxy`, `ObjectProxy`, and `PromiseProxyMixin`.
37+
38+
## Motivation
39+
40+
These patterns were introduce to Ember prior to the availability of Native Proxy. Since
41+
Native Proxy is now available in all supported environments, we can deprecate these
42+
patterns in favor of the native Proxy API.
43+
44+
Additionally, we would like to deprecate Mixins in the future necessitating that we first
45+
deprecate `PromiseProxyMixin`.
46+
47+
## Transition Path
48+
49+
There is no direct migration path for these. Code that relies upon this behavior will have to be rewritten.
50+
51+
## Exploration
52+
53+
To validate this deprecation, I've tried removing the assocaited functionality in this PR:
54+
https://github.com/emberjs/ember.js/pull/20918
55+
56+
## How We Teach This
57+
58+
We should remove references to these patterns from the guides.
59+
60+
## Drawbacks
61+
62+
By not providing a direct replacement some users may have difficulty migrating.
63+
64+
## Alternatives
65+
66+
None
67+
68+
## Unresolved questions
69+
70+
None

0 commit comments

Comments
 (0)