{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":209183899,"defaultBranch":"main","name":"sharded-slab","ownerLogin":"hawkw","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2019-09-18T00:45:44.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/2796466?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1696448342.0","currentOid":""},"activityList":{"items":[{"before":"40579b92debe2ef283a455eb379945e023080ff3","after":"ee45b4cfa79408fc46893a67f2d3005f79e4e04c","ref":"refs/heads/main","pushedAt":"2024-03-31T17:48:36.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"style: satisfy clippy","shortMessageHtmlLink":"style: satisfy clippy"}},{"before":"55996217af2bdb43e771056a8af3301f25e0680b","after":"40579b92debe2ef283a455eb379945e023080ff3","ref":"refs/heads/main","pushedAt":"2023-10-04T19:37:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"chore: prepare to release v0.1.7\n\n### v0.1.7 (2023-10-04)\n\n#### Bug Fixes\n\n* index out of bounds in `get()` and `get_owned()` (#88) (fdbc930f)\n* **unique_iter:** prevent panics if a slab is empty (#88) (bd599e0b,\n closes #73)","shortMessageHtmlLink":"chore: prepare to release v0.1.7"}},{"before":"eccd94cea357728b1f1cc4ecb8b51ccb7e1d208e","after":"55996217af2bdb43e771056a8af3301f25e0680b","ref":"refs/heads/main","pushedAt":"2023-10-04T18:35:35.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"chore(ci): don't require nightly to pass (#89)\n\nThis changes the nightly CI build to not be required. This is because\nnightly Rust may contain regressions that incorrectly break our build.\nIf such a regression occurs, this is a Rustc bug rather than an issue\nwith a PR, and we should still be able to merge the PR. The purpose of\nthe nightly CI build is to warn us if something is broken on nightly so\nthat we can open issues against Rust upstream for nightly regressions,\nrather than as a gatekeeper for merging PRs.","shortMessageHtmlLink":"chore(ci): don't require nightly to pass (#89)"}},{"before":"3cb6adb6ccd1bda5b55419cd9a764f377301663d","after":"d0f17703a0d20b51274f5e0f8baa0d9cc50d187c","ref":"refs/heads/eliza/more-ci-fixes","pushedAt":"2023-10-04T18:30:35.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"chore(ci): don't require nightly to pass (#89)\n\nThis changes the nightly CI build to not be required. This is because\nnightly Rust may contain regressions that incorrectly break our build.\nIf such a regression occurs, this is a Rustc bug rather than an issue\nwith a PR, and we should still be able to merge the PR. The purpose of\nthe nightly CI build is to warn us if something is broken on nightly so\nthat we can open issues against Rust upstream for nightly regressions,\nrather than as a gatekeeper for merging PRs.","shortMessageHtmlLink":"chore(ci): don't require nightly to pass (#89)"}},{"before":null,"after":"3cb6adb6ccd1bda5b55419cd9a764f377301663d","ref":"refs/heads/eliza/more-ci-fixes","pushedAt":"2023-10-04T18:24:03.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"chore(ci): add job for everything passing\n\nThis way, we can use that as the required check for merging PRs, so we\ndon't have to depend on a bunch of stuff in the GitHub branch protection\nsettings. This means that the required checks are defined in the CI\nconfig file, rather than in the UI, and if we change job names\nor add new checks, we can add them to the requirements in `ci.yml`\ninstead of the repo settings.","shortMessageHtmlLink":"chore(ci): add job for everything passing"}},{"before":"5495def5ad81d74bcba5d89e5c36888f39839ec5","after":"eccd94cea357728b1f1cc4ecb8b51ccb7e1d208e","ref":"refs/heads/main","pushedAt":"2023-10-04T18:15:54.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"chore(ci): move msrv check to a dedicated job (#88)\n\n* Add `msrv` job\n* Add `RUST_BACKTRACE=1`\n* Add `-Dwarnings`\n* Fix clippy warnings in benches\n* Make job naming more consistent","shortMessageHtmlLink":"chore(ci): move msrv check to a dedicated job (#88)"}},{"before":"d2cff795c032ae4002c82125f4f8ba2c9d265b77","after":"5495def5ad81d74bcba5d89e5c36888f39839ec5","ref":"refs/heads/main","pushedAt":"2023-10-04T18:14:25.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"fix(ci): move msrv check to a dedicated job\n\n* Add `msrv` job\n* Add `RUST_BACKTRACE=1`\n* Add `-Dwarnings`\n* Fix clippy warnings in benches\n* Make job naming more consistent","shortMessageHtmlLink":"fix(ci): move msrv check to a dedicated job"}},{"before":"e4d6482db05d5767b47eae1b0217faad30f2ebd5","after":"d2cff795c032ae4002c82125f4f8ba2c9d265b77","ref":"refs/heads/main","pushedAt":"2023-09-27T23:41:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"chore: prepare to release v0.1.6\n\n#### Features\n\n* publicly export `UniqueIter` (#87)\n ([e4d6482d](https://github.com/hawkw/sharded-slab/commit/e4d6482db05d5767b47eae1b0217faad30f2ebd5),\n closes [#77](https://github.com/hawkw/sharded-slab/issues/77))\n\n#### Bug Fixes\n\n* use a smaller `CustomConfig` for 32-bit tests (#84)\n ([828ffff9](https://github.com/hawkw/sharded-slab/commit/828ffff9f82cfc41ed66b4743563c4dddc97c1ce),\n closes [#82](https://github.com/hawkw/sharded-slab/issues/82))","shortMessageHtmlLink":"chore: prepare to release v0.1.6"}},{"before":"bc021b587eaf7d2a36ba1257e71217c25862805b","after":"e4d6482db05d5767b47eae1b0217faad30f2ebd5","ref":"refs/heads/main","pushedAt":"2023-09-27T21:19:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"feat: publicly export `UniqueIter` (#87)\n\nThis type is returned by a public method, but it isn't publicly\r\nre-exported. This means that it cannot currently be named in downstream\r\ncode, and the documentation for its `Iterator` implementation is not\r\nrendered in RustDoc. This is an oversight on my part, as the type was\r\nintended to be public.\r\n\r\nThis commit fixes that, by publicly re-exporting `UniqueIter`. In\r\naddition, I've added some improved documentation for `UniqueIter`, which\r\nshould help users to understand its guarantees.\r\n\r\nFixes #77","shortMessageHtmlLink":"feat: publicly export UniqueIter (#87)"}},{"before":null,"after":"341453a617bf98cab17ac8d7f2d461705b2674c7","ref":"refs/heads/eliza/pub-unique-iter","pushedAt":"2023-09-27T21:15:39.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"feat: publicly export `UniqueIter`\n\nThis type is returned by a public method, but it isn't publicly\nre-exported. This means that it cannot currently be named in downstream\ncode, and the documentation for its `Iterator` implementation is not\nrendered in RustDoc. This is an oversight on my part, as the type was\nintended to be public.\n\nThis commit fixes that, by publicly re-exporting `UniqueIter`. In\naddition, I've added some improved documentation for `UniqueIter`, which\nshould help users to understand its guarantees.\n\nFixes #77","shortMessageHtmlLink":"feat: publicly export UniqueIter"}},{"before":"0efa42ff6101fd23186442ccd2ce64a1088c06e6","after":"bc021b587eaf7d2a36ba1257e71217c25862805b","ref":"refs/heads/main","pushedAt":"2023-09-27T18:46:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"test: add a test reproducing #83 (#85)\n\nThis commit adds an integration test reproducing #83.\r\n\r\nI ran this test before and after the changes from PR #80, and I can\r\nconfirm that the test fails without the changes from #80, but passes\r\nafter #80. So, this means that #80 fixed the issue described in #83!\r\n\r\nFixes #80","shortMessageHtmlLink":"test: add a test reproducing #83 (#85)"}},{"before":"081e5325419e74d12df2f111bf80c8f85b87e321","after":"1a35348de58e10f2f13eda2387f8587fe712bc9a","ref":"refs/heads/eliza/test-mem-leak","pushedAt":"2023-09-27T18:42:43.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"Merge branch 'main' into eliza/test-mem-leak","shortMessageHtmlLink":"Merge branch 'main' into eliza/test-mem-leak"}},{"before":"16a26392a5baa2f9f95adcaddf0a652884124868","after":"0efa42ff6101fd23186442ccd2ce64a1088c06e6","ref":"refs/heads/main","pushedAt":"2023-09-27T18:42:30.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"chore(CI): use musl for 32-bit builds (#86)\n\nThis branch changes the 32-bit CI builds to use a musl toolchain rather\r\nthan glibc, so that CI can stop complaining that there's no 32-bit\r\nglibc.\r\n\r\nAdditionally, I fixed some compilation errors in the tests on 32-bit\r\nsystems, which were merged accidentally because of automerge being\r\nconfigured slightly wrongly.","shortMessageHtmlLink":"chore(CI): use musl for 32-bit builds (#86)"}},{"before":"e057d13435712ed80ecd8791659de41d1ad9e1f7","after":"eda23dcd12b690e9c0fc6cd4152cc6aade7b9033","ref":"refs/heads/eliza/use-musl","pushedAt":"2023-09-27T18:39:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"fix tests","shortMessageHtmlLink":"fix tests"}},{"before":"380a7dbf82fc5115709c2f676ce11380dd688ffc","after":"e057d13435712ed80ecd8791659de41d1ad9e1f7","ref":"refs/heads/eliza/use-musl","pushedAt":"2023-09-27T18:37:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"test: fix wrong naming in custom config tests","shortMessageHtmlLink":"test: fix wrong naming in custom config tests"}},{"before":null,"after":"380a7dbf82fc5115709c2f676ce11380dd688ffc","ref":"refs/heads/eliza/use-musl","pushedAt":"2023-09-27T18:29:36.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"chore(CI): use musl for 32-bit builds\n\nThis commit changes the 32-bit CI builds to use a musl toolchain rather\nthan glibc, so that CI can stop complaining that there's no 32-bit\nglibc.","shortMessageHtmlLink":"chore(CI): use musl for 32-bit builds"}},{"before":"16a0a25082e49ffaf395ce80e0611be8ca2940f0","after":"081e5325419e74d12df2f111bf80c8f85b87e321","ref":"refs/heads/eliza/test-mem-leak","pushedAt":"2023-09-27T18:24:44.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"Merge branch 'main' into eliza/test-mem-leak","shortMessageHtmlLink":"Merge branch 'main' into eliza/test-mem-leak"}},{"before":null,"after":"16a0a25082e49ffaf395ce80e0611be8ca2940f0","ref":"refs/heads/eliza/test-mem-leak","pushedAt":"2023-09-27T18:23:26.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"test: add a test reproducing #83","shortMessageHtmlLink":"test: add a test reproducing #83"}},{"before":"d8564bad161cb4b012eabd2a40ac9b60f2a69c72","after":"3b9202407a06fd0fb0cd4615f4436efcd876dbde","ref":"refs/heads/eliza/fix-32-bit","pushedAt":"2023-09-27T18:07:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"docs: add `rust-version` to `Cargo.toml` (#84)\n\nThis adds the crate's MSRV to the `Cargo.toml` so that it's visible on\ncrates.io.","shortMessageHtmlLink":"docs: add rust-version to Cargo.toml (#84)"}},{"before":"f76d2ed76c32c3d00e7391f7a3bc80fae21709a5","after":"d8564bad161cb4b012eabd2a40ac9b60f2a69c72","ref":"refs/heads/eliza/fix-32-bit","pushedAt":"2023-09-27T18:04:38.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"docs: add `rust-version` to `Cargo.toml` (#84)\n\nThis adds the crate's MSRV to the `Cargo.toml` so that it's visible on\ncrates.io.","shortMessageHtmlLink":"docs: add rust-version to Cargo.toml (#84)"}},{"before":"90bf2e92db1546eb7c1819da38fc741117b1a4a8","after":"16a26392a5baa2f9f95adcaddf0a652884124868","ref":"refs/heads/main","pushedAt":"2023-09-27T18:03:33.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"docs: add `rust-version` to `Cargo.toml` (#84)\n\nThis adds the crate's MSRV to the `Cargo.toml` so that it's visible on\ncrates.io.","shortMessageHtmlLink":"docs: add rust-version to Cargo.toml (#84)"}},{"before":"ed14f8294f8b966dfb89c93e03b5d781e8165e5d","after":"f76d2ed76c32c3d00e7391f7a3bc80fae21709a5","ref":"refs/heads/eliza/fix-32-bit","pushedAt":"2023-09-27T18:02:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"docs: add `rust-version` to `Cargo.toml` (#84)\n\nThis adds the crate's MSRV to the `Cargo.toml` so that it's visible on\ncrates.io.","shortMessageHtmlLink":"docs: add rust-version to Cargo.toml (#84)"}},{"before":"1445e83ca2b7cb1b2af315820ed3c8728a711831","after":"ed14f8294f8b966dfb89c93e03b5d781e8165e5d","ref":"refs/heads/eliza/fix-32-bit","pushedAt":"2023-09-27T17:58:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"docs: add `rust-version` to `Cargo.toml` (#84)\n\nThis adds the crate's MSRV to the `Cargo.toml` so that it's visible on\ncrates.io.","shortMessageHtmlLink":"docs: add rust-version to Cargo.toml (#84)"}},{"before":"7d6959c339068384aa5584008628a2b8401f3c1a","after":"1445e83ca2b7cb1b2af315820ed3c8728a711831","ref":"refs/heads/eliza/fix-32-bit","pushedAt":"2023-09-27T17:57:40.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"fix: use a smaller `CustomConfig` for 32-bit tests (#84)\n\nThis way, the custom-config tests from PR #80 can still be run on 32-bit\ntargets.\n\nFixes #82","shortMessageHtmlLink":"fix: use a smaller CustomConfig for 32-bit tests (#84)"}},{"before":null,"after":"7d6959c339068384aa5584008628a2b8401f3c1a","ref":"refs/heads/eliza/fix-32-bit","pushedAt":"2023-09-27T17:50:18.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"fix: use a smaller `CustomConfig` for 32-bit tests\n\nThis way, the custom-config tests from PR #80 can still be run on 32-bit\ntargets.\n\nFixes #82","shortMessageHtmlLink":"fix: use a smaller CustomConfig for 32-bit tests"}},{"before":"033f6de81a1a73b982c2f023d595ad1e5dff7ed0","after":"90bf2e92db1546eb7c1819da38fc741117b1a4a8","ref":"refs/heads/main","pushedAt":"2023-08-28T16:26:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"chore: add Nix dev flake and `rust-toolchain.toml`","shortMessageHtmlLink":"chore: add Nix dev flake and rust-toolchain.toml"}},{"before":"ca09027944812d024676029a3dde62d27ef22015","after":"033f6de81a1a73b982c2f023d595ad1e5dff7ed0","ref":"refs/heads/main","pushedAt":"2023-08-28T16:14:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"chore: prepare to release v0.1.5\n\n## 0.1.5 (2023-08-28)\n\n#### Bug Fixes\n\n* **Slab:** invalid generation in case of custom config (#80)\n (ca090279)","shortMessageHtmlLink":"chore: prepare to release v0.1.5"}},{"before":"8ebe120fd28b3a463932bbf0728e2baf5a558840","after":"ca09027944812d024676029a3dde62d27ef22015","ref":"refs/heads/main","pushedAt":"2023-08-06T17:14:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"hawkw","name":"Eliza Weisman","path":"/hawkw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2796466?s=80&v=4"},"commit":{"message":"fix(Slab): invalid generation in case of custom config (#80)\n\nHi, I used the following config and found the incorrect calculations of the generation and reference counter. After debugging, I discovered that sometimes `Generation::pack` is used instead of `LifecycleGen::pack`, which can be fixed by this PR.\r\n\r\nMy config:\r\n```rust\r\nstruct SlabConfig;\r\nimpl sharded_slab::Config for SlabConfig {\r\n const INITIAL_PAGE_SIZE: usize = 32;\r\n const MAX_PAGES: usize = 15;\r\n const MAX_THREADS: usize = 256;\r\n const RESERVED_BITS: usize = 24;\r\n}\r\n```\r\n\r\nThe bug cannot be reproduced with the default config, because `Generation` and `LifecycleGen` have the same `Pack::SHIFT`.\r\n\r\nIt would be nice to remove `impl Pack for Generation` in favor of different `impl Pack for KeyGen` and `impl Pack for LifecycleGen`, but I decided not to do any extra refactoring, which you may not accept.\r\n\r\nIf the patch is ok for you, I can add a test to prevent regression in the future.","shortMessageHtmlLink":"fix(Slab): invalid generation in case of custom config (#80)"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEI-cdnQA","startCursor":null,"endCursor":null}},"title":"Activity ยท hawkw/sharded-slab"}