Syncthing has moved

I’m going to move syncthing from my personal Github account to an organization: The Syncthing Project · GitHub. Obviously there’s a nice ego thing to having it on my personal account, but I think it makes more sense to give it some room to grow now. :wink: This also creates a nice space for various satellite projects and subrepos, making it easier to give contributors commit access. I’ve started this process a little. If you have an integration of some kind (i.e. the Ruby bindings, a CLI, etc) you’re welcome–but of course not required!–to host it in the project; I’ll delegate admin rights so the repo can be transferred.

Moving the main repo is a bit of a process though. Github are nice enough to do redirects for most of the old URLs so it’s not enormously disruptive, but

  • The code uses github.com/calmh/syncthing as import path in about a hundred places, which needs to be rewritten.
  • The code needs to be moved on disk to reflect the new import path. This is just an mv for the developers, but it’s also a pain for CI systems and other builders out there.
  • The Github API doesn’t do redirects, so auto upgrades will fail. I’m considering moving the release downloads out from Github to a separate server while fixing this, but not fully decided yet.
  • There’s a bunch of places that link to the Github account that need to be updated, but the redirects will handle it in the meantime.
  • … and probably a bunch of other things I’ve forgotten that will break left and right.

Issues, pull requests etc should survive the move unharmed.

2 Likes

Sounds great! Why are upgrades a problem? As long as the latest release at the calmh github location knows the new location, worst case is an additional step…

The thing is that calmh/syncthing will cease to exist and become a redirect to syncthing/syncthing, except apparently for API calls like the update check.

I could create a new repository at calmh/syncthing again, but this would then be disconnected from the real syncthing repo and the redirects would disappear, leaving people looking at an outdated and incorrect syncthing repo.

On the other hand I think the v0.9 release might be a good time to do this since it’s a bigger change than usual and auto-upgrading unprepared v0.8 users might not be desirable anyhow.

This is now done. Please let me know about things that break.

Note that you’ll need to move the repo on disk to $GOPATH/src/github.com/syncthing/syncthing for the build to work correctly.