Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: facebook/react-native
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.69.0-rc.4
Choose a base ref
...
head repository: facebook/react-native
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.69.1
Choose a head ref
  • 14 commits
  • 33 files changed
  • 10 contributors

Commits on May 31, 2022

  1. Fix downloading prebuilt hermes from the Github release (#33935)

    Summary:
    This:
    ```ruby
    source[:http] = `https://github.com/facebook/react-native/releases/download/v#{version}/hermes-runtime-darwin-v#{version}.tar.gz`
    ```
    currently fails with the following error:
    ```
    [!] Failed to load 'hermes-engine' podspec:
    [!] Invalid `hermes-engine.podspec` file: No such file or directory - https://github.com/facebook/react-native/releases/download/v0.69.0-rc.4/hermes-runtime-darwin-v0.69.0-rc.4.tar.gz.
    ```
    
    For some reasons, the string with backticks is treated differently than with double quotes since this works:
    ```ruby
    source[:http] = "https://github.com/facebook/react-native/releases/download/v#{version}/hermes-runtime-darwin-v#{version}.tar.gz"
    ```
    
    ## Changelog
    
    <!-- Help reviewers and the release process by writing your own changelog entry. For an example, see:
    https://github.com/facebook/react-native/wiki/Changelog
    -->
    
    [Internal] - Fix downloading prebuilt hermes from the Github release
    
    Pull Request resolved: #33935
    
    Test Plan:
    - `npx react-native init RN069RC4 --version 0.69.0-rc.4`
    - in the created project, run `pod install` with hermes enabled
    - run `git init && git add . && git commit -m "Initial commit" && git remote add origin https://github.com/fortmarek/some-fake-repository` (this is necessary due to an unrelated bug in the RC4)
    - observe error
    - update `node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec` with the change from this commit
    - run `pod install`
    - 🎉
    
    Reviewed By: dmitryrykun
    
    Differential Revision: D36775047
    
    Pulled By: cortinico
    
    fbshipit-source-id: 3772adca32fe9898cde33c187d19b7b181af3677
    fortmarek committed May 31, 2022
    Configuration menu
    Copy the full SHA
    88fa872 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f50936b View commit details
    Browse the repository at this point in the history
  3. [0.69.0-rc.5] Bump version numbers

    Distiller committed May 31, 2022
    Configuration menu
    Copy the full SHA
    6d200c3 View commit details
    Browse the repository at this point in the history

Commits on Jun 1, 2022

  1. Configuration menu
    Copy the full SHA
    7262acc View commit details
    Browse the repository at this point in the history
  2. Make sure sdks/.hermesversion is included inside the NPM package.

    Summary:
    The sdks/.hermesversion file should be included inside the React Native NPM package.
    While this file is available on the release branch, so it's effectively used during artifact preparation,
    the file should also be included inside the react-native NPM package.
    
    This commit addresses it.
    
    Changelog:
    [Internal] - Make sure sdks/.hermesversion is included inside the NPM package
    
    Reviewed By: dmitryrykun
    
    Differential Revision: D36785480
    
    fbshipit-source-id: 1152de77818e92814b402a57ca5a05c235747eac
    cortinico committed Jun 1, 2022
    Configuration menu
    Copy the full SHA
    e8af5b8 View commit details
    Browse the repository at this point in the history
  3. [0.69.0-rc.6] Bump version numbers

    Distiller committed Jun 1, 2022
    Configuration menu
    Copy the full SHA
    e68aa6a View commit details
    Browse the repository at this point in the history

Commits on Jun 22, 2022

  1. [0.69.0] Bump version numbers

    Distiller authored and Distiller committed Jun 22, 2022
    Configuration menu
    Copy the full SHA
    74a08a3 View commit details
    Browse the repository at this point in the history

Commits on Jun 29, 2022

  1. Use monotonic clock for performance.now() (#33983)

    Summary:
    In #32695, the `Performance.now()` implementation changed to use unix epoch timestamps instead of a monotonic clock.
    
    This is problematic, because it means that performance measurements get skewed if the device clock changes between two measurements.
    
    With this change, the clock is now monotonic (and the implementation stays consistent between platforms).
    
    More details and repro steps can be found in [this issue](#33977)
    Closes #33977
    
    ## Changelog
    
    [General] [Fixed] - Use monotonic clock for performance.now()
    
    Pull Request resolved: #33983
    
    Test Plan:
    Run on iOS and Android:
    ```
    const now = global.performance.now()
    console.log(`${Platform.OS}: ${now}`)
    ```
    
    Reviewed By: JoshuaGross, cipolleschi
    
    Differential Revision: D37066999
    
    Pulled By: dmitryrykun
    
    fbshipit-source-id: 298547bf39faea1b025c17ff2d2e1a03f929865b
    Olivier Payen authored and fortmarek committed Jun 29, 2022
    Configuration menu
    Copy the full SHA
    dc334a2 View commit details
    Browse the repository at this point in the history
  2. Make all headers public and add #ifdef __cplusplus (#1150)

    Summary:
    This change is mostly needed to support the new react-native architecture with Swift. Some private yoga headers end up being included in the swift build and result in compilation failure since swift cannot compile c++ modules. See #33381.
    
    The most reliable fix is to include all headers as public headers, and add `#ifdef __cplusplus` to those that include c++. This is already what we do for other headers, this applies this to all headers.
    
    Tested in the YogaKitSample, and also in a react-native app.
    
    Changelog:
    [iOS] [Changed] - Make all Yoga headers public and add #ifdef __cplusplus
    
    X-link: facebook/yoga#1150
    
    Reviewed By: dmitryrykun
    
    Differential Revision: D36966687
    
    Pulled By: cortinico
    
    fbshipit-source-id: a34a54d56df43ab4934715070bab8e790b9abd39
    janicduplessis authored and fortmarek committed Jun 29, 2022
    Configuration menu
    Copy the full SHA
    aa068e0 View commit details
    Browse the repository at this point in the history
  3. revert #33381 changes (#33973)

    Summary:
    facebook/yoga#1150 is better than the tricky #33381 and fix the build error on react-native 0.69 with swift clang module. as facebook/yoga#1150 is landed as 43f831b, i'm reverting the previous change, only leaving the necessary react_native_pods.rb change.
    
    ## Changelog
    
    [iOS] [Changed] - Better fix for yoga + swift clang module build error
    
    Pull Request resolved: #33973
    
    Test Plan: ci passed
    
    Reviewed By: cortinico, cipolleschi
    
    Differential Revision: D36998007
    
    Pulled By: dmitryrykun
    
    fbshipit-source-id: fa11bd950e2a1be6396f286086f4e7941ad2ff5b
    Kudo authored and fortmarek committed Jun 29, 2022
    Configuration menu
    Copy the full SHA
    9d3ce32 View commit details
    Browse the repository at this point in the history
  4. Fix broken use_frameworks from React-bridging (#34011)

    Summary:
    `use_frameworks!` is broken again in react-native 0.69 because React-bridging. in the `use_frameworks!` mode, header structures are flattened, so `#include <react/bridging/CallbackWrapper.h>` is not reachable to the header. to somehow workaround the issue without touch React-bridging imports, the pr do these things:
    
    - use `header_mappings_dir` to keep `react/bridging` header structure
    - because the header structure is not default framework header structure, explicitly `HEADER_SEARCH_PATHS` is necessary.
    - forward declare `CallbackWrapper` and use it internally in ReactCommon. so that we don't need to add `HEADER_SEARCH_PATHS` for React-bridging to every pods depending on `ReactCommon/turbomodule/core`, e.g. React-RCTSettings.podspec.
    
    [iOS] [Fixed] - Fix use_frameworks! for 0.69
    
    Pull Request resolved: #34011
    
    Test Plan:
    ```sh
    $ npx react-native init RN069 --version next
    $ yarn ios
    ```
    
    Reviewed By: cortinico, cipolleschi
    
    Differential Revision: D37169699
    
    Pulled By: dmitryrykun
    
    fbshipit-source-id: 309c55f1c611a2fc3902a83e8af814daaf2af6a0
    Kudo authored and fortmarek committed Jun 29, 2022
    Configuration menu
    Copy the full SHA
    9e591ac View commit details
    Browse the repository at this point in the history
  5. Fix RCT-Folly build error when use_frameworks! and hermes are both en…

    …abled (#34030)
    
    Summary:
    This PR is fixing the build errors on iOS when `use_frameworks!` and `:hermes_enabled` are both enabled. There are two errors:
    
    - fmt/compile.h include not found: This PR adds fmt in header search paths.
    - undefined symbols `_jump_fcontext` and `_make_fcontext` from boost. the two symbols are actually not be unused. because to generate the shared library in dynamic framework mode, LTO (Link-Time-Optimization) is not as powerful as generating a single executable.
    
    ## Changelog
    
    [iOS] [Fixed] - Fix RCT-Folly build error when use_frameworks! and hermes are both enabled
    
    Pull Request resolved: #34030
    
    Test Plan:
    - CI passed
    
    -
    ```
    $ npx react-native init RN069 --version next
    # edit RN069/ios/Podfile to enable use_frameworks! and hermes_enabled
    # patch node_modules/react-native from both #34011 and this prs' patch
    $ pod install
    $ yarn ios
    ```
    
    Reviewed By: cortinico
    
    Differential Revision: D37284084
    
    Pulled By: dmitryrykun
    
    fbshipit-source-id: 923fa03d7844d1d227880919c8b2c8614c848d59
    Kudo authored and fortmarek committed Jun 29, 2022
    Configuration menu
    Copy the full SHA
    050924a View commit details
    Browse the repository at this point in the history
  6. fix(build): fixes React-RCTText build with RN 0.69.0 (#34064)

    Summary:
    Fixes iOS build for React-RCTText with RN 0.69.0, fixes #33976
    
    PR contains changes from #33976 (comment)
    
    PoC repo: https://github.com/ph4r05/poc-rn-34064
    
    Related issues:
    - expo/expo#16283
    - #33815
    - #33976
    
    ## Changelog
    
    <!-- Help reviewers and the release process by writing your own changelog entry. For an example, see:
    https://github.com/facebook/react-native/wiki/Changelog
    -->
    
    [iOS] [Fixed] - Fix build for React-RCTText
    
    Pull Request resolved: #34064
    
    Reviewed By: cortinico
    
    Differential Revision: D37420163
    
    Pulled By: cipolleschi
    
    fbshipit-source-id: 68a831bce9f449348d13e040a1ba12726a66667d
    ph4r05 authored and fortmarek committed Jun 29, 2022
    Configuration menu
    Copy the full SHA
    802d324 View commit details
    Browse the repository at this point in the history
  7. [0.69.1] Bump version numbers

    Distiller authored and Distiller committed Jun 29, 2022
    Configuration menu
    Copy the full SHA
    587eb4e View commit details
    Browse the repository at this point in the history
Loading