Skip to content

Migrate msgspec to a dedicated GitHub organization #1015

@Siyet

Description

@Siyet

Spin-off from #990. In that thread @jcrist expressed willingness to migrate msgspec out of his personal GitHub into a dedicated organization: "I'm also happy to migrate this out of my personal github and into an org (if someone volunteers to do the work)". He also stated a preference for a dedicated org rather than being part of any framework org: "IMO it'd be best to have a dedicated org for msgspec, just to avoid looking like it's part of any one framework".

I (@Siyet) am volunteering to take on the migration work. This issue is for aligning on the plan. We discuss and get sign-off here first, then a PR.

Open questions

@jcrist, please tick the boxes for items you agree with, or comment on the ones where you have a different view.

1. Organization name

  • msgspec-org (my suggestion, to avoid confusion with the package name)
  • msgspec (also available, gives the URL github.com/msgspec/msgspec - cleanest possible)
  • something else - let me know

2. Organization ownership structure

  • You are the sole org owner. Admin/maintainer at the repo level: me (@Siyet), @ofek (already brought in as a collaborator earlier), and @provinzkraut (if he wants in - you already offered him maintainer rights in Adding additional maintainers to support project growth  #990, leaving the slot for him). This keeps full control with you and lets you roll back anything if something goes wrong. I'll go with this by default unless you prefer otherwise.
  • A different structure - let me know what you'd be more comfortable with.

3. Migration timing

4. Documentation site

  • Move to msgspec.github.io (free GitHub Pages under the org). The current jcristharif.com/msgspec either becomes a redirect or is taken down.
  • Keep docs at jcristharif.com/msgspec for now, only migrate the repo. We can move docs separately later (or not at all).
  • Something else - let me know.

5. PyPI ownership

No change - you remain the sole owner on PyPI. Releases are automated through GitHub Actions, no one but CI needs the PyPI token. This was already discussed in #990, including here just for completeness.

Migration plan (after sign-off above)

Subtasks I'll take on:

  • Create the org with the chosen name, add you as owner
  • Prepare a PR against current jcrist/msgspec that updates all URLs / links / badges (~57 occurrences across 23 files). The PR is not merged until after the transfer
  • You hit Settings → Transfer repository to move the repo into the new org (this is your button, I can't do it myself)
  • After transfer, verify:
    • CI is green
    • GitHub Pages comes up under the new URL
    • External links (Read the Docs / link checker) aren't broken
    • CI secrets (PYPI_API_TOKEN etc.) are migrated / re-set
  • Merge the PR with updated URLs
  • Announcement in CHANGELOG.md for the next release + comment in Adding additional maintainers to support project growth  #990 with a link to the new location
  • Update PyPI project metadata (Project URL fields) - either with temporary access from you, or you do it yourself

After that we unfreeze merges and continue work as usual in the new repo.

cc @ofek @provinzkraut - in case you have an opinion on any of the items above.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions