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

Create a BUILD file for accessibility/ #2643

Closed
fsharpasharp opened this issue Feb 5, 2021 · 3 comments · Fixed by #2775
Closed

Create a BUILD file for accessibility/ #2643

fsharpasharp opened this issue Feb 5, 2021 · 3 comments · Fixed by #2775
Assignees
Labels
Z-ibt Temporary label for Ben to keep track of issues he's triaged.

Comments

@fsharpasharp
Copy link
Contributor

fsharpasharp commented Feb 5, 2021

This task is part of the build system migration from Gradle to Bazel. A prerequesite before working on this issue is that you are able to build Oppia using Bazel. Check out Oppia Bazel guide for Bazel terminology and more of what it does.

Create a BUILD.bazel file in

src/main/java/org/oppia/android/util/accessibility/

This package does not depend on any other packages inside of Oppia itself. Create a library for each file in the package, if possible, and add the dependency artifacts that are required based on the imports in the file.

Create the libraries

I'm using the filename interchangebly with the library here.

AndroidAccessibilityManager.kt should be a private library since it is only used by AccessibilityModule.kt.

CustomAccessibilityManager.kt is referenced by AccessibilityModule.kt, FakeAccessibilityModule.kt and externally. It should be a public library and be a deps dependency of the two first libraries.

Confirm that the package builds

When you've added the libraries, confirm that you can build the package by using Bazel to build the libraries. If you're in the directory in your terminal, run

bazel build :all

to build all your libraries.

Replace srcs dependencies in the module BUILD files

Add the required deps dependencies to the module's BUILD.bazel file.

Since FakeAccessibilityModule.kt was also used in some tests, we will have to find the corresponding libraries there as well to replace the srcs dependency with the new deps dependency.

CustomAccessibilityManager.kt is used in the app module. Look for the libraries that have //utility in its deps dependencies and check if it needs the new library you created as a dep dependency.

Confirm that the app builds

Now you can confirm that the package works by building the app successfuly.

@FareesHussain
Copy link
Contributor

@fsharpasharp How do I add an artifact that is related to Android SDK
For Example AndroidAccessibilityMangaer.kt uses a import

import android.view.accessibility.AccessibilityManager

Which is related to Android SDK

@fsharpasharp fsharpasharp changed the title Create a BUILD file for //utility/accessibility/ Create a BUILD file for accessibility/ Feb 8, 2021
@fsharpasharp
Copy link
Contributor Author

@FareesHussain I think that import would not require an explicit dependency since it's part of the Android SDK, as you say.

@BenHenning
Copy link
Member

Taking this per #2775.

BenHenning added a commit that referenced this issue Mar 7, 2021
… accessibility package (#2775)

* Refactor util a11y package with prod/test modules.

* Hook up new accessibility module.

Includes introducing new top-level package groups to simpify visibility
management. This also establishes a pattern for excluding migrated
production files.

* Lint fixes.

* Address reviewer comments.

* Linter fix.

* Use direct file names.

Addresses review comment.
techjd pushed a commit to techjd/oppia-android that referenced this issue Mar 9, 2021
… util accessibility package (oppia#2775)

* Refactor util a11y package with prod/test modules.

* Hook up new accessibility module.

Includes introducing new top-level package groups to simpify visibility
management. This also establishes a pattern for excluding migrated
production files.

* Lint fixes.

* Address reviewer comments.

* Linter fix.

* Use direct file names.

Addresses review comment.
techjd added a commit to techjd/oppia-android that referenced this issue Mar 9, 2021
… migrate util accessibility package (oppia#2775)"

This reverts commit a89c609.
techjd added a commit to techjd/oppia-android that referenced this issue Mar 9, 2021
… migrate util accessibility package (oppia#2775)"

This reverts commit a89c609.
techjd pushed a commit to techjd/oppia-android that referenced this issue Mar 9, 2021
… util accessibility package (oppia#2775)

* Refactor util a11y package with prod/test modules.

* Hook up new accessibility module.

Includes introducing new top-level package groups to simpify visibility
management. This also establishes a pattern for excluding migrated
production files.

* Lint fixes.

* Address reviewer comments.

* Linter fix.

* Use direct file names.

Addresses review comment.
@BenHenning BenHenning added the Z-ibt Temporary label for Ben to keep track of issues he's triaged. label Sep 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Z-ibt Temporary label for Ben to keep track of issues he's triaged.
Projects
3 participants