Skip to content

import components from RoboTutor_2020 without copying them #2

@JackMostow

Description

@JackMostow

RoboSuiteLauncher includes components for logging and configuration originally copied from RoboTutor_2019 or _2020, which is bad because updates to one don't affect the other, and what ought to be a 1-line change (make RoboSuiteLauncher launch RTFaceLogin instead of RoboTutor) changes 83 files and is therefore unnecessarily very hard to review.

Options;

  1. Status quo
    -: sucks

  2. Export those components from RoboTutor_2020 in a form that RoboSuiteLauncher can import from the RoboTutor_2020 repo without copying them, in the same way that it imports ScreenRecordHelper from the ScreenRecordHelper repo.
    +: minimal change to RoboTutor_2020
    +: reduce the change to RoboSuiteLauncher to ~1 line of ~1 file instead of 83 files.
    -: presence of app component will cause name conflict
    ??: is selective export of a repo's components (in particular minus the "app" component) possible in Android Java, or is export a package all-or-none deal?

  3. Clone RoboTutor_2020 to the same machine being used to develop RoboSuiteLauncher so it can call those components. <-- PROBABLY DO THIS, SO PLEASE COMMENT
    +: zero change to RoboTutor_2020
    +: reduces RoboSuiteLauncher to ~1 line instead of 83 files
    -: requires RoboSuiteLauncher developer to clone RoboTutor_2020 as well

  4. Move shared components to a separate repo that exports them wherever needed (and has no name conflicts e.g. "app")
    +: share components
    +: doesn't rely on cloning another repo
    -: requires moving lots of code to a separate repo
    -: may have to edit component when editing RoboTutor_2020, requiring edits to >1 repo

  5. Consider putting future new components in a separate repo
    +: reasons for 3
    +: new code doesn't require moving

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions