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

Split out swarm-doc and swarm-tui sublibraries #1834

Merged
merged 10 commits into from
May 11, 2024
Merged

Conversation

byorgey
Copy link
Member

@byorgey byorgey commented May 10, 2024

Split the final remaining default library into swarm-doc and swarm-tui. Closes #1043 .

byorgey added 2 commits May 10, 2024 14:55
- `Swarm.Doc.Pedagogy` depended on `Swarm.TUI.Controller`, but that
  was easy to resolve: it only needed `getTutorials`, which was easy to
  move to `Swarm.Game.ScenarioInfo` (which is a better place for it
  anyway).
- A thornier problem is that the swarm-docs executable has an option
  for generating all the web API endpoints, so it depends on
  `Swarm.Web`. But `Swarm.Web` depends on `Swarm.Doc.Command` so that
  the list of commands can be accessed via the web interface.  For now
  I commented out the `swarm-docs` command to print the web API, so
  `swarm-web` only depends on `swarm-doc` and not the other way around.
@byorgey
Copy link
Member Author

byorgey commented May 10, 2024

@kostmo I'd be curious to hear what you think about the problem explained in the comment in e18a329 (i.e. how to deal with a circular dependency between swarm-web and swarm-doc).

@byorgey byorgey requested a review from kostmo May 10, 2024 22:45
@kostmo
Copy link
Member

kostmo commented May 10, 2024

@kostmo I'd be curious to hear what you think about the problem explained in the comment in e18a329 (i.e. how to deal with a circular dependency between swarm-web and swarm-doc).

I'm fine with commenting that out for now. We can consider the web API docs a separate category of documentation from the other swarm docs, so it makes sense to exclude it from the swarm-docs library.

@byorgey byorgey marked this pull request as ready for review May 11, 2024 01:38
@byorgey byorgey added the merge me Trigger the merge process of the Pull request. label May 11, 2024
@mergify mergify bot merged commit 62470f3 into main May 11, 2024
11 checks passed
@mergify mergify bot deleted the refactor/tui-library branch May 11, 2024 02:09
mergify bot pushed a commit that referenced this pull request May 11, 2024
…1840)

#1834 created a `swarm-tui` sublibrary for the remaining source modules that weren't in a sublibrary of their own, but I forgot to actually move them all into a `swarm-tui` folder.
mergify bot pushed a commit that referenced this pull request May 13, 2024
As a follow-up to #1834:

- Update the sublibrary graph generation script so it works with the no-longer-linear graph
- Regenerate the actual image
- Update the `.cabal` description to match
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merge me Trigger the merge process of the Pull request.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Split Swarm components into libraries
2 participants