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

The PPB Modernization Project #690

Draft
wants to merge 3 commits into
base: canon
Choose a base branch
from

Conversation

pathunstrom
Copy link
Collaborator

This is an in-progress experimentation for hitting a couple of wishlist items in ppb:

  1. Move to modern packaging tooling.
  2. Breaking up ppb into sub-packages to fully deliver on the modularity promises.

To that end, the conceptualization of the new layout:

ppb-core: The engine and anything strictly required to run ppb. Also utilities and other stuff that will be used by a bunch of the other packages in the constellation.
ppb-sdl: Everything that touches SDL and applies additional expectations due to that layout.
ppb-experimental: An explicitly unsafe set of APIs for more ready experimentation.
ppb-features: Optional stuff.
ppb: The friendly face of the ppb world. This will stitch together all the other packages and present the same great experience we serve now. Things that are unique to this package: things like the directions that are nice utilities, but not necessary for core.

Dependency graph:
ppb-core: No dependencies. If this references another package, it probably needs to live in core.
ppb-sdl: can reference core and SDL requirements.
ppb-experimental: ppb-sdl and ppb-core
ppb-features: ppb-core, ppb-sdl? (Maybe, might need to rethink this one.
ppb: can import from anything.

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

Successfully merging this pull request may close these issues.

1 participant