-
Notifications
You must be signed in to change notification settings - Fork 32
Version 67 support #113
Comments
Hey, I'm facing same issues.. as a temp solution you could use v4.2.2 which works fine on RN 67.2 (at least iOS, didn't test android yet). |
This libs works fine under 0.67, if you can ignore the android warnings about event emitter |
Hello @EdwardDrapkin, We hear your concerns clearly about the state of our React-Native support, given the last few React Native SDK releases (the last patch a few weeks ago, the last minor was about five months ago) have not yet expanded full support for the RN 0.65+. Because the internal development happens on a private mirror that is not visible in this public repository, there is also not a lot of visible action. Behind the scene, our engineer had been busy working through various issues and we are almost ready to release the SDK changes to add the support to the React Native 0.65, 0.66, and 0.67. We are also improving the test build process we use to make sure going forward, we will not fall as behind on React Native as this time. The next version will be a major release, given the change in the minimum support version. I will post a new comment on this issue when the new release is public. Thank you for your interest in using LaunchDarkly. And @wojteg1337, @Titozzz, thank you so much for offering a temporary solution and being helpful! |
Hello @EdwardDrapkin, @wojteg1337, @Titozzz, This version also contains changes to the difficult-to-maintain CI process we used before. While this has no visible impact on the SDK logic itself, this enables us to validate the SDK across multiple React Native and XCode releases much more effectively. With this, there will be fewer issues when we need to support new RN versions going forward, and you can expect a more prompt update from us. The release tag is |
@louis-launchdarkly can you review #116 please, would be nice to have 6.0.1 soon :) |
* Removed the guides link * V4.0 (#68) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Added accessor methods for ConnectionInformation (#64) * Added ConnectionInformation accessors * Fixes from manual testing * PR feedback * Fix allUserAttributesPrivate * Improve typescript docs * Minor fixes (#66) Fixes `floatVariation` to keep double precision and fix build warnings. * Fix track metricValue on iOS (#67) * Remove CI checkout for release Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> * Update iOS SDK dependency to fix Throttler behavior (#69) * V4.1.0 (#72) * Bump react native to 0.64 (#70) * Remove unnecessary React peer dependency (#71) * Fixed jsonVariationDetail parsing on Android and fixed a typo in jsonVariationDetailNone (#73) * Releasing version 4.0.2 * Removes Typescript enums and replaces them with types that extend string (#74) * Added ts flag for testing * Testing bwoskow typescript enum patch * Remove todo * Releasing version 4.0.3 * Multi Environment (#65) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Add protocol * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case * Fix minor PR feedback * Update index.d.ts Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * Added secondaryMobileKeys and getForMobileKey * Added primaryEnvironmentName constant * Fix Android build errors * Fix build errors * Fix Android config error * CI test fixes * Catch LD exception without crashing * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Multi environment works in Android, fixed bad config type * Fix allUserAttributesPrivate * Fix typescript test * No StringSet for wrapper, change to ldClient for isInitialized * Forgot nil check * environment param * Select environment via method parameter * Check for environment undefined in JS * iOS error fixes * Fix iOS bridge, add missing param and try to Android * Remove v4.0 branch hello rn for CI * Fixed all flags and better long conversion * A bunch of let to const, change default to test in multi env ts test, remove ldClient var from iOS * Remove internal comments from Android * Added back 2 Android comments, Double to NSNumber reversion, var to let reversion, ternary to function * Get default environment name from underlying SDKs * Cast NSNumber to Double to fix compilation error * getVersion public, remove ldClient from Android * Use get() * Remove unnecessary get() * Try instead of null check * as! Double to doubleValue, toIntExact to intValue, change Android env name, improve try * Fix listeners in multiple environments, change continue to comment in Android try/catch init * Add semicolon in between environment and flagKey or listenerId string concat * Environment concatenation function * Swift param labels * Added self, remove conditional cast to Any * Remove unnecessary nil coalescing * Capitalize ldClient * getForMobileKey Android * Removed unnecessary try, added final keyword * Revert some nonnull and Double types * Inline primaryEnvironmentName iOS Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Add secondary user attribute (#76) * Fix multi environment on restwrapper (#77) * remove platform specific default env name * Replace function with ternary * Remove _getEnvironment * [ch109800] Await Android client initialization. (#78) Handle promise from `isInitialized` during configuration. Update iOS `isInitialized` to reject when not configured to match Android implementation. Improve Android `allFlags` to reject promise when non-existent environment is used or other exception, and allow calling `allFlags` before client initialization completes. * Update iOS method signature to match implementation (#79) * Releasing version 4.0.4 * [ch110474] Fixes for undeclared variables and other callback issues. (#81) * Changes for Android 3. (#82) * Add unit tests for JS native bridge wrapper. (#83) * Docs improvements (#84) * [ch94513] Add aliasing support (#85) * Requiring default values to be specified. Remove intVariation. (#86) * Safer and cleaner configuration on iOS (#87) * Cleanup Android variation implementation (#88) * Use latest iOS and Android SDKs (#89) * Fix issue with numeric variation calls. (#90) * Add consumer Proguard file to Android build configuration. (#91) * Update Android SDK to 3.1.1 (#92) * Fix for absolute paths in cocoapods generated build files by running pod install in CI. (#93) * Re-introduce compatibility for React Native 0.63 (#94) * Updates docs URLs * Add configuration option `inlineUsersInEvents` and typescript definition for `autoAliasingOptOut`. (#96) * minor doc improvement (#97) * Update version in README to match what version we'll actually be releasing with (#98) * Invert isOffline on iOS. (#99) * Fixes and improvements for CI configuration (#100) * [SC-130395] Allow native SDKs to generate anonymous user when user key is not provided. (#101) * See will this work without adding the mavenCentral * Adding MavenCentral * Fix RN0.63 builds * Fix outdated sed CI expression preventing actually testing against the current SDK version correctly (#103) * Update Android native SDK dependency and gradle config. (#104) * Update iOS SDK native dependency in podspec. (#105) * [sc-139041] Fix releaser typedoc generation (#106) * Have podspec retrieve version from package.json to allow using default releaser version script. (#107) * Fix iOS jsonVariation and jsonVariationDetail when using array default value. (#108) * Completely rework CI build to not use hello-react-native (#109) * Include manual testing application in repo (#110) * Adding the addListener and removeListeners method to silence the warning * Add privateAttributeNames to TypeScript and iOS wrapper implementation. (#112) * Bump to latest Android SDK release (#114) * Fix ownership handling for all flags and connection mode listeners on iOS. (#113) * Update iOS SDK to latest 5.4.5 release. (#115) Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Joe Cieslik <5600929+torchhound@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> Co-authored-by: LaunchDarklyCI <dev@launchdarkly.com> Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com> Co-authored-by: Ember Stevens <ember.stevens@launchdarkly.com> Co-authored-by: ember-stevens <79482775+ember-stevens@users.noreply.github.com> Co-authored-by: Louis Chan <lchan@launchdarkly.com> Co-authored-by: Louis Chan <91093020+louis-launchdarkly@users.noreply.github.com>
* Removed the guides link * V4.0 (#68) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Added accessor methods for ConnectionInformation (#64) * Added ConnectionInformation accessors * Fixes from manual testing * PR feedback * Fix allUserAttributesPrivate * Improve typescript docs * Minor fixes (#66) Fixes `floatVariation` to keep double precision and fix build warnings. * Fix track metricValue on iOS (#67) * Remove CI checkout for release Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> * Update iOS SDK dependency to fix Throttler behavior (#69) * V4.1.0 (#72) * Bump react native to 0.64 (#70) * Remove unnecessary React peer dependency (#71) * Fixed jsonVariationDetail parsing on Android and fixed a typo in jsonVariationDetailNone (#73) * Releasing version 4.0.2 * Removes Typescript enums and replaces them with types that extend string (#74) * Added ts flag for testing * Testing bwoskow typescript enum patch * Remove todo * Releasing version 4.0.3 * Multi Environment (#65) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Add protocol * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case * Fix minor PR feedback * Update index.d.ts Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * Added secondaryMobileKeys and getForMobileKey * Added primaryEnvironmentName constant * Fix Android build errors * Fix build errors * Fix Android config error * CI test fixes * Catch LD exception without crashing * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Multi environment works in Android, fixed bad config type * Fix allUserAttributesPrivate * Fix typescript test * No StringSet for wrapper, change to ldClient for isInitialized * Forgot nil check * environment param * Select environment via method parameter * Check for environment undefined in JS * iOS error fixes * Fix iOS bridge, add missing param and try to Android * Remove v4.0 branch hello rn for CI * Fixed all flags and better long conversion * A bunch of let to const, change default to test in multi env ts test, remove ldClient var from iOS * Remove internal comments from Android * Added back 2 Android comments, Double to NSNumber reversion, var to let reversion, ternary to function * Get default environment name from underlying SDKs * Cast NSNumber to Double to fix compilation error * getVersion public, remove ldClient from Android * Use get() * Remove unnecessary get() * Try instead of null check * as! Double to doubleValue, toIntExact to intValue, change Android env name, improve try * Fix listeners in multiple environments, change continue to comment in Android try/catch init * Add semicolon in between environment and flagKey or listenerId string concat * Environment concatenation function * Swift param labels * Added self, remove conditional cast to Any * Remove unnecessary nil coalescing * Capitalize ldClient * getForMobileKey Android * Removed unnecessary try, added final keyword * Revert some nonnull and Double types * Inline primaryEnvironmentName iOS Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Add secondary user attribute (#76) * Fix multi environment on restwrapper (#77) * remove platform specific default env name * Replace function with ternary * Remove _getEnvironment * [ch109800] Await Android client initialization. (#78) Handle promise from `isInitialized` during configuration. Update iOS `isInitialized` to reject when not configured to match Android implementation. Improve Android `allFlags` to reject promise when non-existent environment is used or other exception, and allow calling `allFlags` before client initialization completes. * Update iOS method signature to match implementation (#79) * Releasing version 4.0.4 * [ch110474] Fixes for undeclared variables and other callback issues. (#81) * Changes for Android 3. (#82) * Add unit tests for JS native bridge wrapper. (#83) * Docs improvements (#84) * [ch94513] Add aliasing support (#85) * Requiring default values to be specified. Remove intVariation. (#86) * Safer and cleaner configuration on iOS (#87) * Cleanup Android variation implementation (#88) * Use latest iOS and Android SDKs (#89) * Fix issue with numeric variation calls. (#90) * Add consumer Proguard file to Android build configuration. (#91) * Update Android SDK to 3.1.1 (#92) * Fix for absolute paths in cocoapods generated build files by running pod install in CI. (#93) * Re-introduce compatibility for React Native 0.63 (#94) * Updates docs URLs * Add configuration option `inlineUsersInEvents` and typescript definition for `autoAliasingOptOut`. (#96) * minor doc improvement (#97) * Update version in README to match what version we'll actually be releasing with (#98) * Invert isOffline on iOS. (#99) * Fixes and improvements for CI configuration (#100) * [SC-130395] Allow native SDKs to generate anonymous user when user key is not provided. (#101) * See will this work without adding the mavenCentral * Adding MavenCentral * Fix RN0.63 builds * Fix outdated sed CI expression preventing actually testing against the current SDK version correctly (#103) * Update Android native SDK dependency and gradle config. (#104) * Update iOS SDK native dependency in podspec. (#105) * [sc-139041] Fix releaser typedoc generation (#106) * Have podspec retrieve version from package.json to allow using default releaser version script. (#107) * Fix iOS jsonVariation and jsonVariationDetail when using array default value. (#108) * Completely rework CI build to not use hello-react-native (#109) * Include manual testing application in repo (#110) * Adding the addListener and removeListeners method to silence the warning * Add privateAttributeNames to TypeScript and iOS wrapper implementation. (#112) * Bump to latest Android SDK release (#114) * Fix ownership handling for all flags and connection mode listeners on iOS. (#113) * Update iOS SDK to latest 5.4.5 release. (#115) * Update Android SDK to latest patch release. (#116) Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Joe Cieslik <5600929+torchhound@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> Co-authored-by: LaunchDarklyCI <dev@launchdarkly.com> Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com> Co-authored-by: Ember Stevens <ember.stevens@launchdarkly.com> Co-authored-by: ember-stevens <79482775+ember-stevens@users.noreply.github.com> Co-authored-by: Louis Chan <lchan@launchdarkly.com> Co-authored-by: Louis Chan <91093020+louis-launchdarkly@users.noreply.github.com>
* Removed the guides link * V4.0 (#68) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Added accessor methods for ConnectionInformation (#64) * Added ConnectionInformation accessors * Fixes from manual testing * PR feedback * Fix allUserAttributesPrivate * Improve typescript docs * Minor fixes (#66) Fixes `floatVariation` to keep double precision and fix build warnings. * Fix track metricValue on iOS (#67) * Remove CI checkout for release Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> * Update iOS SDK dependency to fix Throttler behavior (#69) * V4.1.0 (#72) * Bump react native to 0.64 (#70) * Remove unnecessary React peer dependency (#71) * Fixed jsonVariationDetail parsing on Android and fixed a typo in jsonVariationDetailNone (#73) * Releasing version 4.0.2 * Removes Typescript enums and replaces them with types that extend string (#74) * Added ts flag for testing * Testing bwoskow typescript enum patch * Remove todo * Releasing version 4.0.3 * Multi Environment (#65) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Add protocol * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case * Fix minor PR feedback * Update index.d.ts Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * Added secondaryMobileKeys and getForMobileKey * Added primaryEnvironmentName constant * Fix Android build errors * Fix build errors * Fix Android config error * CI test fixes * Catch LD exception without crashing * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Multi environment works in Android, fixed bad config type * Fix allUserAttributesPrivate * Fix typescript test * No StringSet for wrapper, change to ldClient for isInitialized * Forgot nil check * environment param * Select environment via method parameter * Check for environment undefined in JS * iOS error fixes * Fix iOS bridge, add missing param and try to Android * Remove v4.0 branch hello rn for CI * Fixed all flags and better long conversion * A bunch of let to const, change default to test in multi env ts test, remove ldClient var from iOS * Remove internal comments from Android * Added back 2 Android comments, Double to NSNumber reversion, var to let reversion, ternary to function * Get default environment name from underlying SDKs * Cast NSNumber to Double to fix compilation error * getVersion public, remove ldClient from Android * Use get() * Remove unnecessary get() * Try instead of null check * as! Double to doubleValue, toIntExact to intValue, change Android env name, improve try * Fix listeners in multiple environments, change continue to comment in Android try/catch init * Add semicolon in between environment and flagKey or listenerId string concat * Environment concatenation function * Swift param labels * Added self, remove conditional cast to Any * Remove unnecessary nil coalescing * Capitalize ldClient * getForMobileKey Android * Removed unnecessary try, added final keyword * Revert some nonnull and Double types * Inline primaryEnvironmentName iOS Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Add secondary user attribute (#76) * Fix multi environment on restwrapper (#77) * remove platform specific default env name * Replace function with ternary * Remove _getEnvironment * [ch109800] Await Android client initialization. (#78) Handle promise from `isInitialized` during configuration. Update iOS `isInitialized` to reject when not configured to match Android implementation. Improve Android `allFlags` to reject promise when non-existent environment is used or other exception, and allow calling `allFlags` before client initialization completes. * Update iOS method signature to match implementation (#79) * Releasing version 4.0.4 * [ch110474] Fixes for undeclared variables and other callback issues. (#81) * Changes for Android 3. (#82) * Add unit tests for JS native bridge wrapper. (#83) * Docs improvements (#84) * [ch94513] Add aliasing support (#85) * Requiring default values to be specified. Remove intVariation. (#86) * Safer and cleaner configuration on iOS (#87) * Cleanup Android variation implementation (#88) * Use latest iOS and Android SDKs (#89) * Fix issue with numeric variation calls. (#90) * Add consumer Proguard file to Android build configuration. (#91) * Update Android SDK to 3.1.1 (#92) * Fix for absolute paths in cocoapods generated build files by running pod install in CI. (#93) * Re-introduce compatibility for React Native 0.63 (#94) * Updates docs URLs * Add configuration option `inlineUsersInEvents` and typescript definition for `autoAliasingOptOut`. (#96) * minor doc improvement (#97) * Update version in README to match what version we'll actually be releasing with (#98) * Invert isOffline on iOS. (#99) * Fixes and improvements for CI configuration (#100) * [SC-130395] Allow native SDKs to generate anonymous user when user key is not provided. (#101) * See will this work without adding the mavenCentral * Adding MavenCentral * Fix RN0.63 builds * Fix outdated sed CI expression preventing actually testing against the current SDK version correctly (#103) * Update Android native SDK dependency and gradle config. (#104) * Update iOS SDK native dependency in podspec. (#105) * [sc-139041] Fix releaser typedoc generation (#106) * Have podspec retrieve version from package.json to allow using default releaser version script. (#107) * Fix iOS jsonVariation and jsonVariationDetail when using array default value. (#108) * Completely rework CI build to not use hello-react-native (#109) * Include manual testing application in repo (#110) * Adding the addListener and removeListeners method to silence the warning * Add privateAttributeNames to TypeScript and iOS wrapper implementation. (#112) * Bump to latest Android SDK release (#114) * Fix ownership handling for all flags and connection mode listeners on iOS. (#113) * Update iOS SDK to latest 5.4.5 release. (#115) * Update Android SDK to latest patch release. (#116) * Update to the correct variation method * Add RN 0.68 CI and expand RN version bounds in package definition. (#117) * Update supported RN versions in readme. * [sc-149512] Android reason fixes (#120) Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Joe Cieslik <5600929+torchhound@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> Co-authored-by: LaunchDarklyCI <dev@launchdarkly.com> Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com> Co-authored-by: Ember Stevens <ember.stevens@launchdarkly.com> Co-authored-by: ember-stevens <79482775+ember-stevens@users.noreply.github.com> Co-authored-by: Louis Chan <lchan@launchdarkly.com> Co-authored-by: Louis Chan <91093020+louis-launchdarkly@users.noreply.github.com>
* Removed the guides link * V4.0 (#68) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Added accessor methods for ConnectionInformation (#64) * Added ConnectionInformation accessors * Fixes from manual testing * PR feedback * Fix allUserAttributesPrivate * Improve typescript docs * Minor fixes (#66) Fixes `floatVariation` to keep double precision and fix build warnings. * Fix track metricValue on iOS (#67) * Remove CI checkout for release Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> * Update iOS SDK dependency to fix Throttler behavior (#69) * V4.1.0 (#72) * Bump react native to 0.64 (#70) * Remove unnecessary React peer dependency (#71) * Fixed jsonVariationDetail parsing on Android and fixed a typo in jsonVariationDetailNone (#73) * Releasing version 4.0.2 * Removes Typescript enums and replaces them with types that extend string (#74) * Added ts flag for testing * Testing bwoskow typescript enum patch * Remove todo * Releasing version 4.0.3 * Multi Environment (#65) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Add protocol * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case * Fix minor PR feedback * Update index.d.ts Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * Added secondaryMobileKeys and getForMobileKey * Added primaryEnvironmentName constant * Fix Android build errors * Fix build errors * Fix Android config error * CI test fixes * Catch LD exception without crashing * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Multi environment works in Android, fixed bad config type * Fix allUserAttributesPrivate * Fix typescript test * No StringSet for wrapper, change to ldClient for isInitialized * Forgot nil check * environment param * Select environment via method parameter * Check for environment undefined in JS * iOS error fixes * Fix iOS bridge, add missing param and try to Android * Remove v4.0 branch hello rn for CI * Fixed all flags and better long conversion * A bunch of let to const, change default to test in multi env ts test, remove ldClient var from iOS * Remove internal comments from Android * Added back 2 Android comments, Double to NSNumber reversion, var to let reversion, ternary to function * Get default environment name from underlying SDKs * Cast NSNumber to Double to fix compilation error * getVersion public, remove ldClient from Android * Use get() * Remove unnecessary get() * Try instead of null check * as! Double to doubleValue, toIntExact to intValue, change Android env name, improve try * Fix listeners in multiple environments, change continue to comment in Android try/catch init * Add semicolon in between environment and flagKey or listenerId string concat * Environment concatenation function * Swift param labels * Added self, remove conditional cast to Any * Remove unnecessary nil coalescing * Capitalize ldClient * getForMobileKey Android * Removed unnecessary try, added final keyword * Revert some nonnull and Double types * Inline primaryEnvironmentName iOS Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Add secondary user attribute (#76) * Fix multi environment on restwrapper (#77) * remove platform specific default env name * Replace function with ternary * Remove _getEnvironment * [ch109800] Await Android client initialization. (#78) Handle promise from `isInitialized` during configuration. Update iOS `isInitialized` to reject when not configured to match Android implementation. Improve Android `allFlags` to reject promise when non-existent environment is used or other exception, and allow calling `allFlags` before client initialization completes. * Update iOS method signature to match implementation (#79) * Releasing version 4.0.4 * [ch110474] Fixes for undeclared variables and other callback issues. (#81) * Changes for Android 3. (#82) * Add unit tests for JS native bridge wrapper. (#83) * Docs improvements (#84) * [ch94513] Add aliasing support (#85) * Requiring default values to be specified. Remove intVariation. (#86) * Safer and cleaner configuration on iOS (#87) * Cleanup Android variation implementation (#88) * Use latest iOS and Android SDKs (#89) * Fix issue with numeric variation calls. (#90) * Add consumer Proguard file to Android build configuration. (#91) * Update Android SDK to 3.1.1 (#92) * Fix for absolute paths in cocoapods generated build files by running pod install in CI. (#93) * Re-introduce compatibility for React Native 0.63 (#94) * Updates docs URLs * Add configuration option `inlineUsersInEvents` and typescript definition for `autoAliasingOptOut`. (#96) * minor doc improvement (#97) * Update version in README to match what version we'll actually be releasing with (#98) * Invert isOffline on iOS. (#99) * Fixes and improvements for CI configuration (#100) * [SC-130395] Allow native SDKs to generate anonymous user when user key is not provided. (#101) * See will this work without adding the mavenCentral * Adding MavenCentral * Fix RN0.63 builds * Fix outdated sed CI expression preventing actually testing against the current SDK version correctly (#103) * Update Android native SDK dependency and gradle config. (#104) * Update iOS SDK native dependency in podspec. (#105) * [sc-139041] Fix releaser typedoc generation (#106) * Have podspec retrieve version from package.json to allow using default releaser version script. (#107) * Fix iOS jsonVariation and jsonVariationDetail when using array default value. (#108) * Completely rework CI build to not use hello-react-native (#109) * Include manual testing application in repo (#110) * Adding the addListener and removeListeners method to silence the warning * Add privateAttributeNames to TypeScript and iOS wrapper implementation. (#112) * Bump to latest Android SDK release (#114) * Fix ownership handling for all flags and connection mode listeners on iOS. (#113) * Update iOS SDK to latest 5.4.5 release. (#115) * Update Android SDK to latest patch release. (#116) * Update to the correct variation method * Add RN 0.68 CI and expand RN version bounds in package definition. (#117) * Update supported RN versions in readme. * [sc-149512] Android reason fixes (#120) * Changes for iOS V6. (#122) * Use iOS 6.1.0 and new `LDUser.isAnonymousNullable` property (#123) * Fix automatically setting user as anonymous when both key and anonymous are unspecified (#124) Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Joe Cieslik <5600929+torchhound@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> Co-authored-by: LaunchDarklyCI <dev@launchdarkly.com> Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com> Co-authored-by: Ember Stevens <ember.stevens@launchdarkly.com> Co-authored-by: ember-stevens <79482775+ember-stevens@users.noreply.github.com> Co-authored-by: Louis Chan <lchan@launchdarkly.com> Co-authored-by: Louis Chan <91093020+louis-launchdarkly@users.noreply.github.com>
* Removed the guides link * V4.0 (#68) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Added accessor methods for ConnectionInformation (#64) * Added ConnectionInformation accessors * Fixes from manual testing * PR feedback * Fix allUserAttributesPrivate * Improve typescript docs * Minor fixes (#66) Fixes `floatVariation` to keep double precision and fix build warnings. * Fix track metricValue on iOS (#67) * Remove CI checkout for release Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> * Update iOS SDK dependency to fix Throttler behavior (#69) * V4.1.0 (#72) * Bump react native to 0.64 (#70) * Remove unnecessary React peer dependency (#71) * Fixed jsonVariationDetail parsing on Android and fixed a typo in jsonVariationDetailNone (#73) * Releasing version 4.0.2 * Removes Typescript enums and replaces them with types that extend string (#74) * Added ts flag for testing * Testing bwoskow typescript enum patch * Remove todo * Releasing version 4.0.3 * Multi Environment (#65) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Add protocol * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case * Fix minor PR feedback * Update index.d.ts Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * Added secondaryMobileKeys and getForMobileKey * Added primaryEnvironmentName constant * Fix Android build errors * Fix build errors * Fix Android config error * CI test fixes * Catch LD exception without crashing * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Multi environment works in Android, fixed bad config type * Fix allUserAttributesPrivate * Fix typescript test * No StringSet for wrapper, change to ldClient for isInitialized * Forgot nil check * environment param * Select environment via method parameter * Check for environment undefined in JS * iOS error fixes * Fix iOS bridge, add missing param and try to Android * Remove v4.0 branch hello rn for CI * Fixed all flags and better long conversion * A bunch of let to const, change default to test in multi env ts test, remove ldClient var from iOS * Remove internal comments from Android * Added back 2 Android comments, Double to NSNumber reversion, var to let reversion, ternary to function * Get default environment name from underlying SDKs * Cast NSNumber to Double to fix compilation error * getVersion public, remove ldClient from Android * Use get() * Remove unnecessary get() * Try instead of null check * as! Double to doubleValue, toIntExact to intValue, change Android env name, improve try * Fix listeners in multiple environments, change continue to comment in Android try/catch init * Add semicolon in between environment and flagKey or listenerId string concat * Environment concatenation function * Swift param labels * Added self, remove conditional cast to Any * Remove unnecessary nil coalescing * Capitalize ldClient * getForMobileKey Android * Removed unnecessary try, added final keyword * Revert some nonnull and Double types * Inline primaryEnvironmentName iOS Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Add secondary user attribute (#76) * Fix multi environment on restwrapper (#77) * remove platform specific default env name * Replace function with ternary * Remove _getEnvironment * [ch109800] Await Android client initialization. (#78) Handle promise from `isInitialized` during configuration. Update iOS `isInitialized` to reject when not configured to match Android implementation. Improve Android `allFlags` to reject promise when non-existent environment is used or other exception, and allow calling `allFlags` before client initialization completes. * Update iOS method signature to match implementation (#79) * Releasing version 4.0.4 * [ch110474] Fixes for undeclared variables and other callback issues. (#81) * Changes for Android 3. (#82) * Add unit tests for JS native bridge wrapper. (#83) * Docs improvements (#84) * [ch94513] Add aliasing support (#85) * Requiring default values to be specified. Remove intVariation. (#86) * Safer and cleaner configuration on iOS (#87) * Cleanup Android variation implementation (#88) * Use latest iOS and Android SDKs (#89) * Fix issue with numeric variation calls. (#90) * Add consumer Proguard file to Android build configuration. (#91) * Update Android SDK to 3.1.1 (#92) * Fix for absolute paths in cocoapods generated build files by running pod install in CI. (#93) * Re-introduce compatibility for React Native 0.63 (#94) * Updates docs URLs * Add configuration option `inlineUsersInEvents` and typescript definition for `autoAliasingOptOut`. (#96) * minor doc improvement (#97) * Update version in README to match what version we'll actually be releasing with (#98) * Invert isOffline on iOS. (#99) * Fixes and improvements for CI configuration (#100) * [SC-130395] Allow native SDKs to generate anonymous user when user key is not provided. (#101) * See will this work without adding the mavenCentral * Adding MavenCentral * Fix RN0.63 builds * Fix outdated sed CI expression preventing actually testing against the current SDK version correctly (#103) * Update Android native SDK dependency and gradle config. (#104) * Update iOS SDK native dependency in podspec. (#105) * [sc-139041] Fix releaser typedoc generation (#106) * Have podspec retrieve version from package.json to allow using default releaser version script. (#107) * Fix iOS jsonVariation and jsonVariationDetail when using array default value. (#108) * Completely rework CI build to not use hello-react-native (#109) * Include manual testing application in repo (#110) * Adding the addListener and removeListeners method to silence the warning * Add privateAttributeNames to TypeScript and iOS wrapper implementation. (#112) * Bump to latest Android SDK release (#114) * Fix ownership handling for all flags and connection mode listeners on iOS. (#113) * Update iOS SDK to latest 5.4.5 release. (#115) * Update Android SDK to latest patch release. (#116) * Update to the correct variation method * Add RN 0.68 CI and expand RN version bounds in package definition. (#117) * Update supported RN versions in readme. * [sc-149512] Android reason fixes (#120) * Changes for iOS V6. (#122) * Use iOS 6.1.0 and new `LDUser.isAnonymousNullable` property (#123) * Fix automatically setting user as anonymous when both key and anonymous are unspecified (#124) * Bump Android SDK to 3.1.6 Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Joe Cieslik <5600929+torchhound@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> Co-authored-by: LaunchDarklyCI <dev@launchdarkly.com> Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com> Co-authored-by: Ember Stevens <ember.stevens@launchdarkly.com> Co-authored-by: ember-stevens <79482775+ember-stevens@users.noreply.github.com> Co-authored-by: Louis Chan <lchan@launchdarkly.com> Co-authored-by: Louis Chan <91093020+louis-launchdarkly@users.noreply.github.com>
* Removed the guides link * V4.0 (#68) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Added accessor methods for ConnectionInformation (#64) * Added ConnectionInformation accessors * Fixes from manual testing * PR feedback * Fix allUserAttributesPrivate * Improve typescript docs * Minor fixes (#66) Fixes `floatVariation` to keep double precision and fix build warnings. * Fix track metricValue on iOS (#67) * Remove CI checkout for release Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> * Update iOS SDK dependency to fix Throttler behavior (#69) * V4.1.0 (#72) * Bump react native to 0.64 (#70) * Remove unnecessary React peer dependency (#71) * Fixed jsonVariationDetail parsing on Android and fixed a typo in jsonVariationDetailNone (#73) * Releasing version 4.0.2 * Removes Typescript enums and replaces them with types that extend string (#74) * Added ts flag for testing * Testing bwoskow typescript enum patch * Remove todo * Releasing version 4.0.3 * Multi Environment (#65) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Add protocol * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case * Fix minor PR feedback * Update index.d.ts Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * Added secondaryMobileKeys and getForMobileKey * Added primaryEnvironmentName constant * Fix Android build errors * Fix build errors * Fix Android config error * CI test fixes * Catch LD exception without crashing * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Multi environment works in Android, fixed bad config type * Fix allUserAttributesPrivate * Fix typescript test * No StringSet for wrapper, change to ldClient for isInitialized * Forgot nil check * environment param * Select environment via method parameter * Check for environment undefined in JS * iOS error fixes * Fix iOS bridge, add missing param and try to Android * Remove v4.0 branch hello rn for CI * Fixed all flags and better long conversion * A bunch of let to const, change default to test in multi env ts test, remove ldClient var from iOS * Remove internal comments from Android * Added back 2 Android comments, Double to NSNumber reversion, var to let reversion, ternary to function * Get default environment name from underlying SDKs * Cast NSNumber to Double to fix compilation error * getVersion public, remove ldClient from Android * Use get() * Remove unnecessary get() * Try instead of null check * as! Double to doubleValue, toIntExact to intValue, change Android env name, improve try * Fix listeners in multiple environments, change continue to comment in Android try/catch init * Add semicolon in between environment and flagKey or listenerId string concat * Environment concatenation function * Swift param labels * Added self, remove conditional cast to Any * Remove unnecessary nil coalescing * Capitalize ldClient * getForMobileKey Android * Removed unnecessary try, added final keyword * Revert some nonnull and Double types * Inline primaryEnvironmentName iOS Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Add secondary user attribute (#76) * Fix multi environment on restwrapper (#77) * remove platform specific default env name * Replace function with ternary * Remove _getEnvironment * [ch109800] Await Android client initialization. (#78) Handle promise from `isInitialized` during configuration. Update iOS `isInitialized` to reject when not configured to match Android implementation. Improve Android `allFlags` to reject promise when non-existent environment is used or other exception, and allow calling `allFlags` before client initialization completes. * Update iOS method signature to match implementation (#79) * Releasing version 4.0.4 * [ch110474] Fixes for undeclared variables and other callback issues. (#81) * Changes for Android 3. (#82) * Add unit tests for JS native bridge wrapper. (#83) * Docs improvements (#84) * [ch94513] Add aliasing support (#85) * Requiring default values to be specified. Remove intVariation. (#86) * Safer and cleaner configuration on iOS (#87) * Cleanup Android variation implementation (#88) * Use latest iOS and Android SDKs (#89) * Fix issue with numeric variation calls. (#90) * Add consumer Proguard file to Android build configuration. (#91) * Update Android SDK to 3.1.1 (#92) * Fix for absolute paths in cocoapods generated build files by running pod install in CI. (#93) * Re-introduce compatibility for React Native 0.63 (#94) * Updates docs URLs * Add configuration option `inlineUsersInEvents` and typescript definition for `autoAliasingOptOut`. (#96) * minor doc improvement (#97) * Update version in README to match what version we'll actually be releasing with (#98) * Invert isOffline on iOS. (#99) * Fixes and improvements for CI configuration (#100) * [SC-130395] Allow native SDKs to generate anonymous user when user key is not provided. (#101) * See will this work without adding the mavenCentral * Adding MavenCentral * Fix RN0.63 builds * Fix outdated sed CI expression preventing actually testing against the current SDK version correctly (#103) * Update Android native SDK dependency and gradle config. (#104) * Update iOS SDK native dependency in podspec. (#105) * [sc-139041] Fix releaser typedoc generation (#106) * Have podspec retrieve version from package.json to allow using default releaser version script. (#107) * Fix iOS jsonVariation and jsonVariationDetail when using array default value. (#108) * Completely rework CI build to not use hello-react-native (#109) * Include manual testing application in repo (#110) * Adding the addListener and removeListeners method to silence the warning * Add privateAttributeNames to TypeScript and iOS wrapper implementation. (#112) * Bump to latest Android SDK release (#114) * Fix ownership handling for all flags and connection mode listeners on iOS. (#113) * Update iOS SDK to latest 5.4.5 release. (#115) * Update Android SDK to latest patch release. (#116) * Update to the correct variation method * Add RN 0.68 CI and expand RN version bounds in package definition. (#117) * Update supported RN versions in readme. * [sc-149512] Android reason fixes (#120) * Changes for iOS V6. (#122) * Use iOS 6.1.0 and new `LDUser.isAnonymousNullable` property (#123) * Fix automatically setting user as anonymous when both key and anonymous are unspecified (#124) * Add the new React Native version and the latest non-beta xcode version * Add exclusion to the old RN with new xcode and new RN with old xcode * Update the Readme * Update package files * RN 0.69.1 is available * Code Review Comment to remove xcode 12.2 * Try to install jest first to get past the error * Try to pin the RN version when using with npx * Bump Android SDK to 3.1.6 * Print more about circle CI * Use a separate working director for the new project * Update the relative path * CircleCI need to have -p for mkdir Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Joe Cieslik <5600929+torchhound@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> Co-authored-by: LaunchDarklyCI <dev@launchdarkly.com> Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com> Co-authored-by: Ember Stevens <ember.stevens@launchdarkly.com> Co-authored-by: ember-stevens <79482775+ember-stevens@users.noreply.github.com> Co-authored-by: Louis Chan <lchan@launchdarkly.com> Co-authored-by: Louis Chan <91093020+louis-launchdarkly@users.noreply.github.com>
* Removed the guides link * V4.0 (#68) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Added accessor methods for ConnectionInformation (#64) * Added ConnectionInformation accessors * Fixes from manual testing * PR feedback * Fix allUserAttributesPrivate * Improve typescript docs * Minor fixes (#66) Fixes `floatVariation` to keep double precision and fix build warnings. * Fix track metricValue on iOS (#67) * Remove CI checkout for release Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> * Update iOS SDK dependency to fix Throttler behavior (#69) * V4.1.0 (#72) * Bump react native to 0.64 (#70) * Remove unnecessary React peer dependency (#71) * Fixed jsonVariationDetail parsing on Android and fixed a typo in jsonVariationDetailNone (#73) * Releasing version 4.0.2 * Removes Typescript enums and replaces them with types that extend string (#74) * Added ts flag for testing * Testing bwoskow typescript enum patch * Remove todo * Releasing version 4.0.3 * Multi Environment (#65) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Add protocol * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case * Fix minor PR feedback * Update index.d.ts Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * Added secondaryMobileKeys and getForMobileKey * Added primaryEnvironmentName constant * Fix Android build errors * Fix build errors * Fix Android config error * CI test fixes * Catch LD exception without crashing * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Multi environment works in Android, fixed bad config type * Fix allUserAttributesPrivate * Fix typescript test * No StringSet for wrapper, change to ldClient for isInitialized * Forgot nil check * environment param * Select environment via method parameter * Check for environment undefined in JS * iOS error fixes * Fix iOS bridge, add missing param and try to Android * Remove v4.0 branch hello rn for CI * Fixed all flags and better long conversion * A bunch of let to const, change default to test in multi env ts test, remove ldClient var from iOS * Remove internal comments from Android * Added back 2 Android comments, Double to NSNumber reversion, var to let reversion, ternary to function * Get default environment name from underlying SDKs * Cast NSNumber to Double to fix compilation error * getVersion public, remove ldClient from Android * Use get() * Remove unnecessary get() * Try instead of null check * as! Double to doubleValue, toIntExact to intValue, change Android env name, improve try * Fix listeners in multiple environments, change continue to comment in Android try/catch init * Add semicolon in between environment and flagKey or listenerId string concat * Environment concatenation function * Swift param labels * Added self, remove conditional cast to Any * Remove unnecessary nil coalescing * Capitalize ldClient * getForMobileKey Android * Removed unnecessary try, added final keyword * Revert some nonnull and Double types * Inline primaryEnvironmentName iOS Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Add secondary user attribute (#76) * Fix multi environment on restwrapper (#77) * remove platform specific default env name * Replace function with ternary * Remove _getEnvironment * [ch109800] Await Android client initialization. (#78) Handle promise from `isInitialized` during configuration. Update iOS `isInitialized` to reject when not configured to match Android implementation. Improve Android `allFlags` to reject promise when non-existent environment is used or other exception, and allow calling `allFlags` before client initialization completes. * Update iOS method signature to match implementation (#79) * Releasing version 4.0.4 * [ch110474] Fixes for undeclared variables and other callback issues. (#81) * Changes for Android 3. (#82) * Add unit tests for JS native bridge wrapper. (#83) * Docs improvements (#84) * [ch94513] Add aliasing support (#85) * Requiring default values to be specified. Remove intVariation. (#86) * Safer and cleaner configuration on iOS (#87) * Cleanup Android variation implementation (#88) * Use latest iOS and Android SDKs (#89) * Fix issue with numeric variation calls. (#90) * Add consumer Proguard file to Android build configuration. (#91) * Update Android SDK to 3.1.1 (#92) * Fix for absolute paths in cocoapods generated build files by running pod install in CI. (#93) * Re-introduce compatibility for React Native 0.63 (#94) * Updates docs URLs * Add configuration option `inlineUsersInEvents` and typescript definition for `autoAliasingOptOut`. (#96) * minor doc improvement (#97) * Update version in README to match what version we'll actually be releasing with (#98) * Invert isOffline on iOS. (#99) * Fixes and improvements for CI configuration (#100) * [SC-130395] Allow native SDKs to generate anonymous user when user key is not provided. (#101) * See will this work without adding the mavenCentral * Adding MavenCentral * Fix RN0.63 builds * Fix outdated sed CI expression preventing actually testing against the current SDK version correctly (#103) * Update Android native SDK dependency and gradle config. (#104) * Update iOS SDK native dependency in podspec. (#105) * [sc-139041] Fix releaser typedoc generation (#106) * Have podspec retrieve version from package.json to allow using default releaser version script. (#107) * Fix iOS jsonVariation and jsonVariationDetail when using array default value. (#108) * Completely rework CI build to not use hello-react-native (#109) * Include manual testing application in repo (#110) * Adding the addListener and removeListeners method to silence the warning * Add privateAttributeNames to TypeScript and iOS wrapper implementation. (#112) * Bump to latest Android SDK release (#114) * Fix ownership handling for all flags and connection mode listeners on iOS. (#113) * Update iOS SDK to latest 5.4.5 release. (#115) * Update Android SDK to latest patch release. (#116) * Update to the correct variation method * Add RN 0.68 CI and expand RN version bounds in package definition. (#117) * Update supported RN versions in readme. * [sc-149512] Android reason fixes (#120) * Changes for iOS V6. (#122) * Use iOS 6.1.0 and new `LDUser.isAnonymousNullable` property (#123) * Fix automatically setting user as anonymous when both key and anonymous are unspecified (#124) * Add the new React Native version and the latest non-beta xcode version * Add exclusion to the old RN with new xcode and new RN with old xcode * Update the Readme * Update package files * RN 0.69.1 is available * Code Review Comment to remove xcode 12.2 * Try to install jest first to get past the error * Try to pin the RN version when using with npx * Bump Android SDK to 3.1.6 * Print more about circle CI * Use a separate working director for the new project * Update the relative path * CircleCI need to have -p for mkdir * Upgrade Native Android SDK to 3.1.7 * Try to bump Android SDK to 3.2.0 * The null check logic for isInitialized * Fix spacing * Support React Native 0.70. (#129) * Add RN 0.70.1 and Xcode 14.0.1 to the CircleCI test config * Add the exclusion for RN 0.64 and 0.65 for Xcode 14.0.1 * More update to the Android isInitialized logic (#130) Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Joe Cieslik <5600929+torchhound@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> Co-authored-by: LaunchDarklyCI <dev@launchdarkly.com> Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com> Co-authored-by: Ember Stevens <ember.stevens@launchdarkly.com> Co-authored-by: ember-stevens <79482775+ember-stevens@users.noreply.github.com> Co-authored-by: Louis Chan <lchan@launchdarkly.com> Co-authored-by: Louis Chan <91093020+louis-launchdarkly@users.noreply.github.com>
* Removed the guides link * V4.0 (#68) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Added accessor methods for ConnectionInformation (#64) * Added ConnectionInformation accessors * Fixes from manual testing * PR feedback * Fix allUserAttributesPrivate * Improve typescript docs * Minor fixes (#66) Fixes `floatVariation` to keep double precision and fix build warnings. * Fix track metricValue on iOS (#67) * Remove CI checkout for release Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> * Update iOS SDK dependency to fix Throttler behavior (#69) * V4.1.0 (#72) * Bump react native to 0.64 (#70) * Remove unnecessary React peer dependency (#71) * Fixed jsonVariationDetail parsing on Android and fixed a typo in jsonVariationDetailNone (#73) * Releasing version 4.0.2 * Removes Typescript enums and replaces them with types that extend string (#74) * Added ts flag for testing * Testing bwoskow typescript enum patch * Remove todo * Releasing version 4.0.3 * Multi Environment (#65) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Add protocol * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case * Fix minor PR feedback * Update index.d.ts Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * Added secondaryMobileKeys and getForMobileKey * Added primaryEnvironmentName constant * Fix Android build errors * Fix build errors * Fix Android config error * CI test fixes * Catch LD exception without crashing * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Multi environment works in Android, fixed bad config type * Fix allUserAttributesPrivate * Fix typescript test * No StringSet for wrapper, change to ldClient for isInitialized * Forgot nil check * environment param * Select environment via method parameter * Check for environment undefined in JS * iOS error fixes * Fix iOS bridge, add missing param and try to Android * Remove v4.0 branch hello rn for CI * Fixed all flags and better long conversion * A bunch of let to const, change default to test in multi env ts test, remove ldClient var from iOS * Remove internal comments from Android * Added back 2 Android comments, Double to NSNumber reversion, var to let reversion, ternary to function * Get default environment name from underlying SDKs * Cast NSNumber to Double to fix compilation error * getVersion public, remove ldClient from Android * Use get() * Remove unnecessary get() * Try instead of null check * as! Double to doubleValue, toIntExact to intValue, change Android env name, improve try * Fix listeners in multiple environments, change continue to comment in Android try/catch init * Add semicolon in between environment and flagKey or listenerId string concat * Environment concatenation function * Swift param labels * Added self, remove conditional cast to Any * Remove unnecessary nil coalescing * Capitalize ldClient * getForMobileKey Android * Removed unnecessary try, added final keyword * Revert some nonnull and Double types * Inline primaryEnvironmentName iOS Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Add secondary user attribute (#76) * Fix multi environment on restwrapper (#77) * remove platform specific default env name * Replace function with ternary * Remove _getEnvironment * [ch109800] Await Android client initialization. (#78) Handle promise from `isInitialized` during configuration. Update iOS `isInitialized` to reject when not configured to match Android implementation. Improve Android `allFlags` to reject promise when non-existent environment is used or other exception, and allow calling `allFlags` before client initialization completes. * Update iOS method signature to match implementation (#79) * Releasing version 4.0.4 * [ch110474] Fixes for undeclared variables and other callback issues. (#81) * Changes for Android 3. (#82) * Add unit tests for JS native bridge wrapper. (#83) * Docs improvements (#84) * [ch94513] Add aliasing support (#85) * Requiring default values to be specified. Remove intVariation. (#86) * Safer and cleaner configuration on iOS (#87) * Cleanup Android variation implementation (#88) * Use latest iOS and Android SDKs (#89) * Fix issue with numeric variation calls. (#90) * Add consumer Proguard file to Android build configuration. (#91) * Update Android SDK to 3.1.1 (#92) * Fix for absolute paths in cocoapods generated build files by running pod install in CI. (#93) * Re-introduce compatibility for React Native 0.63 (#94) * Updates docs URLs * Add configuration option `inlineUsersInEvents` and typescript definition for `autoAliasingOptOut`. (#96) * minor doc improvement (#97) * Update version in README to match what version we'll actually be releasing with (#98) * Invert isOffline on iOS. (#99) * Fixes and improvements for CI configuration (#100) * [SC-130395] Allow native SDKs to generate anonymous user when user key is not provided. (#101) * See will this work without adding the mavenCentral * Adding MavenCentral * Fix RN0.63 builds * Fix outdated sed CI expression preventing actually testing against the current SDK version correctly (#103) * Update Android native SDK dependency and gradle config. (#104) * Update iOS SDK native dependency in podspec. (#105) * [sc-139041] Fix releaser typedoc generation (#106) * Have podspec retrieve version from package.json to allow using default releaser version script. (#107) * Fix iOS jsonVariation and jsonVariationDetail when using array default value. (#108) * Completely rework CI build to not use hello-react-native (#109) * Include manual testing application in repo (#110) * Adding the addListener and removeListeners method to silence the warning * Add privateAttributeNames to TypeScript and iOS wrapper implementation. (#112) * Bump to latest Android SDK release (#114) * Fix ownership handling for all flags and connection mode listeners on iOS. (#113) * Update iOS SDK to latest 5.4.5 release. (#115) * Update Android SDK to latest patch release. (#116) * Update to the correct variation method * Add RN 0.68 CI and expand RN version bounds in package definition. (#117) * Update supported RN versions in readme. * [sc-149512] Android reason fixes (#120) * Changes for iOS V6. (#122) * Use iOS 6.1.0 and new `LDUser.isAnonymousNullable` property (#123) * Fix automatically setting user as anonymous when both key and anonymous are unspecified (#124) * Add the new React Native version and the latest non-beta xcode version * Add exclusion to the old RN with new xcode and new RN with old xcode * Update the Readme * Update package files * RN 0.69.1 is available * Code Review Comment to remove xcode 12.2 * Try to install jest first to get past the error * Try to pin the RN version when using with npx * Bump Android SDK to 3.1.6 * Print more about circle CI * Use a separate working director for the new project * Update the relative path * CircleCI need to have -p for mkdir * Upgrade Native Android SDK to 3.1.7 * Try to bump Android SDK to 3.2.0 * The null check logic for isInitialized * Fix spacing * Support React Native 0.70. (#129) * Add RN 0.70.1 and Xcode 14.0.1 to the CircleCI test config * Add the exclusion for RN 0.64 and 0.65 for Xcode 14.0.1 * More update to the Android isInitialized logic (#130) * Revert the isInitialized change and fix package.json (#131) Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Joe Cieslik <5600929+torchhound@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> Co-authored-by: LaunchDarklyCI <dev@launchdarkly.com> Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com> Co-authored-by: Ember Stevens <ember.stevens@launchdarkly.com> Co-authored-by: ember-stevens <79482775+ember-stevens@users.noreply.github.com> Co-authored-by: Louis Chan <lchan@launchdarkly.com> Co-authored-by: Louis Chan <91093020+louis-launchdarkly@users.noreply.github.com>
* Removed the guides link * V4.0 (#68) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Added accessor methods for ConnectionInformation (#64) * Added ConnectionInformation accessors * Fixes from manual testing * PR feedback * Fix allUserAttributesPrivate * Improve typescript docs * Minor fixes (#66) Fixes `floatVariation` to keep double precision and fix build warnings. * Fix track metricValue on iOS (#67) * Remove CI checkout for release Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> * Update iOS SDK dependency to fix Throttler behavior (#69) * V4.1.0 (#72) * Bump react native to 0.64 (#70) * Remove unnecessary React peer dependency (#71) * Fixed jsonVariationDetail parsing on Android and fixed a typo in jsonVariationDetailNone (#73) * Releasing version 4.0.2 * Removes Typescript enums and replaces them with types that extend string (#74) * Added ts flag for testing * Testing bwoskow typescript enum patch * Remove todo * Releasing version 4.0.3 * Multi Environment (#65) * Update to iOS 5.4.0 (#48) * Bump iOS SDK version to 5.4.0 * Replace shared with get() * Replace old method names * Provide default values for EvaluationDetail * Fixed defaultValue for detail value * Changed individual nil coalesce to NSNull * Remove isDisableBackgroundPolling method (#52) * Update iOS base url (#49) * Update iOS base url * Add protocol * Added wrapper name and version to iOS and Android config (#50) * Added wrapper name and version to iOS and Android config * V4 not 5 * Rename wrapper * Add getVersion method (#51) * Added getVersion method * Revert package.json version bump * Fix version case * Fix minor PR feedback * Update index.d.ts Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> * Rename fallback to defaultValue (#53) * Rename fallback to defaultValue * Fix awkward wording defaultValue value * Fix defaultValue value line breaks * Improved resiliency when running in Android (#54) * Add new config values (#55) * Added new config values to iOS and Android * Added typescript config * PR feedback * Fix millis, add default doc * fix common build + add tests for recent introductions (#56) * Added secondaryMobileKeys and getForMobileKey * Added primaryEnvironmentName constant * Fix Android build errors * Fix build errors * Fix Android config error * CI test fixes * Catch LD exception without crashing * fix: start background thread for identify rather than running it (#66) * Bump Android SDK version to 2.14.1 (#59) * Update Android to 2.14.1, change setBaseUri to setPollUri, change floatVariation to doubleVariation * Fix float to double * Doublevalue on non detail * Run CI against v4.0 * URL fix iOS * Add isInitialized to iOS, check initialization in configure (#60) * Added isInitialized to iOS * Add init check to configure * Base url iOS fix, v4.0 ci * Var not func iOS, remove getMap * disable auto-alias in iOS (#61) * Add configureWithTimeout method (#58) * Added configureTimeout method * Fix timeout type on iOS * Simplify timeout nil check * Added param labels, Java syntax fixes * Small fixes * Make timeout final * Remove unnecessary catch * Fix baseUrl * Fix Android config error * Test against v4.0 hello branch * Fix tests * timeout never nil inside check * Convert Int to TimeInterval * Fixed iOS startWaitSeconds * Catch LDException * Fix merge conflict in iOS bridge * Fix merge conflict in index.js * PR feedback * Fix unused timeoutClient * Remove unnecessary ConfigEntryType * Remove StringSet * If let in timeout check * Configure method now takes optional timeout parameter instead of separate method * Renames for consistency (#62) * up-leveling the override for the default polling uri so it affects android too (#63) * Added ip, avatar, and allUserAttributesPrivate (#57) * Added ip, avatar, and allUserAttributesPrivate * Updated test-types.ts, fix case typo * Special case allUserAttributesPrivate * Fix ReadableMap loading of all private * CI fix * Fix string to URL baseUrl * Change to non-default values in test, combine lines in config.yml * Simplify allAttrsPrivate if * resolve breakage with latest merge Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Multi environment works in Android, fixed bad config type * Fix allUserAttributesPrivate * Fix typescript test * No StringSet for wrapper, change to ldClient for isInitialized * Forgot nil check * environment param * Select environment via method parameter * Check for environment undefined in JS * iOS error fixes * Fix iOS bridge, add missing param and try to Android * Remove v4.0 branch hello rn for CI * Fixed all flags and better long conversion * A bunch of let to const, change default to test in multi env ts test, remove ldClient var from iOS * Remove internal comments from Android * Added back 2 Android comments, Double to NSNumber reversion, var to let reversion, ternary to function * Get default environment name from underlying SDKs * Cast NSNumber to Double to fix compilation error * getVersion public, remove ldClient from Android * Use get() * Remove unnecessary get() * Try instead of null check * as! Double to doubleValue, toIntExact to intValue, change Android env name, improve try * Fix listeners in multiple environments, change continue to comment in Android try/catch init * Add semicolon in between environment and flagKey or listenerId string concat * Environment concatenation function * Swift param labels * Added self, remove conditional cast to Any * Remove unnecessary nil coalescing * Capitalize ldClient * getForMobileKey Android * Removed unnecessary try, added final keyword * Revert some nonnull and Double types * Inline primaryEnvironmentName iOS Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> * Add secondary user attribute (#76) * Fix multi environment on restwrapper (#77) * remove platform specific default env name * Replace function with ternary * Remove _getEnvironment * [ch109800] Await Android client initialization. (#78) Handle promise from `isInitialized` during configuration. Update iOS `isInitialized` to reject when not configured to match Android implementation. Improve Android `allFlags` to reject promise when non-existent environment is used or other exception, and allow calling `allFlags` before client initialization completes. * Update iOS method signature to match implementation (#79) * Releasing version 4.0.4 * [ch110474] Fixes for undeclared variables and other callback issues. (#81) * Changes for Android 3. (#82) * Add unit tests for JS native bridge wrapper. (#83) * Docs improvements (#84) * [ch94513] Add aliasing support (#85) * Requiring default values to be specified. Remove intVariation. (#86) * Safer and cleaner configuration on iOS (#87) * Cleanup Android variation implementation (#88) * Use latest iOS and Android SDKs (#89) * Fix issue with numeric variation calls. (#90) * Add consumer Proguard file to Android build configuration. (#91) * Update Android SDK to 3.1.1 (#92) * Fix for absolute paths in cocoapods generated build files by running pod install in CI. (#93) * Re-introduce compatibility for React Native 0.63 (#94) * Updates docs URLs * Add configuration option `inlineUsersInEvents` and typescript definition for `autoAliasingOptOut`. (#96) * minor doc improvement (#97) * Update version in README to match what version we'll actually be releasing with (#98) * Invert isOffline on iOS. (#99) * Fixes and improvements for CI configuration (#100) * [SC-130395] Allow native SDKs to generate anonymous user when user key is not provided. (#101) * See will this work without adding the mavenCentral * Adding MavenCentral * Fix RN0.63 builds * Fix outdated sed CI expression preventing actually testing against the current SDK version correctly (#103) * Update Android native SDK dependency and gradle config. (#104) * Update iOS SDK native dependency in podspec. (#105) * [sc-139041] Fix releaser typedoc generation (#106) * Have podspec retrieve version from package.json to allow using default releaser version script. (#107) * Fix iOS jsonVariation and jsonVariationDetail when using array default value. (#108) * Completely rework CI build to not use hello-react-native (#109) * Include manual testing application in repo (#110) * Adding the addListener and removeListeners method to silence the warning * Add privateAttributeNames to TypeScript and iOS wrapper implementation. (#112) * Bump to latest Android SDK release (#114) * Fix ownership handling for all flags and connection mode listeners on iOS. (#113) * Update iOS SDK to latest 5.4.5 release. (#115) * Update Android SDK to latest patch release. (#116) * Update to the correct variation method * Add RN 0.68 CI and expand RN version bounds in package definition. (#117) * Update supported RN versions in readme. * [sc-149512] Android reason fixes (#120) * Changes for iOS V6. (#122) * Use iOS 6.1.0 and new `LDUser.isAnonymousNullable` property (#123) * Fix automatically setting user as anonymous when both key and anonymous are unspecified (#124) * Add the new React Native version and the latest non-beta xcode version * Add exclusion to the old RN with new xcode and new RN with old xcode * Update the Readme * Update package files * RN 0.69.1 is available * Code Review Comment to remove xcode 12.2 * Try to install jest first to get past the error * Try to pin the RN version when using with npx * Bump Android SDK to 3.1.6 * Print more about circle CI * Use a separate working director for the new project * Update the relative path * CircleCI need to have -p for mkdir * Upgrade Native Android SDK to 3.1.7 * Try to bump Android SDK to 3.2.0 * The null check logic for isInitialized * Fix spacing * Support React Native 0.70. (#129) * Add RN 0.70.1 and Xcode 14.0.1 to the CircleCI test config * Add the exclusion for RN 0.64 and 0.65 for Xcode 14.0.1 * More update to the Android isInitialized logic (#130) * Revert the isInitialized change and fix package.json (#131) * Initial commit * Update README.md * yarn inside test app as well initially * Create CODEOWNERS * Add jcenter as repo source to solve unknown facebook imports. Remove redundant yarn install. * Update to gradle 7.2 * Remove lock files and ignore them * Update README.md * Revert "Remove lock files and ignore them" This reverts commit 7ea62cd. * Added react-native to dev dep to fix jest failing to run due to some rn version issue. * Attempt to fix android 0.64 minCompileSdk build error * Rollback jcenter and resolution changes * Increase compile version to fix rn 0.64.3 build errors * Update config.yml * Rollback to main version * Initial commit * Update .prettierrc.js * Prettify code * Ran prettier on js and json files * Update App.js * Update ios sdk version * Disable autoCaps * Corrected autoCapitalize from false to none * Update App.js * Fixed bug where podspec and LICENCE files are not copied to test app's node modules * Create lefthook.yml * Added ios ApplicationInfo support. Split modd file. Update ios sdk version. * Update LaunchdarklyReactNativeClient.swift * Create modd-ios.conf * Split modd configs into ios and android. Update readme. * Update LaunchdarklyReactNativeClient.swift * Fix bug where version is incorrectly set * Delete lefthook.yml * Bumped min ios deployment target * Rolled bak xcode proj change and set min ios sdk version in podspec * Update project.pbxproj * Hack template Podfile to support minimum ios 11 * More ios 11 patch hacks * Update config.yml * Hack 0.64.x build.gradle to use minSdkVersion 30 * Update config.yml * Force rn android binaries to be downloaded from facebook. Update gradle. * Remove accidentally committed yarn.lock. Update manual test app's gradle versions. * Hack circleci config to speed up build * Update build.gradle * Update build.gradle * Update build.gradle * Update config.yml * Restore circleci config, updating 0.64.3 to 0.64.4 * Update config.yml * Create modd.conf * Added Application types --------- Co-authored-by: Ben Woskow <48036130+bwoskow-ld@users.noreply.github.com> Co-authored-by: Joe Cieslik <5600929+torchhound@users.noreply.github.com> Co-authored-by: Ed Costello <orthanc@users.noreply.github.com> Co-authored-by: Ben Woskow <bwoskow@launchdarkly.com> Co-authored-by: Gavin Whelan <gwhelan@launchdarkly.com> Co-authored-by: LaunchDarklyCI <dev@launchdarkly.com> Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com> Co-authored-by: Ember Stevens <ember.stevens@launchdarkly.com> Co-authored-by: ember-stevens <79482775+ember-stevens@users.noreply.github.com> Co-authored-by: Louis Chan <lchan@launchdarkly.com> Co-authored-by: Louis Chan <91093020+louis-launchdarkly@users.noreply.github.com> Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com> Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
When can this be expected?
I'm trying to roll out a feature-flag MVP for my company. We're looking at a 6/7 digit expenditure based on our MAUs. Should we expect that supported versions of react-native are always going to be a year out of date and rife with security issues? Should I just abandon this MVP and switch to a platform that cares about react-native?
The text was updated successfully, but these errors were encountered: