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

[DO NOT MERGE] convert to outline-apps repository, approach #2: multi-workspace w/ root utility CLI #1693

Closed
wants to merge 9 commits into from

Conversation

daniellacosse
Copy link
Contributor

@daniellacosse daniellacosse commented Aug 10, 2023

This approach, instead of trying to have one big root NPM workspace (traditional monorepo), opts to have several non-overlapping workspaces co-exist in the same repository.

It currently looks like this: https://github.com/Jigsaw-Code/outline-client/tree/daniellacosse/convert_to_outline_apps_2

Tradeoffs:

  • Pro: Much easier to combine our existing repositories this way.
  • Pro: Fewer overall changes (see approach #1).
  • Pro: Easier for different languages to live side-by-side in their own "workspace" concepts (though we don't need or really even want to encourage this, it's a nice to have)
  • Pro: Can mix and match different workspaces and versions of node (like use yarn alongside npm, though we probably want to avoid this and have)
  • Con: We'll need a root command line utility to more easily interact with everything (can't rely on third-party workspace tools alone).
  • Con: Multiple copies of different node dependencies will need to be downloaded, but hopefully the CLI can help there eventually
  • Con: shared_infrastructure is a bit more awkward to share between workspaces, but we can probably make it work with the file: syntax
  • Is there anything I'm not thinking of?

Current Issues:

  • do we need a root third_party folder?
  • do we need a root docs folder to preserve the invitation-instructions.md link?

@daniellacosse daniellacosse changed the title [DO NOT MERGE] convert to outline-apps, approach #2 [DO NOT MERGE] convert to outline-apps repository, approach #2 Aug 10, 2023
@daniellacosse daniellacosse changed the title [DO NOT MERGE] convert to outline-apps repository, approach #2 [DO NOT MERGE] convert to outline-apps repository, approach #2: multi-workspace w/ utility CLI Aug 10, 2023
@daniellacosse daniellacosse changed the title [DO NOT MERGE] convert to outline-apps repository, approach #2: multi-workspace w/ utility CLI [DO NOT MERGE] convert to outline-apps repository, approach #2: multi-workspace w/ root utility CLI Aug 10, 2023
@codecov
Copy link

codecov bot commented Aug 10, 2023

Codecov Report

Patch and project coverage have no change.

Comparison is base (3d68446) 36% compared to head (8b3108b) 36%.

Additional details and impacted files
@@          Coverage Diff           @@
##           master   #1693   +/-   ##
======================================
  Coverage      36%     36%           
======================================
  Files          45      45           
  Lines        2749    2749           
  Branches      312     312           
======================================
  Hits         1006    1006           
  Misses       1743    1743           
Flag Coverage Δ
apple 15% <ø> (ø)
ios 15% <ø> (ø)
macos 15% <ø> (ø)
unittests 36% <ø> (ø)
www 45% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Changed Coverage Δ
...AppleLib/Sources/OutlineTunnel/OutlineTunnel.swift 67% <ø> (ø)
...Lib/Sources/OutlineTunnel/OutlineTunnelStore.swift 29% <ø> (ø)
...ineAppleLib/Sources/OutlineTunnel/OutlineVpn.swift 0% <ø> (ø)
...OutlineAppleLib/Sources/OutlineTunnel/Subnet.swift 84% <ø> (ø)
...ources/PacketTunnelProvider/PacketTunnelProvider.m 0% <ø> (ø)
...ib/Tests/OutlineTunnelTest/OutlineTunnelTest.swift 100% <ø> (ø)
outline_client/src/infrastructure/custom_error.ts 100% <ø> (ø)
...utline_client/src/infrastructure/memory_storage.ts 62% <ø> (ø)
...tline_client/src/infrastructure/timeout_promise.ts 41% <ø> (ø)
outline_client/src/www/TODO.spec.ts 71% <ø> (ø)
... and 16 more

... and 38 files with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant