-
-
Notifications
You must be signed in to change notification settings - Fork 494
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
Create an Octane upgrade strategy guide #850
Conversation
@vaidehijoshi - I can't add you as a formal reviewer in the GitHub interface, but please review if you can! |
The best way to discover new features is to read the [release blog posts](https://blog.emberjs.com/tags/releases.html). | ||
If a new feature requires you to opt-in, it's called an optional feature. | ||
Follow [this guide](../../configuring-ember/optional-features/) to learn which optional features are available in your app's version and how to enable them. | ||
In many cases, codemods will be available to help you make syntax-related updates. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it would be useful to define what a codemod is here, and when to use them.
guides/release/upgrading/index.md
Outdated
### Refactoring checklist | ||
|
||
For many of the optional features, the thing they affect the most is what you see in newly created files, not your existing code. | ||
That's a good place to start, but eventually you may want to refactor existing code so that your app follows one main programming model, not a mixture of Octane and Classic. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we mention something here about how, even though your app will keep working on Octane even though it isn't completely idiomatic, you probably want to follow Octane idioms (and hence it's good to refactor in that direction to use those new idioms)?
There's no one-size-fits-all strategy, but here is a checklist you can adapt, once you're familiar with what Octane has to offer: | ||
|
||
1. Convert curly bracket components (`{{my-component}}`) to Angle Brackets (`<MyComponent />`). They are a normal, out-of-the-box feature of Ember since [3.4](https://blog.emberjs.com/2018/10/07/ember-3-4-released.html) that does not change a component's behavior. Follow the [Angle Bracket Syntax guide](../../reference/syntax-conversion-guide) for examples. | ||
2. Use Named Arguments and `this` in your templates. This also does not change component behavior. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should give an example of Named Arguments (or define it?) here
Nice work! My comments are pretty much all just minor suggestions to improve readability and some ideas of where we can add definitions/context. 😄 |
Co-Authored-By: Vaidehi Joshi <vaidehi.sj@gmail.com>
…e into upgrading-intro
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approving as a good first pass
Closes #849