Rename the Go module to github.com/pelican/wings - #209
Conversation
Nothing outside this repo imports wings, so the imports are all self-referential and this builds the same either way; the point is just to have the module path match where the code lives. The version stamping has to agree with the module path or it silently stops working, so SRC_PATH, the release ldflags, the Dockerfile and the Makefile move in the same commit.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (93)
📜 Recent review details⏰ Context from checks skipped due to timeout. (5)
🧰 Additional context used🧠 Learnings (1)📚 Learning: 2026-03-02T13:53:08.995ZApplied to files:
🔇 Additional comments (93)
📝 WalkthroughWalkthroughThe PR changes the Go module path from ChangesModule Path Migration
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This change renames the Go module and updates its self-referential imports and local build metadata without changing runtime behavior; the stated build, test, dependency, and release-stamping checks pass, so no actionable merge-blocking risk remains. Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
## Upstream sync: `upstream/main@090841d` | Field | Value | | --- | --- | | Commits merged | 2 | | Files changed | 98 (+254 / -254) | | Conflicts | 1 (1 auto-resolved, 0 manual) | | Status | Ready for review | ### Summary This sync brings in two upstream commits that finish the wings organization rename, including the Go module path change to github.com/pelican/wings. It touches 98 files with 254 insertions and 254 deletions, and one conflicted file was resolved automatically. ### Conflict resolution | File | Type | Resolution | | --- | --- | --- | | `README.md` | both modified | Combined fork title and documentation with upstream's updated GitHub Issues URL. | <details> <summary>Per-file detail</summary> **`README.md`** — both modified - Upstream: Upstream updated the GitHub Issues link from github.com/pelican-dev/wings to github.com/pelican/wings. - Fork: The fork changed the README title to include a wings-vpn fork label and added an About this fork section documenting container network mode. - Resolution: Combined fork title and documentation with upstream's updated GitHub Issues URL. </details> <details> <summary>Merged commits (2)</summary> - `090841d` Finish the wings org rename (the part pelican#208 missed) (pelican#212) - `5bd4d7e` Rename the Go module to github.com/pelican/wings (pelican#209) </details> <details> <summary>Changed files (98)</summary> ```` .github/CODEOWNERS | 2 +- .github/workflows/push.yaml | 4 ++-- .github/workflows/release.yaml | 4 ++-- CHANGELOG.md | 4 ++-- Dockerfile | 2 +- Makefile | 4 ++-- README.md | 2 +- SECURITY.md | 4 ++-- cmd/configure.go | 2 +- cmd/diagnostics.go | 4 ++-- cmd/root.go | 22 +++++++++++----------- cmd/selfupdate.go | 4 ++-- config/config.go | 2 +- docker-compose.example.yml | 2 +- environment/allocations.go | 2 +- environment/docker.go | 2 +- environment/docker/api.go | 2 +- environment/docker/container.go | 6 +++--- environment/docker/environment.go | 8 ++++---- environment/docker/power.go | 4 ++-- environment/docker/stats.go | 2 +- environment/environment.go | 2 +- environment/settings.go | 2 +- events/events.go | 2 +- go.mod | 2 +- internal/cron/activity_cron.go | 8 ++++---- internal/cron/cron.go | 6 +++--- internal/cron/sftp_cron.go | 8 ++++---- internal/database/database.go | 6 +++--- internal/diagnostics/logs.go | 6 +++--- internal/progress/progress.go | 2 +- internal/progress/progress_test.go | 2 +- internal/ufs/fs_platform_test.go | 2 +- internal/ufs/fs_unix_test.go | 2 +- loggers/cli/cli.go | 8 ++++---- parser/parser.go | 4 ++-- remote/http.go | 4 ++-- remote/servers.go | 2 +- remote/types.go | 2 +- router/downloader/downloader.go | 4 ++-- router/middleware.go | 4 ++-- router/middleware/middleware.go | 8 ++++---- router/middleware/request_error.go | 4 ++-- router/router.go | 8 ++++---- router/router_download.go | 6 +++--- router/router_server.go | 16 ++++++++-------- router/router_server_backup.go | 8 ++++---- router/router_server_backup_test.go | 12 ++++++------ router/router_server_files.go | 16 ++++++++-------- router/router_server_files_search.go | 10 +++++----- router/router_server_transfer.go | 10 +++++----- router/router_server_ws.go | 6 +++--- router/router_system.go | 14 +++++++------- router/router_transfer.go | 12 ++++++------ router/tokens/parser.go | 2 +- router/websocket/listeners.go | 6 +++--- router/websocket/websocket.go | 16 ++++++++-------- server/activity.go | 4 ++-- server/backup.go | 6 +++--- server/backup/backup.go | 6 +++--- server/backup/backup_local.go | 6 +++--- server/backup/backup_s3.go | 6 +++--- server/backup/backup_test.go | 4 ++-- server/config_parser.go | 2 +- server/configuration.go | 2 +- server/connections.go | 2 +- server/console.go | 4 ++-- server/crash.go | 6 +++--- server/events.go | 4 ++-- server/filesystem/archive.go | 6 +++--- server/filesystem/compress.go | 4 ++-- server/filesystem/disk_space.go | 2 +- server/filesystem/errors.go | 2 +- server/filesystem/filesystem.go | 4 ++-- server/filesystem/filesystem_test.go | 4 ++-- server/filesystem/path_test.go | 2 +- server/filesystem/quota_file.go | 2 +- server/filesystem/quotas/exfs.go | 2 +- server/filesystem/quotas/functions.go | 2 +- server/filesystem/stat.go | 2 +- server/install.go | 8 ++++---- server/installer/installer.go | 4 ++-- server/listeners.go | 8 ++++---- server/manager.go | 12 ++++++------ server/mounts.go | 4 ++-- server/power.go | 6 +++--- server/power_test.go | 2 +- server/resources.go | 8 ++++---- server/server.go | 16 ++++++++-------- server/transfer/archive.go | 6 +++--- server/transfer/source.go | 2 +- server/transfer/transfer.go | 4 ++-- server/update.go | 4 ++-- sftp/event.go | 4 ++-- sftp/handler.go | 6 +++--- sftp/handler_test.go | 2 +- sftp/server.go | 6 +++--- wings.go | 2 +- 98 files changed, 254 insertions(+), 254 deletions(-) ```` </details> ### Review checklist - [ ] Conflict resolutions preserve fork-specific behaviour - [ ] `make build` and `make test` pass <!-- greptile_comment --> <details><summary><h3>Greptile Summary</h3></summary> This PR completes the upstream Pelican organization and Go module rename while preserving the fork-specific README content. - Renames the module and internal imports from `github.com/pelican-dev/wings` to `github.com/pelican/wings`. - Updates build workflows, linker paths, release links, image references, and self-update defaults to the new organization. - Keeps the fork issue tracker and container-network-mode documentation in `README.md`. </details> <details><summary><h3>Confidence Score: 5/5</h3></summary> The PR appears safe to merge, with no changed-code-triggered defects identified. The module declaration, source imports, build targets, linker flags, release configuration, and organization references are consistently renamed, while the fork-specific README resolution is preserved. </details> <details><summary><h3>Important Files Changed</h3></summary> | Filename | Overview | |----------|----------| | go.mod | Renames the Go module to `github.com/pelican/wings`, consistently matching the updated imports and build configuration. | | cmd/selfupdate.go | Updates the default upstream release owner to `pelican`; artifact naming remains aligned with the release workflow. | | .github/workflows/push.yaml | Updates build package and linker-symbol paths to the renamed Go module. | | .github/workflows/release.yaml | Updates release build and version linker paths while retaining the existing Linux artifact contract. | | Dockerfile | Updates the version linker target to the renamed module path. | | docker-compose.example.yml | Updates the existing upstream container image reference to the renamed Pelican organization. | | README.md | Preserves fork-specific documentation and adds the renamed upstream issue tracker. | </details> <sub>Reviews (1): Last reviewed commit: ["sync upstream/main"](098a3c1) | [Re-trigger Greptile](https://app.greptile.com/api/retrigger?id=53900332)</sub> <!-- /greptile_comment -->
This is safe to merge right now and doesn't have to wait on anything, because Go never looks a module path up over the network when it's the main module —
go buildjust maps it straight to this directory — which is why CI is already green on it.This is the module path half of #208, pulled out so it can go in on its own rather than waiting.
It renames the module to
github.com/pelican/wingsand updates the 236 import lines across 88 files that follow from it. The reason this can land early is that nothing outside this repo imports wings, so the imports are self-referential and Go resolves them againstgo.modregardless of where the repo is actually hosted. It builds exactly the same before and after, which is also why this is a big diff but not a risky one.The version stamping has to agree with the module path or the build quietly stops setting
system.Version, soSRC_PATHinpush.yaml, the-ldflagsinrelease.yaml, theDockerfileand theMakefileall move in the same commit. Those are all local build targets, nothing fetches over the network, so they're fine ahead of anything else.Deliberately not in here, because these are live values rather than module paths and would actually point somewhere useless if they went in now:
--repo-ownerdefault incmd/selfupdate.godocker-compose.example.ymlThose stay in #208, which shrinks to about eight lines once this merges.
go mod tidyis clean,go build ./...andgo test ./...pass, and I ran the release build command with the new ldflags to confirm version stamping still resolves.go.sumis untouched. Nothing tells people togo installthis, which is the one case where the module path would need to match the repo location over the network.