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

feat: 0.76 Release Blog Post #4279

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from
Draft

feat: 0.76 Release Blog Post #4279

wants to merge 5 commits into from

Conversation

blakef
Copy link
Contributor

@blakef blakef commented Oct 14, 2024

The release blog post. This is an early draft that requires community feedback on:

  • accuracy
  • glaring omissions

Please avoid bike-shedding where possible.

Copy link

netlify bot commented Oct 14, 2024

Deploy Preview for react-native ready!

Name Link
🔨 Latest commit ca2a2a3
🔍 Latest deploy log https://app.netlify.com/sites/react-native/deploys/671000e58027d20008cc9648
😎 Deploy Preview https://deploy-preview-4279--react-native.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@blakef blakef force-pushed the 0.76-release-blog branch 5 times, most recently from 55ccb5c to 381e25c Compare October 14, 2024 17:58
@blakef blakef force-pushed the 0.76-release-blog branch 3 times, most recently from b118484 to 1ff6856 Compare October 14, 2024 20:55
Copy link
Contributor

@cipolleschi cipolleschi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great job with the blogpost! 👏 👏 👏 👏 👏

I left some suggestions to streamline it a little bit more. Also, we need to run the linter on it! @blakef

website/blog/2024-10-23-release-0.76-new-architecture.md Outdated Show resolved Hide resolved
website/blog/2024-10-23-release-0.76-new-architecture.md Outdated Show resolved Hide resolved
website/blog/2024-10-23-release-0.76-new-architecture.md Outdated Show resolved Hide resolved
website/blog/2024-10-23-release-0.76-new-architecture.md Outdated Show resolved Hide resolved
website/blog/2024-10-23-release-0.76-new-architecture.md Outdated Show resolved Hide resolved
website/blog/2024-10-23-release-0.76-new-architecture.md Outdated Show resolved Hide resolved
website/blog/2024-10-23-release-0.76-new-architecture.md Outdated Show resolved Hide resolved
website/blog/2024-10-23-release-0.76-new-architecture.md Outdated Show resolved Hide resolved
website/blog/2024-10-23-release-0.76-new-architecture.md Outdated Show resolved Hide resolved
website/blog/2024-10-23-release-0.76-new-architecture.md Outdated Show resolved Hide resolved
@cortinico cortinico marked this pull request as draft October 15, 2024 10:35
Copy link
Contributor

@slorber slorber left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Things that could be worth it to include:

@cipolleschi
Copy link
Contributor

cipolleschi commented Oct 15, 2024

@slorber

Swift template? (although it's in a separate repo now) react-native-community/template#45

This will not land in 0.76. The 0.76 branch of the template still has the objective-c code, so it will not pop up in the upgrade helper and any new project in 0.76 with the template will still have the code in objective-c. That's why we omitted it.

Metro 0.81 (and mention recent perf gains)? facebook/[email protected] (release)

This is worth calling out, especially because we also call that out at React Universe on the stage. cc. @blakef

Not sure it's worth mentioning, but CSS isolate: facebook/react-native#45883

This feels like a detail of the views that was introduced to make other properties that depends on the stacking context work better.. Do you think that many people might want to use this prop?

Modal backdropColor? facebook/react-native#46322

This feels like something too small to make it to the blogpost. When we write the blogpost, we try to put there the highlights that might attract the most people or the announcement we want to make. A specific prop in a specific component is something that only person that is really interested into should look for in the Changelog or in the documentation.

@slorber
Copy link
Contributor

slorber commented Oct 15, 2024

Thanks

Forgot that Oskar said Swift template was for 0.77

I understand and doubt many will use CSS isolate, even most web devs never heard of it 😄
What I usually do for Docusaurus is add all these smaller changes in a list after the highlights: https://docusaurus.io/blog/releases/3.5#other-changes

@cipolleschi
Copy link
Contributor

@blakef can we fix the PR? it fails to lint, build and deploy.


### React Native New Architecture by default

The New Architecture is here. Starting from 0.76 the New Architecture is enabled by default in your projects.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The New Architecture is here. Starting from 0.76 the New Architecture is enabled by default in your projects.
Starting from 0.76 the New Architecture is enabled by default in your projects.

- On Android, you can modify the `gradle.properties` file and turn the `newArchEnabled` flag to `false`.

```diff
-newArchEnabled=false
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should start off as true, right?


### Box Shadow and Filter style props

We’ve added two New Architecture only style props in 0.76 - `boxShadow` and `filter`. Both of these props exist on the web, and the team tried to stick to the specs when possible so that these props are predictable, familiar, and ultimately easier to adopt. As a result, you can look up the web documentation to fully understand how these work, but there are a few important differences which are noted below.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"and the team tried to stick to the specs when possible"

This sentence raises spidey senses. What does this mean? "We tried, but didn't stick to web specs"? "For everything we support, it matches the web specs"?

Can we make this more explicit?


There are some difference between the new `boxShadow` and the [existing shadow functionality](https://reactnative.dev/docs/shadow-props):

- Does not work on Android
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is confusing. This list could be read as the new one doesn't work on Android.

"The previous shadow functionality had some shortcomings addressed now addressed by boxShadow:

  • It not works on Android
  • It can be inset
    ...
    "

Something like that. Just frame the list from the perspective of what you can do now, as this is the announcement post for 0.76.

### [Android] React Native is distributed as a single library

React Native 0.76 will ship with a reduced number of native dynamic libraries, as we merged a lot of our native code into a single library called `libreactnative.so`.
This change comes with reduction in app size, and improvement in app startup performance on Android.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This reduction in app size is massive, right? Let's put the number here. If it is large enough, should it be in the blog post title too?


We have updated our minimum platform and SDK versions:

- iOS: [15.1](https://support.apple.com/en-gb/108051#151)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it worth including what we updated from? Otherwise it's not obvious how big or small of a change this is. Did we bump from 15.0? 14? 13?


### Other Breaking Changes

- **Animation**
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this capitalized and the other bullets are lower case? Should they all be capitalized?


Please use the [React Native Upgrade Helper](https://react-native-community.github.io/upgrade-helper/) to view code changes between React Native versions for existing projects, in addition to the Upgrading docs.

To create a new project:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

probably need to be clear that this isn't the official way to create a project, it's the community cli.

And since we recommend people create new projects with Expo, I'd pull up the Expo line to be first

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.

7 participants