{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":608346290,"defaultBranch":"main","name":"orchestrion","ownerLogin":"DataDog","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-03-01T20:37:21.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/365230?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1714407427.0","currentOid":""},"activityList":{"items":[{"before":"7dc3c871ab5707516d8584896d80b108567495c8","after":"bf51e9e0e8f2784f674e9ff20f34d270878c130f","ref":"refs/heads/main","pushedAt":"2024-04-29T16:16:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"release: v0.7.0-rc.1","shortMessageHtmlLink":"release: v0.7.0-rc.1"}},{"before":"246e1d7e9145aff0416c68affd579ca2e57b2ae3","after":null,"ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-29T16:14:36.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"}},{"before":"24fd259de515791490822f4e19740ffefc051240","after":"7dc3c871ab5707516d8584896d80b108567495c8","ref":"refs/heads/main","pushedAt":"2024-04-29T16:14:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"feat: automatic pinning of orchestrion (#96)\n\nThis adds a new feature which will automatically create the\r\n`orchestrion.tool.go` file, then run `go get` to explicitly install the\r\ncurrent version of `orchestrion` in the `go.mod` file, then run `go mod\r\ntidy` to ensure the `go.mod` file is clean.\r\n\r\nThis is done only if the required version check fails (indicating the\r\n`go.mod` file did not contain a version for `orchestrion`). A new\r\nenvironment variable is set so that child processes skip the check if it\r\nwas successful for their parent, saving time & risk for errors.\r\n\r\nUpon automatic pinning, the following message is print out to STDERR\r\n(formatting varies depending on whether it's a PTY or not, etc... and if\r\nit's a PTY, the box width is ajdusted to fit the viewport):\r\n```\r\n╭──────────────────────────────────────────────────────────────────────────────╮\r\n│ │\r\n│ Warning: github.com/datadog/orchestrion is not present in your go.mod │\r\n│ file. │\r\n│ In order to ensure build reliability and reproductibility, orchestrion │\r\n│ will now add itself in your go.mod file by: │\r\n│ │\r\n│ 1. creating a new file named orchestrion.tool.go │\r\n│ 2. running go get github.com/datadog/orchestrion@v0.7.0-dev.2 │\r\n│ 3. running go mod tidy │\r\n│ │\r\n│ You should commit the resulting changes into your source control system. │\r\n│ │\r\n╰──────────────────────────────────────────────────────────────────────────────╯\r\n```\r\n\r\nFixes #95\r\nFixes #87 \r\n\r\n---\r\n\r\nIn addition to this, a new `orchestrion warmup` command will pre-build\r\nthe instrumented standard library as well as all packages `orchestrion`\r\nmay be injecting into compiled code, speeding up future compilations.","shortMessageHtmlLink":"feat: automatic pinning of orchestrion (#96)"}},{"before":"2b8b51c4ac98a3be36f49df90d5d4a382392844d","after":"246e1d7e9145aff0416c68affd579ca2e57b2ae3","ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-29T16:06:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Display commands in error outputs","shortMessageHtmlLink":"Display commands in error outputs"}},{"before":"da9c4975ce680ea16c4d96849c6fa03fa8a79e31","after":"2b8b51c4ac98a3be36f49df90d5d4a382392844d","ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-29T15:58:00.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Merge branch 'main' into romain.marcadier/lipgloss","shortMessageHtmlLink":"Merge branch 'main' into romain.marcadier/lipgloss"}},{"before":"09bb06da6defcc12cbd60befdd0fe47d29a7a05c","after":"da9c4975ce680ea16c4d96849c6fa03fa8a79e31","ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-26T13:23:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Allow passing arguments to the go build triggered by warmup (e.g, -v)","shortMessageHtmlLink":"Allow passing arguments to the go build triggered by warmup (e.g, -v)"}},{"before":"18f71c68dc981f9d78167ab7f26a288986e0ea30","after":"09bb06da6defcc12cbd60befdd0fe47d29a7a05c","ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-26T13:05:43.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Use orchestrion warmup in integration test suite","shortMessageHtmlLink":"Use orchestrion warmup in integration test suite"}},{"before":"23ee28a308f9abeefb70ed7e28b5a3fad9038cb3","after":"18f71c68dc981f9d78167ab7f26a288986e0ea30","ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-26T13:00:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Use orchestrion warmup in integration test suite","shortMessageHtmlLink":"Use orchestrion warmup in integration test suite"}},{"before":"1bb81dd8db948114ece5c92ab9d184255d6364e6","after":null,"ref":"refs/heads/romain.marcadier/blank-import-instrument","pushedAt":"2024-04-25T16:41:04.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"}},{"before":"5b9369207f52644185239795c50d197c1ca920bc","after":"24fd259de515791490822f4e19740ffefc051240","ref":"refs/heads/main","pushedAt":"2024-04-25T16:41:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"fix: blank import `./instruments` in `tools.go` (#97)\n\nIn order to better inter-operate with `go mod vendor`, add a blank import on `github.com/datadog/orchestrion/instrument` so that package (and its dependencies) is not pruned by `go mod vendor` for not being explicitly required.","shortMessageHtmlLink":"fix: blank import ./instruments in tools.go (#97)"}},{"before":"09a8c12fc591524a6c71ff57eba2f0c9aa631f49","after":"23ee28a308f9abeefb70ed7e28b5a3fad9038cb3","ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-25T16:34:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Add information about auto-pin message","shortMessageHtmlLink":"Add information about auto-pin message"}},{"before":"50df78e58ae45fc81a4cee060f71c45d08ce9159","after":"09a8c12fc591524a6c71ff57eba2f0c9aa631f49","ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-25T16:32:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Improve README","shortMessageHtmlLink":"Improve README"}},{"before":null,"after":"1bb81dd8db948114ece5c92ab9d184255d6364e6","ref":"refs/heads/romain.marcadier/blank-import-instrument","pushedAt":"2024-04-25T15:56:04.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"fix: blank import `./instruments` in `tools.go`\n\nIn order to better inter-operate with `go mod vendor`, add a blank\nimport on `github.com/datadog/orchestrion/instrument` so that package\n(and its dependencies) is not pruned by `go mod vendor` for not being\nexplicitly required.","shortMessageHtmlLink":"fix: blank import ./instruments in tools.go"}},{"before":"8bb89827e0da0818545b275ff5f85e73cbde093d","after":"50df78e58ae45fc81a4cee060f71c45d08ce9159","ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-25T15:53:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Improve autopin message","shortMessageHtmlLink":"Improve autopin message"}},{"before":"0dddee5303d3c39b0cf0301b028e2cbfa6251a4b","after":"8bb89827e0da0818545b275ff5f85e73cbde093d","ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-25T15:51:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Improve autopin message","shortMessageHtmlLink":"Improve autopin message"}},{"before":"2208c3635502c9923e5f4495ff92b2ab57ef3418","after":"0dddee5303d3c39b0cf0301b028e2cbfa6251a4b","ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-25T15:37:28.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"feat: automatic pinning of orchestrion\n\nThis adds a new feature which will automatically create the\n`orchestrion.tool.go` file, then run `go get` to explicitly install the\ncurrent version of `orchestrion` in the `go.mod` file, then run\n`go mod tidy` to ensure the `go.mod` file is clean.\n\nThis is done only if the required version check fails (indicating the\n`go.mod` file did not contain a version for `orchestrion`). A new\nenvironment variable is set so that child processes skip the check if it\nwas successful for their parent, saving time & risk for errors.\n\nIn addition to this, a new `orchestrion warmup` command will pre-build\nthe instrumented standard library as well as all packages `orchestrion`\nmay be injecting into compiled code, speeding up future compilations.","shortMessageHtmlLink":"feat: automatic pinning of orchestrion"}},{"before":null,"after":"2208c3635502c9923e5f4495ff92b2ab57ef3418","ref":"refs/heads/romain.marcadier/lipgloss","pushedAt":"2024-04-25T15:35:01.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"feat: automatic pinning of orchestrion\n\nThis adds a new feature which will automatically create the\n`orchestrion.tool.go` file, then run `go get` to explicitly install the\ncurrent version of `orchestrion` in the `go.mod` file, then run\n`go mod tidy` to ensure the `go.mod` file is clean.\n\nThis is done only if the required version check fails (indicating the\n`go.mod` file did not contain a version for `orchestrion`). A new\nenvironment variable is set so that child processes skip the check if it\nwas successful for their parent, saving time & risk for errors.\n\nIn addition to this, a new `orchestrion warmup` command will pre-build\nthe instrumented standard library as well as all packages `orchestrion`\nmay be injecting into compiled code, speeding up future compilations.","shortMessageHtmlLink":"feat: automatic pinning of orchestrion"}},{"before":"5925926310ef002858acea562ee940ee2038c336","after":null,"ref":"refs/heads/romain.marcadier/log-crash","pushedAt":"2024-04-25T12:50:43.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"}},{"before":"fb50ae714fd2c8b653fdeb8306aecaf1a0ea9926","after":"5b9369207f52644185239795c50d197c1ca920bc","ref":"refs/heads/main","pushedAt":"2024-04-25T12:50:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"fix: setting `ORCHESTRION_LOG_FILE` to a relative path may cause a panic (#94)\n\nThe `ORCHESTRION_LOG_FILE` is expected to be resolved relative to the current working directory, however the `orchestrion toolexec` invocations happen with different working directories than the outer `go build` command, and those directories may be read-only if they are in the `GOMODCACHE` directory.\r\n\r\nTo address this, the path is made absolute by the initial process, and the environment variable updated accordingly, so that all child processes use a pattern resolved against the same working directory.\r\n\r\nFixes #89","shortMessageHtmlLink":"fix: setting ORCHESTRION_LOG_FILE to a relative path may cause a pa…"}},{"before":"5edcdb449943b19b8bc493e93c894b6e0ef2c542","after":null,"ref":"refs/heads/romain.marcadier/better-version-ensure","pushedAt":"2024-04-24T15:22:03.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"}},{"before":"53453768784abee054877bcd1c42d051c34e8ee3","after":"fb50ae714fd2c8b653fdeb8306aecaf1a0ea9926","ref":"refs/heads/main","pushedAt":"2024-04-24T15:22:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"feat: required version check is now non-failing (#93)\n\nIn order to simplify the onboarding experience, it is no longer a hard requirement to have orchestrion listed in `go.mod`.\r\n\r\nIf present in `go.mod`, that version will be respected. If not, a distinctive warning will be printed in the `go version` output, and an `orchestrion pin` command allows for easy, automated insertion of the `orchestrion` dependency (adding a `orchestrion.tool.go` file and running the adequate `go get` command for you).","shortMessageHtmlLink":"feat: required version check is now non-failing (#93)"}},{"before":"012952830b9edd6c92ff2a7d178c7db177cc600a","after":"5edcdb449943b19b8bc493e93c894b6e0ef2c542","ref":"refs/heads/romain.marcadier/better-version-ensure","pushedAt":"2024-04-24T14:52:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Merge branch 'main' into romain.marcadier/better-version-ensure","shortMessageHtmlLink":"Merge branch 'main' into romain.marcadier/better-version-ensure"}},{"before":"4dd730470d72540dc5da25cb6e0bdea301988607","after":"012952830b9edd6c92ff2a7d178c7db177cc600a","ref":"refs/heads/romain.marcadier/better-version-ensure","pushedAt":"2024-04-24T14:41:59.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Merge branch 'main' into romain.marcadier/better-version-ensure","shortMessageHtmlLink":"Merge branch 'main' into romain.marcadier/better-version-ensure"}},{"before":"044c19050162614a6d6d8479007be146ae0e65ca","after":null,"ref":"refs/heads/romain.marcadier/not-enough-args","pushedAt":"2024-04-24T14:41:02.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"}},{"before":"8e39a0090c1945dc85f67585bcd23bff2e0267e7","after":"53453768784abee054877bcd1c42d051c34e8ee3","ref":"refs/heads/main","pushedAt":"2024-04-24T14:41:01.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"fix: panic when passing insufficient arguments to `go` and `toolexec` (#92)\n\nInsufficient length checks caused unexpected panics to occur when not providing any arguments to the `go` subcommand (which ought to be a valid move), as well as when passing no arguments to the `toolexec` subcommand (which is not valid use).\r\n \r\nAdded the necessary checks to produce reasonable error messages instead of hard-crashing.","shortMessageHtmlLink":"fix: panic when passing insufficient arguments to go and toolexec ("}},{"before":"657fe4177da39e74ddd2ed6114825a1c99de7c5e","after":null,"ref":"refs/heads/romain.marcadier/cache-busting","pushedAt":"2024-04-24T14:40:45.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"}},{"before":"1abac5d05789b09c232a0b65808ff0f83d118eb1","after":"8e39a0090c1945dc85f67585bcd23bff2e0267e7","ref":"refs/heads/main","pushedAt":"2024-04-24T14:40:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"fix: excessive GOCACHE busting on dev builds (#91)\n\nIt turns out binaries installed with `go install` lack VCS information in their build information. This is also true of binaries produced by `go run` and `go test`. This caused the cache busting mechanism to be excessively conservative, resulting in the complete inability to re-use cache objects in the \"golden path\".\r\n \r\nTo address that, we no longer use most of the VCS information, instead using the `BuildInfo.Main.Version` string, which is set to `(devel)` by `go run`, and the `vcs.modified` `BuildInfo.Settings` entry if `\"true\"`. If either is true, we try to compute the current binary's SHA512 checusum and embed this in the cache keys; so that re-using the exact same binary should allow re-using GOCACHE entries.","shortMessageHtmlLink":"fix: excessive GOCACHE busting on dev builds (#91)"}},{"before":null,"after":"5925926310ef002858acea562ee940ee2038c336","ref":"refs/heads/romain.marcadier/log-crash","pushedAt":"2024-04-24T14:38:29.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"fix: setting `ORCHESTRION_LOG_FILE`` to a relative path may cause a panic\n\nThe `ORCHESTRION_LOG_FILE` is expected to be resolved relative to the\ncurrent working directory, however the `prchestrion toolexec`\ninvocations happen with different working directories than the outer\n`go build` command, and those directories may be read-only if they are\nin the `GOMODCACHE` directory.\n\nTo address this, the path is made absolute by the initial process, and\nthe environment variable updated accordingly, so that all child\nprocesses use a pattern resolved against the same working directory.","shortMessageHtmlLink":"fix: setting ORCHESTRION_LOG_FILE` to a relative path may cause a p…"}},{"before":"eca9b3cbfc55f6b581b344b60609ea5e9627b7cc","after":"4dd730470d72540dc5da25cb6e0bdea301988607","ref":"refs/heads/romain.marcadier/better-version-ensure","pushedAt":"2024-04-24T13:27:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Clean up file if it can't be filled up properly","shortMessageHtmlLink":"Clean up file if it can't be filled up properly"}},{"before":"76a81b45314d59814fc385ee60d3ffddeb980177","after":"eca9b3cbfc55f6b581b344b60609ea5e9627b7cc","ref":"refs/heads/romain.marcadier/better-version-ensure","pushedAt":"2024-04-24T13:25:08.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"RomainMuller","name":"Romain Marcadier","path":"/RomainMuller","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/411689?s=80&v=4"},"commit":{"message":"Merge branch 'romain.marcadier/not-enough-args' into romain.marcadier/better-version-ensure","shortMessageHtmlLink":"Merge branch 'romain.marcadier/not-enough-args' into romain.marcadier…"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEPSuVhwA","startCursor":null,"endCursor":null}},"title":"Activity · DataDog/orchestrion"}