Remove legacy Go telemetry server implementation#3413
Conversation
There was a problem hiding this comment.
PR Summary:
- Removes the legacy Go-based telemetry server (
dev/pyRevitTelemetryServer/) from the repository. - The telemetry backend has moved to a C# implementation maintained at https://github.com/pyrevitlabs/telemetry-server.
- Also bumps four submodule pointers (
pyRevitLabs.Python.Net,pyRevitLabs.dlr,pyRevitLabs.ironpython2,pyRevitLabs.ironpython3). - No functional changes to runtime pyRevit components.
Review Summary:
The Go source deletions are clean and complete, but the Python developer toolchain (dev/_telem.py, dev/scripts/configs.py, dev/pyrevit.py) was not updated alongside them. Those files still reference the now-deleted server path (dev/pyRevitTelemetryServer/main.go) and expose broken build telem / test telem CLI commands, as well as stale gcc/go tool requirements in the help text. This needs to be addressed in the same PR to avoid leaving the build toolchain in a broken state.
Suggestions
…e in autocomplete application build
There was a problem hiding this comment.
Pull request overview
This pull request removes the legacy Go-based telemetry server from the dev/ toolchain, cleaning out its source code and eliminating related build/test hooks from the repo’s developer scripts. This aligns the repository with the current direction where telemetry is maintained externally (C# implementation in a dedicated repository).
Changes:
- Removed the Go telemetry server implementation under
dev/pyRevitTelemetryServer/(server, persistence, CLI, and Go module files). - Removed developer build/test commands and build pipeline hooks that compiled/ran the Go telemetry server.
- Cleaned dev configuration constants related to telemetry server build outputs.
Reviewed changes
Copilot reviewed 25 out of 28 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| dev/scripts/configs.py | Removes legacy telemetry server path/bin constants from dev configs. |
| dev/pyRevitTelemetryServer/server/status.go | Deletes legacy Go server status endpoint implementation. |
| dev/pyRevitTelemetryServer/server/server.go | Deletes legacy Go server startup/router implementation. |
| dev/pyRevitTelemetryServer/server/scripts.go | Deletes legacy Go scripts telemetry endpoint implementation. |
| dev/pyRevitTelemetryServer/server/events.go | Deletes legacy Go events telemetry endpoint implementation. |
| dev/pyRevitTelemetryServer/persistence/utils.go | Deletes legacy Go persistence utilities. |
| dev/pyRevitTelemetryServer/persistence/mongo.go | Deletes legacy Go MongoDB backend implementation. |
| dev/pyRevitTelemetryServer/persistence/models.go | Deletes legacy Go telemetry record models/validation. |
| dev/pyRevitTelemetryServer/persistence/genericsql.go | Deletes legacy Go generic SQL backend implementation. |
| dev/pyRevitTelemetryServer/persistence/connection.go | Deletes legacy Go persistence connection interface/factory. |
| dev/pyRevitTelemetryServer/persistence/config.go | Deletes legacy Go persistence config parsing. |
| dev/pyRevitTelemetryServer/main.go | Deletes legacy Go telemetry server entrypoint. |
| dev/pyRevitTelemetryServer/go.sum | Removes legacy Go dependency lockfile. |
| dev/pyRevitTelemetryServer/go.mod | Removes legacy Go module definition. |
| dev/pyRevitTelemetryServer/cli/usage.go | Deletes legacy Go CLI usage/help text. |
| dev/pyRevitTelemetryServer/cli/logger.go | Deletes legacy Go CLI logger implementation. |
| dev/pyRevitTelemetryServer/cli/args.go | Deletes legacy Go CLI argument parsing/options. |
| dev/pyRevitTelemetryServer/.vscode/settings.json | Removes editor settings tied to the deleted Go subproject. |
| dev/pyrevit.py | Removes build telem and test telem dev commands and the _telem import. |
| dev/_telem.py | Deletes the dev module that built/ran the Go telemetry server. |
| dev/_build.py | Removes telemetry build step from the “build all binaries” workflow. |
jmcouffin
left a comment
There was a problem hiding this comment.
There is no need to update the submodules
|
📦 New work-in-progress (wip) builds are available for 6.4.0.26155+1427-wip |
Remove legacy Go telemetry server implementation
Description
This pull request removes the legacy telemetry server implementation written in Go and all related files from the repository.
The telemetry backend has been migrated to C# and is now maintained in a dedicated repository:
https://github.com/pyrevitlabs/telemetry-server
As a result, the Go-based implementation is no longer used, maintained, or distributed as part of this project.
These changes simplify the codebase by removing obsolete components, reducing maintenance overhead, and preventing confusion about the currently supported telemetry server implementation.
Checklist
Before submitting your pull request, ensure the following requirements are met:
Code follows the PEP 8 style guide.
Code has been formatted with Black using the command:
pipenv run black {source_file_or_directory}Changes are tested and verified to work as expected.
Related Issues
If applicable, link the issues resolved by this pull request:
Additional Notes
https://github.com/pyrevitlabs/telemetry-server
Thank you for contributing to pyRevit! 🎉