{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":467639642,"defaultBranch":"master","name":"kda-tool","ownerLogin":"kadena-io","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-03-08T18:58:59.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/19830776?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1714144371.0","currentOid":""},"activityList":{"items":[{"before":"63cdbd2b780407de1f1cb7096125c42939f8a415","after":"09fa90aab021ec4cff62c5a17ba53ad78eef5d0d","ref":"refs/heads/enis/update-pact","pushedAt":"2024-05-01T11:19:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Add openssl to non-Nix macos-latest CI","shortMessageHtmlLink":"Add openssl to non-Nix macos-latest CI"}},{"before":"f5053c2a1c0f8bfc1b6b50992b6296d2d0f7e237","after":"63cdbd2b780407de1f1cb7096125c42939f8a415","ref":"refs/heads/enis/update-pact","pushedAt":"2024-04-26T17:00:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Add missing test dependencies","shortMessageHtmlLink":"Add missing test dependencies"}},{"before":"2d13b5075fa936f5abdf3e7cd194d7bb450d4197","after":"f5053c2a1c0f8bfc1b6b50992b6296d2d0f7e237","ref":"refs/heads/enis/update-pact","pushedAt":"2024-04-26T15:21:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Update CI to build with GHC 9.6.4","shortMessageHtmlLink":"Update CI to build with GHC 9.6.4"}},{"before":"c5e81b1d8ef56bac52661d52d1e1d15c2d50222e","after":"2d13b5075fa936f5abdf3e7cd194d7bb450d4197","ref":"refs/heads/enis/update-pact","pushedAt":"2024-04-26T15:16:01.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Update to latest pact (v4.11)","shortMessageHtmlLink":"Update to latest pact (v4.11)"}},{"before":null,"after":"c5e81b1d8ef56bac52661d52d1e1d15c2d50222e","ref":"refs/heads/enis/update-pact","pushedAt":"2024-04-26T15:12:51.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Update to latest pact (v4.11)","shortMessageHtmlLink":"Update to latest pact (v4.11)"}},{"before":"ea75d639912e7468d338688ce1b02ed731d03a57","after":null,"ref":"refs/heads/slp/preflight","pushedAt":"2024-02-26T16:07:08.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"sirlensalot","name":"Stuart Popejoy","path":"/sirlensalot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8353613?s=80&v=4"}},{"before":"db5b3d409568a89ea4ef529155de834d594f9223","after":"6fb7451b1883679441911ff7edca2cd3fb911932","ref":"refs/heads/master","pushedAt":"2024-02-26T16:07:05.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"sirlensalot","name":"Stuart Popejoy","path":"/sirlensalot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8353613?s=80&v=4"},"commit":{"message":"Merge pull request #32 from kadena-io/slp/preflight\n\nAdd preflight to --no-verify-sigs","shortMessageHtmlLink":"Merge pull request #32 from kadena-io/slp/preflight"}},{"before":null,"after":"ea75d639912e7468d338688ce1b02ed731d03a57","ref":"refs/heads/slp/preflight","pushedAt":"2024-02-22T22:37:28.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"sirlensalot","name":"Stuart Popejoy","path":"/sirlensalot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8353613?s=80&v=4"},"commit":{"message":"Add preflight to --no-verify-sigs","shortMessageHtmlLink":"Add preflight to --no-verify-sigs"}},{"before":"1b387f2a0133ebb8ab9037df7d8b64c55434f979","after":null,"ref":"refs/heads/enis/use-hs-nix-infra","pushedAt":"2023-11-17T08:49:05.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"}},{"before":"7f2868be95d778fa815fe39a9c20ffa0c66af55c","after":"db5b3d409568a89ea4ef529155de834d594f9223","ref":"refs/heads/master","pushedAt":"2023-11-17T08:48:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Migrate to hs-nix-infra for the Nix setup (#30)\n\nThis PR does the following:\r\n\r\n## Unify the GHC derivation used across Kadena projects\r\n\r\nInstead of depending on `nixpkgs` and `haskellNix` directly, this flake now depends on our new `hs-nix-infra` flake and uses the `nixpkgs` and `haskellNix` revisions provided by it. The hash of the `nixpkgs` and `haskellNix` flakes used for defining the `haskell.nix` `project` determines the hash of the GHC package that gets used to compile the Haskell modules. \r\n\r\nWhen multiple projects depend on `nixpkgs` and `haskellNix` independently, it's very hard (and not really well supported by nix CLI) to make sure that they don't deviate from each others' `nixpkgs` and `haskellNix` pins arbitrarily. I.e. updating two projects' `flake.lock` files at slightly different times is likely to cause one of the pins to be on a different revision, even though the difference doesn't matter functionally.\r\n\r\nThese unnecessarily different GHC packages put a lot of pressure on our CI infrastructure, taking hours to build functionally equivalent GHC packages and bloating the cache (with binaries from all the architectures we build and cache for). That also bloats the `/nix/store` of any `chainweb-data` user that wants to `nix build` an uncached `chainweb-data` version.\r\n\r\n### The new workflow for updating Haskell-Nix toolchain\r\n\r\nAfter this PR, the new workflow for managing our Haskell dependencies used by Nix will involve the following steps:\r\n* If an update to the toolchain is needed in order to fix the build, the first thing to try is to bump the `hs-nix-infra` dependency of this flake to the latest version. If that's not enough, we need to open a PR to `hs-nix-infra` to bump its proper input:\r\n * If we need to update our hackage pin so that we can build with newly released Haskell packages, we can just `nix flake lock --update-input hackage` and get a newer hackage snapshot without needing to introduce a new GHC derivation.\r\n * If we need to use a new GHC version provided by a newer `nixpkgs` version or if we need to bump our `haskellNix` pin for any reason we need to bump `nixpkgs` and `haskellNix`. The PR would preferably bump both of them to the latest version.\r\n\r\nHopefully, this new workflow will reduce the number of `nixpkgs` + `haskellNix` versions we depend on across our Haskell projects.\r\n\r\n## Add a `recursive` alternative to the `default` package\r\n\r\nAs part of the CI automation for this repo, we're building and caching the Nix binaries for `chainweb-data`, which makes it convenient for any user to `nix build` chainweb-data from any commit/branch since all the dependencies will come from our binary cache. However, even without building anything locally, *evaluating* the `default` package of this flake takes a significant amount of time and involves downloading ~2 GB of Nix dependencies. This is due to the complexity of what `haskellNix` does for us at Nix evaluation time.\r\n\r\nThis PR introduces a `recursive` package to this flake's output, which uses `recursive-nix` to push the Nix evaluation of the `default` package into the build of a derivation. This means, any user that tries to `nix build .#recursive` will fetch the chainweb-data binary from our cache without having to perform any complex Nix evaluation locally or downloading the Nix dependencies of any such evaluation as long as the `recursive` derivation they're building is already in our binary cache. If not, the `recursive-nix` derivation will be built locally (in which case make sure your local Nix setup has `recursive-nix` enabled), which is essentially as much work as building `default` itself. This might still be worthwhile however, since subsequent builds of the same `recursive` derivation will complete immediately, without having to evaluate the `default` derivation again.\r\n\r\n\r\n* Migrate to hs-nix-infra\r\n\r\n* Add a recursive output\r\n\r\n* Add the recursive output to nix.yml\r\n\r\n* Avoid merging the output with haskellNix flake\r\n\r\nInstead, expose its project object directly\r\n\r\n* Add a recursive version of bundled as well\r\n\r\n* Add bundled.recursive to nix.yml","shortMessageHtmlLink":"Migrate to hs-nix-infra for the Nix setup (#30)"}},{"before":"133bee099ee9831aa56ec6b0b35d8e9d69b744aa","after":"1b387f2a0133ebb8ab9037df7d8b64c55434f979","ref":"refs/heads/enis/use-hs-nix-infra","pushedAt":"2023-11-16T16:23:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Add bundled.recursive to nix.yml","shortMessageHtmlLink":"Add bundled.recursive to nix.yml"}},{"before":"9408ae859cc8bfa32df3132a6a4bf389b889e1fb","after":"133bee099ee9831aa56ec6b0b35d8e9d69b744aa","ref":"refs/heads/enis/use-hs-nix-infra","pushedAt":"2023-11-16T16:03:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Add a recursive version of bundled as well","shortMessageHtmlLink":"Add a recursive version of bundled as well"}},{"before":"e237e86251f5e8a839f5b56c3c38c315e877e067","after":"9408ae859cc8bfa32df3132a6a4bf389b889e1fb","ref":"refs/heads/enis/use-hs-nix-infra","pushedAt":"2023-11-16T13:25:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Avoid merging the output with haskellNix flake\n\nInstead, expose its project object directly","shortMessageHtmlLink":"Avoid merging the output with haskellNix flake"}},{"before":null,"after":"e237e86251f5e8a839f5b56c3c38c315e877e067","ref":"refs/heads/enis/use-hs-nix-infra","pushedAt":"2023-11-16T13:19:05.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Add the recursive output to nix.yml","shortMessageHtmlLink":"Add the recursive output to nix.yml"}},{"before":"5c554af122bfd7ebbbea85616bb1ef72d2c1f7de","after":"7f2868be95d778fa815fe39a9c20ffa0c66af55c","ref":"refs/heads/master","pushedAt":"2023-10-18T20:51:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"DevopsGoth","name":"June","path":"/DevopsGoth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/38109440?s=80&v=4"},"commit":{"message":"Update build.yml","shortMessageHtmlLink":"Update build.yml"}},{"before":"16ad0fe679f2d4ad8ff43b76524faffdad9f6e6c","after":"5c554af122bfd7ebbbea85616bb1ef72d2c1f7de","ref":"refs/heads/master","pushedAt":"2023-10-18T20:31:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"DevopsGoth","name":"June","path":"/DevopsGoth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/38109440?s=80&v=4"},"commit":{"message":"replacing outdated haskell action","shortMessageHtmlLink":"replacing outdated haskell action"}},{"before":null,"after":"37dbbec1033f0adfe2c184de636902bd7b8213cc","ref":"refs/heads/ci/bundle-output","pushedAt":"2023-09-22T06:16:55.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"DevopsGoth","name":"June","path":"/DevopsGoth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/38109440?s=80&v=4"},"commit":{"message":"Update nix.yml","shortMessageHtmlLink":"Update nix.yml"}},{"before":"73aa308838aca61e9d0e7325bc3457e82812e406","after":null,"ref":"refs/heads/enis/migrate-to-haskell-nix","pushedAt":"2023-09-20T17:54:26.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jwiegley","name":"John Wiegley","path":"/jwiegley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8460?s=80&v=4"}},{"before":"2e66c6afcc4a1bb48b475d0b7883611d516f9335","after":"16ad0fe679f2d4ad8ff43b76524faffdad9f6e6c","ref":"refs/heads/master","pushedAt":"2023-09-20T17:54:24.000Z","pushType":"pr_merge","commitsCount":9,"pusher":{"login":"jwiegley","name":"John Wiegley","path":"/jwiegley","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8460?s=80&v=4"},"commit":{"message":"Merge pull request #28 from kadena-io/enis/migrate-to-haskell-nix\n\nMigrate the Nix setup to flakes + haskell.nix","shortMessageHtmlLink":"Merge pull request #28 from kadena-io/enis/migrate-to-haskell-nix"}},{"before":"3369ddd8964326a3d4a6949ce17f24ff630e3965","after":"73aa308838aca61e9d0e7325bc3457e82812e406","ref":"refs/heads/enis/migrate-to-haskell-nix","pushedAt":"2023-09-15T13:04:19.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Replace legacy Nix setup with a flake-wrapper","shortMessageHtmlLink":"Replace legacy Nix setup with a flake-wrapper"}},{"before":"bb4baeca278fbd7233ecb6d33131d324382fc4b9","after":"f22151096737297c971cda7436b33aa38c49b726","ref":"refs/heads/ci/mac-arm","pushedAt":"2023-09-14T00:17:11.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"DevopsGoth","name":"June","path":"/DevopsGoth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/38109440?s=80&v=4"},"commit":{"message":"Update build.yml","shortMessageHtmlLink":"Update build.yml"}},{"before":null,"after":"bb4baeca278fbd7233ecb6d33131d324382fc4b9","ref":"refs/heads/ci/mac-arm","pushedAt":"2023-09-14T00:16:32.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"DevopsGoth","name":"June","path":"/DevopsGoth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/38109440?s=80&v=4"},"commit":{"message":"Update build.yml","shortMessageHtmlLink":"Update build.yml"}},{"before":"4cae4865fe0007a47f15375b5fac3b3ace328b0d","after":"3369ddd8964326a3d4a6949ce17f24ff630e3965","ref":"refs/heads/enis/migrate-to-haskell-nix","pushedAt":"2023-09-11T20:45:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Add a bundled kda-tool package to the flake","shortMessageHtmlLink":"Add a bundled kda-tool package to the flake"}},{"before":"5c267dc159c7bf18f425f67e80db42f2bbe183fe","after":"4cae4865fe0007a47f15375b5fac3b3ace328b0d","ref":"refs/heads/enis/migrate-to-haskell-nix","pushedAt":"2023-09-10T15:27:11.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Cache the nix develop dependencies","shortMessageHtmlLink":"Cache the nix develop dependencies"}},{"before":null,"after":"bfc5bd1ab64e2bf458a5467dee786598fb092a13","ref":"refs/heads/slp/support-legacy-yaml","pushedAt":"2023-09-10T04:07:28.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"sirlensalot","name":"Stuart Popejoy","path":"/sirlensalot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8353613?s=80&v=4"},"commit":{"message":"Support legacy YAML format","shortMessageHtmlLink":"Support legacy YAML format"}},{"before":"4f529ceab85b8a5a11eac62ed2ed00b48fd93886","after":"5c267dc159c7bf18f425f67e80db42f2bbe183fe","ref":"refs/heads/enis/migrate-to-haskell-nix","pushedAt":"2023-09-08T16:57:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Add a nix build and cache workflow","shortMessageHtmlLink":"Add a nix build and cache workflow"}},{"before":"eed839107c4c6a9d162c3426ee334c3f9a0f915d","after":"4f529ceab85b8a5a11eac62ed2ed00b48fd93886","ref":"refs/heads/enis/migrate-to-haskell-nix","pushedAt":"2023-09-08T15:27:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Add aarch64 system variants","shortMessageHtmlLink":"Add aarch64 system variants"}},{"before":null,"after":"eed839107c4c6a9d162c3426ee334c3f9a0f915d","ref":"refs/heads/enis/migrate-to-haskell-nix","pushedAt":"2023-09-08T15:24:06.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"enobayram","name":"Enis Bayramoğlu","path":"/enobayram","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1258139?s=80&v=4"},"commit":{"message":"Add haskell.nix based flake","shortMessageHtmlLink":"Add haskell.nix based flake"}},{"before":"db428dd596d53dc26c12798f676ccb296ce4e086","after":null,"ref":"refs/heads/edmund/add-tls-constraint","pushedAt":"2023-07-28T11:55:43.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"mightybyte","name":"Doug Beardsley","path":"/mightybyte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9451?s=80&v=4"}},{"before":"4149afa98de320ba8002310f20c2ca38242e8ca6","after":"2e66c6afcc4a1bb48b475d0b7883611d516f9335","ref":"refs/heads/master","pushedAt":"2023-07-28T11:55:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mightybyte","name":"Doug Beardsley","path":"/mightybyte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9451?s=80&v=4"},"commit":{"message":"Bound tls to avoid crypton breakage (#25)","shortMessageHtmlLink":"Bound tls to avoid crypton breakage (#25)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNS0wMVQxMToxOTowNS4wMDAwMDBazwAAAAQ-0zni","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNS0wMVQxMToxOTowNS4wMDAwMDBazwAAAAQ-0zni","endCursor":"Y3Vyc29yOnYyOpK7MjAyMy0wNy0yOFQxMTo1NTozMi4wMDAwMDBazwAAAANfK8zn"}},"title":"Activity · kadena-io/kda-tool"}