Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Advance RFC #0580 "Destroyables" to Stage Recommended #915

Merged
merged 2 commits into from
Aug 4, 2023
Merged

Conversation

emberjs-rfcs-bot
Copy link
Collaborator

@emberjs-rfcs-bot emberjs-rfcs-bot commented Mar 13, 2023

Advance #580 to the Recommended Stage

Summary

This pull request is advancing the RFC to the Recommended Stage.

An FCP is required before merging this PR to advance.

Recommended Stage Summary

The "Recommended" stage is the final milestone for an RFC. It provides a signal to the wider community to indicate that a feature has been put through its ecosystem paces and is ready to use.

To reach the "Recommended" stage, the following should be true:

If appropriate, the feature is integrated into the tutorial and the guides prose. API documentation is polished and updates are carried through to other areas of API docs that may not directly pertain to the feature.

If the proposal replaces an existing feature, the addon ecosystem has largely updated to work with both old and new features.

If the proposal updates or replaces an existing feature, high-quality codemods are available.

If needed, Ember debugging tools as well as popular IDE support have been updated to support the feature.

If the feature is part of a suite of features that were designed to work together for best ergonomics, the other features are also ready to be "Recommended".

Any criteria for "Recommended" for this proposal that were established in the Ready For Release stage have been met.

An FCP is required to enter this stage. Multiple RFCs may be moved as a batch into "Recommended" with the same PR.

Checklist to move to Recommended

  • Any criteria for "Recommended" for this proposal that were established in the Ready For Release stage have been met
  • If appropriate, the feature is integrated into the tutorial and the guides prose. API documentation is polished and updates are carried through to other areas of API docs that may not directly pertain to the feature.
  • If the proposal replaces an existing feature, the addon ecosystem has largely updated to work with both old and new features.
  • If the proposal updates or replaces an existing feature, high-quality codemods are available
  • If needed, Ember debugging tools as well as popular IDE support have been updated to support the feature.
  • If the feature is part of a suite of features that were designed to work together for best ergonomics, the other features are also ready to be "Recommended".
  • This PR has been converted from a draft to a regular PR and the Final Comment Period label has been added to start the FCP

Criteria for moving to Recommended (required)

  • Fully document in guides. Maybe around modifiers?

@runspired
Copy link
Contributor

@wycats Having now spent a bit of time with destroyables and observing various performance characteristics, I'd love to chat future direction around components, helpers, modifiers and resources before we say recommended here.

@NullVoxPopuli
Copy link
Contributor

@runspired and I talked about this as well, and there some exploration that needs to be done around this function, and the memory pressure induced by it: https://github.com/glimmerjs/glimmer-vm/blob/master/packages/@glimmer/destroyable/index.ts#L72-L77
(object creation + several properties / set values, regardless if they're all needed).

however, I don't think this is something that should block the feature from moving to recommended.

It's good to optimize on the micro level as best we can, but because we're very unlikely to change the public API, that doesn't stop us from improving private implementation details (which if we did, we'd never ship anything -- always be iteratin')

@runspired
Copy link
Contributor

Yeah I don't want to block I just want to shift potential guidance around when using this API is appropriate

@ef4
Copy link
Contributor

ef4 commented Aug 4, 2023

Re-summarizing what we discussed when we put this into FCP: this RFC predating staging, so we're just matching it to the process after the fact as best we can.

This is a stable low-level primitive. How it appears in high-level docs is going to depend on how modifiers and resources appear. No more work directly driven by this feature is needed at this time.

@ef4 ef4 marked this pull request as ready for review August 4, 2023 14:23
@ef4 ef4 force-pushed the advance-rfc-0580 branch from ea02d8b to fc16124 Compare August 4, 2023 14:24
@ef4 ef4 merged commit bf3f654 into master Aug 4, 2023
@delete-merged-branch delete-merged-branch bot deleted the advance-rfc-0580 branch August 4, 2023 14:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants