Skip to content
This repository has been archived by the owner on Oct 29, 2024. It is now read-only.

Build fails in Xcode 13.3.1 #142

Closed
jeff-groove opened this issue May 24, 2022 · 7 comments
Closed

Build fails in Xcode 13.3.1 #142

jeff-groove opened this issue May 24, 2022 · 7 comments

Comments

@jeff-groove
Copy link

jeff-groove commented May 24, 2022

Describe the bug
Project is unable to build when using the LaunchDarkly client SDK and Xcode 13.3.1. Build always fails with error ld: symbol(s) not found for architecture .... LaunchDarkly-specific context in logs below.

To reproduce
Attempt to build a React Native project with the LaunchDarkly client SDK as a dependency using Xcode 13.3.1.

Expected behavior
The project should successfully build.

Logs

Undefined symbols for architecture x86_64:
  "_swift_stdlib_isStackAllocationSafe", referenced from:
      function signature specialization <Arg[1] = Owned To Guaranteed> of generic specialization <Swift.String, Swift._NativeSet<Swift.String>> of Swift._NativeSet.genericIntersection<A where A == A1.Element, A1: Swift.Sequence>(A1) -> Swift._NativeSet<A> in libLaunchDarkly.a(FlagChangeNotifier.o)
      function signature specialization <Arg[1] = Owned To Guaranteed> of generic specialization <Swift.String> of Swift._NativeSet.intersection(Swift._NativeSet<A>) -> Swift._NativeSet<A> in libLaunchDarkly.a(FlagChangeNotifier.o)
      function signature specialization <Arg[1] = Owned To Guaranteed, Arg[2] = Owned To Guaranteed> of function signature specialization <Arg[0] = [Closure Propagated : closure #1 (Swift.String) -> Swift.Bool in LaunchDarkly.FlagChangeNotifier.(findChangedFlagKeys in _AAE936965AC09485A5BF28D82C960463)(oldFlags: Swift.Dictionary<Swift.String, LaunchDarkly.FeatureFlag>, newFlags: Swift.Dictionary<Swift.String, LaunchDarkly.FeatureFlag>) -> Swift.Array<Swift.String>, Argument Types : [[Swift.String : LaunchDarkly.FeatureFlag][Swift.String : LaunchDarkly.FeatureFlag]]> of generic specialization <Swift.String> of Swift._NativeSet.filter((A) throws -> Swift.Bool) throws -> Swift._NativeSet<A> in libLaunchDarkly.a(FlagChangeNotifier.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

SDK version
6.2.0

Language version, developer tools
Xcode 13.3.1

OS/platform
Builds attempted on Macbook Pro and CI/CD environment running a macOS image, failing in both locations.

Additional context
Possibly related to open issue #140, however none of our build environments utilize M1 chips. Also this appears to only happen in "Release" builds, "Debug" builds are still able to be created.

@louis-launchdarkly
Copy link
Contributor

Hello @jeff-groove, thank you for reaching out.

I suspect the reason is that the 6.2.0 RN SDK is now using the iOS v6 SDK as the native module, your project has reference to the older v5 iOS SDK still cached. Can you try deleting the Pods directory under the ios directory of your RN project and retry? Just to be safe, I would recommend deleting the node_modules folder also and reinstalling the dependencies.

If that still doesn't work, can you try to see can you run the ManualTestApp following the instruction?

Xcode becomes 13.4 when I test this out, so I am not using the exact same version as you. However, I was not able to reproduce the issue you encountered when I try reproducing using the ManualTestApp. So if you can reproduce from the ManualTestApp, there will be more information for us to debug the issue.

@BlinkVonDoom
Copy link

BlinkVonDoom commented Jun 21, 2022

We also had the same issue on Xcode 13.4, our solution was to downgrade xcode to 13.0. Which then allowed us to Archive the app.

@jeff-groove @louis-launchdarkly

@jacquesdev
Copy link

Ouch...

@louis-launchdarkly
Copy link
Contributor

louis-launchdarkly commented Jul 1, 2022

Hello @BlinkVonDoom and @jacquesdev,

I am currently updating the CircleCI test for RN 0.69, and am wondering about this. Which version of React Native are you using? If the RN version is 0.66 or above, that should build correctly with Xcode 13.4.1. Please let us know in case there is another issue that we are not aware of.

Thank you.

@martinbee
Copy link

We're running into the same issue with Xcode 13.4.1. Our React Native version is 0.63.2, so we're decently far behind. I reverted the SDK to version 4.0.4 (the last version I could see that supported 0.63), but we got the same error.

Do we need to downgrade our Xcode or is it essential for us to upgrade our RN version and use the latest SDK?

@louis-launchdarkly
Copy link
Contributor

louis-launchdarkly commented Jul 15, 2022

Hello @martinbee, the SDK version 4.0.4 is past EOL, and 4.2.x is not far away from EOL either. I would recommend upgrading your React Native version to something newer. That will enable you to use the latest 6.x LaunchDarkly SDK.

If you need to keep at RN 0.63.x, please try out the 5.1.x LaunchDarkly React Native SDK.

@louis-launchdarkly
Copy link
Contributor

After we have verified in the latest RN SDK version 6.2.2 build, the SDK is working with Xcode 13.2.1 and 13.4.1 (See the version we tested here)

A general suggestion would be to recreate the RN project when there is a new Xcode version, as the project initialization step of RN can be finicky. Given there is no more comments on this issue for more than a month, I am closing this issue.

LaunchDarklyReleaseBot pushed a commit that referenced this issue Feb 24, 2023
* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
LaunchDarklyReleaseBot added a commit that referenced this issue Feb 24, 2023
* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------



* Fixed formatting of ga yml

---------



* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
yusinto added a commit that referenced this issue Feb 24, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
yusinto added a commit that referenced this issue Feb 27, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

* Update yarn.lock

* Update yarn.lock

* Update package.json

* Downgrade typescript version to fix typedoc issues

* Update main.yml

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
yusinto added a commit that referenced this issue Mar 2, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

* Update yarn.lock

* Update yarn.lock

* Update package.json

* Downgrade typescript version to fix typedoc issues

* Update main.yml

* [sc-178013] Add android null guards for LDClient (#145)

* Bump rn sdk to v7

* [sc-178013] Add null guards for LDClient

* Improved warning messages

* Update LaunchdarklyReactNativeClientModule.java

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Update yarn.lock

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com>
yusinto added a commit that referenced this issue Mar 2, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

* Update yarn.lock

* Update yarn.lock

* Update package.json

* Downgrade typescript version to fix typedoc issues

* Update main.yml

* [sc-178013] Add android null guards for LDClient (#145)

* Bump rn sdk to v7

* [sc-178013] Add null guards for LDClient

* Improved warning messages

* Update LaunchdarklyReactNativeClientModule.java

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Update yarn.lock

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com>
Co-authored-by: Louis Chan <lchan@launchdarkly.com>
yusinto added a commit that referenced this issue Mar 3, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

* Update yarn.lock

* Update yarn.lock

* Update package.json

* Downgrade typescript version to fix typedoc issues

* Update main.yml

* Bump rn sdk to v7

* [sc-178013] Add android null guards for LDClient (#145)

* Bump rn sdk to v7

* [sc-178013] Add null guards for LDClient

* Improved warning messages

* Update LaunchdarklyReactNativeClientModule.java

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Update yarn.lock

* [sc-190944] Add dotenv variable for example app (#146)

* [sc-190944] Add dotenv to example app

* Ignore .env files

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com>
Co-authored-by: Louis Chan <lchan@launchdarkly.com>
yusinto added a commit that referenced this issue Mar 6, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

* Update yarn.lock

* Update yarn.lock

* Update package.json

* Downgrade typescript version to fix typedoc issues

* Update main.yml

* Bump rn sdk to v7

* [sc-178013] Add android null guards for LDClient (#145)

* Bump rn sdk to v7

* [sc-178013] Add null guards for LDClient

* Improved warning messages

* Update LaunchdarklyReactNativeClientModule.java

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Update yarn.lock

* [sc-190944] Add dotenv variable for example app (#146)

* [sc-190944] Add dotenv to example app

* Ignore .env files

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-186949] Add support for RN 0.71.x (#147)

* [sc-186949] Support RN 0.71

* Update project.pbxproj

* Fixed android build for 0.71.x

* Update sdk android gradle plugin to 7.4.2 and restore allprojects settings to fix local build.

* Update build.gradle

* Remove allprojects again to fix Example app's build. Local build becomes broken again, and it needs to be fixed.

* Fixed android local dev build

* Remove all xcode versions but one

* Attempt to fix ruby ci error. Deleted patches dir.

* Update config.yml

* Update config.yml

* Update config.yml

* Remove .ruby-version to use os default

* PR feedback

* Corrected include to be exclude

* Remove xcode 13 from circleci build

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com>
Co-authored-by: Louis Chan <lchan@launchdarkly.com>
yusinto added a commit that referenced this issue Mar 6, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

* Update yarn.lock

* Update yarn.lock

* Update package.json

* Downgrade typescript version to fix typedoc issues

* Update main.yml

* Bump rn sdk to v7

* [sc-178013] Add android null guards for LDClient (#145)

* Bump rn sdk to v7

* [sc-178013] Add null guards for LDClient

* Improved warning messages

* Update LaunchdarklyReactNativeClientModule.java

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Update yarn.lock

* [sc-190944] Add dotenv variable for example app (#146)

* [sc-190944] Add dotenv to example app

* Ignore .env files

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-186949] Add support for RN 0.71.x (#147)

* [sc-186949] Support RN 0.71

* Update project.pbxproj

* Fixed android build for 0.71.x

* Update sdk android gradle plugin to 7.4.2 and restore allprojects settings to fix local build.

* Update build.gradle

* Remove allprojects again to fix Example app's build. Local build becomes broken again, and it needs to be fixed.

* Fixed android local dev build

* Remove all xcode versions but one

* Attempt to fix ruby ci error. Deleted patches dir.

* Update config.yml

* Update config.yml

* Update config.yml

* Remove .ruby-version to use os default

* PR feedback

* Corrected include to be exclude

* Remove xcode 13 from circleci build

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Merging public changes

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com>
Co-authored-by: Louis Chan <lchan@launchdarkly.com>
yusinto added a commit that referenced this issue Mar 6, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

* Update yarn.lock

* Update yarn.lock

* Update package.json

* Downgrade typescript version to fix typedoc issues

* Update main.yml

* Bump rn sdk to v7

* [sc-178013] Add android null guards for LDClient (#145)

* Bump rn sdk to v7

* [sc-178013] Add null guards for LDClient

* Improved warning messages

* Update LaunchdarklyReactNativeClientModule.java

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Update yarn.lock

* [sc-190944] Add dotenv variable for example app (#146)

* [sc-190944] Add dotenv to example app

* Ignore .env files

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-186949] Add support for RN 0.71.x (#147)

* [sc-186949] Support RN 0.71

* Update project.pbxproj

* Fixed android build for 0.71.x

* Update sdk android gradle plugin to 7.4.2 and restore allprojects settings to fix local build.

* Update build.gradle

* Remove allprojects again to fix Example app's build. Local build becomes broken again, and it needs to be fixed.

* Fixed android local dev build

* Remove all xcode versions but one

* Attempt to fix ruby ci error. Deleted patches dir.

* Update config.yml

* Update config.yml

* Update config.yml

* Remove .ruby-version to use os default

* PR feedback

* Corrected include to be exclude

* Remove xcode 13 from circleci build

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Merging public changes

* [sc-191407] Update supported versions on README (#148)

* Update README.md

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com>
Co-authored-by: Louis Chan <lchan@launchdarkly.com>
yusinto added a commit that referenced this issue Mar 15, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

* Update yarn.lock

* Update yarn.lock

* Update package.json

* Downgrade typescript version to fix typedoc issues

* Update main.yml

* Bump rn sdk to v7

* [sc-178013] Add android null guards for LDClient (#145)

* Bump rn sdk to v7

* [sc-178013] Add null guards for LDClient

* Improved warning messages

* Update LaunchdarklyReactNativeClientModule.java

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Update yarn.lock

* [sc-190944] Add dotenv variable for example app (#146)

* [sc-190944] Add dotenv to example app

* Ignore .env files

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-186949] Add support for RN 0.71.x (#147)

* [sc-186949] Support RN 0.71

* Update project.pbxproj

* Fixed android build for 0.71.x

* Update sdk android gradle plugin to 7.4.2 and restore allprojects settings to fix local build.

* Update build.gradle

* Remove allprojects again to fix Example app's build. Local build becomes broken again, and it needs to be fixed.

* Fixed android local dev build

* Remove all xcode versions but one

* Attempt to fix ruby ci error. Deleted patches dir.

* Update config.yml

* Update config.yml

* Update config.yml

* Remove .ruby-version to use os default

* PR feedback

* Corrected include to be exclude

* Remove xcode 13 from circleci build

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Merging public changes

* [sc-191407] Update supported versions on README (#148)

* Update README.md

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* fix: 7.x startup crash due to missing proguard file (#152)

* fix: startup crash due to missing proguard file

* remove hardcoded simulator uuid

* Update Podfile.lock

* reinstate local package link

* add separate android-release command

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com>
Co-authored-by: Louis Chan <lchan@launchdarkly.com>
LaunchDarklyReleaseBot added a commit that referenced this issue Mar 21, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

* Update yarn.lock

* Update yarn.lock

* Update package.json

* Downgrade typescript version to fix typedoc issues

* Update main.yml

* Bump rn sdk to v7

* [sc-178013] Add android null guards for LDClient (#145)

* Bump rn sdk to v7

* [sc-178013] Add null guards for LDClient

* Improved warning messages

* Update LaunchdarklyReactNativeClientModule.java

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Update yarn.lock

* [sc-190944] Add dotenv variable for example app (#146)

* [sc-190944] Add dotenv to example app

* Ignore .env files

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-186949] Add support for RN 0.71.x (#147)

* [sc-186949] Support RN 0.71

* Update project.pbxproj

* Fixed android build for 0.71.x

* Update sdk android gradle plugin to 7.4.2 and restore allprojects settings to fix local build.

* Update build.gradle

* Remove allprojects again to fix Example app's build. Local build becomes broken again, and it needs to be fixed.

* Fixed android local dev build

* Remove all xcode versions but one

* Attempt to fix ruby ci error. Deleted patches dir.

* Update config.yml

* Update config.yml

* Update config.yml

* Remove .ruby-version to use os default

* PR feedback

* Corrected include to be exclude

* Remove xcode 13 from circleci build

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Merging public changes

* [sc-191407] Update supported versions on README (#148)

* Update README.md

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* fix: 7.x startup crash due to missing proguard file (#152)

* fix: startup crash due to missing proguard file

* remove hardcoded simulator uuid

* Update Podfile.lock

* reinstate local package link

* add separate android-release command

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Bumped launchdarkly-android-client-sdk to include bugfix

Bumping launchdarkly-android-client-sdk to 4.2.1 to include fix for bug sc-191967

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com>
Co-authored-by: Louis Chan <lchan@launchdarkly.com>
Co-authored-by: tanderson-ld <127344469+tanderson-ld@users.noreply.github.com>
yusinto added a commit that referenced this issue Apr 6, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

* Update yarn.lock

* Update yarn.lock

* Update package.json

* Downgrade typescript version to fix typedoc issues

* Update main.yml

* Bump rn sdk to v7

* [sc-178013] Add android null guards for LDClient (#145)

* Bump rn sdk to v7

* [sc-178013] Add null guards for LDClient

* Improved warning messages

* Update LaunchdarklyReactNativeClientModule.java

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Update yarn.lock

* [sc-190944] Add dotenv variable for example app (#146)

* [sc-190944] Add dotenv to example app

* Ignore .env files

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-186949] Add support for RN 0.71.x (#147)

* [sc-186949] Support RN 0.71

* Update project.pbxproj

* Fixed android build for 0.71.x

* Update sdk android gradle plugin to 7.4.2 and restore allprojects settings to fix local build.

* Update build.gradle

* Remove allprojects again to fix Example app's build. Local build becomes broken again, and it needs to be fixed.

* Fixed android local dev build

* Remove all xcode versions but one

* Attempt to fix ruby ci error. Deleted patches dir.

* Update config.yml

* Update config.yml

* Update config.yml

* Remove .ruby-version to use os default

* PR feedback

* Corrected include to be exclude

* Remove xcode 13 from circleci build

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Merging public changes

* [sc-191407] Update supported versions on README (#148)

* Update README.md

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* fix: 7.x startup crash due to missing proguard file (#152)

* fix: startup crash due to missing proguard file

* remove hardcoded simulator uuid

* Update Podfile.lock

* reinstate local package link

* add separate android-release command

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Bumped launchdarkly-android-client-sdk to include bugfix

Bumping launchdarkly-android-client-sdk to 4.2.1 to include fix for bug sc-191967

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com>
Co-authored-by: Louis Chan <lchan@launchdarkly.com>
Co-authored-by: tanderson-ld <127344469+tanderson-ld@users.noreply.github.com>
yusinto added a commit that referenced this issue Apr 6, 2023
* [sc-190014] Merge 7.0 for u2c release (#143)

* Update swift and android sdk dependencies

* Initial commit

* TODO: comment out private attributes config and figure out later

* Remove erroneous type annotation

* TODO: fix deprecated config settings

* Added todos to map deprecated android config

* Initial refactor to move deprecated android config items

* Start implementing deprecated config options

* Implement android sdk major changes

* Removed deprecated config options

* Remove pollUri to use streaming and default endpoints

* Implemented typescript changes

* Renamed xxxUri to xxxUrl

* Implemented swift config option changes

* Fixed Reference creation for private context attributes

* Update modd.conf

* Removed jcenter

* Reinstate user.privateAttributeNames because that should stay frozen

* PR feedback

* Update test-types.ts

* Remove unnecessary stream: true config default

* [sc-188224] Adios old rn versions

* Set example app min ios target to 12.4 as mandated by rn 0.70. Improve local dev modd experience.

* Added yarn-all scripts

* Fixed broken tests by adding babel config and removing redundant transform.js

* Remove old rn versions from CI

* Force npm i to get around rn 6.3.0 still supporting old rn versions

* Increase circleci macos resource to large

* [sc-188335] Add u2c support (#140)

* Added js common sdk context helper files. First attempt to implement glue code from js to android sdk.

* Validate context in js before initializing ldclient

* Added multi context support. Dry'd context manipulation logic.

* Copy src folder to node_modules so its part of the npm package

* Added arbitrary attributes mapping logic

* Replaced src/common sdk files with actual js common sdk package

* Refactored init code to be more robust with errors. Dry'd init logic.

* Implemented identify logic for context. Changed example app to use multi context.

* Autogenerate keys for anonymous context

* Removed console logs and dry'd logic

* Added contextUtils. Refactored isContext to js.

* Initial attempt at ios context implementation

* First cut ios implementation

* Refactored helper functions to its own utils class. Added android unit tests.

* Added multicontext tests

* Added ios Podfile and fix dev build. Added swift unit tests.

* Added swift unit test scaffold

* Update Tests.swift

* Improve ios unit tests

* Speed up hot reload by replacing cp with rsync. Dry'd dir paths eliminating repetitions.

* Update Tests.swift

* Update .gitignore

* Added more context and config tests

* Add unit test for config build

* Update modd-android.conf

* Added contextUtils tests

* Added typescript support for example app to test types. Replaced cp with rsync to speed up local dev. Improved tsconfig to use out of the box rn config.

* Use common types for LDUser, LDContext and LDMultiKindContext

* Update LaunchdarklyReactNativeClient.xcscheme

* Update App.tsx

* Prettified changelog

* Updated common sdk version

* Replaced user references with context

* Use trySetValue for key, name and anonymous

* Update config.yml

* Added files property to specify only necessary files for npm publish

* Exclude android test files from npm publish

* Replace print with NSLog

* Revert prettier changes. Ignore changelog from prettier.

* Corrected misspelling of filename.

* Added newline at eof

* [sc-189696] Fix auto generation of anonymous keys (#141)

* Initial commit

* Rollback swift changes

* Swift changes.

* Updated js tests

* Don't generate keys in js and defer context validation to native sdks

* Update Tests.swift

* Add java anonymous key test

* Add github actions for tests

* Update main.yml

* Remove js tests from cicleci to github action. Prettified circleci config.

* Update config.yml

* Update config.yml

* Update config.yml

* Update config.yml

* Add ios test job

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Cache pods and quiet xcodebuild

* Update main.yml

* Update main.yml

* Update main.yml

* Update main.yml

* Restore other tests

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Fixed formatting of ga yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-169352] Add ldClient nil guards (#142)

Update LaunchdarklyReactNativeClient.swift

* Attempt to fix broken ios tests

* Bust Pod cache

* Update config.yml

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-190127] Update npm package-lock (#144)

* [sc-190127] Update npm package-lock

* Update pod cache key

* Update yarn.lock

* Update yarn.lock

* Update yarn.lock

* Update package.json

* Downgrade typescript version to fix typedoc issues

* Update main.yml

* Bump rn sdk to v7

* [sc-178013] Add android null guards for LDClient (#145)

* Bump rn sdk to v7

* [sc-178013] Add null guards for LDClient

* Improved warning messages

* Update LaunchdarklyReactNativeClientModule.java

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Update yarn.lock

* [sc-190944] Add dotenv variable for example app (#146)

* [sc-190944] Add dotenv to example app

* Ignore .env files

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* [sc-186949] Add support for RN 0.71.x (#147)

* [sc-186949] Support RN 0.71

* Update project.pbxproj

* Fixed android build for 0.71.x

* Update sdk android gradle plugin to 7.4.2 and restore allprojects settings to fix local build.

* Update build.gradle

* Remove allprojects again to fix Example app's build. Local build becomes broken again, and it needs to be fixed.

* Fixed android local dev build

* Remove all xcode versions but one

* Attempt to fix ruby ci error. Deleted patches dir.

* Update config.yml

* Update config.yml

* Update config.yml

* Remove .ruby-version to use os default

* PR feedback

* Corrected include to be exclude

* Remove xcode 13 from circleci build

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Merging public changes

* [sc-191407] Update supported versions on README (#148)

* Update README.md

* Update README.md

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* fix: 7.x startup crash due to missing proguard file (#152)

* fix: startup crash due to missing proguard file

* remove hardcoded simulator uuid

* Update Podfile.lock

* reinstate local package link

* add separate android-release command

---------

Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>

* Bumped launchdarkly-android-client-sdk to include bugfix

Bumping launchdarkly-android-client-sdk to 4.2.1 to include fix for bug sc-191967

* fix: typescript and lint errors in example app

* fix: yarn.lock conflict with public

---------

Co-authored-by: Yusinto Ngadiman <yusinto@gmail.com>
Co-authored-by: Yusinto Ngadiman <yus@launchdarkly.com>
Co-authored-by: LaunchDarklyReleaseBot <launchdarklyreleasebot@launchdarkly.com>
Co-authored-by: Louis Chan <lchan@launchdarkly.com>
Co-authored-by: tanderson-ld <127344469+tanderson-ld@users.noreply.github.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants