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

Fix #4119, #4120, and part of #59: Upgrade to Kotlin 1.6.10 #4937

Merged
merged 193 commits into from
Jun 12, 2024
Merged
Show file tree
Hide file tree
Changes from 181 commits
Commits
Show all changes
193 commits
Select commit Hold shift + click to select a range
9ca7e2b
Migrate to rules_jvm_external 5.1.
BenHenning Mar 27, 2023
7238b59
Fix JVm dep build warnings.
BenHenning Mar 27, 2023
f6188ac
Fix Maven license check & update the list.
BenHenning Mar 28, 2023
2c3b6ea
Fix issues with compute_affected_tests.
BenHenning Mar 29, 2023
c325bc9
Use base SHA for computing affected tests.
BenHenning Mar 29, 2023
2012647
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning Mar 29, 2023
47f9c02
Post-merge lint fix.
BenHenning Mar 29, 2023
8ae5aa8
Fix updated TODOs.
BenHenning Mar 29, 2023
de3cf14
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning Mar 29, 2023
b2ca68b
Fix Dagger structure.
BenHenning Mar 30, 2023
839be0f
Upgrade Dagger version.
BenHenning Mar 30, 2023
c2fe337
Fix test builds that depend on Dagger generation.
BenHenning Mar 30, 2023
a543500
Update Maven dependency licenses.
BenHenning Mar 30, 2023
b882832
Fix broken test & binary builds.
BenHenning Mar 30, 2023
c5b940b
Add support for Kotlin 1.6.
BenHenning Mar 30, 2023
10ae796
Correctly interact with rules_kotlin.
BenHenning Mar 30, 2023
1cf7b76
Fix upgrade by downgrading Moshi to 1.13.
BenHenning Mar 30, 2023
d2799f0
Turn on warnings as errors for Kotlin.
BenHenning Mar 31, 2023
86dacfb
Fix Java build & other warnings.
BenHenning Apr 1, 2023
bc62b22
Try to fix AndroidX databinding compile race.
BenHenning Apr 1, 2023
6f9bbd6
Fix static check failures.
BenHenning Apr 1, 2023
aaa0299
Merge branch 'develop' into upgrade-compute-affected-tests
BenHenning Apr 1, 2023
d520fa9
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning Apr 1, 2023
037be61
Merge branch 'update-rules-jvm-external' into update-dagger-structure
BenHenning Apr 1, 2023
756534a
Merge branch 'update-dagger-structure' into upgrade-to-kotlin1.6
BenHenning Apr 1, 2023
a92e37c
Fix CI breakages, including Gradle.
BenHenning Apr 1, 2023
d8792a8
Fix broken CI checks.
BenHenning Apr 3, 2023
59f7f87
Address self-review comments.
BenHenning Apr 3, 2023
0709b3d
Fix broken tests.
BenHenning Apr 3, 2023
e44b59d
Address TODOs as part of the migration.
BenHenning Apr 3, 2023
8a19b4e
Merge branch 'develop' into upgrade-compute-affected-tests
BenHenning May 11, 2023
773f7ff
Fix breakage from develop.
BenHenning May 11, 2023
311951f
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning May 11, 2023
9e377d5
Merge branch 'update-rules-jvm-external' into update-dagger-structure
BenHenning May 12, 2023
f087488
Merge branch 'update-dagger-structure' into upgrade-to-kotlin1.6
BenHenning May 12, 2023
e7435a5
Fix hanging CoroutineExecutorService test.
BenHenning May 12, 2023
8a8101b
Fix broken Gradle build.
BenHenning May 12, 2023
525a601
Merge branch 'develop' into upgrade-compute-affected-tests
BenHenning Jun 6, 2023
6cca78f
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning Jun 6, 2023
327114d
Post-merge fixes.
BenHenning Jun 6, 2023
bb4ff28
Merge branch 'update-rules-jvm-external' into update-dagger-structure
BenHenning Jun 6, 2023
5d924f4
Post-merge fixes.
BenHenning Jun 6, 2023
8690354
Merge branch 'update-dagger-structure' into upgrade-to-kotlin1.6
BenHenning Jun 6, 2023
66bf94f
Post-merge fixes.
BenHenning Jun 6, 2023
667bf89
Fix a variety of dev platform-specific issues.
BenHenning Aug 22, 2023
fb59232
Tidy some things up, and revert fragment test.
BenHenning Aug 28, 2023
2551d4b
Fix test behavior inconsistency in test.
BenHenning Sep 11, 2023
714f3ea
Merge branch 'develop' into fix-platform-specific-issues
BenHenning Sep 11, 2023
7488b9f
Fix broken ProfileAndDeviceIdFragmentTest test.
BenHenning Sep 13, 2023
e3d4091
Merge branch 'develop' into fix-platform-specific-issues
BenHenning Oct 26, 2023
5671673
Post-merge fix.
BenHenning Oct 26, 2023
f5ed0c9
Merge branch 'fix-platform-specific-issues' into upgrade-compute-affe…
BenHenning Oct 26, 2023
bd1466d
Merge branch 'develop' into fix-platform-specific-issues
BenHenning Jan 16, 2024
d9b38ea
Merge branch 'fix-platform-specific-issues' into upgrade-compute-affe…
BenHenning Jan 16, 2024
9f1a2ec
Some follow-up post-merge fixes.
BenHenning Jan 17, 2024
39a3add
Make TodoOpenCheck locally runnable.
BenHenning Jan 18, 2024
4f7bfd6
Simplify GitHubIssue & some static fixes/docs.
BenHenning Jan 18, 2024
000bba3
Add ScriptBackgroundCoroutineDispatcher.
BenHenning Jan 18, 2024
79878cd
Some more robustness fixes.
BenHenning Jan 19, 2024
a5f71d6
Merge branch 'fix-platform-specific-issues' into introduce-better-scr…
BenHenning Jan 19, 2024
0b55bd4
Post-merge fixes.
BenHenning Jan 19, 2024
53d6727
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Jan 19, 2024
00c7c28
Post-merge fixes & adjustments.
BenHenning Jan 20, 2024
bd97611
Fix BUILD file lint issue.
BenHenning Jan 20, 2024
d54829d
Merge branch 'fix-platform-specific-issues' into introduce-better-scr…
BenHenning Jan 20, 2024
fa9cae4
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Jan 20, 2024
0618b12
Static fix checks.
BenHenning Jan 20, 2024
fb148ea
Merge branch 'make-todo-check-locally-runnable' into upgrade-compute-…
BenHenning Jan 20, 2024
ab326ff
Post-merge fixes.
BenHenning Jan 20, 2024
d5bfad5
Merge branch 'upgrade-compute-affected-tests' of github.com:oppia/opp…
BenHenning Jan 20, 2024
1067a18
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning Jan 20, 2024
1e2df14
Post-merge fixes.
BenHenning Jan 20, 2024
211487c
Merge branch 'develop' into fix-platform-specific-issues
BenHenning Feb 6, 2024
1a666a9
Post-merge fixes.
BenHenning Feb 6, 2024
a2ee5d3
Add smoke tests for instr. binaries & tests.
BenHenning Feb 7, 2024
d5b9012
Some minor refactoring for readability.
BenHenning Feb 7, 2024
e6ec869
Fixed broken instrumentation builds.
BenHenning Feb 7, 2024
9f50469
Merge branch 'develop' into fix-instrumentation-build-failure
BenHenning Feb 7, 2024
8dbf4dc
Add missing CODEOWNERS line.
BenHenning Feb 7, 2024
9c38057
Remove old files from CODEOWNERS.
BenHenning Feb 7, 2024
f2ff4e3
Merge branch 'fix-instrumentation-build-failure' into fix-platform-sp…
BenHenning Feb 7, 2024
fad48ed
Add missing tests for TestBlazeWorkspace changes.
BenHenning Feb 8, 2024
e1802c8
Add missing Firebase auth tests.
BenHenning Feb 8, 2024
00c32f6
Merge branch 'fix-instrumentation-build-failure' into fix-platform-sp…
BenHenning Feb 8, 2024
2f87f4d
Merge branch 'fix-platform-specific-issues' into introduce-better-scr…
BenHenning Feb 8, 2024
aa3547c
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Feb 8, 2024
d3cbd93
Post-merge fixes for previously missed tests.
BenHenning Feb 8, 2024
13e4358
Merge branch 'fix-platform-specific-issues' into introduce-better-scr…
BenHenning Feb 8, 2024
622aced
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Feb 8, 2024
50f41d2
Merge branch 'develop' into fix-instrumentation-build-failure
BenHenning Feb 8, 2024
c8df70e
Merge branch 'fix-instrumentation-build-failure' into fix-platform-sp…
BenHenning Feb 8, 2024
c85d421
Merge branch 'develop' into fix-instrumentation-build-failure
BenHenning Feb 9, 2024
dcf27b6
Merge branch 'fix-instrumentation-build-failure' into fix-platform-sp…
BenHenning Feb 9, 2024
2369514
Merge branch 'develop' into fix-platform-specific-issues
BenHenning Feb 9, 2024
c7ec5d4
Merge branch 'fix-platform-specific-issues' into introduce-better-scr…
BenHenning Feb 9, 2024
4b418bd
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Feb 9, 2024
d6a9f70
Merge branch 'make-todo-check-locally-runnable' into upgrade-compute-…
BenHenning Feb 9, 2024
8de4d51
Improve new test robustness.
BenHenning Feb 9, 2024
3f69f11
Fix updated Maven license deps.
BenHenning Feb 9, 2024
ea8e0b1
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Feb 9, 2024
2916770
Update scripts/src/javatests/org/oppia/android/scripts/common/GitClie…
BenHenning Feb 14, 2024
f2d810a
Merge branch 'develop' into fix-platform-specific-issues
BenHenning Feb 14, 2024
808f412
Merge branch 'fix-platform-specific-issues' into introduce-better-scr…
BenHenning Feb 14, 2024
2315aea
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Feb 14, 2024
af51395
Add tests for GitHubClient & TodoOpenCheck.
BenHenning Feb 14, 2024
6856e3c
Merge branch 'develop' into fix-platform-specific-issues
BenHenning Feb 14, 2024
5a050de
Merge branch 'fix-platform-specific-issues' into introduce-better-scr…
BenHenning Feb 14, 2024
13b8d4b
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Feb 14, 2024
280b3ec
Add missing docs.
BenHenning Feb 14, 2024
0bd7e2f
Merge branch 'make-todo-check-locally-runnable' into upgrade-compute-…
BenHenning Feb 14, 2024
5951c0f
Post-merge fixes.
BenHenning Feb 15, 2024
ee71b32
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning Feb 15, 2024
3627067
Update Maven dep list checker & updater scripts.
BenHenning Feb 15, 2024
a5eb624
Merge branch 'develop' into introduce-better-script-execution-support
BenHenning Feb 20, 2024
ae239b3
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Feb 20, 2024
34ea6aa
Fix broken TodoOpenCheck tests & check exemptions.
BenHenning Feb 20, 2024
df61985
Merge branch 'make-todo-check-locally-runnable' into upgrade-compute-…
BenHenning Feb 20, 2024
161ae8d
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning Feb 20, 2024
8c87993
Fix broken checks & failing static checks.
BenHenning Feb 22, 2024
bb6e681
Merge branch 'update-rules-jvm-external' into update-dagger-structure
BenHenning Feb 22, 2024
5c812a1
Post merge build, test, and static check fixes.
BenHenning Feb 23, 2024
57c275c
Merge branch 'update-dagger-structure' into upgrade-to-kotlin1.6
BenHenning Feb 23, 2024
e0e74d5
Merge branch 'develop' into introduce-better-script-execution-support
BenHenning Mar 4, 2024
2dd0cd7
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Mar 4, 2024
79a2f0f
Merge branch 'make-todo-check-locally-runnable' into upgrade-compute-…
BenHenning Mar 4, 2024
60458bf
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning Mar 4, 2024
228a037
Merge branch 'update-rules-jvm-external' into update-dagger-structure
BenHenning Mar 4, 2024
195d604
Some post-merge fixes.
BenHenning Mar 4, 2024
3bdd1e0
Merge branch 'update-dagger-structure' into upgrade-to-kotlin1.6
BenHenning Mar 4, 2024
7cd345b
Silence deprecation warnings.
BenHenning Mar 5, 2024
70df9b3
Merge branch 'develop' into introduce-better-script-execution-support
BenHenning Mar 14, 2024
04fc8b8
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Mar 14, 2024
c301eed
Address reviewer comment.
BenHenning Mar 14, 2024
51a96ce
Merge branch 'develop' into introduce-better-script-execution-support
seanlip Mar 15, 2024
b3e2fd9
Merge commit 'e2f94e41e4cba3bc5b5f3af65f7c43a6543b4c52' into introduc…
BenHenning Mar 20, 2024
73a8bce
Merge branch 'introduce-better-script-execution-support' into make-to…
BenHenning Mar 20, 2024
f48f78e
Merge branch 'develop' into make-todo-check-locally-runnable
BenHenning Mar 20, 2024
02ccc87
Merge branch 'develop' into make-todo-check-locally-runnable
BenHenning May 16, 2024
28fcb9d
Merge branch 'make-todo-check-locally-runnable' into upgrade-compute-…
BenHenning May 16, 2024
aa8988c
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning May 16, 2024
658c9f0
Merge branch 'update-rules-jvm-external' into update-dagger-structure
BenHenning May 16, 2024
53d42e1
Merge branch 'update-dagger-structure' into upgrade-to-kotlin1.6
BenHenning May 16, 2024
4cf06d4
Address self-review comments.
BenHenning May 16, 2024
0cc5d5d
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning May 17, 2024
c43c036
Address review comment.
BenHenning May 17, 2024
c30a839
Merge branch 'update-rules-jvm-external' into update-dagger-structure
BenHenning May 17, 2024
fbac9a2
Post-merge fixes.
BenHenning May 17, 2024
840de58
Merge branch 'update-dagger-structure' into upgrade-to-kotlin1.6
BenHenning May 17, 2024
ce2c34b
Fix NetworkLoggingInterceptorTest.
BenHenning May 20, 2024
0f48cf5
Fix more tests & upgrade Robolectric.
BenHenning May 20, 2024
caf6f28
Fix more broken tests.
BenHenning May 20, 2024
118d32f
Undo Robolectric upgrade.
BenHenning May 21, 2024
956b358
Upgrade to rules_kotlin 1.5.0 beta 3.
BenHenning May 21, 2024
dd84da3
Merge branch 'upgrade-to-newer-rules-kotlin' into upgrade-to-kotlin1.6
BenHenning May 21, 2024
f5c07fc
Fix build-time Kotlin & Java warnings.
BenHenning May 22, 2024
0429177
Fix a few follow-up issues.
BenHenning May 22, 2024
8dcb531
Merge branch 'fix-build-time-kotlin-java-warnings' into upgrade-to-ko…
BenHenning May 22, 2024
3dc6b7b
Merge branch 'develop' into upgrade-compute-affected-tests
BenHenning May 22, 2024
acd1c0d
Merge branch 'develop' into upgrade-compute-affected-tests
BenHenning May 22, 2024
c672af0
Address reviewer comment.
BenHenning May 22, 2024
1b19f5b
Merge branch 'upgrade-compute-affected-tests' into update-rules-jvm-e…
BenHenning May 22, 2024
3e923e2
Follow-up variable rename for clarity.
BenHenning May 22, 2024
9af41bd
Merge branch 'update-rules-jvm-external' into update-dagger-structure
BenHenning May 22, 2024
6100394
Merge branch 'update-dagger-structure' into upgrade-to-newer-rules-ko…
BenHenning May 22, 2024
b6c3ebe
Merge branch 'upgrade-to-newer-rules-kotlin' into fix-build-time-kotl…
BenHenning May 22, 2024
d3cea44
Merge branch 'fix-build-time-kotlin-java-warnings' into upgrade-to-ko…
BenHenning May 22, 2024
da57feb
Address static check failures.
BenHenning May 22, 2024
441e293
Move forward TODO fixes from #4937.
BenHenning May 23, 2024
2f1eed7
Remove unused view model bridge classes.
BenHenning May 23, 2024
0c96f8d
Merge branch 'fix-build-time-kotlin-java-warnings' into upgrade-to-ko…
BenHenning May 23, 2024
785d408
Pull in other warning fixes from #4886.
BenHenning May 26, 2024
7ccba36
Merge branch 'fix-build-time-kotlin-java-warnings' into upgrade-to-ko…
BenHenning May 26, 2024
f74d059
Pulled forward Gradle change from #4886.
BenHenning May 26, 2024
7951d46
Merge branch 'develop' into update-rules-jvm-external
BenHenning May 26, 2024
d4d8646
Merge branch 'develop' into update-rules-jvm-external
BenHenning May 27, 2024
b6cfd74
Merge branch 'update-rules-jvm-external' into update-dagger-structure
BenHenning May 27, 2024
0468e81
Merge branch 'develop' into update-dagger-structure
BenHenning May 27, 2024
47ad078
Merge branch 'update-dagger-structure' into upgrade-to-newer-rules-ko…
BenHenning May 27, 2024
828e43e
Merge branch 'upgrade-to-newer-rules-kotlin' into fix-build-time-kotl…
BenHenning May 27, 2024
eda781e
Merge branch 'fix-build-time-kotlin-java-warnings' into upgrade-to-ko…
BenHenning May 27, 2024
82c530a
Down version to 1.6.10.
BenHenning May 27, 2024
7c186c3
Merge branch 'develop' into upgrade-to-newer-rules-kotlin
BenHenning May 28, 2024
dffff83
Merge branch 'upgrade-to-newer-rules-kotlin' into fix-build-time-kotl…
BenHenning May 28, 2024
bc79bf7
Address review comment.
BenHenning May 29, 2024
2d3f5d5
Merge branch 'develop' into fix-build-time-kotlin-java-warnings
BenHenning May 29, 2024
bc98d27
Merge branch 'fix-build-time-kotlin-java-warnings' into upgrade-to-ko…
BenHenning May 29, 2024
4b26fd5
Merge branch 'develop' into fix-build-time-kotlin-java-warnings
BenHenning Jun 3, 2024
fd69342
Merge branch 'fix-build-time-kotlin-java-warnings' into upgrade-to-ko…
BenHenning Jun 3, 2024
3dcc2ac
Merge branch 'develop' into fix-build-time-kotlin-java-warnings
BenHenning Jun 11, 2024
4cbf04c
Merge branch 'fix-build-time-kotlin-java-warnings' into upgrade-to-ko…
BenHenning Jun 11, 2024
f97c111
Add config for Kotlin warnings.
BenHenning Jun 11, 2024
e9ac7f3
Address reviewer comment.
BenHenning Jun 11, 2024
3b682f0
Address lint failures.
BenHenning Jun 11, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 4 additions & 0 deletions .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,9 @@ build --android_databinding_use_v3_4_args \
--define=android_standalone_dexing_tool=d8_compat_dx \
--android_databinding_use_androidx

# Ensure all built Java files treat warnings as errors (similar to the Kotlin configuration) to help
# reduce code smell & potential bugs during development.
build --javacopt="-Werror"
BenHenning marked this conversation as resolved.
Show resolved Hide resolved

# Show all test output by default (for better debugging).
test --test_output=all
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,7 @@ WORKSPACE @oppia/android-app-infrastructure-reviewers
.bazelrc @oppia/android-app-infrastructure-reviewers
.bazelversion @oppia/android-app-infrastructure-reviewers
/tools/android/ @oppia/android-app-infrastructure-reviewers
/tools/kotlin/ @oppia/android-app-infrastructure-reviewers

# Configurations for Bazel-built Android App Bundles.
/bundle_config.pb.json @oppia/android-dev-workflow-reviewers
Expand Down
39 changes: 27 additions & 12 deletions WORKSPACE
Original file line number Diff line number Diff line change
Expand Up @@ -26,20 +26,22 @@ http_archive(
# Add support for Kotlin: https://github.com/bazelbuild/rules_kotlin.
http_archive(
name = "io_bazel_rules_kotlin",
patches = ["//tools/kotlin:add_kotlinc_optin_support.patch"],
sha256 = HTTP_DEPENDENCY_VERSIONS["rules_kotlin"]["sha"],
urls = ["https://github.com/bazelbuild/rules_kotlin/releases/download/%s/rules_kotlin_release.tgz" % HTTP_DEPENDENCY_VERSIONS["rules_kotlin"]["version"]],
)

# TODO(#1535): Remove once rules_kotlin is released because these lines become unnecessary
load("@io_bazel_rules_kotlin//kotlin:dependencies.bzl", "kt_download_local_dev_dependencies")
load("@io_bazel_rules_kotlin//kotlin:repositories.bzl", "kotlin_repositories", "kotlinc_version")

kt_download_local_dev_dependencies()

load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kotlin_repositories", "kt_register_toolchains")

kotlin_repositories()
# Use the 1.6 compiler since rules_kotlin 1.5 defaults to the 1.5 compiler.
kotlin_repositories(
compiler_release = kotlinc_version(
release = "1.6.10",
sha256 = "432267996d0d6b4b17ca8de0f878e44d4a099b7e9f1587a98edc4d27e76c215a",
),
)

kt_register_toolchains()
register_toolchains("//tools/kotlin:kotlin_16_jdk9_toolchain")

# The proto_compiler and proto_java_toolchain bindings load the protos rules needed for the model
# module while helping us avoid the unnecessary compilation of protoc. Referecences:
Expand Down Expand Up @@ -128,18 +130,18 @@ git_repository(

git_repository(
name = "android-spotlight",
commit = "ebde38335bfb56349eae57e705b611ead9addb15",
commit = "cc23499d37dc8533a2876e45b5063e981a4583f4",
remote = "https://github.com/oppia/android-spotlight",
shallow_since = "1668824029 -0800",
shallow_since = "1680147372 -0700",
)

# A custom fork of KotliTeX that removes resources artifacts that break the build, and updates the
# min target SDK version to be compatible with Oppia.
git_repository(
name = "kotlitex",
commit = "43139c140833c7120f351d63d74b42c253d2b213",
commit = "ccdf4170817fa3b48b8e1e452772dd58ecb71cf2",
remote = "https://github.com/oppia/kotlitex",
shallow_since = "1675741075 -0800",
shallow_since = "1679426649 -0700",
)

bind(
Expand Down Expand Up @@ -186,6 +188,7 @@ maven_install(
maven_install_json = "//third_party:maven_install.json",
override_targets = {
"com.google.guava:guava": "@//third_party:com_google_guava_guava",
"org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm": "@//third_party:kotlinx-coroutines-core-jvm",
},
repositories = DAGGER_REPOSITORIES + MAVEN_REPOSITORIES,
strict_visibility = True,
Expand All @@ -206,3 +209,15 @@ http_jar(
for url_base in DAGGER_REPOSITORIES + MAVEN_REPOSITORIES
],
)

http_jar(
name = "kotlinx-coroutines-core-jvm",
sha256 = HTTP_DEPENDENCY_VERSIONS["kotlinx-coroutines-core-jvm"]["sha"],
urls = [
"{0}/org/jetbrains/kotlinx/kotlinx-coroutines-core-jvm/{1}/kotlinx-coroutines-core-jvm-{1}.jar".format(
url_base,
HTTP_DEPENDENCY_VERSIONS["kotlinx-coroutines-core-jvm"]["version"],
)
for url_base in DAGGER_REPOSITORIES + MAVEN_REPOSITORIES
],
)
3 changes: 1 addition & 2 deletions app/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ order to build with Bazel.
- All binding adapters must be written in Java.
"""

load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kt_android_library")
load("@io_bazel_rules_kotlin//kotlin:android.bzl", "kt_android_library")
load("@tools_android//tools/crashlytics:defs.bzl", "crashlytics_android_library")
load("@tools_android//tools/googleservices:defs.bzl", "google_services_xml")
load("//app:app_test.bzl", "app_test")
Expand Down Expand Up @@ -694,7 +694,6 @@ kt_android_library(
"//app/src/main/java/org/oppia/android/app/utility/math:math_expression_accessibility_util",
"//app/src/main/java/org/oppia/android/app/viewmodel:observable_array_list",
"//app/src/main/java/org/oppia/android/app/viewmodel:observable_view_model",
"//app/src/main/java/org/oppia/android/app/viewmodel:view_model_provider",
"//domain",
"//domain/src/main/java/org/oppia/android/domain/audio:audio_player_controller",
"//domain/src/main/java/org/oppia/android/domain/clipboard:clipboard_controller",
Expand Down
19 changes: 9 additions & 10 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,6 @@ if (project.gradle.startParameter?.taskRequests?.args[0]?.remove("--list-shards"
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation(
'android.arch.lifecycle:extensions:1.1.1',
'androidx.appcompat:appcompat:1.0.2',
'androidx.constraintlayout:constraintlayout:1.1.3',
'androidx.core:core-ktx:1.0.2',
Expand All @@ -166,7 +165,7 @@ dependencies {
'com.github.bumptech.glide:glide:4.11.0',
'com.google.android.flexbox:flexbox:3.0.0',
'com.google.android.material:material:1.3.0',
'com.google.dagger:dagger:2.24',
'com.google.dagger:dagger:2.41',
'com.google.firebase:firebase-analytics:17.5.0',
'com.google.firebase:firebase-analytics-ktx:17.5.0',
'com.google.firebase:firebase-appcheck:16.0.0',
Expand All @@ -180,10 +179,10 @@ dependencies {
'com.google.protobuf:protobuf-javalite:3.17.3',
'nl.dionsegijn:konfetti:1.2.5',
"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version",
'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.4.1',
'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1',
'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4',
'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4',
'org.mockito:mockito-core:2.7.22',
'com.github.oppia:android-spotlight:ebde38335bfb56349eae57e705b611ead9addb15'
'com.github.oppia:android-spotlight:cc23499d37dc8533a2876e45b5063e981a4583f4'
)
compileOnly(
'jakarta.xml.bind:jakarta.xml.bind-api:2.3.2',
Expand All @@ -203,7 +202,7 @@ dependencies {
'com.google.truth.extensions:truth-liteproto-extension:1.1.3',
'org.robolectric:annotations:4.5',
'org.robolectric:robolectric:4.5',
'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.2.2',
'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.4',
"org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version",
'org.mockito:mockito-core:2.7.22',
project(":testing"),
Expand All @@ -219,7 +218,7 @@ dependencies {
'com.google.truth:truth:1.1.3',
'androidx.work:work-testing:2.4.0',
'com.google.truth.extensions:truth-liteproto-extension:1.1.3',
'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.2.2',
'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.4',
'org.mockito:mockito-android:2.7.22',
'org.robolectric:annotations:4.5',
)
Expand All @@ -243,13 +242,13 @@ dependencies {
'androidx.test:orchestrator:1.2.0',
)
kapt(
'com.google.dagger:dagger-compiler:2.24'
'com.google.dagger:dagger-compiler:2.41'
)
kaptTest(
'com.google.dagger:dagger-compiler:2.24'
'com.google.dagger:dagger-compiler:2.41'
)
kaptAndroidTest(
'com.google.dagger:dagger-compiler:2.24'
'com.google.dagger:dagger-compiler:2.41'
)
// TODO(#59): Remove this once Bazel is introduced
api project(':data')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Constructs for setting up activities for injection in the Dagger graph.
"""

load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kt_android_library")
load("@io_bazel_rules_kotlin//kotlin:android.bzl", "kt_android_library")

# TODO(#59): Define these exported files as separate libraries from top-level targets.
exports_files([
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Constructs for setting up activity routing support in the Dagger graph.
"""

load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kt_android_library")
load("@io_bazel_rules_kotlin//kotlin:android.bzl", "kt_android_library")

# TODO(#59): Define these exported files as separate libraries from top-level targets.
exports_files([
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,7 @@ class AdministratorControlsActivity :
if (fragment is ProfileEditFragment) {
administratorControlsActivityPresenter.handleOnBackPressed()
} else {
@Suppress("DEPRECATION") // TODO(#5404): Migrate to a back pressed dispatcher.
super.onBackPressed()
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package org.oppia.android.app.administratorcontrols
import android.os.Bundle
import android.view.View
import androidx.appcompat.app.AppCompatActivity
import androidx.appcompat.widget.Toolbar
import androidx.databinding.DataBindingUtil
import org.oppia.android.R
import org.oppia.android.app.activity.ActivityScope
Expand Down Expand Up @@ -62,14 +61,11 @@ class AdministratorControlsActivityPresenter @Inject constructor(
if (isMultipane) {
val adminControlsActivity = activity as AdministratorControlsActivity
when (lastLoadedFragment) {
PROFILE_LIST_FRAGMENT -> (activity as AdministratorControlsActivity).loadProfileList()
APP_VERSION_FRAGMENT -> (activity as AdministratorControlsActivity).loadAppVersion()
PROFILE_LIST_FRAGMENT -> activity.loadProfileList()
APP_VERSION_FRAGMENT -> activity.loadAppVersion()
PROFILE_EDIT_FRAGMENT -> selectedProfileId.let { profileId ->
if (extraControlsTitle != null) {
(activity as AdministratorControlsActivity).loadProfileEdit(
profileId = profileId,
profileName = extraControlsTitle
)
activity.loadProfileEdit(profileId = profileId, profileName = extraControlsTitle)
if (isProfileDeletionDialogVisible && profileId != 0) {
val fragment = activity.supportFragmentManager.findFragmentById(
R.id.administrator_controls_fragment_multipane_placeholder
Expand All @@ -88,7 +84,7 @@ class AdministratorControlsActivityPresenter @Inject constructor(

/** Sets up the navigation drawer. */
private fun setUpNavigationDrawer() {
val toolbar = binding.administratorControlsActivityToolbar as Toolbar
val toolbar = binding.administratorControlsActivityToolbar
activity.setSupportActionBar(toolbar)
activity.supportActionBar!!.setDisplayShowHomeEnabled(true)
navigationDrawerFragment = activity
Expand Down Expand Up @@ -206,9 +202,9 @@ class AdministratorControlsActivityPresenter @Inject constructor(
outState.putString(SELECTED_CONTROLS_TITLE_SAVED_KEY, titleTextView.text.toString())
}
outState.putString(LAST_LOADED_FRAGMENT_EXTRA_KEY, lastLoadedFragment)
isProfileDeletionDialogVisible?.let {
isProfileDeletionDialogVisible.let {
outState.putBoolean(IS_PROFILE_DELETION_DIALOG_VISIBLE_KEY, it)
}
selectedProfileId?.let { outState.putInt(SELECTED_PROFILE_ID_SAVED_KEY, it) }
selectedProfileId.let { outState.putInt(SELECTED_PROFILE_ID_SAVED_KEY, it) }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ class AppVersionActivity : InjectableAutoLocalizedAppCompatActivity() {

override fun onOptionsItemSelected(item: MenuItem): Boolean {
if (item.itemId == android.R.id.home) {
@Suppress("DEPRECATION") // TODO(#5404): Migrate to a back pressed dispatcher.
onBackPressed()
}
return super.onOptionsItemSelected(item)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,14 @@ import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import org.oppia.android.app.fragment.FragmentScope
import org.oppia.android.app.viewmodel.ViewModelProvider
import org.oppia.android.databinding.AppVersionFragmentBinding
import javax.inject.Inject

/** The presenter for [AppVersionFragment]. */
@FragmentScope
class AppVersionFragmentPresenter @Inject constructor(
private val fragment: Fragment,
private val viewModelProvider: ViewModelProvider<AppVersionViewModel>
private val appVersionViewModel: AppVersionViewModel
) {
private lateinit var binding: AppVersionFragmentBinding

Expand All @@ -26,12 +25,8 @@ class AppVersionFragmentPresenter @Inject constructor(
)
binding.let {
it.lifecycleOwner = fragment
it.viewModel = getAppVersionViewModel()
it.viewModel = appVersionViewModel
}
return binding.root
}

private fun getAppVersionViewModel(): AppVersionViewModel {
return viewModelProvider.getForFragment(fragment, AppVersionViewModel::class.java)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ class ProfileAndDeviceIdActivity : InjectableAutoLocalizedAppCompatActivity() {

override fun onOptionsItemSelected(item: MenuItem): Boolean {
if (item.itemId == android.R.id.home) {
@Suppress("DEPRECATION") // TODO(#5404): Migrate to a back pressed dispatcher.
onBackPressed()
}
return super.onOptionsItemSelected(item)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ Dagger graph.
Specific application implementations can be found in subpackages.
"""

load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kt_android_library")
load("@io_bazel_rules_kotlin//kotlin:android.bzl", "kt_android_library")

kt_android_library(
name = "abstract_application",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
This package contains the root application definitions for alpha builds of the app.
"""

load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kt_android_library")
load("@io_bazel_rules_kotlin//kotlin:android.bzl", "kt_android_library")

kt_android_library(
name = "alpha_application",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ This package contains the root application definitions for a Kenya user study sp
of the app.
"""

load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kt_android_library")
load("@io_bazel_rules_kotlin//kotlin:android.bzl", "kt_android_library")

kt_android_library(
name = "alpha_kenya_application",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
This package contains the root application definitions for beta builds of the app.
"""

load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kt_android_library")
load("@io_bazel_rules_kotlin//kotlin:android.bzl", "kt_android_library")

kt_android_library(
name = "beta_application",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ there are specially defined top-level build flavors which will select their corr
application configuration.
"""

load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kt_android_library")
load("@io_bazel_rules_kotlin//kotlin:android.bzl", "kt_android_library")

kt_android_library(
name = "developer_application",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
This package contains the root application definitions for general availability builds of the app.
"""

load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kt_android_library")
load("@io_bazel_rules_kotlin//kotlin:android.bzl", "kt_android_library")

kt_android_library(
name = "general_availability_application",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ This package contains testing utilities that may be needed to set up the root ap
testing environments.
"""

load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kt_android_library")
load("@io_bazel_rules_kotlin//kotlin:android.bzl", "kt_android_library")

kt_android_library(
name = "testing_build_flavor_module",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.GridLayoutManager
import org.oppia.android.R
import org.oppia.android.app.recyclerview.BindableAdapter
import org.oppia.android.app.viewmodel.ViewModelProvider
import org.oppia.android.databinding.CompletedStoryItemBinding
import org.oppia.android.databinding.CompletedStoryListFragmentBinding
import javax.inject.Inject
Expand All @@ -17,7 +16,7 @@ import javax.inject.Inject
class CompletedStoryListFragmentPresenter @Inject constructor(
private val activity: AppCompatActivity,
private val fragment: Fragment,
private val viewModelProvider: ViewModelProvider<CompletedStoryListViewModel>,
private val viewModel: CompletedStoryListViewModel,
private val singleTypeBuilderFactory: BindableAdapter.SingleTypeBuilder.Factory
) {

Expand All @@ -29,7 +28,6 @@ class CompletedStoryListFragmentPresenter @Inject constructor(
container: ViewGroup?,
internalProfileId: Int
): View? {
val viewModel = getCompletedStoryListViewModel()
viewModel.setProfileId(internalProfileId)

binding = CompletedStoryListFragmentBinding
Expand Down Expand Up @@ -61,8 +59,4 @@ class CompletedStoryListFragmentPresenter @Inject constructor(
)
.build()
}

private fun getCompletedStoryListViewModel(): CompletedStoryListViewModel {
return viewModelProvider.getForFragment(fragment, CompletedStoryListViewModel::class.java)
}
}
Loading
Loading