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 #1833: Rename package to org.oppia.android (part 2/2) #1876

Merged
merged 22 commits into from
Sep 24, 2020

Conversation

BenHenning
Copy link
Member

@BenHenning BenHenning commented Sep 24, 2020

Fix #1833.

This PR renames the Android package to org.oppia.android. A few things to note:

  1. This keeps org.oppia.app (it's now org.oppia.android.app) since we have separate modules. In the future, we may restructure things after Migrate from Gradle to Bazel #59 is completed to have more top-level directories than the current module-based structure imposes.
  2. Because of (1), all R and databinding references are now relative to org.oppia.android instead of .app
  3. There are some real fixes to module references & other test updates to make Bazel work again (these tests are probably broken on develop, too)
  4. The Bazel files have been reformatted due to my Android Studio plugin automatically formatting them
  5. Multidex was switched to native despite this breaking pre-L devices (see Re-add support for legacy multidex / introduce app binary flavors #1875 for specifics)
  6. The Firebase project has been updated, but I can't tell if it's successfully connecting to Firebase (/cc @Sarthak2601 as FYI)

Note that this is a continuation of #1879. This PR will be merged immediately after #1879 goes in & CI checks are passing (which means the codebase will be intermittently broken for a short period of time--submissions will be disabled during that point).

actual package or code references are updated yet.
This includes introducing a new developer Firebase project. It also
fixes references to Android resource R file imports & databinding since
they both exist at the package level rather than the app module level.
This required some changes to test setup/arrangement in Bazel, and some
existing issues needed to be fixed (missing dependencies for work
manager, switching multidex, one renamed test, incorrect module
references in tests, and files now referencing resources needing to be
moved).

This includes some Bazel file reformatting that happened automatically
by my Bazel file plugin.
Note that this intentionally keeps the merge artifacts in since they
will be resolved en masse with find-and-replace commands that will
undergo manual verification.

Conflicts:
	app/src/main/java/org/oppia/android/app/administratorcontrols/AdministratorControlsViewModel.kt
	app/src/main/java/org/oppia/android/app/administratorcontrols/administratorcontrolsitemviewmodel/AdministratorControlsDownloadPermissionsViewModel.kt
	app/src/main/java/org/oppia/android/app/application/ApplicationInjector.kt
	app/src/main/java/org/oppia/android/app/completedstorylist/CompletedStoryListViewModel.kt
	app/src/main/java/org/oppia/android/app/drawer/NavigationDrawerFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/home/HomeFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/ongoingtopiclist/OngoingTopicListViewModel.kt
	app/src/main/java/org/oppia/android/app/options/OptionControlsViewModel.kt
	app/src/main/java/org/oppia/android/app/options/OptionsFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/player/audio/AudioFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivityPresenter.kt
	app/src/main/java/org/oppia/android/app/player/exploration/ExplorationManagerFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/player/exploration/HintsAndSolutionExplorationManagerFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/player/state/StateFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/profile/AddProfileActivityPresenter.kt
	app/src/main/java/org/oppia/android/app/profile/AdminPinActivityPresenter.kt
	app/src/main/java/org/oppia/android/app/profile/PinPasswordActivityPresenter.kt
	app/src/main/java/org/oppia/android/app/profile/PinPasswordViewModel.kt
	app/src/main/java/org/oppia/android/app/profile/ProfileChooserFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/profile/ProfileChooserViewModel.kt
	app/src/main/java/org/oppia/android/app/profile/ResetPinDialogFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/profileprogress/ProfilePictureActivityPresenter.kt
	app/src/main/java/org/oppia/android/app/profileprogress/ProfileProgressViewModel.kt
	app/src/main/java/org/oppia/android/app/settings/profile/ProfileEditActivityPresenter.kt
	app/src/main/java/org/oppia/android/app/settings/profile/ProfileEditViewModel.kt
	app/src/main/java/org/oppia/android/app/settings/profile/ProfileListViewModel.kt
	app/src/main/java/org/oppia/android/app/settings/profile/ProfileRenameActivityPresenter.kt
	app/src/main/java/org/oppia/android/app/settings/profile/ProfileResetPinActivityPresenter.kt
	app/src/main/java/org/oppia/android/app/splash/SplashActivityPresenter.kt
	app/src/main/java/org/oppia/android/app/story/StoryViewModel.kt
	app/src/main/java/org/oppia/android/app/topic/TopicViewModel.kt
	app/src/main/java/org/oppia/android/app/topic/info/TopicInfoFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/topic/practice/TopicPracticeViewModel.kt
	app/src/main/java/org/oppia/android/app/topic/questionplayer/HintsAndSolutionQuestionManagerFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/topic/revision/TopicRevisionViewModel.kt
	app/src/main/java/org/oppia/android/app/walkthrough/end/WalkthroughFinalFragmentPresenter.kt
	app/src/main/java/org/oppia/android/app/walkthrough/welcome/WalkthroughWelcomeFragmentPresenter.kt
	app/src/sharedTest/java/org/oppia/android/app/player/state/StateFragmentTest.kt
	app/src/sharedTest/java/org/oppia/android/app/profile/AddProfileActivityTest.kt
	app/src/sharedTest/java/org/oppia/android/app/profile/AdminAuthActivityTest.kt
	app/src/sharedTest/java/org/oppia/android/app/profile/AdminPinActivityTest.kt
	app/src/sharedTest/java/org/oppia/android/app/profile/PinPasswordActivityTest.kt
	app/src/sharedTest/java/org/oppia/android/app/profile/ProfileChooserFragmentTest.kt
	app/src/sharedTest/java/org/oppia/android/app/settings/profile/ProfileEditActivityTest.kt
	app/src/sharedTest/java/org/oppia/android/app/settings/profile/ProfileRenameActivityTest.kt
	app/src/sharedTest/java/org/oppia/android/app/settings/profile/ProfileResetPinActivityTest.kt
	app/src/test/java/org/oppia/android/app/home/HomeActivityLocalTest.kt
	app/src/test/java/org/oppia/android/app/player/exploration/ExplorationActivityLocalTest.kt
	app/src/test/java/org/oppia/android/app/player/state/StateFragmentLocalTest.kt
	app/src/test/java/org/oppia/android/app/testing/CompletedStoryListSpanTest.kt
	app/src/test/java/org/oppia/android/app/testing/OngoingTopicListSpanTest.kt
	app/src/test/java/org/oppia/android/app/testing/ProfileChooserSpanTest.kt
	app/src/test/java/org/oppia/android/app/testing/ProfileProgressSpanCount.kt
	app/src/test/java/org/oppia/android/app/testing/TopicRevisionSpanTest.kt
	app/src/test/java/org/oppia/android/app/testing/options/AppLanguageFragmentTest.kt
	app/src/test/java/org/oppia/android/app/testing/options/DefaultAudioFragmentTest.kt
	app/src/test/java/org/oppia/android/app/testing/options/OptionsFragmentTest.kt
	app/src/test/java/org/oppia/android/app/testing/options/ReadingTextSizeFragmentTest.kt
	app/src/test/java/org/oppia/android/app/testing/player/split/PlayerSplitScreenTesting.kt
	app/src/test/java/org/oppia/android/app/testing/player/state/StateFragmentAccessibilityTest.kt
	app/src/test/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerActivityLocalTest.kt
	data/src/test/java/org/oppia/android/data/persistence/PersistentCacheStoreTest.kt
	domain/src/main/java/org/oppia/android/domain/audio/CellularAudioDialogController.kt
	domain/src/main/java/org/oppia/android/domain/exploration/ExplorationDataController.kt
	domain/src/main/java/org/oppia/android/domain/exploration/ExplorationProgressController.kt
	domain/src/main/java/org/oppia/android/domain/onboarding/AppStartupStateController.kt
	domain/src/main/java/org/oppia/android/domain/profile/ProfileManagementController.kt
	domain/src/main/java/org/oppia/android/domain/question/QuestionAssessmentProgressController.kt
	domain/src/main/java/org/oppia/android/domain/question/QuestionTrainingController.kt
	domain/src/main/java/org/oppia/android/domain/topic/StoryProgressController.kt
	domain/src/main/java/org/oppia/android/domain/topic/TopicController.kt
	domain/src/main/java/org/oppia/android/domain/topic/TopicListController.kt
	domain/src/test/java/org/oppia/android/domain/audio/CellularAudioDialogControllerTest.kt
	domain/src/test/java/org/oppia/android/domain/exploration/ExplorationDataControllerTest.kt
	domain/src/test/java/org/oppia/android/domain/exploration/ExplorationProgressControllerTest.kt
	domain/src/test/java/org/oppia/android/domain/onboarding/AppStartupStateControllerTest.kt
	domain/src/test/java/org/oppia/android/domain/oppialogger/analytics/AnalyticsControllerTest.kt
	domain/src/test/java/org/oppia/android/domain/oppialogger/exceptions/ExceptionsControllerTest.kt
	domain/src/test/java/org/oppia/android/domain/oppialogger/exceptions/UncaughtExceptionLoggerStartupListenerTest.kt
	domain/src/test/java/org/oppia/android/domain/profile/ProfileManagementControllerTest.kt
	domain/src/test/java/org/oppia/android/domain/question/QuestionAssessmentProgressControllerTest.kt
	domain/src/test/java/org/oppia/android/domain/question/QuestionTrainingControllerTest.kt
	domain/src/test/java/org/oppia/android/domain/topic/StoryProgressControllerTest.kt
	domain/src/test/java/org/oppia/android/domain/topic/StoryProgressTestHelperTest.kt
	domain/src/test/java/org/oppia/android/domain/topic/TopicControllerTest.kt
	domain/src/test/java/org/oppia/android/domain/topic/TopicListControllerTest.kt
	testing/src/main/java/org/oppia/android/testing/profile/ProfileTestHelper.kt
	testing/src/test/java/org/oppia/android/testing/profile/ProfileTestHelperTest.kt
	utility/src/test/java/org/oppia/android/util/data/DataProvidersTest.kt
This won't compile due to duplicate imports which requires a ktlint
clean-up. That will happen in a subsequent commit since it will likely
pick up unrelated changes.
Fix new references to R and databinding. Move EditTextInputAction to
correct package.
@BenHenning
Copy link
Member Author

@rt4914 @anandwana001 @vinitamurthi I'm concerned about this PR. GitHub is not recognizing these are moved files, which means it's going to destroy history (not to mention, this PR is impossibly long to review). One alternative that we have is that I could split this into two PRs:

  1. One that just moves all the files without changing any (which should definitely appear as moves in GitHub & retain history)
  2. One that updates all the package references & Kotlin imports

While that will reduce the number of lines to review by an order of magnitude (and make it trivial since the lines changed are mostly just imports), it means that the repository is fully broken between (1) & (2). We also have to create (2) after (1) is merged otherwise we run into the same problem that we have now.

Any thoughts or suggestions?

@rt4914
Copy link
Contributor

rt4914 commented Sep 24, 2020

@rt4914 @anandwana001 @vinitamurthi I'm concerned about this PR. GitHub is not recognizing these are moved files, which means it's going to destroy history (not to mention, this PR is impossibly long to review). One alternative that we have is that I could split this into two PRs:

  1. One that just moves all the files without changing any (which should definitely appear as moves in GitHub & retain history)
  2. One that updates all the package references & Kotlin imports

While that will reduce the number of lines to review by an order of magnitude (and make it trivial since the lines changed are mostly just imports), it means that the repository is fully broken between (1) & (2). We also have to create (2) after (1) is merged otherwise we run into the same problem that we have now.

Any thoughts or suggestions?

@BenHenning We can decide a particular time and during that time we can finish part 1 and 2 so that even if it breaks it will break for a very less time.
For example: You can create part (1) in your morning time, I can review it at that moment directly and then you can submit second PR and i can review that too. If second PR can be done within your office hours, I can review it in that time.

I am thinking of you time because most of our contributors are from India.

This moves all Kotlin source files to be under an org.oppia.android
structure, but does not actually change references. This is done in two
steps to try and preserve history, and to simplify the code review.

THIS WILL BREAK THE CODEBASE WHEN CHECKED IN.
@BenHenning
Copy link
Member Author

Sounds good--thanks @rt4914. As discussed during the team meeting, we'll do this today & split it into two PRs.

@BenHenning BenHenning changed the title Fix #1833: Rename package to org.oppia.android Fix #1833: Rename package to org.oppia.android (part 2/2) [Blocked: #1879] Sep 24, 2020
…to introduce-new-package-structure

Conflicts:
	app/src/main/java/org/oppia/android/app/application/ApplicationComponent.kt
	domain/src/main/java/org/oppia/android/domain/classify/rules/RuleQualifiers.kt
@BenHenning BenHenning changed the base branch from develop to move-files-to-prepare-for-new-app-package-structure September 24, 2020 17:15
@BenHenning
Copy link
Member Author

Aha, it looks like changing the base does work. I'll send both PRs into review now so that we can make sure all approvals are in order before attempting submission.

@BenHenning
Copy link
Member Author

@rt4914 @anandwana001 PTAL.

@BenHenning
Copy link
Member Author

@rt4914 regarding the empty folders, that's just a local view that you have. Directories aren't tracked by git, just files. I suspect we may all have some empty folders after updating to the changes in this PR, and I'm not sure that I can do anything about that.

Otherwise, I think both of your comments have been addressed. PTAL and verify.

Copy link
Contributor

@rt4914 rt4914 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks.

@rt4914 rt4914 assigned BenHenning and unassigned rt4914 Sep 24, 2020
Capitalize TODO comment for consistency with other TODO comments.
@BenHenning
Copy link
Member Author

Thanks @rt4914. @anandwana001 I'm going to go ahead and merge this to try and get it in before SLoP folks start ramping up. Please let me know afterwards if you have any concerns with the PR and I'll be happy to address them in a subsequent PR.

Base automatically changed from move-files-to-prepare-for-new-app-package-structure to develop September 24, 2020 20:47
@rt4914
Copy link
Contributor

rt4914 commented Sep 24, 2020

Thanks @rt4914. @anandwana001 I'm going to go ahead and merge this to try and get it in before SLoP folks start ramping up. Please let me know afterwards if you have any concerns with the PR and I'll be happy to address them in a subsequent PR.

Sounds good. Thanks for wrapping up this quickly.

@BenHenning
Copy link
Member Author

BenHenning commented Sep 24, 2020

#1879 has been merged & the history of this branch has been updated. Diff looks clean against develop, so just waiting for CI checks to pass before merging. Hopefully the history is retained post-merge.

@BenHenning
Copy link
Member Author

BenHenning commented Sep 24, 2020

Looks like history wasn't retained: https://github.com/oppia/oppia-android/commits/develop/app/src/main/java/org/oppia/android/app/activity/ActivityComponent.kt :(. This is a known issue for GitHub: isaacs/github#900, so it will possibly be fixed in the future. I think the order we did this will be compatible with git --follow. At least, I can confirm it works locally:

git log --oneline --stat -M --follow -- app/src/main/java/org/oppia/android/app/activity/ActivityComponent.kt

I might try the suggested Chrome extension after this PR is submitted to see if it's effective.

@BenHenning BenHenning changed the title Fix #1833: Rename package to org.oppia.android (part 2/2) [Blocked: #1879] Fix #1833: Rename package to org.oppia.android (part 2/2) Sep 24, 2020
@BenHenning
Copy link
Member Author

CI checks are passing. Going ahead and merging to fix develop.

@BenHenning BenHenning merged commit 74db288 into develop Sep 24, 2020
@BenHenning BenHenning deleted the introduce-new-package-structure branch September 24, 2020 21:07
@BenHenning
Copy link
Member Author

BenHenning commented Sep 24, 2020

Disabled the 'require branch to be up-to-date' check. Just sent out the 'all-clear' email.

@BenHenning
Copy link
Member Author

"Follow for Github" extension does not seem to work (see reviews--this might have to do with some GitHub redesigning).

The Refined GitHub extension seems to work, though:

Before
image

After
image

I probably won't be using the extension yet, but it's a nice option to have.

@BenHenning BenHenning added the PR: Cherrypick requested Indicates that a PR is being requested for being cherrypicked into the ongoing release branch. label Sep 25, 2020
@BenHenning
Copy link
Member Author

Conflicts when trying to CP into the release branch:

	both modified:   BUILD.bazel
	both modified:   WORKSPACE
	both modified:   app/src/main/AndroidManifest.xml
	both modified:   app/src/main/java/org/oppia/android/app/activity/ActivityComponent.kt
	both modified:   app/src/main/java/org/oppia/android/app/administratorcontrols/AdministratorControlsViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/administratorcontrols/administratorcontrolsitemviewmodel/AdministratorControlsDownloadPermissionsViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/application/ApplicationComponent.kt
	both modified:   app/src/main/java/org/oppia/android/app/application/ApplicationInjector.kt
	both modified:   app/src/main/java/org/oppia/android/app/application/ApplicationInjectorProvider.kt
	both modified:   app/src/main/java/org/oppia/android/app/completedstorylist/CompletedStoryListViewModel.kt
	deleted by us:   app/src/main/java/org/oppia/android/app/drawer/ExitProfileDialogFragment.kt
	deleted by us:   app/src/main/java/org/oppia/android/app/drawer/ExitProfileDialogInterface.kt
	both modified:   app/src/main/java/org/oppia/android/app/drawer/NavigationDrawerFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/help/faq/faqsingle/FAQSingleActivityPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/home/HomeActivity.kt
	both modified:   app/src/main/java/org/oppia/android/app/home/HomeFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/home/recentlyplayed/RecentlyPlayedFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/ongoingtopiclist/OngoingTopicListViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/options/OptionControlsViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/options/OptionsFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/player/audio/AudioFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/player/exploration/ExplorationActivityPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/player/exploration/ExplorationManagerFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/player/exploration/HintsAndSolutionExplorationManagerFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/player/state/StateFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/profile/AddProfileActivityPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/profile/AdminPinActivityPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/profile/PinPasswordActivityPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/profile/PinPasswordViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/profile/ProfileChooserFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/profile/ProfileChooserViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/profile/ResetPinDialogFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/profileprogress/ProfilePictureActivityPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/profileprogress/ProfileProgressViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/settings/profile/ProfileEditActivityPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/settings/profile/ProfileEditViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/settings/profile/ProfileListViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/settings/profile/ProfileRenameActivityPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/settings/profile/ProfileResetPinActivityPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/splash/SplashActivityPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/story/StoryViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/topic/TopicViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/topic/info/TopicInfoFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/topic/practice/TopicPracticeViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/topic/questionplayer/HintsAndSolutionQuestionManagerFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/topic/revision/TopicRevisionViewModel.kt
	both modified:   app/src/main/java/org/oppia/android/app/walkthrough/end/WalkthroughFinalFragmentPresenter.kt
	both modified:   app/src/main/java/org/oppia/android/app/walkthrough/welcome/WalkthroughWelcomeFragmentPresenter.kt
	deleted by us:   app/src/main/res/layout-sw600dp/story_chapter_view.xml
	deleted by us:   app/src/main/res/layout-sw600dp/story_fragment.xml
	deleted by us:   app/src/main/res/layout-sw600dp/story_header_view.xml
	both modified:   app/src/sharedTest/java/org/oppia/android/app/administratorcontrols/AppVersionActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/completedstorylist/CompletedStoryListActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/faq/FAQListFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/faq/FAQSingleActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/help/HelpFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/home/HomeActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/home/RecentlyPlayedFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/mydownloads/MyDownloadsFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/onboarding/OnboardingFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/ongoingtopiclist/OngoingTopicListActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/options/OptionsFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/parser/HtmlParserTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/player/audio/AudioFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/player/exploration/ExplorationActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/player/state/StateFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/profile/AddProfileActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/profile/AdminAuthActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/profile/AdminPinActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/profile/PinPasswordActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/profile/ProfileChooserFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/profileprogress/ProfilePictureActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/profileprogress/ProfileProgressFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/recyclerview/BindableAdapterTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/settings/profile/ProfileEditActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/settings/profile/ProfileListFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/settings/profile/ProfileRenameActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/settings/profile/ProfileResetPinActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/splash/SplashActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/story/StoryActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/story/StoryFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/testing/DragDropTestActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/testing/ImageRegionSelectionInteractionViewTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/testing/InputInteractionViewTestActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/testing/NavigationDrawerTestActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/testing/TestFontScaleConfigurationUtilActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/testing/TopicTestActivityForStoryTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/topic/TopicFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/topic/conceptcard/ConceptCardFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/topic/info/TopicInfoFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/topic/practice/TopicPracticeFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/topic/revision/TopicRevisionFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/topic/revisioncard/RevisionCardFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/utility/RatioExtensionsTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/walkthrough/WalkthroughActivityTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/walkthrough/WalkthroughFinalFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/walkthrough/WalkthroughTopicListFragmentTest.kt
	both modified:   app/src/sharedTest/java/org/oppia/android/app/walkthrough/WalkthroughWelcomeFragmentTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/home/HomeActivityLocalTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/parser/StringToRatioParserTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/player/exploration/ExplorationActivityLocalTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/player/state/StateFragmentLocalTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/profile/ProfileChooserFragmentLocalTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/story/StoryActivityLocalTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/CompletedStoryListSpanTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/OngoingTopicListSpanTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/ProfileChooserSpanTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/ProfileProgressSpanCount.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/TopicRevisionSpanTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/administratorcontrols/AdministratorControlsFragmentTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/options/AppLanguageFragmentTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/options/DefaultAudioFragmentTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/options/OptionsFragmentTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/options/ReadingTextSizeFragmentTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/player/split/PlayerSplitScreenTesting.kt
	both modified:   app/src/test/java/org/oppia/android/app/testing/player/state/StateFragmentAccessibilityTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/topic/info/TopicInfoFragmentLocalTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/topic/lessons/TopicLessonsFragmentLocalTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/topic/questionplayer/QuestionPlayerActivityLocalTest.kt
	both modified:   app/src/test/java/org/oppia/android/app/topic/revisioncard/RevisionCardActivityLocalTest.kt
	both modified:   data/src/test/java/org/oppia/android/data/persistence/PersistentCacheStoreTest.kt
	both modified:   domain/BUILD.bazel
	both modified:   domain/src/main/java/org/oppia/android/domain/audio/CellularAudioDialogController.kt
	both modified:   domain/src/main/java/org/oppia/android/domain/exploration/ExplorationDataController.kt
	both modified:   domain/src/main/java/org/oppia/android/domain/exploration/ExplorationProgressController.kt
	both modified:   domain/src/main/java/org/oppia/android/domain/onboarding/AppStartupStateController.kt
	both modified:   domain/src/main/java/org/oppia/android/domain/oppialogger/analytics/AnalyticsController.kt
	both modified:   domain/src/main/java/org/oppia/android/domain/oppialogger/exceptions/ExceptionsController.kt
	deleted by us:   domain/src/main/java/org/oppia/android/domain/oppialogger/loguploader/LogUploadWorkManagerInitializer.kt
	deleted by us:   domain/src/main/java/org/oppia/android/domain/oppialogger/loguploader/LogUploadWorker.kt
	deleted by us:   domain/src/main/java/org/oppia/android/domain/oppialogger/loguploader/LogUploadWorkerFactory.kt
	deleted by us:   domain/src/main/java/org/oppia/android/domain/oppialogger/loguploader/LogUploadWorkerModule.kt
	deleted by us:   domain/src/main/java/org/oppia/android/domain/oppialogger/loguploader/WorkManagerConfigurationModule.kt
	both modified:   domain/src/main/java/org/oppia/android/domain/profile/ProfileManagementController.kt
	both modified:   domain/src/main/java/org/oppia/android/domain/question/QuestionAssessmentProgressController.kt
	both modified:   domain/src/main/java/org/oppia/android/domain/question/QuestionTrainingController.kt
	both modified:   domain/src/main/java/org/oppia/android/domain/topic/StoryProgressController.kt
	both modified:   domain/src/main/java/org/oppia/android/domain/topic/TopicController.kt
	both modified:   domain/src/main/java/org/oppia/android/domain/topic/TopicListController.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/audio/CellularAudioDialogControllerTest.kt
	deleted by us:   domain/src/test/java/org/oppia/android/domain/classify/rules/NumericInputIsInclusivelyBetweenRuleClassifierProviderTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/exploration/ExplorationDataControllerTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/exploration/ExplorationProgressControllerTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/onboarding/AppStartupStateControllerTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/oppialogger/analytics/AnalyticsControllerTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/oppialogger/exceptions/ExceptionsControllerTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/oppialogger/exceptions/UncaughtExceptionLoggerStartupListenerTest.kt
	deleted by us:   domain/src/test/java/org/oppia/android/domain/oppialogger/loguploader/LogUploadWorkManagerInitializerTest.kt
	deleted by us:   domain/src/test/java/org/oppia/android/domain/oppialogger/loguploader/LogUploadWorkerTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/profile/ProfileManagementControllerTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/question/QuestionAssessmentProgressControllerTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/question/QuestionTrainingControllerTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/topic/StoryProgressControllerTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/topic/StoryProgressTestHelperTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/topic/TopicControllerTest.kt
	both modified:   domain/src/test/java/org/oppia/android/domain/topic/TopicListControllerTest.kt
	deleted by us:   testing/src/main/java/org/oppia/android/testing/EditTextInputAction.kt
	both modified:   testing/src/main/java/org/oppia/android/testing/profile/ProfileTestHelper.kt
	both modified:   testing/src/test/java/org/oppia/android/testing/profile/ProfileTestHelperTest.kt
	both modified:   utility/BUILD.bazel
	deleted by us:   utility/src/main/java/org/oppia/android/util/data/DataProvidersInjector.kt
	deleted by us:   utility/src/main/java/org/oppia/android/util/data/DataProvidersInjectorProvider.kt
	deleted by us:   utility/src/main/java/org/oppia/android/util/logging/LogUploader.kt
	deleted by us:   utility/src/main/java/org/oppia/android/util/logging/firebase/FirebaseLogUploader.kt
	deleted by us:   utility/src/main/java/org/oppia/android/util/logging/firebase/FirebaseLogUploaderModule.kt
	both modified:   utility/src/test/java/org/oppia/android/util/data/DataProvidersTest.kt

BenHenning added a commit that referenced this pull request Sep 25, 2020
@BenHenning
Copy link
Member Author

Due to the significant numbers of conflicts, this needs to be manually CP'd so that it can undergo code review.

BenHenning added a commit that referenced this pull request Sep 25, 2020
* Manual cherry-pick of 74db288
(#1876).

* Fix branch-specific issues.

* Update references to app module tests in old main.yml file on release
branch.
@BenHenning BenHenning added the PR: Cherrypick completed Indicates a cherrypick request was approved & completed for a PR. label Sep 25, 2020
prayutsu pushed a commit to prayutsu/oppia-android that referenced this pull request Sep 25, 2020
…#1876)

* Move all source files to new org/oppia/android directory structure. No
actual package or code references are updated yet.

* Update Kotlin & XML references to match new package structure.

* Migrate codepaths for Bazel builds to new package structure.

* Fix package references in Gradle files for new package structure.

* Update package & pathing references to new structure for proto files.

* Rename Android package to org.oppia.android.

This includes introducing a new developer Firebase project. It also
fixes references to Android resource R file imports & databinding since
they both exist at the package level rather than the app module level.

* Fix Bazel builds for new package structure.

This required some changes to test setup/arrangement in Bazel, and some
existing issues needed to be fixed (missing dependencies for work
manager, switching multidex, one renamed test, incorrect module
references in tests, and files now referencing resources needing to be
moved).

This includes some Bazel file reformatting that happened automatically
by my Bazel file plugin.

* Resolve merge conflicts.

This won't compile due to duplicate imports which requires a ktlint
clean-up. That will happen in a subsequent commit since it will likely
pick up unrelated changes.

* Remove some merge conflict markers that were missed.

* Remove redundant commits & other ktlint updates.

* Fix incorrect references to new testing package location.

* Post-testing module cleanups via ktlint.

* More post-merge fixes.

Fix new references to R and databinding. Move EditTextInputAction to
correct package.

* Move some missed files that only caused breakages in Bazel.

* Move all files to their correct new location.

This moves all Kotlin source files to be under an org.oppia.android
structure, but does not actually change references. This is done in two
steps to try and preserve history, and to simplify the code review.

THIS WILL BREAK THE CODEBASE WHEN CHECKED IN.

* Fix missed files from the migration after merging.

* Disable Firebase data collection.

* Update BUILD.bazel

Capitalize TODO comment for consistency with other TODO comments.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PR: Cherrypick completed Indicates a cherrypick request was approved & completed for a PR. PR: Cherrypick requested Indicates that a PR is being requested for being cherrypicked into the ongoing release branch.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Rename package
3 participants