{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":602203117,"defaultBranch":"main","name":"capability","ownerLogin":"kolyshkin","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2023-02-15T18:01:40.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/4522509?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1722502845.0","currentOid":""},"activityList":{"items":[{"before":"bd8c540122476c1408518e364fac2c4aa8de8e72","after":null,"ref":"refs/heads/011","pushedAt":"2024-08-01T08:59:45.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"}},{"before":"4715f7ebce706020e120fd7e4c6f16be67e8b160","after":"d1331df7ef9b2f2e21f5ec73fd7a051a7cc9e15e","ref":"refs/heads/main","pushedAt":"2024-08-01T08:59:44.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"CHANGELOG: add v0.1.1 changes (#13)","shortMessageHtmlLink":"CHANGELOG: add v0.1.1 changes (#13)"}},{"before":"04f4781b1ca7072e636be129e64991adfc872113","after":"bd8c540122476c1408518e364fac2c4aa8de8e72","ref":"refs/heads/011","pushedAt":"2024-08-01T08:58:36.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"CHANGELOG: add v0.1.1 changes\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"CHANGELOG: add v0.1.1 changes"}},{"before":"cf3b5c1f34426c34c0e8c939fcc23c8d152d3310","after":null,"ref":"refs/heads/ci","pushedAt":"2024-08-01T08:56:23.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"}},{"before":"f30e4faad64900e188cf67f5a79c594e1781f766","after":null,"ref":"refs/heads/linter","pushedAt":"2024-08-01T08:56:16.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"}},{"before":"39afd3ea2debd4fcd4cf4a313de7fff1363d8f69","after":null,"ref":"refs/heads/linter-warnings","pushedAt":"2024-08-01T08:55:58.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"}},{"before":"4d79446943b85de52b0a52d4e229a8131d16989f","after":null,"ref":"refs/heads/fix-apply-amb","pushedAt":"2024-08-01T08:55:52.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"}},{"before":"7902c338400bd2ba0b5056ed2505df9ed06373f3","after":null,"ref":"refs/heads/drop-old-code","pushedAt":"2024-08-01T08:55:42.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"}},{"before":null,"after":"04f4781b1ca7072e636be129e64991adfc872113","ref":"refs/heads/011","pushedAt":"2024-08-01T08:55:36.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"CHANGELOG: add v0.1.1 changes\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"CHANGELOG: add v0.1.1 changes"}},{"before":"64aba4bc0fc3e1a4b129e712183838d007eb1ba9","after":null,"ref":"refs/heads/really-fix-compat","pushedAt":"2024-08-01T08:50:44.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"}},{"before":"90a71a3deb678cf887c2ba5a7ae67f51f9c79d89","after":"4715f7ebce706020e120fd7e4c6f16be67e8b160","ref":"refs/heads/main","pushedAt":"2024-08-01T08:50:42.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"Really fix future kernel compatibility (#11)\n\nEarlier commit (see #1) made sure we don't error out if the kernel\r\ncapability version is unknown; this ensures compatibility with future\r\nkernels.\r\n\r\nLooking at the code, I realized p.hdr.version should be initialized to\r\nlinuxCapVer3 in that case, not the version returned by the kernel,\r\notherwise we supply v3 data structure with (say) v4 version set in\r\nheader.\r\n\r\nPractically, this was not a real bug (yet) because v4 is not (yet)\r\navailable, but if it will ever be introduced later, this fix makes us\r\nready.\r\n\r\nFixes: 558410569e2151 (\"Fix future version compatibility\")","shortMessageHtmlLink":"Really fix future kernel compatibility (#11)"}},{"before":"6854da2a80bd347a24c9965094eb47740ccb7e50","after":"64aba4bc0fc3e1a4b129e712183838d007eb1ba9","ref":"refs/heads/really-fix-compat","pushedAt":"2024-08-01T08:49:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"Really fix future kernel compatibility\n\nEarlier commit made sure we don't error out if the kernel capability\nversion is unknown; this ensures compatibility with future kernels.\n\nLooking at the code, I realized p.hdr.version should be initialized to\nlinuxCapVer3 in that case, not the version returned by the kernel,\notherwise we supply v3 data structure with (say) v4 version set in\nheader.\n\nPractically, this was not a real bug (yet) because v4 is not (yet)\navailable, but if it will ever be introduced later, this fix makes us\nready.\n\nFixes: 558410569e2151 (\"Fix future version compatibility\")\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"Really fix future kernel compatibility"}},{"before":"307cfd859d379af5c1a7e99b37e73468cccb5e1d","after":null,"ref":"refs/heads/last-cap-doc-improve","pushedAt":"2024-08-01T08:46:13.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"}},{"before":"4c1b30bd3def045a47c6d7d779a0b7738526c0fc","after":"90a71a3deb678cf887c2ba5a7ae67f51f9c79d89","ref":"refs/heads/main","pushedAt":"2024-08-01T08:46:11.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"Merge pull request #12 from kolyshkin/last-cap-doc-improve\n\nWrap LastCap to improve doc","shortMessageHtmlLink":"Merge pull request #12 from kolyshkin/last-cap-doc-improve"}},{"before":null,"after":"307cfd859d379af5c1a7e99b37e73468cccb5e1d","ref":"refs/heads/last-cap-doc-improve","pushedAt":"2024-08-01T08:44:49.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"Wrap LastCap to improve doc\n\nAs LastCap is a variable, it is shown in the documentation as a variable\n(see [1]). This is both ugly and unsafe (a variable can be changed).\n\nWrap it into a proper function.\n\n[1]: https://pkg.go.dev/github.com/kolyshkin/capability@v0.1.0#pkg-variables\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"Wrap LastCap to improve doc"}},{"before":null,"after":"6854da2a80bd347a24c9965094eb47740ccb7e50","ref":"refs/heads/really-fix-compat","pushedAt":"2024-07-31T23:47:37.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"Really fix future kernel compatibility\n\nEarlier commit made sure we don't error out if the kernel capability\nversion is unknown; this ensures compatibility with future kernels.\n\nLooking at the code, I realized p.hdr.version should be initialized to\nlinuxCapVer3 in that case, not the version returned by the kernel,\notherwise we supply v3 data structure with (say) v4 version set in\nheader.\n\nPractically, this was not a real bug (yet) because v4 is not (yet)\navailable, but if it will ever be introduced later, this fix makes us\nready.\n\nFixes: 558410569e2151 (\"Fix future version compatibility\")\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"Really fix future kernel compatibility"}},{"before":"f3b1dbaef6bd5b72925123454a6f5160dfa73f47","after":null,"ref":"refs/heads/readme","pushedAt":"2024-07-31T22:33:26.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"}},{"before":"271809a9544241e93c7560620b4f84c25668df39","after":"4c1b30bd3def045a47c6d7d779a0b7738526c0fc","ref":"refs/heads/main","pushedAt":"2024-07-31T22:33:24.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"Merge pull request #10 from kolyshkin/readme\n\nAdd README and CHANGELOG","shortMessageHtmlLink":"Merge pull request #10 from kolyshkin/readme"}},{"before":"de02356bc4432e80dd37a4af8d75e6e4af3e625a","after":"f3b1dbaef6bd5b72925123454a6f5160dfa73f47","ref":"refs/heads/readme","pushedAt":"2024-07-31T18:18:12.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"Add README and CHANGELOG\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"Add README and CHANGELOG"}},{"before":"338d3c89ad7d91bed48b52a3fa8d4c6269f10397","after":null,"ref":"refs/heads/errorlint","pushedAt":"2024-07-31T18:07:12.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"}},{"before":"9289123ffd7811880d993f1595a8d4aa29120dcd","after":"271809a9544241e93c7560620b4f84c25668df39","ref":"refs/heads/main","pushedAt":"2024-07-31T18:07:10.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"Merge pull request #9 from kolyshkin/errorlint\n\nci: add errorlint","shortMessageHtmlLink":"Merge pull request #9 from kolyshkin/errorlint"}},{"before":"66c4524ac895e96a7d3c3c6224ea978f8f46fff4","after":"338d3c89ad7d91bed48b52a3fa8d4c6269f10397","ref":"refs/heads/errorlint","pushedAt":"2024-07-31T18:03:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"ci: add errorlint\n\nWith the added linter, it complains like this:\n\n> capability_linux.go:349:22: type assertion on error will fail on wrapped errors. Use errors.As to check for specific errors (errorlint)\n\nIn fact, errors from syscall.Syscall6 used by prctl are bare Errno\nvalues. This means there is no need for a type assertion, so let's\nremove it:\n\n\t> - if errno, ok := err.(syscall.Errno); ok && errno == syscall.EINVAL {\n\t> + if err == syscall.EINVAL {\n\nWith that change, we're still getting error from the linter, a bit\ndifferent one:\n\n> capability_linux.go:349:9: comparing with == will fail on wrapped errors. Use errors.Is to check for a specific error (errorlint)\n\nSo, we still need to silence it, by adding a nolint annotation.\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"ci: add errorlint"}},{"before":"634ecd5779f0aea2691a030a3f4d91f85f7a547e","after":"9289123ffd7811880d993f1595a8d4aa29120dcd","ref":"refs/heads/main","pushedAt":"2024-07-31T18:03:09.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"Merge pull request #8 from kolyshkin/ci\n\nci: add some basic GHA checks","shortMessageHtmlLink":"Merge pull request #8 from kolyshkin/ci"}},{"before":null,"after":"66c4524ac895e96a7d3c3c6224ea978f8f46fff4","ref":"refs/heads/errorlint","pushedAt":"2024-07-31T00:18:11.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"ci: add errorlint\n\nWith the added linter, it complains like this:\n\n> capability_linux.go:349:22: type assertion on error will fail on wrapped errors. Use errors.As to check for specific errors (errorlint)\n\nIn fact, errors from syscall.Syscall6 used by prctl are bare Errno\nvalues. This means there is no need for a type assertion, so let's\nremove it:\n\n\t> - if errno, ok := err.(syscall.Errno); ok && errno == syscall.EINVAL {\n\t> + if err == syscall.EINVAL {\n\nWith that change, we're still getting error from the linter, a bit\ndifferent one:\n\n> capability_linux.go:349:9: comparing with == will fail on wrapped errors. Use errors.Is to check for a specific error (errorlint)\n\nSo, we still need to silence it, by adding a nolint annotation.\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"ci: add errorlint"}},{"before":"008efcf6314cece01352bad187b71ae9740f91cf","after":"cf3b5c1f34426c34c0e8c939fcc23c8d152d3310","ref":"refs/heads/ci","pushedAt":"2024-07-31T00:10:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"Use gofumpt to format code\n\nBrought to you by gofumpt v0.6.0 (go1.22.4).\n\nAdd a CI action to check code is gofumpt'ed.\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"Use gofumpt to format code"}},{"before":"0e90786412961a28035fbf65cc76e71c6ce00c34","after":"008efcf6314cece01352bad187b71ae9740f91cf","ref":"refs/heads/ci","pushedAt":"2024-07-30T23:48:26.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"ci: add some basic GHA checks\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"ci: add some basic GHA checks"}},{"before":"ddfc03a7b03e32b13578992d386dd5114517c221","after":"0e90786412961a28035fbf65cc76e71c6ce00c34","ref":"refs/heads/ci","pushedAt":"2024-07-30T23:46:48.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"ci: add some basic GHA checks\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"ci: add some basic GHA checks"}},{"before":"f620e3cb7d794bca072f7b9b47c7f28b503a5801","after":"ddfc03a7b03e32b13578992d386dd5114517c221","ref":"refs/heads/ci","pushedAt":"2024-07-30T23:38:47.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"ci: add some basic GHA checks\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"ci: add some basic GHA checks"}},{"before":"3d21b941a9082fdca93d21d9e717592ddee688db","after":"f620e3cb7d794bca072f7b9b47c7f28b503a5801","ref":"refs/heads/ci","pushedAt":"2024-07-30T23:37:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"ci: add some basic GHA checks\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"ci: add some basic GHA checks"}},{"before":null,"after":"3d21b941a9082fdca93d21d9e717592ddee688db","ref":"refs/heads/ci","pushedAt":"2024-07-30T23:35:19.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"kolyshkin","name":"Kir Kolyshkin","path":"/kolyshkin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4522509?s=80&v=4"},"commit":{"message":"ci: add some basic GHA checks\n\nSigned-off-by: Kir Kolyshkin ","shortMessageHtmlLink":"ci: add some basic GHA checks"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOC0wMVQwODo1OTo0NS4wMDAwMDBazwAAAASO6vNd","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOC0wMVQwODo1OTo0NS4wMDAwMDBazwAAAASO6vNd","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNy0zMFQyMzozNToxOS4wMDAwMDBazwAAAASNf8kF"}},"title":"Activity ยท kolyshkin/capability"}