Skip to content

Conversation

PHILLIPS71
Copy link
Collaborator

@PHILLIPS71 PHILLIPS71 commented Aug 4, 2025

Summary

Overview

  • React 19: Upgraded from 18.3.1 to 19.0.0
  • Expo: Upgraded from 52.0.30 to 53.0.20
  • React Native: Upgraded from 0.75.4 to 0.79.5

Key Changes

  • Updated all React Native dependencies and peer dependencies
  • Upgraded build tools: Metro config, ESLint plugins, TypeScript 5.8.3
  • Added Hermes ESLint support and Jest Expo integration
  • Updated iOS example project dependencies via Podfile.lock
  • Fixed ESLint configuration and minor code adjustments
  • Upgraded Yarn to 4.9.2 to fix TypeScript resolution

Closes

Test Plan

What's required for testing (prerequisites)?

What are the steps to reproduce (after prerequisites)?

Compatibility

OS Implemented
iOS
Android

Checklist

  • I have tested this on a device and a simulator
  • I added the documentation in README.md
  • I updated the typed files (TS and Flow)
  • I added a sample use of the API in the example project (example/App.js)
  • I have added automated tests, either in JS or e2e tests, as applicable

@PHILLIPS71 PHILLIPS71 marked this pull request as draft August 4, 2025 08:48
@PHILLIPS71 PHILLIPS71 changed the title chore: upgrade to expo v53 chore: upgrade to React 19, Expo 53, and React Native 0.79.5 Aug 6, 2025
@PHILLIPS71 PHILLIPS71 marked this pull request as ready for review August 6, 2025 02:05
package.json Outdated
},
"dependencies": {
"invariant": "^2.2.4"
},
"peerDependencies": {
"expo": ">=52.0.0",
"expo": ">=53.0.0",
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
"expo": ">=53.0.0",
"expo": ">=52.0.0",

@@ -1,3 +1,4 @@
/* eslint-disable jest/expect-expect */
Copy link
Member

Choose a reason for hiding this comment

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

let's resolve this properly? What error is being reported?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

jest.config.js Outdated
@@ -1,5 +1,5 @@
module.exports = {
preset: 'react-native',
preset: 'jest-expo',
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
preset: 'jest-expo',
preset: 'react-native',

let's not mix vanilla RN project with expo

@@ -1,3 +1,4 @@
/* eslint-disable jest/expect-expect */
Copy link
Member

Choose a reason for hiding this comment

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

why?

Copy link
Collaborator Author

@PHILLIPS71 PHILLIPS71 Aug 28, 2025

Choose a reason for hiding this comment

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

I added it as eslint was getting tripped up by the test assertions, since they weren't directly inside the test but came from the assertions.js util file. I silenced the warnings while debugging and forgot to remove them afterwards.

babel.config.js Outdated
{useTransformReactJSXExperimental: !isLintingOrTesting},
],
],
presets: ['babel-preset-expo'],
Copy link
Member

Choose a reason for hiding this comment

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

let's keep this with vanilla RN babel preset

@PHILLIPS71 PHILLIPS71 requested a review from vonovak August 29, 2025 12:22
@vonovak vonovak merged commit 157b8fa into react-native-datetimepicker:master Aug 29, 2025
5 checks passed
@vonovak
Copy link
Member

vonovak commented Aug 29, 2025

thank you!

@PHILLIPS71 PHILLIPS71 deleted the chore/expo-53 branch August 29, 2025 22:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants