1
0
mirror of https://gitcode.com/gh_mirrors/re/react-native-pushy.git synced 2025-09-16 08:41:37 +08:00
Code Issues Packages Projects Releases Wiki Activity GitHub Gitee

bump example rn 0.79.2

This commit is contained in:
sunnylqm
2025-05-29 15:01:44 +08:00
parent e5424591d1
commit 598ae1a506
9 changed files with 2111 additions and 617 deletions

View File

@@ -62,3 +62,7 @@ buck-out/
# Ruby / CocoaPods # Ruby / CocoaPods
/ios/Pods/ /ios/Pods/
/vendor/bundle/ /vendor/bundle/
# react-native-update
.update
.pushy

View File

@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-all.zip distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
networkTimeout=10000 networkTimeout=10000
validateDistributionUrl=true validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -17,33 +17,33 @@
"form-data": "^4.0.2", "form-data": "^4.0.2",
"patch-package": "^8.0.0", "patch-package": "^8.0.0",
"react": "19.0.0", "react": "19.0.0",
"react-native": "0.78.0", "react-native": "0.79.2",
"react-native-camera-kit": "^14.2.0", "react-native-camera-kit": "^15.0.1",
"react-native-paper": "^5.13.1", "react-native-paper": "^5.14.5",
"react-native-safe-area-context": "^5.3.0", "react-native-safe-area-context": "^5.4.1",
"react-native-svg": "^15.11.2", "react-native-svg": "^15.12.0",
"react-native-update": "^10.26.4", "react-native-update": "^10.28.11",
"react-native-vector-icons": "^10.2.0" "react-native-vector-icons": "^10.2.0"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "^7.26.0", "@babel/core": "^7.27.3",
"@babel/preset-env": "^7.26.0", "@babel/preset-env": "^7.27.2",
"@babel/runtime": "^7.26.0", "@babel/runtime": "^7.27.3",
"@react-native-community/cli": "15.0.1", "@react-native-community/cli": "18.0.0",
"@react-native-community/cli-platform-android": "15.0.1", "@react-native-community/cli-platform-android": "18.0.0",
"@react-native-community/cli-platform-ios": "15.0.1", "@react-native-community/cli-platform-ios": "18.0.0",
"@react-native/babel-preset": "0.78.0", "@react-native/babel-preset": "0.79.2",
"@react-native/eslint-config": "0.78.0", "@react-native/eslint-config": "0.79.2",
"@react-native/metro-config": "0.78.0", "@react-native/metro-config": "0.79.2",
"@react-native/typescript-config": "0.78.0", "@react-native/typescript-config": "0.79.2",
"@types/react": "^19.0.0", "@types/react": "^19.0.0",
"@types/react-test-renderer": "^19.0.0", "@types/react-test-renderer": "^19.0.0",
"detox": "^20.32.0", "detox": "^20.39.0",
"eslint": "^8.19.0", "eslint": "^8.19.0",
"jest": "^29.6.3", "jest": "^29.6.3",
"prettier": "2.8.8", "prettier": "2.8.8",
"react-test-renderer": "19.0.0", "react-test-renderer": "19.0.0",
"typescript": "5.8.2" "typescript": "5.8.3"
}, },
"engines": { "engines": {
"node": ">=18" "node": ">=18"

View File

@@ -1,6 +1,6 @@
{ {
"name": "react-native-update", "name": "react-native-update",
"version": "10.29.0", "version": "10.29.0-beta.2",
"description": "react-native hot update", "description": "react-native hot update",
"main": "src/index", "main": "src/index",
"scripts": { "scripts": {

View File

@@ -1,6 +1,5 @@
import { CheckResult, ClientOptions, ProgressData, EventType } from './type'; import { CheckResult, ClientOptions, ProgressData, EventType } from './type';
import { import {
assertDev,
assertWeb, assertWeb,
emptyObj, emptyObj,
enhancedFetch, enhancedFetch,
@@ -171,10 +170,12 @@ export class Pushy {
getCheckUrl = (endpoint: string = this.options.server!.main) => { getCheckUrl = (endpoint: string = this.options.server!.main) => {
return `${endpoint}/checkUpdate/${this.options.appKey}`; return `${endpoint}/checkUpdate/${this.options.appKey}`;
}; };
assertDebug = () => { assertDebug = (matter: string) => {
if (__DEV__ && !this.options.debug) { if (__DEV__ && !this.options.debug) {
console.info( console.info(
'You are currently in the development environment and have not enabled debug mode. The hot update check will not be performed. If you need to debug hot updates in the development environment, please set debug to true in the client.', `You are currently in the development environment and have not enabled debug mode.
${matter} will not be performed.
If you need to debug ${matter} in the development environment, please set debug to true in the client.`,
); );
return false; return false;
} }
@@ -189,7 +190,7 @@ export class Pushy {
this.report({ type: 'markSuccess' }); this.report({ type: 'markSuccess' });
}; };
switchVersion = async (hash: string) => { switchVersion = async (hash: string) => {
if (!assertDev('switchVersion()')) { if (!this.assertDebug('switchVersion()')) {
return; return;
} }
if (assertHash(hash) && !sharedState.applyingUpdate) { if (assertHash(hash) && !sharedState.applyingUpdate) {
@@ -200,7 +201,7 @@ export class Pushy {
}; };
switchVersionLater = async (hash: string) => { switchVersionLater = async (hash: string) => {
if (!assertDev('switchVersionLater()')) { if (!this.assertDebug('switchVersionLater()')) {
return; return;
} }
if (assertHash(hash)) { if (assertHash(hash)) {
@@ -209,7 +210,7 @@ export class Pushy {
} }
}; };
checkUpdate = async (extra?: Record<string, any>) => { checkUpdate = async (extra?: Record<string, any>) => {
if (!this.assertDebug()) { if (!this.assertDebug('checkUpdate()')) {
return; return;
} }
if (!assertWeb()) { if (!assertWeb()) {
@@ -414,43 +415,48 @@ export class Pushy {
} }
} }
} }
const pdiffUrl = await testUrls(joinUrls(paths, pdiff)); if (!succeeded) {
if (!succeeded && pdiffUrl) { const pdiffUrl = await testUrls(joinUrls(paths, pdiff));
log('downloading pdiff'); if (pdiffUrl) {
try { log('downloading pdiff');
await PushyModule.downloadPatchFromPackage({ try {
updateUrl: pdiffUrl, await PushyModule.downloadPatchFromPackage({
hash, updateUrl: pdiffUrl,
}); hash,
succeeded = 'pdiff'; });
} catch (e: any) {
const errorMessage = `pdiff error: ${e.message}`;
errorMessages.push(errorMessage);
lastError = new Error(errorMessage);
if (__DEV__) {
succeeded = 'pdiff'; succeeded = 'pdiff';
} else { } catch (e: any) {
log(errorMessage); const errorMessage = `pdiff error: ${e.message}`;
errorMessages.push(errorMessage);
lastError = new Error(errorMessage);
if (__DEV__ && !full) {
succeeded = 'pdiff';
log('当前是开发环境,无法执行增量式热更新。如果需要在开发环境中测试全量热更新,请打开“忽略时间戳”开关再重试。');
} else {
log(errorMessage);
}
} }
} }
} }
const fullUrl = await testUrls(joinUrls(paths, full)); if (!succeeded) {
if (!succeeded && fullUrl) { const fullUrl = await testUrls(joinUrls(paths, full));
log('downloading full patch'); if (fullUrl) {
try { log('downloading full patch');
await PushyModule.downloadFullUpdate({ try {
updateUrl: fullUrl, await PushyModule.downloadFullUpdate({
hash, updateUrl: fullUrl,
}); hash,
succeeded = 'full'; });
} catch (e: any) {
const errorMessage = `full patch error: ${e.message}`;
errorMessages.push(errorMessage);
lastError = new Error(errorMessage);
if (__DEV__) {
succeeded = 'full'; succeeded = 'full';
} else { } catch (e: any) {
log(errorMessage); const errorMessage = `full patch error: ${e.message}`;
errorMessages.push(errorMessage);
lastError = new Error(errorMessage);
if (__DEV__) {
succeeded = 'full';
} else {
log(errorMessage);
}
} }
} }
} }
@@ -458,9 +464,6 @@ export class Pushy {
sharedState.progressHandlers[hash].remove(); sharedState.progressHandlers[hash].remove();
delete sharedState.progressHandlers[hash]; delete sharedState.progressHandlers[hash];
} }
if (__DEV__) {
return hash;
}
if (!succeeded) { if (!succeeded) {
this.report({ this.report({
type: 'errorUpdate', type: 'errorUpdate',

View File

@@ -251,7 +251,7 @@ export const UpdateProvider = ({
const markSuccess = client.markSuccess; const markSuccess = client.markSuccess;
useEffect(() => { useEffect(() => {
if (!client.assertDebug()) { if (!client.assertDebug('checkUpdate()')) {
return; return;
} }
const { checkStrategy, dismissErrorAfter, autoMarkSuccess } = options; const { checkStrategy, dismissErrorAfter, autoMarkSuccess } = options;

View File

@@ -99,16 +99,6 @@ export const assertWeb = () => {
return true; return true;
}; };
export const assertDev = (matter: string) => {
if (__DEV__) {
console.warn(
`${matter} is not supported in development environment; no action taken.`,
);
return false;
}
return true;
};
// export const isAndroid70AndBelow = () => { // export const isAndroid70AndBelow = () => {
// // android 7.0 and below devices do not support letsencrypt cert // // android 7.0 and below devices do not support letsencrypt cert
// // https://letsencrypt.org/2023/07/10/cross-sign-expiration/ // // https://letsencrypt.org/2023/07/10/cross-sign-expiration/