Skip to content

Add Origins, HttpInterface, and basic Discord support#98

Open
linc wants to merge 86 commits intomainfrom
feat/discord-api
Open

Add Origins, HttpInterface, and basic Discord support#98
linc wants to merge 86 commits intomainfrom
feat/discord-api

Conversation

@linc
Copy link
Collaborator

@linc linc commented Dec 24, 2025

See: https://nitroporter.org/domain.html#domain-diagram

Features

  • Add pull command to retrieve data from an Origin
  • Add Discord as inaugural Origin package (pull -> raw data from origin)
  • Add Discord as Source package & update docs

Domain Updates

  • Add Package as parent to Source, Target, & Postscript
  • Add Origin as a Package type
  • Add Https as a Storage type
  • Add Storage params to every Package type

Maintenance

  • Add storageFactory() & refactor the Storage interface
  • Add packageFactory()
  • Adjust Request() call to use named params
  • Add dependency on symfony/http-cllient
  • Add ConnectionManager compatibility with Symfony ClientHttpInterface
  • Simplify a few method signatures to stop passing Migration for no reason
  • Deprecate translateDatabaseConfig() (just use direct config names from now on)

Assumes pull will only be sourced from HTTP APIs (Storage\Https) for simplicity today even though that is likely a faulty long-term assumption; it shouldn't be difficult to extend if/when the time comes.

Note that Origin doesn't use Migration, so it has more property baggage than Source et. al. This may be part of the path to deprecating the Migration object eventually.

@linc linc changed the title Add Origins, API interface, and basic Discord support Add Origins, HttpInterface, and basic Discord support Dec 24, 2025
@linc linc force-pushed the feat/discord-api branch 5 times, most recently from c12c04c to 7d241b9 Compare December 29, 2025 12:28
@linc linc force-pushed the feat/discord-api branch from ea96f23 to acd2a52 Compare January 2, 2026 21:39
@linc
Copy link
Collaborator Author

linc commented Mar 2, 2026

It's not possible to convert SnowfakeIDs into non-colliding 32-bit int values even on the scale of a single community. We need index renumbering, which will also unblock merging instances.

@linc linc marked this pull request as ready for review March 8, 2026 13:05
@linc linc force-pushed the feat/discord-api branch from 35d0796 to ad5d1e6 Compare March 8, 2026 13:08
@linc linc force-pushed the feat/discord-api branch from 59f88ee to 1065f7c Compare March 8, 2026 21:52
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