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

0.15 canary release #1897

Closed
necolas opened this issue Feb 6, 2021 · 5 comments
Closed

0.15 canary release #1897

necolas opened this issue Feb 6, 2021 · 5 comments

Comments

@necolas
Copy link
Owner

necolas commented Feb 6, 2021

The 0.15 canary release is now available for testing and feedback. PR: #1898

npm i react-native-web@canary

Release notes

This release introduces improved accessibility features and new documentation. It includes relatively minor breaking changes.

Breaking changes

  • React 17 is a peer dependency.
  • The I18nManager API has removed the isRTL and doLeftAndRightSwapInRTL properties. They must now be accessed using the getConstants() method, which returns an object with the same properties. This was an undocumented breaking change in a previous version of React Native.
  • The focusable prop now determines whether an element appears in the keyboard tab flow.
  • The hrefAttrs prop has been added to Text and View. The value is an object with rel, target, and download properties. This replaces the undocumented rel and target props.
  • The automatic addition of rel="noopener" to anchors has been removed.
  • The Linking.openURL(url) API now opens the url in new tab.
  • The Linking API now includes the addEventListener methods.
  • The deprecated importantForAccessibility prop has been removed. Use accessibilityHidden instead.
  • The undocumented data-focusable attribute has also been removed from rendered DOM nodes.

New features

  • Pressable has added onHoverIn and onHoverOut props.
  • All ARIA properties are now supported via equivalent accessibility* props. The undocumented support for aria-* prop forwarding remains and will be removed in a future version.
  • Additional accessibilityRole values are mapped to HTML element equivalents.
  • CSS aspectRatio property is now available in browsers with support.

Deprecations

  • The accessible prop is deprecated and will be removed in the next minor release. React Native for Web will follow React Native for Windows/macOS in removing this prop. Use focusable instead.

Documentation

This release will include a rewrite of the documentation site and interactive examples. A preview of the documentation can be found below:

https://necolas.github.io/react-native-web/canary/

image

The examples will be embedded in relevant pages via a Next.js-powered codesandbox, making it easy for people to fork the example app from their browsers. At the moment the examples are copy-paste from the previous docs but will get a bit of a visual makeover later.

@necolas necolas pinned this issue Feb 6, 2021
@necolas
Copy link
Owner Author

necolas commented Feb 6, 2021

Documentation fixes required:

  • Typos in "Installation", "Accessibility", and "Localization" pages.
  • Pressable: document hover props
  • Accessibility: mapping from "button" role to element is not correct at this time
  • Add og tags and make sure page titles are good

Code fixes required:

  • Pressable should have additional props for forcing interaction states in tests

@necolas
Copy link
Owner Author

necolas commented Feb 11, 2021

Note that I've reverted the removal of accessible and it will instead be deprecated before being removed in the next minor.

Also fixed a bug in the canary release to get the new accessibility props working as described.

@blackbing
Copy link

Will include this? #1786

@necolas
Copy link
Owner Author

necolas commented Feb 12, 2021

Will include this? #1786

image

@necolas
Copy link
Owner Author

necolas commented Feb 12, 2021

This release is now public

@necolas necolas closed this as completed Feb 12, 2021
Repository owner deleted a comment from ally0426 Feb 12, 2021
@necolas necolas unpinned this issue Feb 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants