Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

apply swift 6 warning fix to flaky iOS tests #207

Merged
merged 1 commit into from
Oct 27, 2023
Merged

Conversation

hborawski
Copy link
Contributor

@hborawski hborawski commented Oct 26, 2023

To hopefully address #12, Xcode15 was warning that wait for expecations in async context will be an error in swift 6 (not out yet), hoping that just means pre swift-6 they didnt document that it wasnt supported, and swapping will fix the flakiness

after several back to back runs, no random failures

resolves #12

Change Type (required)

Indicate the type of change your pull request is:

  • patch
  • minor
  • major

@hborawski hborawski added the patch Increment the patch version when merged label Oct 26, 2023
@hborawski hborawski marked this pull request as ready for review October 27, 2023 19:46
@hborawski hborawski changed the title apply swift 6 warning fix to tests apply swift 6 warning fix to flaky iOS tests Oct 27, 2023
@hborawski hborawski merged commit bc98558 into main Oct 27, 2023
13 checks passed
@hborawski hborawski deleted the swift-6-test-await branch October 27, 2023 20:07
@intuit-svc intuit-svc mentioned this pull request Oct 27, 2023
3 tasks
mercillo pushed a commit to mercillo/player-ui that referenced this pull request Nov 3, 2023
mercillo pushed a commit to mercillo/player-ui that referenced this pull request Nov 21, 2023
sugarmanz added a commit that referenced this pull request Apr 24, 2024
* reference assets needed

* more dependencies for tests

* modified test names

* modified test names

* update generateflowsection

* address comments

* removed unneeded dependencies

* iOS: port async WrappedFunction update (#244)

* port async WrappedFunction update

* expose decode for JSValue

* port BaseGenericWrappedAsset changes

* Add Automation ID to Error Element in Storybook (#245)

Add automation id to error element in storybook.

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.4.3 [skip ci]

* cleaned up BUILD and index fiels

* iOS: make AssetBeacon equatable and add public init for metadata (#248)

make AssetBeacon equatable and add public init for metadata

* Update ruby version in build (#246)

The version used is EOL and adds to the ios build time to install

* showing end flow for external action

* move string + extensions to right folder

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.4.4 [skip ci]

* add pendingtransaction flows, uitests

* move navigateToAssetCollection(), add back some lines deleted

* iOS: make AssetBeacon equatable and add public init for metadata (#248)

make AssetBeacon equatable and add public init for metadata

* Update ruby version in build (#246)

The version used is EOL and adds to the ios build time to install

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.4.4 [skip ci]

* add user info to assetViewModel

* address comments

* apply swift 6 warning fix to flaky iOS tests (#207)

* store cancellables in ManagedPlayerViewModelTests (#210)

* modified test names

* mandatory not needed

* fix test

* rebase picked up wrong file changes

* fix diffs on applitools

* update mock flows

* update tests after mocks update

* iOS: add SwiftUIPendingTransactionPlugin to reference asset dependencies (#250)

add SwiftUIPendingTransactionPlugin to reference asset dependencies

* delete unneeded files, add navigateToAssetCollection() back to open flow

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.4.5 [skip ci]

* Sync Android and JVM packages to latest (#222)

* SetTimeoutPlugin exception handling enhancement pt. 1

* Make views in Flow nullable

* lint

* SetTimeoutPlugin exception handling enhancement pt. 2

* Call state hook when releasing player

* lint

* expose V8 params in psuedo constructors

* Update into extension method to handle null view case

* support null contextual serialization for assets

* viewmodel tests

* fix test

* attempt fix 2

* guard against logging on release due to weird timing

* add error handling during asset expansion

* clear guideline for top level render function

* add test for hydration scope cancelling on player release

* add coroutine-test import to android player package

* lint

* M1 J2V8 Support

* fix build file

* replace deprecated channel method

* fix bazel intellij sync

* [android#265]: fix orientation change reset

* [android#269]: PlayerViewModel::runtime null safety

* [jvm#224]: hooks@0.15.0

* [android#276]: asset handler hook

* [jvm#229]: replacing `getFunction` with `getInvokable`

* [jvm#230]: automatic deserializes functions and invokables

* [jvm#231]: name loggers dynamically

* [jvm#228]: migrate to NodeSerializableField

* fix lingering getFunction replacements

* [jvm#235]: local class discriminators

* [jvm#239]: `JSErrorException` enhancement

* [jvm#237]: expose skipTransition hook

* [jvm#240]: fix testutils node

* [jvm#241]: `NavigationFlowEndState.param` helper

* [android#287]: scroll to top when navigating to a new view

* [jvm#238]: dedicated runtime thread

* [android#286]: `SuspendableAsset`

* [jvm#243] debuggable v8

* [android#292] android debuggable v8

* upgrade kotlin to 1.7 and lint

* working demo app

* all //jvm tests passing

* fix all android tests

* ensure test target fails on failure

* fix instrumented android tests

* lint

* bootstrap intents break everything

* androidx orchestrator

* clean up workspace and use released player rules for kotlin upgrade

* format and comment androidtest python script

* pr comments

---------

Co-authored-by: Larry <larrywutoronto@gmail.com>

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.5.0 [skip ci]

* allow navigationFlowViewState attributes to take Any instead of string

* fix test

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.5.1 [skip ci]

* update tests

* update circleci config

* DSL documentation changes (#266)

* chore: DSL doc changes

* Update docs/site/pages/content/dsl.mdx

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* chore: use @player-tools/dsl

---------

Co-authored-by: rcampos2 <rafael_campos@intuit.com>
Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* add callTryCatchWrapper function on JSValue

* address comments

* move test to core utilities folder

* use expectation to wait for error

* remove extra lines

* increase timeout

* move expectation

* decrease timeout

* move expectation to catch

* comment out test

* Latest sync including AsyncNodePlugin (#263)

* everything minus language, internal plugins, async

* this works

* lint

* update yarn version according to readme

* revert yarn version

* remove resolutions

* fix flow test

* fix android test

* temporarily disable applitools

* try again after updating api key

* not use latest version of bundler because it requires newer ruby version

* update iOS tests to transition inside afterTransition (#268)

update tests to transition inside afterTransition

Co-authored-by: zwu01 <nancy_wu1@intuit.com>

* remove comment block

* lint

* modify long text test

* lint

---------

Co-authored-by: brocollie08 <sentony03@gmail.com>
Co-authored-by: nancywu1 <66387473+nancywu1@users.noreply.github.com>
Co-authored-by: zwu01 <nancy_wu1@intuit.com>

* uncomment test

* Fix `com.intuit.player:j2v8` transitive deps (#256)

* neverlink j2v8 debugger

* fix deps.bzl miss

* wip

* wip: broken rules_jvm_external

* move jvm external setup

* try to use the embedded jdk

* fix //jvm/core:test

* reintroduce grab for mockable android jar

* use kotlin-reflect from maven

* sync --experimental_google_legacy_api

* cleanup

* fix gpg tty for release

* use pinentry instead

* strip down ci

* fix writing to gpg conf

* exclude kotlin stdlib

* ensure resources exist in top-level AAR

* working player distrib

* working grab_bazel_common + some cleanup

* more cleanup

* reset circle config

* Release main

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.6.0 [skip ci]

* Fix SwiftUIPendingTransactionPlugin Docs Page

The extra newline on this page causes it not to show up in the sidebar of the `Plugins` section and also causes the header elements to be improperly rendered.

* Remove Applitools (#277)

* remove android and circle applitools

* don't define applitools configs

* remove applitools usage from iOS UI Tests

* address flakiness by awaiting child async view stubs

---------

Co-authored-by: hborawski <Harris_Borawski@intuit.com>

* [JVM] pom with minimal oss requirements (#275)

pom with minimal oss requirements

* Update Team page with new members

* plugin core doc addition

* updated FAQS

* feat: add github.dev links to docs (#278)

feat: adds improve docs link to github.dev

Co-authored-by: rcampos2 <rafael_campos@intuit.com>

* updated asset provider with JSON samples

* some more cleanup and information

* Added dsl validate command

* added json tag

* removed discord

* clean up first set of observation wording

* iOS: Update Writing Plugins guide (#279)

update plugin authoring guide for iOS

* added contentTabs to help with content section in docs

* removed json platform

* fixed code block

* find alternative way to post JSON blocks

* working json code block

* Updated descriptions to include TSC compiling

* updated tsx section

* tsx and json section added to contenttabs

* Refactor existing DSL docs.

* Plugin implementation doc v1

* plugin docs addl cleanup

* iOS: Update plugin documentation (#284)

* update some plugin docs for ios with usage examples

* update docs for iOS and some for core

* add usage header on beacons doc

* indentation fixes

---------

Co-authored-by: nancywu1 <nancy_wu1@intuit.com>

* Fix broken link in CONTRIBUTING.md

Fixes broken link to the Android demo app README,d

* Apply suggestions from code review

Co-authored-by: Spencer Hamm <spentacular@gmail.com>

* Overview plugin links fix

* Fixing invalid character on plugin implementation doc

* PR feedback

* flesh out dsl plugins doc

* Added snippets reference

* plugin hook implementation wording cleanup

* Plugins android clean up (#290)

* beacon

* check-path

* coroutines + usage for check-path

* expression

* external-action

* metrics

* fix a bunch of formatting things

* fix formatting problems

* settimeout

* async-node

* update package paths

* async node ios docs

* address some comments

---------

Co-authored-by: brocollie08 <sentony03@gmail.com>
Co-authored-by: nancywu1 <nancy_wu1@intuit.com>

* Asset reference link fixed

* async node plugin

* Doc: Plugin react wording correction.

* Update docs/site/pages/plugin-implementation.mdx

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* docs: plugin implementation 1st observations

* removed unused langmap

* Docs: plugin implementation obervations pt2

* use tap instead of tapPromise, use named export instead of default

* move tests to viewinspector folder

* remove duplicate test

* fix lint error

* add back flow

* update doc that uses tapPromise example

* throw error if plugin is undefined

* fix: help to improve docs links with relative path (#298)

Co-authored-by: rcampos2 <rafael_campos@intuit.com>

* fix: missing docs/site on docs links (#299)

Co-authored-by: rcampos2 <rafael_campos@intuit.com>

* `com.intuit.playerui` publishing scope (#253)

* com.intuit.player.jvm -> com.intuit.playerui

* com.intuit.player.android -> com.intuit.playerui.android

* com.intuit.player.plugins -> com.intuit.playerui.plugins

* leftovers

* more leftovers

* add additional email to pom

* move graaljs files

* update android coordinates

* add asyncnodeplugin resource path

* put on one line

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.7.0 [skip ci]

* CommonTypesPlugin restoring old dataRefs

* Fixed Views and Schema links

* DSL data schema type docs

* Skip view updates for silent data changes

* replace reduce calls for performance

* Fix data change events not cascading properly when setting data

* Edit docs/site/pages/dsl/dsl-schema-type.mdx

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* [JVM] Handle invalid JSON as Player error (#303)

* handle invalid json as player error

* improve test

* Docs update post review

* DSLSchema docs further improvement

* [Docs] Platform consolidation (#287)

* platform consolidated getting started

* fix alert status reference

* add platform tabs for custom and reference assets

* re-add viewmodel + fragment docs

---------

Co-authored-by: nancywu1 <nancy_wu1@intuit.com>

* DSLSchema doc cleanup

* DSLSchema docs rearrangement

* Resorting to schema page for DSLSchema docs

* updated PR checklist to include documentation portion

* fixed capitalization

* DSLSchema improved statement

* @player-tools: "0.5.0-next.7 for dataRefs

* fix yarn lock

* Exporting dataRefs from common-types and reference-assets

* Exp dataRefs:@player-ui/reference-assets-components

* [Android] `AsyncHydrationTrackerPlugin` (#296)

* initial working rehydration tracker

* callback approach

* working callback impl

* lint

* explicit api instead of callback

* oops

* ensure beacon call captures view scope synchronously

* ensure we track hydration as early as possible

* expose onHydrationStarted hook

* simple async hydration tracker test

* remove redundant trackHydration

* iOS: prefix resource bundles to prevent naming collisions (#310)

* iOS: prefix resource bundles to prevent naming collisions

* fix resource_map

* rename reference assets bundle

* fixed linting errors

* Fix documentation error on custom asset (#311)

* Exporting validations + DSLSchema from components

* bump @player-tools packages to 0.5.1 (#312)

bump tools packages to 0.5.1

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.7.1 [skip ci]

* Expose expression parser strictness in options hook

* Make throwing recoverable parsing errors dependent on strictness

* add syntax examples for default expressions (#317)

* add syntax examples for default expressions

* fix getDataVal casing

* fix getDataVal casing

* fix 0 precision commaNumber formatting

* update rules_player to latest 0.12.0 (#322)

* update rules_player to latest 0.12.0

* pin android versions

* android 30 then

* android 30 for install script

* 31 again + bump emulator API as well

* correct architecture

* shame on me

* allow boot anim

* revert android changes and pin docker image

* install-android-tools.sh revert

* don't pin android versions

* test rules

* verbose failure if available and test output errors

* flag on build

* correct flag

* no remote cache

* remove skip remote cache flag

* back to 0.12.0

---------

Co-authored-by: brocollie08 <sentony93@gmail.com>

* update iOS contributing guide (#323)

* refactor nav docs slightly to better call out onEnd expressions (#321)

* refactor nav docs slightly to better call out onEnd expressions

* reword some more

* grammar update

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

---------

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* Update the DSL Benefits in Schema section

* Expose more information about expression parsing errors

* Fix version selector not working and preserve route when changing versions

* Android: Preserve old rendering path for non-suspendable assets (#314)

* preserve old rendering path for non-suspenable assets

* lint

* conditionally launch in main for non-suspendable assets

* rename db resources

* update db rules

* use main rules_player

---------

Co-authored-by: brocollie08 <sentony93@gmail.com>

* Update Player Tools version

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.7.2 [skip ci]

* expose on update hook

* feedback

* DSL docs navigation note

* TS satisfies note

* Additional notes and wording for DSLSchema

* Apply Player DSL suggestions from code review

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* Add bazelisk to list of requirements; be more specific in Android build instructions (#344)

Co-authored-by: Paul Millerd <paul_millerd@intuit.com>

* [Android] Reorganize `PlayerFragment` state updates (#343)

* mvn-install script for publishing JARs to your local maven repository

* organize player fragment state updates

* remove unused code

* enhance player fragment lifecycle handling

* Merge branch 'main' into bazel-6

* revert ExternalActionViewModifierPluginTests#L210

---------

Co-authored-by: mercillo <marlon_ercillo@intuit.com>
Co-authored-by: Marlon "Marky" Ercillo <mercillo729@gmail.com>
Co-authored-by: zwu01 <nancy_wu1@intuit.com>
Co-authored-by: Harris Borawski <harrisborawski@gmail.com>
Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>
Co-authored-by: intuit-svc <opensource-svc@intuit.com>
Co-authored-by: intuit-svc <98980465+intuit-svc@users.noreply.github.com>
Co-authored-by: Adam Dierkens <adierkens@users.noreply.github.com>
Co-authored-by: nancywu1 <66387473+nancywu1@users.noreply.github.com>
Co-authored-by: Larry <larrywutoronto@gmail.com>
Co-authored-by: Rafael Campos <campos.rb@hotmail.com>
Co-authored-by: rcampos2 <rafael_campos@intuit.com>
Co-authored-by: brocollie08 <sentony93@gmail.com>
Co-authored-by: brocollie08 <sentony03@gmail.com>
Co-authored-by: hborawski <Harris_Borawski@intuit.com>
Co-authored-by: Ketan Reddy <ketan_reddy@intuit.com>
Co-authored-by: afimbres <alejandro_fimbres@intuit.com>
Co-authored-by: Alex Fimbres <lexfimbres@gmail.com>
Co-authored-by: Spencer Hamm <spentacular@gmail.com>
Co-authored-by: Ketan Reddy <ketan@ketanreddy.com>
Co-authored-by: KT <kathir@gmail.com>
Co-authored-by: Paul Millerd <paulmillerd@gmail.com>
Co-authored-by: Paul Millerd <paul_millerd@intuit.com>
adierkens added a commit that referenced this pull request Jul 12, 2024
* Start of bazel 6 + vitest + rules_js migration

* vitest + linting support

* builds + package.json creation

* All core tests passing

* Plugins folder builds and tests working

* Use remote for rules repo

* Update to newer deps. Remove unused deps

* Add bundle info to packages

* Generate bundles for native

* Split native bundles into separate target (#255)

* [BAZEL-6] Add coverage support for JS files (#260)

Add coverage support for JS files

* iOS Bazel 6 (#261)

* xcodeproj generation sorta working

* preprocessor macro working for resources in and out of bazel?

* test host not needed for unit test resources

* fixed bundle name

* better folder structure

* swiftui building

* viewinspector dependency resolved, tests need reference assets

* reference assets build working, demo app showing on screen

* add pending transaction ios plugin

* add base beacon plugin

* swiftui beacon plugin

* remove xcode project

* ignore xcodeproj

* generate resource Bundle.module shims

* check path ios

* swiftui check-path

* common-expressions ios

* common-types ios

* computed-properties ios

* expression plugin ios

* external action ios

* swiftui external action

* metrics plugin swiftui

* fix bundle access

* pubsub ios

* stage-revert-data ios

* types-provider ios

* move print logger ios to console-logger package

* test utilities core

* ios test-utils that rely on XCTest

* viewinspector tests running for ref assets

* update xcodeproj generation

* update demo with more plugins

* move transition plugin for ios

* plugins all moved out of ios directory

* pull in latest demo app files from main

* uitests run but demo app need flow finished alert

* remove old packages from ios

* wip using resource bundles from bazel targets not working

* Define process.env in native bundles

* Update pluginName for SwiftUI plugin

* use bazel target for beacon resources

* use bazel target for core resources

* use bazel target for check-path resources

* use bazel target for make-flow

* use bazel target for make-flow

* bazel targets for common types/expressions

* use bazel targets for ios resources

* remove old resource

* UITests passing

* remove old cocoapods related project files

* remove commented out tags

* update podspec and add Package.swift

* add bazel source targets, zip sources and resources into proper locations, pod lint passes

* port async wrapped function again, since this was branched prior to sync

* zip works as a pod

---------

Co-authored-by: Adam Dierkens <Adam_Dierkens@intuit.com>

* Update storybook for bazel migration (#265)

* Storybook 7 + Bazel 6

* Fix react references with storybook & pnpm

* Update storybook to bazel 6 and storybook 7

* Convert rest of mocks to use tsx. Update all stories

* Use rules_bazel commit sha

* Fix some styling

* Remove chakra from reference assets

* Update rules

* iOS: Bazel 6 build updates (#262)

* touch ups needed to run all tests through query

* try running all tests in circle

* fix indent

* check homebrew path

* update openjdk version

* fix resource bundle for reference assets icon catalog

* lower to serial test running, builds are getting interuptted with 2

* prebuild test modules before running tests

* remove print

* try large executor

* update swift package deps

* fix resource class

* update xcode/macos

* update xcode/macos

* disable cache temporarily to test cold start build time

* clean bazel and cache to really test cold start

* clean bazel and cache to really test cold start

* log out size of cache before / after clearing

* reenable cache, speed improvements seem fine with no cache

* fix some tests that had deps removed during conversion

* update viewinspector to latest

* remove applitools from UITests

* fix flaky test

* rewrite assertPublished again

* increase timeout

* tweak input asset so we can still test it all

* update iOS contrib docs, remove old docs

* remove Inspectable conformance as it was deprecated

* change syntax for building all except ios

* bump rules_swift

* try storing coverage artifacts

* fix path

* install lcov with brew so we have genhtml

* zip up html coverage output

* AsyncNodePlugin w/ bazel 6 (#269)

* async-node-plugin baze 6

* separated plugins

* removed View interface

* move plugin to view

* consolidate default view plugins

* lint and some test fixes

* fix view tests

* fix template tests and lint

* sync ios code for blocked transitions

* fix test build

* rewrite external action tests to use less ViewInspector

* increase beaconplugin timeout

---------

Co-authored-by: brocollie08 <sentony03@gmail.com>
Co-authored-by: hborawski <Harris_Borawski@intuit.com>

* Bazel-6: Upload Codecov reports (#333)

* upload ios coverage report to codecov

* import GPG key used in auto release?

* install gnupg on mac

* remove gpg

* try gpg hack

* bump codecov orb

* remove test stage since coverage is equivalent, try caching + uploading ios coverage

* fix stage dep

* temp update build step to test out coverage

* remove test stage more

* fix a test and exlude some temporarily just to test coverage upload

* fix a test and exlude some temporarily just to test coverage upload

* persist to workspace instead of cache

* combined coverage report for main tests

* fix lint errors

* allow lint to run

* lint fix

* Fix managed player tests

* Build: Simplify iOS BUILD.bazel files with macros (#340)

* update iOS bazel deps to latest

* macro iOS/SwiftUI plugins to consolidate build pipeline

* macro the rest of the common cases

* reduce dependencies for test-utils tests

* macro remaining package

* fix bundle names

* add more in-depth README for ios development

* simplify Package.swift and update docs

* simplify podspec and update README

* reorder podspec to match target order in Package.swift

* add section for using external dependencies

* use newer markdown syntax for note/tips

* Merge branch 'main' into bazel-6 (#346)

* reference assets needed

* more dependencies for tests

* modified test names

* modified test names

* update generateflowsection

* address comments

* removed unneeded dependencies

* iOS: port async WrappedFunction update (#244)

* port async WrappedFunction update

* expose decode for JSValue

* port BaseGenericWrappedAsset changes

* Add Automation ID to Error Element in Storybook (#245)

Add automation id to error element in storybook.

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.4.3 [skip ci]

* cleaned up BUILD and index fiels

* iOS: make AssetBeacon equatable and add public init for metadata (#248)

make AssetBeacon equatable and add public init for metadata

* Update ruby version in build (#246)

The version used is EOL and adds to the ios build time to install

* showing end flow for external action

* move string + extensions to right folder

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.4.4 [skip ci]

* add pendingtransaction flows, uitests

* move navigateToAssetCollection(), add back some lines deleted

* iOS: make AssetBeacon equatable and add public init for metadata (#248)

make AssetBeacon equatable and add public init for metadata

* Update ruby version in build (#246)

The version used is EOL and adds to the ios build time to install

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.4.4 [skip ci]

* add user info to assetViewModel

* address comments

* apply swift 6 warning fix to flaky iOS tests (#207)

* store cancellables in ManagedPlayerViewModelTests (#210)

* modified test names

* mandatory not needed

* fix test

* rebase picked up wrong file changes

* fix diffs on applitools

* update mock flows

* update tests after mocks update

* iOS: add SwiftUIPendingTransactionPlugin to reference asset dependencies (#250)

add SwiftUIPendingTransactionPlugin to reference asset dependencies

* delete unneeded files, add navigateToAssetCollection() back to open flow

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.4.5 [skip ci]

* Sync Android and JVM packages to latest (#222)

* SetTimeoutPlugin exception handling enhancement pt. 1

* Make views in Flow nullable

* lint

* SetTimeoutPlugin exception handling enhancement pt. 2

* Call state hook when releasing player

* lint

* expose V8 params in psuedo constructors

* Update into extension method to handle null view case

* support null contextual serialization for assets

* viewmodel tests

* fix test

* attempt fix 2

* guard against logging on release due to weird timing

* add error handling during asset expansion

* clear guideline for top level render function

* add test for hydration scope cancelling on player release

* add coroutine-test import to android player package

* lint

* M1 J2V8 Support

* fix build file

* replace deprecated channel method

* fix bazel intellij sync

* [android#265]: fix orientation change reset

* [android#269]: PlayerViewModel::runtime null safety

* [jvm#224]: hooks@0.15.0

* [android#276]: asset handler hook

* [jvm#229]: replacing `getFunction` with `getInvokable`

* [jvm#230]: automatic deserializes functions and invokables

* [jvm#231]: name loggers dynamically

* [jvm#228]: migrate to NodeSerializableField

* fix lingering getFunction replacements

* [jvm#235]: local class discriminators

* [jvm#239]: `JSErrorException` enhancement

* [jvm#237]: expose skipTransition hook

* [jvm#240]: fix testutils node

* [jvm#241]: `NavigationFlowEndState.param` helper

* [android#287]: scroll to top when navigating to a new view

* [jvm#238]: dedicated runtime thread

* [android#286]: `SuspendableAsset`

* [jvm#243] debuggable v8

* [android#292] android debuggable v8

* upgrade kotlin to 1.7 and lint

* working demo app

* all //jvm tests passing

* fix all android tests

* ensure test target fails on failure

* fix instrumented android tests

* lint

* bootstrap intents break everything

* androidx orchestrator

* clean up workspace and use released player rules for kotlin upgrade

* format and comment androidtest python script

* pr comments

---------

Co-authored-by: Larry <larrywutoronto@gmail.com>

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.5.0 [skip ci]

* allow navigationFlowViewState attributes to take Any instead of string

* fix test

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.5.1 [skip ci]

* update tests

* update circleci config

* DSL documentation changes (#266)

* chore: DSL doc changes

* Update docs/site/pages/content/dsl.mdx

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* chore: use @player-tools/dsl

---------

Co-authored-by: rcampos2 <rafael_campos@intuit.com>
Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* add callTryCatchWrapper function on JSValue

* address comments

* move test to core utilities folder

* use expectation to wait for error

* remove extra lines

* increase timeout

* move expectation

* decrease timeout

* move expectation to catch

* comment out test

* Latest sync including AsyncNodePlugin (#263)

* everything minus language, internal plugins, async

* this works

* lint

* update yarn version according to readme

* revert yarn version

* remove resolutions

* fix flow test

* fix android test

* temporarily disable applitools

* try again after updating api key

* not use latest version of bundler because it requires newer ruby version

* update iOS tests to transition inside afterTransition (#268)

update tests to transition inside afterTransition

Co-authored-by: zwu01 <nancy_wu1@intuit.com>

* remove comment block

* lint

* modify long text test

* lint

---------

Co-authored-by: brocollie08 <sentony03@gmail.com>
Co-authored-by: nancywu1 <66387473+nancywu1@users.noreply.github.com>
Co-authored-by: zwu01 <nancy_wu1@intuit.com>

* uncomment test

* Fix `com.intuit.player:j2v8` transitive deps (#256)

* neverlink j2v8 debugger

* fix deps.bzl miss

* wip

* wip: broken rules_jvm_external

* move jvm external setup

* try to use the embedded jdk

* fix //jvm/core:test

* reintroduce grab for mockable android jar

* use kotlin-reflect from maven

* sync --experimental_google_legacy_api

* cleanup

* fix gpg tty for release

* use pinentry instead

* strip down ci

* fix writing to gpg conf

* exclude kotlin stdlib

* ensure resources exist in top-level AAR

* working player distrib

* working grab_bazel_common + some cleanup

* more cleanup

* reset circle config

* Release main

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.6.0 [skip ci]

* Fix SwiftUIPendingTransactionPlugin Docs Page

The extra newline on this page causes it not to show up in the sidebar of the `Plugins` section and also causes the header elements to be improperly rendered.

* Remove Applitools (#277)

* remove android and circle applitools

* don't define applitools configs

* remove applitools usage from iOS UI Tests

* address flakiness by awaiting child async view stubs

---------

Co-authored-by: hborawski <Harris_Borawski@intuit.com>

* [JVM] pom with minimal oss requirements (#275)

pom with minimal oss requirements

* Update Team page with new members

* plugin core doc addition

* updated FAQS

* feat: add github.dev links to docs (#278)

feat: adds improve docs link to github.dev

Co-authored-by: rcampos2 <rafael_campos@intuit.com>

* updated asset provider with JSON samples

* some more cleanup and information

* Added dsl validate command

* added json tag

* removed discord

* clean up first set of observation wording

* iOS: Update Writing Plugins guide (#279)

update plugin authoring guide for iOS

* added contentTabs to help with content section in docs

* removed json platform

* fixed code block

* find alternative way to post JSON blocks

* working json code block

* Updated descriptions to include TSC compiling

* updated tsx section

* tsx and json section added to contenttabs

* Refactor existing DSL docs.

* Plugin implementation doc v1

* plugin docs addl cleanup

* iOS: Update plugin documentation (#284)

* update some plugin docs for ios with usage examples

* update docs for iOS and some for core

* add usage header on beacons doc

* indentation fixes

---------

Co-authored-by: nancywu1 <nancy_wu1@intuit.com>

* Fix broken link in CONTRIBUTING.md

Fixes broken link to the Android demo app README,d

* Apply suggestions from code review

Co-authored-by: Spencer Hamm <spentacular@gmail.com>

* Overview plugin links fix

* Fixing invalid character on plugin implementation doc

* PR feedback

* flesh out dsl plugins doc

* Added snippets reference

* plugin hook implementation wording cleanup

* Plugins android clean up (#290)

* beacon

* check-path

* coroutines + usage for check-path

* expression

* external-action

* metrics

* fix a bunch of formatting things

* fix formatting problems

* settimeout

* async-node

* update package paths

* async node ios docs

* address some comments

---------

Co-authored-by: brocollie08 <sentony03@gmail.com>
Co-authored-by: nancywu1 <nancy_wu1@intuit.com>

* Asset reference link fixed

* async node plugin

* Doc: Plugin react wording correction.

* Update docs/site/pages/plugin-implementation.mdx

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* docs: plugin implementation 1st observations

* removed unused langmap

* Docs: plugin implementation obervations pt2

* use tap instead of tapPromise, use named export instead of default

* move tests to viewinspector folder

* remove duplicate test

* fix lint error

* add back flow

* update doc that uses tapPromise example

* throw error if plugin is undefined

* fix: help to improve docs links with relative path (#298)

Co-authored-by: rcampos2 <rafael_campos@intuit.com>

* fix: missing docs/site on docs links (#299)

Co-authored-by: rcampos2 <rafael_campos@intuit.com>

* `com.intuit.playerui` publishing scope (#253)

* com.intuit.player.jvm -> com.intuit.playerui

* com.intuit.player.android -> com.intuit.playerui.android

* com.intuit.player.plugins -> com.intuit.playerui.plugins

* leftovers

* more leftovers

* add additional email to pom

* move graaljs files

* update android coordinates

* add asyncnodeplugin resource path

* put on one line

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.7.0 [skip ci]

* CommonTypesPlugin restoring old dataRefs

* Fixed Views and Schema links

* DSL data schema type docs

* Skip view updates for silent data changes

* replace reduce calls for performance

* Fix data change events not cascading properly when setting data

* Edit docs/site/pages/dsl/dsl-schema-type.mdx

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* [JVM] Handle invalid JSON as Player error (#303)

* handle invalid json as player error

* improve test

* Docs update post review

* DSLSchema docs further improvement

* [Docs] Platform consolidation (#287)

* platform consolidated getting started

* fix alert status reference

* add platform tabs for custom and reference assets

* re-add viewmodel + fragment docs

---------

Co-authored-by: nancywu1 <nancy_wu1@intuit.com>

* DSLSchema doc cleanup

* DSLSchema docs rearrangement

* Resorting to schema page for DSLSchema docs

* updated PR checklist to include documentation portion

* fixed capitalization

* DSLSchema improved statement

* @player-tools: "0.5.0-next.7 for dataRefs

* fix yarn lock

* Exporting dataRefs from common-types and reference-assets

* Exp dataRefs:@player-ui/reference-assets-components

* [Android] `AsyncHydrationTrackerPlugin` (#296)

* initial working rehydration tracker

* callback approach

* working callback impl

* lint

* explicit api instead of callback

* oops

* ensure beacon call captures view scope synchronously

* ensure we track hydration as early as possible

* expose onHydrationStarted hook

* simple async hydration tracker test

* remove redundant trackHydration

* iOS: prefix resource bundles to prevent naming collisions (#310)

* iOS: prefix resource bundles to prevent naming collisions

* fix resource_map

* rename reference assets bundle

* fixed linting errors

* Fix documentation error on custom asset (#311)

* Exporting validations + DSLSchema from components

* bump @player-tools packages to 0.5.1 (#312)

bump tools packages to 0.5.1

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.7.1 [skip ci]

* Expose expression parser strictness in options hook

* Make throwing recoverable parsing errors dependent on strictness

* add syntax examples for default expressions (#317)

* add syntax examples for default expressions

* fix getDataVal casing

* fix getDataVal casing

* fix 0 precision commaNumber formatting

* update rules_player to latest 0.12.0 (#322)

* update rules_player to latest 0.12.0

* pin android versions

* android 30 then

* android 30 for install script

* 31 again + bump emulator API as well

* correct architecture

* shame on me

* allow boot anim

* revert android changes and pin docker image

* install-android-tools.sh revert

* don't pin android versions

* test rules

* verbose failure if available and test output errors

* flag on build

* correct flag

* no remote cache

* remove skip remote cache flag

* back to 0.12.0

---------

Co-authored-by: brocollie08 <sentony93@gmail.com>

* update iOS contributing guide (#323)

* refactor nav docs slightly to better call out onEnd expressions (#321)

* refactor nav docs slightly to better call out onEnd expressions

* reword some more

* grammar update

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

---------

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* Update the DSL Benefits in Schema section

* Expose more information about expression parsing errors

* Fix version selector not working and preserve route when changing versions

* Android: Preserve old rendering path for non-suspendable assets (#314)

* preserve old rendering path for non-suspenable assets

* lint

* conditionally launch in main for non-suspendable assets

* rename db resources

* update db rules

* use main rules_player

---------

Co-authored-by: brocollie08 <sentony93@gmail.com>

* Update Player Tools version

* Release main

* Update CHANGELOG.md [skip ci]

* Bump version to: v0.7.2 [skip ci]

* expose on update hook

* feedback

* DSL docs navigation note

* TS satisfies note

* Additional notes and wording for DSLSchema

* Apply Player DSL suggestions from code review

Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>

* Add bazelisk to list of requirements; be more specific in Android build instructions (#344)

Co-authored-by: Paul Millerd <paul_millerd@intuit.com>

* [Android] Reorganize `PlayerFragment` state updates (#343)

* mvn-install script for publishing JARs to your local maven repository

* organize player fragment state updates

* remove unused code

* enhance player fragment lifecycle handling

* Merge branch 'main' into bazel-6

* revert ExternalActionViewModifierPluginTests#L210

---------

Co-authored-by: mercillo <marlon_ercillo@intuit.com>
Co-authored-by: Marlon "Marky" Ercillo <mercillo729@gmail.com>
Co-authored-by: zwu01 <nancy_wu1@intuit.com>
Co-authored-by: Harris Borawski <harrisborawski@gmail.com>
Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>
Co-authored-by: intuit-svc <opensource-svc@intuit.com>
Co-authored-by: intuit-svc <98980465+intuit-svc@users.noreply.github.com>
Co-authored-by: Adam Dierkens <adierkens@users.noreply.github.com>
Co-authored-by: nancywu1 <66387473+nancywu1@users.noreply.github.com>
Co-authored-by: Larry <larrywutoronto@gmail.com>
Co-authored-by: Rafael Campos <campos.rb@hotmail.com>
Co-authored-by: rcampos2 <rafael_campos@intuit.com>
Co-authored-by: brocollie08 <sentony93@gmail.com>
Co-authored-by: brocollie08 <sentony03@gmail.com>
Co-authored-by: hborawski <Harris_Borawski@intuit.com>
Co-authored-by: Ketan Reddy <ketan_reddy@intuit.com>
Co-authored-by: afimbres <alejandro_fimbres@intuit.com>
Co-authored-by: Alex Fimbres <lexfimbres@gmail.com>
Co-authored-by: Spencer Hamm <spentacular@gmail.com>
Co-authored-by: Ketan Reddy <ketan@ketanreddy.com>
Co-authored-by: KT <kathir@gmail.com>
Co-authored-by: Paul Millerd <paulmillerd@gmail.com>
Co-authored-by: Paul Millerd <paul_millerd@intuit.com>

* async node plugin ios updates

* default to have AsyncNodePluginPlugin() on asyncnodeplugin init

* delete duplicate files, update readme

* Enable build caching

* update async node docs

* Update ios/BUILD.bazel

Co-authored-by: Harris Borawski <harrisborawski@gmail.com>

* Specify some RC flags only for mac (#350)

* test build time on m1 medium

* dont run iOS tests in parallel on medium m1

* undo swap to medium m1 CI machine

* enable codecov on PR with broken build?

* add swift lint

* Update pnpm in contributing docs (#355)

* updated npm and yarn to pnpm

* added just the portion for pnpm and switched order for docs

---------

Co-authored-by: marky ercillo <marlon_ercillo@intuit.com>

* [bazel-6] Convert docs build to basic webpack (#327)

Convert docs build to basic webpack

Co-authored-by: hborawski <Harris_Borawski@intuit.com>

* swiftlint genrule as sh_test

* export dummy file

* test lint violation

* missing \ in config.yml

* lint test in ci

* fix lint violations

* allow beacon ids from enum

* fix violation

* pass in swiftlint.yml through config flag

* get storybook rendering again (#370)

* update swiftlint genrule

* iOS ReferenceAssetsPlugin: check registry type instead of player type (#372)

check registry type instead of player type

* fixing test printing grep: lint_results.txt=0: No such file or directory

* feedback

* stamp podspec again with version (#374)

* Implemented choice asset.

* using rules_player ios common utils

* update readme

* point to PR commit

* use updated commit from merge

* iOS - Use reference assets in swiftui tests (#368)

replace dummy assets and use reference assets in swiftui tests

Co-authored-by: nancywu1 <nancy_wu1@intuit.com>
Co-authored-by: Harris Borawski <harrisborawski@gmail.com>

* Ayncnode comments cleanup (#385)

Async node comments clean up

* update readme

* This PR fixes the Ability to resolve with nothing issue (#389)

* Ability to resolve with "nothing"

* Ability to resolve with "nothing" initial commit

* Fixed PR comments

* Changed the logic to resolve the node to anything even if its null or undefined and updated the respective test case

* Reverted test case

* Updated test case as per review feedback

* Updated code as per Tuesday's discussion

* Updated test comments

* Fixed all review comments except for "this is likely incorrect and should be 3"

* Fixed PR comments in test case

* Removed comments

* Fixed last few comments

* Fixed linter issues

* Bazel 6 JVM + Android (#391)

* Merge branch 'main' into bazel-6

* wip reference assets cli plugin

* Saving progress. Split targets based on src folder

* Saving progress. Config loads

* Skip testing mocks for now

* Add cli-preset & generate xlrs for reference assets + types

* Update preset

* Add other asset types to plugin

* Use js_xlr_pipeline macro for ref assets & types

* set up maven

* kotlin serialization builds..

* jvm core building

* test running

* jvm building

* fix most of the tests

* target es5 for native build

* bundled reference assets mocks

* aggregate mocks into //tools/mocks

* build all the plugins

* playerui in packages

* grab bazel common works

* android player building

* android test building

* demo lib building

* android_ndk_respository cuz how can this NOT be needed for native android app build

* building reference assets android

* everything building

* revert some unneeded changes

* enabled and fixed most andriod reference asset tests

* fix a bunch more unit tests

* package apk properly

* latest rules_jvm before bazel7

* update rules jvm and tests

* replace local rules with git repos

* install android 33

* enable distribution + use original rules_jvm

* fix merge

* fix mocks

* remove aar

* updated docker

* update android image

* set android ndk home

* also add tools to ios build

* re-enable android script to enable workspace ndk config

* define android_home

* specify java environment

* log java env

* what am i doing..

* gotta install jdk first

* try 11

* and use it

* what is in here

* change java_home?

* apple silicon install location?

* correct location

* rosetta?

* install only ndk

* brew install on rosetta

* revert

* accept 1 less license

* skip license accept

* zulu

* don't tap

* @

* change java_home

* caskroom

* don't install anything just create folder

* back to 11

* revert script and install temurin8

* temurin requires rosetta

* install rosetta at teh top

* install rosetta at the top

* root installer

* proper JAVA_HOME maybe

* remove evals

* install sdk too

* remove duplicate classes

* change test to match bazel6

* change type-provider back

* remove all NATIVE_BUILD_DEPS

* Revert "remove all NATIVE_BUILD_DEPS"

This reverts commit a121305.

* Revert "change type-provider back"

This reverts commit 39db253.

* fix swift test check

* add choiceAsset and unify test framework versions

* lint

* try removing the directory from working directory to see impact on workspace

* git rm

* forget it, gitignore it is

* comment out non-existing things from rules_palyer

* remove jvm deps.bzl

* latest rules player with publishing

* embedded jdk

* remove debugger from j2v8 deps

* add debugger to demo

* attempt at solving lint issues

* remote jdk over embedded

* does this do anything

* set all java options

* jdk11

* java_language_version

* fix targets

* update release scripts to call proper js package target

* remove embedded jdk

* iOS - Use reference assets in swiftui tests (#368)

replace dummy assets and use reference assets in swiftui tests

Co-authored-by: nancywu1 <nancy_wu1@intuit.com>
Co-authored-by: Harris Borawski <harrisborawski@gmail.com>

* Ayncnode comments cleanup (#385)

Async node comments clean up

* update readme

use updated ios pipeline macro with uitest target

use updated ios pipeline macro with uitest target

use updated ios pipeline macro with uitest target

use updated ios pipeline macro with uitest target

use updated ios pipeline macro with uitest target

use updated ios pipeline macro with uitest target

* some clarification docs for binding classes

* enable ndk 23

* remove workspace ndk setup

* compile against kotlin 1.7 to be compatible with gradle 7

* remove grab db

* Revert "remove grab db"

This reverts commit be1b030.

* address most of the comments

* address some more comments

* add test back in

* more comments

* remove dummy API classes

* all targets except ios

* install tools

* doc builds working

* Fix storybook addons

* fix a bunch of tests and change test command

* super mocks bundle

* fix player test

* last test

---------

Co-authored-by: Jeremiah Zucker <zucker.jeremiah@gmail.com>
Co-authored-by: Adam Dierkens <Adam_Dierkens@intuit.com>
Co-authored-by: nancywu1 <zx3wu109@gmail.com>
Co-authored-by: Ketan Reddy <ketan@ketanreddy.com>
Co-authored-by: nancywu1 <66387473+nancywu1@users.noreply.github.com>
Co-authored-by: nancywu1 <nancy_wu1@intuit.com>
Co-authored-by: Harris Borawski <harrisborawski@gmail.com>
Co-authored-by: sakuntala-motukuri <sakuntala_motukuri@intuit.com>

* working bazel test //core/player:player_eslint

* resolve merge conflicts

* fix merge and eslint

* only include mock in manifest if json (we don't support on demand compilation)

* Use m1 medium

* merge conflicts

* fix tests

* fix async node sync

* validation test sync with bazel-6 branch

* fix validation.test.ts

* re-enable failing test

* Back to m1 large

* change medium to large

* fixed async node types

* use original mock for action transition error

* import in UI test

* Update rules to spec release

* Fix nodeId in async node test

* done

* Use release version of rules

* apply typings fix to other hooks (#423)

---------

Co-authored-by: Harris Borawski <harrisborawski@gmail.com>
Co-authored-by: brocollie08 <sentony93@gmail.com>
Co-authored-by: brocollie08 <sentony03@gmail.com>
Co-authored-by: hborawski <Harris_Borawski@intuit.com>
Co-authored-by: Ketan Reddy <ketan_reddy@intuit.com>
Co-authored-by: Jeremiah Zucker <zucker.jeremiah@gmail.com>
Co-authored-by: mercillo <marlon_ercillo@intuit.com>
Co-authored-by: Marlon "Marky" Ercillo <mercillo729@gmail.com>
Co-authored-by: zwu01 <nancy_wu1@intuit.com>
Co-authored-by: Ketan Reddy <KetanReddy@users.noreply.github.com>
Co-authored-by: intuit-svc <opensource-svc@intuit.com>
Co-authored-by: intuit-svc <98980465+intuit-svc@users.noreply.github.com>
Co-authored-by: nancywu1 <66387473+nancywu1@users.noreply.github.com>
Co-authored-by: Larry <larrywutoronto@gmail.com>
Co-authored-by: Rafael Campos <campos.rb@hotmail.com>
Co-authored-by: rcampos2 <rafael_campos@intuit.com>
Co-authored-by: afimbres <alejandro_fimbres@intuit.com>
Co-authored-by: Alex Fimbres <lexfimbres@gmail.com>
Co-authored-by: Spencer Hamm <spentacular@gmail.com>
Co-authored-by: Ketan Reddy <ketan@ketanreddy.com>
Co-authored-by: KT <kathir@gmail.com>
Co-authored-by: Paul Millerd <paulmillerd@gmail.com>
Co-authored-by: Paul Millerd <paul_millerd@intuit.com>
Co-authored-by: Mrigank Mehta <mrigank_mehta@intuit.com>
Co-authored-by: Mrigank Mehta <mrigankm96@gmail.com>
Co-authored-by: sakuntala-motukuri <sakuntala_motukuri@intuit.com>
Co-authored-by: nancywu1 <zx3wu109@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
patch Increment the patch version when merged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Fix flaky iOS tests
1 participant