react-native-code-push

React Native module for CodePush

OTHER License

Downloads
544.1K
Stars
9K
Committers
182

Bot releases are hidden (Show)

react-native-code-push - v2.0.1-beta

Published by iageoghe over 7 years ago

Breaking Changes

Due to platform changes, [email protected] will only support [email protected] and onwards. Users on [email protected] and lower should consult our compatibility table to determine the latest react-native-code-push version to install.

New Features

  1. This release adds support for React Native 0.43 (@sergey-akhalkov, @silhouettes, @nihgwu)

Bug Fixes

  1. Fixed state issue https://github.com/Microsoft/react-native-code-push/pull/765 where SyncStatus would transition to UP_TO_DATE prior to an update being installed.

  2. Bumped XCode dependency in package.json, bump should eliminate some warning messages https://github.com/Microsoft/react-native-code-push/pull/776.

react-native-code-push - v1.17.3-beta

Published by richardhuaaa over 7 years ago

This is a small bug fix release. Thank you to @ymusiychuk-lohika, @buptkang, @abodalevsky, @max-mironov, @sergey-akhalkov, @timscott and @legalosLOTR for your contributions since the last release!

Bug Fixes (Android)

  1. Fix build issues by reverting Android SDK Build Tools version to 23.0.1, the version specified in the React Native docs.
  2. Address Flow type checking error caused by CodePush hash file being named CodePushHash.json despite not containing JSON.

Bug Fixes (Windows)

  1. Fix an exception caused by the destination folder already existing when unzipping packages.
  2. Fix an exception thrown when the ProcessorID property cannot be determined.

Note that support for [email protected] is coming, and will be introduced in v2.0.0-beta!

react-native-code-push - v1.17.1-beta

Published by buptkang over 7 years ago

New Feature

  1. Added React Native Windows dotNet46 support https://github.com/Microsoft/react-native-code-push/pull/684, thanks @abodalevsky and @rozele.

Bug Fixes

  1. (Android) Fixed the issue https://github.com/Microsoft/react-native-code-push/issues/650 that the timestamp returned in getBinaryResourcesModifiedTime() always returns 312796800000 (11/30/1979, 12:00:00 AM). Thanks @sergey-akhalkov.
  2. (Both iOS and Android) Fixed the issue https://github.com/Microsoft/react-native-code-push/issues/574 that AsyncStorage(get/set...) operation will be blocked while downloading the bundle. Thanks @sergey-akhalkov.
  3. (iOS) Fixed the issue https://github.com/Microsoft/react-native-code-push/issues/661 that react-native link bug when using firebase . Thanks @max-mironov.

Document Upgrade

Since the documentation becomes more complex, we decomposed the document to have a better user experience. Thanks @jeremistadler.

react-native-code-push - v1.17.0-beta

Published by buptkang over 7 years ago

New Features

  1. This release adds support for React Native 0.40.0 (@christopherdro, @sergey-akhalkov, @vladimir-kotikov, @buptkang)
  2. Significantly reduced final size of app once CodePush is integrated (@vladimir-kotikov)

Bug Fixes

  1. Support build for 'Android Plugin for Gradle' versions lower than 1.3.0 (@sergey-akhalkov)
  2. The linking/installation process is now significantly more robust (@matrosov-nikita) to conditions such as:
    1. No iOS or android directory
    2. The main application file is not named MainApplication.java
    3. The Info.plist file is not in the same directory as the AppDelegate.m file
    4. The .mm extension is used instead of .m
    5. Single quotes are used in the react.gradle file
react-native-code-push - v1.16.1-beta

Published by richardhuaaa almost 8 years ago

This release fixes a compilation error when integrating CodePush using CocoaPods into a Swift-based iOS app.

react-native-code-push - v1.16.0-beta

Published by richardhuaaa almost 8 years ago

New Features

  1. This release adds support for React Native 0.36.0 (and 0.37.0). For details about issues with using prior versions of CodePush with RN 36/37, please see https://github.com/Microsoft/react-native-code-push/issues/582.

Bug Fixes

  1. Fix a possible installation failure when using react-native link on Windows. (@Lughino)
  2. Fetch React Native Android artifacts from the node_modules folder instead of Maven. (@mkonicek)
react-native-code-push - v1.15.1-beta

Published by richardhuaaa almost 8 years ago

Thank you @piyushjo for verifying this release!

Bug Fixes

  1. Fix a comparison check on Android that could cause an issue in the bundle loading behavior on some devices. We highly recommend upgrading to this version if you were previously on [email protected]. (@Swordsman-Inaction)
  2. Fix linking errors that may occur when the user has multiple AppDelegate.m files (@hilkeheremans)
  3. Prevent the app's project name from possibly being overriden by CodePush's settings.gradle
react-native-code-push - v1.15.0-beta

Published by richardhuaaa about 8 years ago

This release improves stability across a wide range of platforms and React Native versions.

New Features

  1. Adds support for both React Native 0.34 and 0.35. Thanks so much for your patience!
  2. Updates will now be downloaded from a CDN to improve performance for users globally. To maintain backwards compatibility for those using a whitelist of approved URL endpoints, this will only apply from this release onwards.
  3. Allows the node_modules path to be overriden in codepush.gradle. Thanks @geof90!

Bug Fixes (iOS)

  1. Uses NativeEventEmitter and RCTEventEmitter instead of the deprecated DeviceEventEmitter. Thanks for kicking this off @Pho3nix!
  2. Adds a class guard in initialize methods to allow for clean sub-classing, and fix a build warning about implicit type conversion. Thanks @daniel-beard!

Bug Fixes (Android)

  1. Fixes a crash that may happen when CodePush.getUpdateMetadata() is called when running against the binary version and an update is pending. Thanks @cmcewen!
  2. Prevents a hash mismatch issue that may sometimes occur due to .DS_Store and __MACOSXfiles generated on OS X (this was previously fixed on iOS only).
  3. Removes unnecessary config from AndroidManifest.xml to fix manifest merging issues. Thanks @felipecsl!

Bug Fixes (Universal Windows Platform)

  1. Fixes an issue where rollbacks can occur erroneously when using InstallMode.SILENT. Thanks @rozele!
  2. Fixes an issue where the app can hang when resuming while using InstallMode.ON_NEXT_RESUME. Thanks @rozele!
  3. Fixes an issue where update check results were being cached for the lifetime of the app. Thanks for diagnosing this @rozele!
  4. Numerous style and code cleanliness improvements, including using best practices for async methods. Thanks @rozele!
react-native-code-push - v1.14.6-beta

Published by geof90 about 8 years ago

New Features

  1. Adds support for setting a custom ReactNativeHolder via CodePush.setReactInstanceHolder(). This is useful if you're explicitly launching a React Native instance without an Activity (for example, from within a native push notification receiver). For these situations, CodePush must be told how to find your React Native instance in order to execute a forced restart whenever an update is installed. Thanks @igrayson for your contribution!
  2. Exposes isPendingUpdate and isFailedHash publicly on the iOS native API, however these are not documented methods, so they may run the risk being broken by future releases. Thanks @daniel-beard!

Bug Fixes

  1. For android users using React Native v0.32, during forced app restarts, due to changes in React Native internal APIs we would end up using the legacy logic that recreates the current activity, which does not result in the best experience. This is fixed in this release.
  2. Fixes a nil object insertion crash which occurs when a rollback is triggered while there is no current update present.
  3. Prevent crashes caused by NSError nil pointer dereferences throughout the iOS native API. Thanks @daniel-beard!
react-native-code-push - v1.14.5-beta

Published by geof90 about 8 years ago

Bug Fixes

  1. @CodePush decorator no longer binds lifecycle hooks if root component instance is not ES6 declared, because components declared via React.createClass have their functions autobound by default. Binding them again like how we did previously results in a warning.
  2. Fixed iOS download handler to properly handle HTTP >=400 errors and empty responses. Thanks @ymmuse!
react-native-code-push - v1.14.4-beta

Published by geof90 about 8 years ago

Bug Fixes

  1. Allows activities hosting the React Native root view that don't extend com.facebook.react.ReactActivity to also use the new loadBundle logic which has a better user experience.
  2. Fixed the hash mismatch happening after a diff update is installed due to .DS_Store files on iOS.
react-native-code-push - v1.14.3-beta

Published by geof90 about 8 years ago

New Features

  1. This release simply adds the ability the option to specify an NSBundle other than the mainBundle in iOS.

    
     jsCodeLocation = [CodePush bundleURLForResource:@"main"
                                       withExtension:@"jsbundle"
                                        subdirectory:nil
                                              bundle:[NSBundle bundleWithIdentifier: customBundleIdentifier]];
    

    If left unspecified, it will default to [NSBundle mainBundle] as per the original behavior.

react-native-code-push - v1.14.2-beta

Published by geof90 about 8 years ago

This release improves the linking experience and fixes a bug with not being able to resolve the SoLoader library during runtime.

New Features

  1. react-native link react-native-code-push now automates all of the linking process for you. For Android, it imports the react-native-code-push library project for you and adds the codepush.gradle build step in settings.gradle and android/app/build.gradle, prompts you for your deployment key and modifies the MainApplication / MainActivity java file for you to include the CodePush react package and consult CodePush for the path to the root JS bundle file. For iOS, it similarly also adds the CodePush project to your XCode project, prompts you for your deployment key, adds it to your Info.plist file, and updates your AppDelegate.m file to consult CodePush for the path to your root JS bundle file.

Bug Fixes

  1. Removed the dependency on SoLoader. We earlier relied on it being there as a transitive dependency of React Native, however after the release of React Native 0.31 where it was made an external dependency, there were some reported runtime issues with being unable to resolve the library.
react-native-code-push - v1.14.1-beta

Published by geof90 about 8 years ago

This release primarily adds a decorator function which can be used to wrap your root component in a higher order component that handles syncing updates with the CodePush server. Refer to the README for ways to use it.

New Features

  1. The default export of react-native-code-push can now also be used as a decorator function which takes in some options and wraps your root component in a higher order "CodePush" component. This component then handles syncing with the server for updates for you. Internally, the higher order component calls codePush.sync() at the right trigger events (e.g. when the app resumes). It also ensures that notifyAppReady() is called when the component mounts, so issues like https://github.com/Microsoft/react-native-code-push/issues/360 wouldn't happen.

Going forward, we intend to have this new decorator function be the primary way in which users instrument their app with CodePush instead of calling codePush.sync() directly, although the old method still works and can be used.

react-native-code-push - v1.13.6-beta

Published by richardhuaaa about 8 years ago

This release primarily adds support for overriding the app version used to query for updates, along with a few bug fixes.

New Features (General)

  1. Adds an overrideAppVersion() function that can be used to specify a custom application binary interface version, which would otherwise default to the app store version built into the app. This is an option for advanced users who have their own app store versioning system that they'd like to update independently to their ABI version. It also enables beta distribution for developers who would not like to increment their app store version between each iteration.

Bug Fixes

  1. When the updateDialog is shown while the app is in the background (such as when a new activity is launched), a NullPointerException can arise. This has been fixed in this release.
react-native-code-push - v1.13.5-beta

Published by geof90 over 8 years ago

This release simply includes an enhancement by @joshuafeldman to allow users to specify the binary packaged root JS bundle in a subdirectory of the main bundle via

[CodePush bundleURLForResource:withExtension:subdirectory:]

Thanks!

react-native-code-push - v1.13.3-beta

Published by geof90 over 8 years ago

This includes a few bug fixes:

  • Ensures that lint errors in our plugin don't break the build of the host app
  • Guards against NullPointerExceptions in getConfiguration for Android by using the reactContext instead of getCurrentActivity which is nullable.
  • Fixes 'unchecked call' warnings on classes obtained through reflection on Android
  • Fixes an issue with the currentActivity going into the background during an IMMEDIATE install on Android causing a NullPointerException when trying to invoke methods on the result of getCurrentActivity. The fix adds the resume handler on IMMEDIATE installs so that when the activity returns to the foreground, the update will be applied.
react-native-code-push - v1.13.2-beta

Published by geof90 over 8 years ago

This release

  • Fixes a bug with the app crashing as a result of installing the same update multiple times
  • Improves the legacy restart logic by using the finalized currentActivity from loadBundle to prevent null pointer exceptions, and by using the Activity.recreate() method instead of finishing and re-launching the Activity via an Intent, which results in a better user experience
react-native-code-push - v1.13.0-beta

Published by lostintangent over 8 years ago

This release primarily adds support for configuring CodePush in Android apps using React Native v0.29+. It also adds a few bug fixes and minor enhancements. It is available now on NPM and can be installed via the following command: npm i --save react-native-code-push@latest.

New Features (Android)

  1. Added support for Android in React Native v0.29! The CodePush class includes a new constructor which accepts the MainApplication instance, instead of the MainActivity instance, which allows it to be initialized within the new ReactNativeHost object which is used in React Native v0.29. Check out the updated docs for details on how to configure CodePush with this React Native version.
  2. We aliased the CodePush.getBundleFile Java method as CodePush.getJSBundleFile to be more idiomatic with the respective methods in the ReactNativeHost and ReactActivity classes. CodePush.getBundleFile is now marked as deprecated and will be removed in a future release.

New Features (General)

  1. The object returned from getUpdateMetadata is now a fully-compliant LocalPackage instance (e.g. includes an install method). Thanks @nevir for this contribution!
  2. The notifyAppReady method now returns a StatusReport object which indicates whether an update was successfully installed or rolled back. Thanks @nevir for this contribution!

Bug Fixes

  1. Binary hashing has been fixed in React Native v0.29+ Our plugin supports hashing the contents of the binary in order to prevent installing an update that is equivalent to what was shipped in the store. Unfortunately, this feature was broken for a few releases due to a change in React Native itself, but it now works correctly in React Native v0.29+.
react-native-code-push - v1.12.2-beta

Published by lostintangent over 8 years ago

This is simply a patch release that addresses a few user-reported issues. It available now on NPM and can be acquired by running npm i react-native-code-push@latest.

Bug Fixes (General)

  1. Fixed an issue where the Promise returned by sync wouldn't get resolved/rejected if the update dialog was being used and an exception happened while downloading an update (rare but possible).

Bug Fixes (iOS)

  1. Fixed an issue where the downloadProgressCallback option passed to sync wasn't getting triggered (thanks @mikedouglas!). Android wasn't affected by this issue.
  2. Improved our Podspec by marking the SSZipArchive headers as private, and adding the Core subspec that allows you to link to CodePush without the additional SSZipArchive dependency (thanks @nevir!)