{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":644758085,"defaultBranch":"master","name":"haproxytime","ownerLogin":"frobware","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-05-24T07:40:22.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/943903?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1712229745.0","currentOid":""},"activityList":{"items":[{"before":"7d0a8d7c2cc0052e90c5cb407a222838e0e862bc","after":"27a858924b6c0a7e0d18f0fde232e1d43f33f800","ref":"refs/heads/master","pushedAt":"2024-04-04T11:21:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Use tagged release of github.com/frobware/comptime@v0.1.0\n\nRan: go mod tidy; go mod vendor","shortMessageHtmlLink":"Use tagged release of github.com/frobware/comptime@v0.1.0"}},{"before":"e18497d720879db19153a8dc0884fb6dd889f9ea","after":"7d0a8d7c2cc0052e90c5cb407a222838e0e862bc","ref":"refs/heads/master","pushedAt":"2024-04-04T11:07:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"github/workflows/go: bump actions to v4","shortMessageHtmlLink":"github/workflows/go: bump actions to v4"}},{"before":"de7f9f82c95be5391a6c736d9a93b3d2b3be0495","after":"e18497d720879db19153a8dc0884fb6dd889f9ea","ref":"refs/heads/master","pushedAt":"2024-04-04T11:05:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"github/workflows/go: s/main/master for push/PRs","shortMessageHtmlLink":"github/workflows/go: s/main/master for push/PRs"}},{"before":"c9c32c3059611ccef77c8ae9f870a4e7e79c695f","after":"de7f9f82c95be5391a6c736d9a93b3d2b3be0495","ref":"refs/heads/master","pushedAt":"2024-04-04T10:40:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Switch to github.com/frobware/comptime\n\nThe core parsing logic has moved to github.com/frobware/comptime.\n\nThe functionality for parsing human-readable time durations into\nmilliseconds, a cornerstone of `haproxytime`, is now hosted in a new,\ndedicated repository: `github.com/frobware/comptime`.","shortMessageHtmlLink":"Switch to github.com/frobware/comptime"}},{"before":"52b2b716228290cbeb30674d4a7c66c0739cd71e","after":"c9c32c3059611ccef77c8ae9f870a4e7e79c695f","ref":"refs/heads/master","pushedAt":"2024-02-18T23:17:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Integrate flake-compat and refine package definitions\n\nThis commit introduces flake-compat support to enhance the flake's\ncompatibility with systems and tools that may not fully support Nix\nFlakes directly. By leveraging flake-compat, this flake can now be\nused in environments that expect traditional Nix expressions, making\nit more accessible and versatile.\n\nKey changes include:\n\n- Addition of flake-compat as a dependency, enabling the flake to be\n imported as a standard Nix expression via default.nix. This\n adaptation ensures that the flake's outputs can be utilised in\n non-Flake Nix environments, broadening its usability.\n\n- Refinement of the overlay and package structures to derive the\n package set more directly from the overlay. This adjustment\n simplifies the flake's internal logic, making it clearer how\n packages are defined and where they come from.\n\n- The overlay now explicitly imports and applies versions from\n versions.nix, ensuring that all versions are directly accessible\n through the package set. This direct approach removes the need for\n intermediate attributes and simplifies access to packages.\n\n- In package.nix, nativeBuildInputs are now explicitly listed,\n enhancing clarity and ensuring that all build dependencies are\n correctly specified. This change improves the build environment for\n development and packaging.\n\n- The flake's outputs have been adjusted to reflect these changes,\n including the proper application of overlays to packages and the\n streamlined definition of development shells. These adjustments\n ensure that the flake remains coherent and functional across a\n variety of systems and usage scenarios.\n\nOverall, the integration of flake-compat and the refinement of package\nand overlay definitions enhance the flake's compatibility and\nusability, making it easier to work with across different Nix\nenvironments.","shortMessageHtmlLink":"Integrate flake-compat and refine package definitions"}},{"before":"38cf0190b7310d1ae58fde2dd990cd148283331e","after":"c9c32c3059611ccef77c8ae9f870a4e7e79c695f","ref":"refs/heads/flake-compat","pushedAt":"2024-02-18T23:16:16.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Integrate flake-compat and refine package definitions\n\nThis commit introduces flake-compat support to enhance the flake's\ncompatibility with systems and tools that may not fully support Nix\nFlakes directly. By leveraging flake-compat, this flake can now be\nused in environments that expect traditional Nix expressions, making\nit more accessible and versatile.\n\nKey changes include:\n\n- Addition of flake-compat as a dependency, enabling the flake to be\n imported as a standard Nix expression via default.nix. This\n adaptation ensures that the flake's outputs can be utilised in\n non-Flake Nix environments, broadening its usability.\n\n- Refinement of the overlay and package structures to derive the\n package set more directly from the overlay. This adjustment\n simplifies the flake's internal logic, making it clearer how\n packages are defined and where they come from.\n\n- The overlay now explicitly imports and applies versions from\n versions.nix, ensuring that all versions are directly accessible\n through the package set. This direct approach removes the need for\n intermediate attributes and simplifies access to packages.\n\n- In package.nix, nativeBuildInputs are now explicitly listed,\n enhancing clarity and ensuring that all build dependencies are\n correctly specified. This change improves the build environment for\n development and packaging.\n\n- The flake's outputs have been adjusted to reflect these changes,\n including the proper application of overlays to packages and the\n streamlined definition of development shells. These adjustments\n ensure that the flake remains coherent and functional across a\n variety of systems and usage scenarios.\n\nOverall, the integration of flake-compat and the refinement of package\nand overlay definitions enhance the flake's compatibility and\nusability, making it easier to work with across different Nix\nenvironments.","shortMessageHtmlLink":"Integrate flake-compat and refine package definitions"}},{"before":null,"after":"38cf0190b7310d1ae58fde2dd990cd148283331e","ref":"refs/heads/flake-compat","pushedAt":"2024-02-18T23:11:15.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Add flake-compat support","shortMessageHtmlLink":"Add flake-compat support"}},{"before":"bcb5e07d27868ada78fb4faf1666a8186adf0b80","after":"52b2b716228290cbeb30674d4a7c66c0739cd71e","ref":"refs/heads/master","pushedAt":"2024-02-04T22:36:07.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"flake.lock: Update\n\nFlake lock file updates:\n\n• Updated input 'nixpkgs':\n 'github:NixOS/nixpkgs/5148520bfab61f99fd25fb9ff7bfbb50dad3c9db' (2023-09-17)\n → 'github:NixOS/nixpkgs/79a13f1437e149dc7be2d1290c74d378dad60814' (2024-02-03)","shortMessageHtmlLink":"flake.lock: Update"}},{"before":"12de5250e302639fc90eef5d8d305c5d8d559bee","after":"bcb5e07d27868ada78fb4faf1666a8186adf0b80","ref":"refs/heads/master","pushedAt":"2023-12-29T10:40:36.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Update haproxytimeout usage\n\nCorrected the tool's description to reflect its capability to convert\nonly one human-readable time duration to milliseconds at a time.","shortMessageHtmlLink":"Update haproxytimeout usage"}},{"before":"f9faf62a2bea4c00b0f52db202f93c2c9ee9dce0","after":"12de5250e302639fc90eef5d8d305c5d8d559bee","ref":"refs/heads/master","pushedAt":"2023-11-24T23:01:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"cmd/haproxytimeout: simplify testing the version flag","shortMessageHtmlLink":"cmd/haproxytimeout: simplify testing the version flag"}},{"before":"a58c3be2d8ebf8e27ea025a7ac67362353eb5714","after":"f9faf62a2bea4c00b0f52db202f93c2c9ee9dce0","ref":"refs/heads/master","pushedAt":"2023-11-24T21:48:29.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Add unit test for non-positional error handling\n\nImplemented a new unit test to validate the handling of non-positional\nerrors in the PrintPositionalError function. This test ensures that\nwhen an error without positional information is encountered,\nPrintPositionalError outputs a generic error message and exits with\nthe appropriate code.\n\nThe test was designed to directly invoke PrintPositionalError instead\nof using the convertDuration function. This approach was chosen due to\nthe complexity of weaving dependency injection through all paths of\nconvertDuration. Implementing such a change would have led to an\nunnatural and potentially convoluted design. This test attempts to\nstrike a balance between thoroughness in testing and maintaining the\nsimplicity and clarity of the codebase.","shortMessageHtmlLink":"Add unit test for non-positional error handling"}},{"before":"58c5bdb93adc88d68fac6fb6bc937034aa989ead","after":"a58c3be2d8ebf8e27ea025a7ac67362353eb5714","ref":"refs/heads/master","pushedAt":"2023-11-20T13:15:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Add clarifying comments to ParseDuration function\n\nThe change explains the reasoning behind updating the 'position'\nvariable before checking for any errors when in single-unit mode.","shortMessageHtmlLink":"Add clarifying comments to ParseDuration function"}},{"before":"b208193c3e35c4e6a31ffef128a08c0b6a6fb5d5","after":"58c5bdb93adc88d68fac6fb6bc937034aa989ead","ref":"refs/heads/master","pushedAt":"2023-11-20T12:41:05.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Add installation one-liner to README.md\n\nThis commit introduces a convenient one-liner command in the README.md\nfor installing the haproxytimeout utility with versioning information.\nThe command leverages `go install` with extended `ldflags` to embed\nversioning information directly into the build.","shortMessageHtmlLink":"Add installation one-liner to README.md"}},{"before":"da88b87cbb85a7f57e01b357ef7611c798e122a9","after":"b208193c3e35c4e6a31ffef128a08c0b6a6fb5d5","ref":"refs/heads/master","pushedAt":"2023-11-19T19:14:11.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Refactor version handling and testing in haproxytimeout\n\n- Moved `version` function to export_test.go for enhanced testability.\n\n- Modified `version` function to directly return `buildVersion`.\n\n- Updated usage of `version` in main application logic.\n\n- Added new tests: `TestVersion_Default` and `TestVersion_Override`\n for more robust version testing.\n\n - `TestVersion_Default` checks the default behavior of `version`.\n - `TestVersion_Override` tests the overridden behavior of `version`.\n\n- Adjusted `TestConvertDuration` to align with the refactored version\n handling.\n\nThese changes aim to streamline version management and improve test\ncoverage for version-related functionality in haproxytimeout.","shortMessageHtmlLink":"Refactor version handling and testing in haproxytimeout"}},{"before":"531d657fe4f66ae546e0d0e83d3a3a08dde55da9","after":"da88b87cbb85a7f57e01b357ef7611c798e122a9","ref":"refs/heads/master","pushedAt":"2023-11-19T09:00:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Refactor printPositionalError for Improved Error Handling\n\nThis commit refactors the printPositionalError function in the\nhaproxytimeout tool. The changes involve using an interface to handle\ndifferent error types with positional information (SyntaxError,\nOverflowError, RangeError) in a unified manner. This approach\nsimplifies the error checking logic, makes the code more maintainable,\nand improves the clarity of the function's intent.\n\nAdditionally, an explicit nil check after the type assertion is added\nto address potential nil panic warnings from static analysis tools\nlike Nilaway. A comment is also included next to the panic statement\nto clearly indicate the conditions under which the panic is triggered.\n\nThese changes enhance the robustness and readability of the error\nhandling mechanism in the haproxytimeout tool.","shortMessageHtmlLink":"Refactor printPositionalError for Improved Error Handling"}},{"before":"8cc767492c8010a5a7eb5f6d70cc3d00f68721ec","after":"531d657fe4f66ae546e0d0e83d3a3a08dde55da9","ref":"refs/heads/master","pushedAt":"2023-11-02T21:39:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Update comment for maxTimeout to reflect HAProxy config limits\n\nAdjusted the comment for the maxTimeout constant to clarify that the\nlimit is derived from HAProxy's maximum allowable timeout value. The\ncomment now includes a note about the practical enforcement of this\nlimit in HAProxy configurations, applicable to both 32-bit and 64-bit\nsystems.","shortMessageHtmlLink":"Update comment for maxTimeout to reflect HAProxy config limits"}},{"before":"ebb44ea38d4657ec371acf44448350eddc74d55c","after":"8cc767492c8010a5a7eb5f6d70cc3d00f68721ec","ref":"refs/heads/master","pushedAt":"2023-11-02T17:19:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Introduce RangeError and RangeChecker for duration parsing\n\nAdd RangeError struct and RangeChecker callback functionality to\nhaproxytime's duration parser. This enhancement allows custom range\nconstraints on parsed durations, giving callers control over the\nlimits and enabling early termination of the parsing process based on\nthese user-defined boundaries.\n\nUpdate error reporting to include the new RangeError type and clarify\nexisting error messages with 1-based indexing for positions in error\noutputs.","shortMessageHtmlLink":"Introduce RangeError and RangeChecker for duration parsing"}},{"before":"a177c39918482b911f402051b799084ea15acd26","after":"ebb44ea38d4657ec371acf44448350eddc74d55c","ref":"refs/heads/master","pushedAt":"2023-11-02T17:05:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"haproxytimeout: Refactor readAll function to limit input size\n\nRefactor the readAll function to accept a maxBytes parameter, enabling\nit to read up to a specified limit of bytes from an io.Reader. This\nmodification introduces a protection against excessive memory\nconsumption when dealing with unrestricted input sources. Update the\ngetInputSource function to incorporate the new maxBytes argument, with\na default setting of 256 bytes.","shortMessageHtmlLink":"haproxytimeout: Refactor readAll function to limit input size"}},{"before":"681de04737131cf3d995e9334bb7c0c8706d5844","after":"a177c39918482b911f402051b799084ea15acd26","ref":"refs/heads/master","pushedAt":"2023-10-12T22:03:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Remove reference to HAProxy's maximum duration limit in duration_parser.","shortMessageHtmlLink":"Remove reference to HAProxy's maximum duration limit in duration_parser."}},{"before":"4624577ecb3b0b5fc3317617fa063948d1d33db6","after":"681de04737131cf3d995e9334bb7c0c8706d5844","ref":"refs/heads/master","pushedAt":"2023-10-12T21:04:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Drop version.nix","shortMessageHtmlLink":"Drop version.nix"}},{"before":"d1d50b208fd38c8c60a3d6d14ceb82582961820e","after":"4624577ecb3b0b5fc3317617fa063948d1d33db6","ref":"refs/heads/master","pushedAt":"2023-10-12T19:00:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Unravel recent build changes","shortMessageHtmlLink":"Unravel recent build changes"}},{"before":"6e654630c1a7f82aa9d0c08690cb7d531ad3364d","after":null,"ref":"refs/heads/release-0.3.3-pre","pushedAt":"2023-10-10T21:05:57.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"}},{"before":"6a8cce9740175974460f32935feb1b19ecdd9dc4","after":null,"ref":"refs/heads/release-v0.3.6-unknown","pushedAt":"2023-10-10T21:05:45.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"}},{"before":"595a6c72dc045ab6311baa92066ce61d973d8234","after":null,"ref":"refs/tags/v0.3.6","pushedAt":"2023-10-10T21:04:56.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"}},{"before":null,"after":"6a8cce9740175974460f32935feb1b19ecdd9dc4","ref":"refs/heads/release-v0.3.6-unknown","pushedAt":"2023-10-10T21:02:20.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Merge tag 'v0.3.6'","shortMessageHtmlLink":"Merge tag 'v0.3.6'"}},{"before":"9910c99dfcc9a8042b93c29d0c33b6bf04c91782","after":null,"ref":"refs/tags/v0.0.1","pushedAt":"2023-10-10T21:01:34.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"}},{"before":"8a1bcde7bd89d360d769c310a30024be69002b25","after":"d1d50b208fd38c8c60a3d6d14ceb82582961820e","ref":"refs/heads/master","pushedAt":"2023-10-10T20:22:36.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Update build.go and version.nix for version 0.3.7","shortMessageHtmlLink":"Update build.go and version.nix for version 0.3.7"}},{"before":"28dad132a362b55951bcf3e0d359c3f267f46a44","after":"8a1bcde7bd89d360d769c310a30024be69002b25","ref":"refs/heads/master","pushedAt":"2023-10-10T20:13:01.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Update build.go and version.nix for version 0.3.6","shortMessageHtmlLink":"Update build.go and version.nix for version 0.3.6"}},{"before":"285408090427ad02828c98864a3b2ad3dedbde5f","after":null,"ref":"refs/tags/v0.3.5","pushedAt":"2023-10-10T20:02:26.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"}},{"before":"b25d1d7a1302610c5c0d31f5768c36b798fbea38","after":"28dad132a362b55951bcf3e0d359c3f267f46a44","ref":"refs/heads/master","pushedAt":"2023-10-10T19:58:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"frobware","name":"Andrew McDermott","path":"/frobware","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/943903?s=80&v=4"},"commit":{"message":"Update build.go and version.nix for version 0.3.5","shortMessageHtmlLink":"Update build.go and version.nix for version 0.3.5"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEJ7OVoAA","startCursor":null,"endCursor":null}},"title":"Activity · frobware/haproxytime"}