Skip to content

Import loopback-datasource-juggler using lerna import #1725

@dhmlau

Description

@dhmlau

Part of #890 epic

Monorepo layout proposed by @bajtos, inspired by loopback-next:

path description example
/packages/{name} place for juggler and dependencies packages/filters
(formerly loopback-filters)
/connectors/{name} directory for all connectors connectors/base
(formerly loopback-connector)
/examples place for example applications /examples/todo

Acceptance Criteria

  • Create a new monorepo where we will develop juggler, connectors and dependencies [juggler-next for now, not so important]

  • Enable the following permissions for the new GitHub repository:

    • Admin role for @strongloop/loopback-admins
    • Write access for @strongloop/loopback-maintainers
    • Read-only access for @strongloop/loopback-next
  • Import the following packages/GitHub projects using lerna import to preserve git history:

    • loopback-datasource-juggler
    • loopback-filters
    • loopback-connector
  • Rename package names, use names in @loopback scope (e.g. @loopback/filters). Discuss the names with the team first.

  • Change the version number of all packages to 0.1.0.

  • Set up Continuos Integration and Code Coverage. Use the same approach as we do in loopback-next (e.g. Travis CI + AppVeyor now, but we may switch to Azure Pipelines):

    • Linux (Node.js 8.x + 10.x)
    • MacOS (Node.js 8.x + 10.x)
    • Windows (Node.js 8.x + 10.x)
    • code coverage
  • Start documentation for developers, explain monorepo layout and how to accomplish common tasks. See loopback-next's DEVELOPING.md for inspiration.

IMPORTANT Keep the amount of changes made in the actual code (juggler/filters/connector) as little as possible. Not allowed: changes in the way how packages work (functionality/behavior/API), how the code is structured or formatted.

Out of scope

Reference

See more detailed discussion in #890

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions