-
Notifications
You must be signed in to change notification settings - Fork 334
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
Deprecate all JavaScript instance properties the except init
method
#3499
Conversation
We'll be clarifying our public API in v5, which means we will either not support or prevent access to some of the properties currently available on our components. Deprecate everything except the `init` method to make people aware of this ahead of time to give them as much time as possible to anticipate the change.
init
CHANGELOG.md
Outdated
|
||
All JavaScript methods in the API for our JavaScript components except `init` are now deprecated, and will be made private in v5.0. | ||
|
||
If you're calling a method other than `init`, [please tell us by filling in this form](https://docs.google.com/forms/d/e/1FAIpQLSfmH2AitMeouXqB0FWC5p5e6y1TSiFCjmJ8DrVuwfmpRGCaWw/viewform?usp=sf_link). We'll use this information when prioritising future additions to the public API. |
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.
Please review the content and structure of the linked Google Form as well. I've pinged @claireashworth to get her thoughts on it too.
init
init
init
init
method
90577be
to
c84b53c
Compare
CHANGELOG.md
Outdated
@@ -64,6 +64,14 @@ This was added in [pull request #2230: Add extra letter spacing modifier for inp | |||
|
|||
### Deprecated features | |||
|
|||
#### Stop using JavaScript API properties other than the `init` method | |||
|
|||
All JavaScript properties in the API for our JavaScript components except for the `init` method are now deprecated, and will be made private in v5.0. |
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.
All JavaScript properties in the API for our JavaScript components except for the `init` method are now deprecated, and will be made private in v5.0. | |
We have deprecated all of the JavaScript properties in the API. The exception to this is the init method for each component, which remains public. We will make all the deprecated JavaScript properties private in v5.0. |
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.
What about this, to avoid some of the repetition? (Especially 'JavaScript' which was already in there twice…)
We have deprecated all of the JavaScript properties in the API except for the
init
method. We will make them private in v5.0.
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 repeated as the last thing mentioned in the previous sentence in the init method, which means grammatically 'them' would refer to the init method. I shall shuffle things...
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've amended my suggestion - does that work?
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 the version with the repetition was better – this one seems to slightly contradict itself. What about:
We have deprecated all of the JavaScript properties in the API, except for the
init
method for each component. We will make all the deprecated JavaScript properties private in v5.0.
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.
Sold! Just needs an extra comma after 'method'
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.
Trying to break it down:
- We have deprecated all of the JavaScript properties in the API.
- The exception to this is the
init
method for each component, which remains public.
With the additional comma I think it would read as:
- We have deprecated all of the JavaScript properties in the API for every component.
- The exception to this is the
init
method, which remains public.
Which isn't quite right – every component has an init
method, which will remain public; and there are also parts of the API that aren't part of any component.
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.
So I've changed the suggestion to your 3 sentences.
efb9c42
to
9b8c313
Compare
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 but feel free to find more things to deprecate 😊
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.
Looks good to me as well (both code and form), thanks for going through all these files Ollie 🙌🏻
9b8c313
to
21e0ac5
Compare
We'll be clarifying our public API in v5, which means we will either not support or prevent access to some of the properties currently available on our components.
Deprecate everything except the
init
method to make people aware of this ahead of time to give them as much time as possible to anticipate the change.Closes #3473.