{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":37290652,"defaultBranch":"master","name":"memchr","ownerLogin":"BurntSushi","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2015-06-11T23:01:31.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/456674?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1718324233.0","currentOid":""},"activityList":{"items":[{"before":"8ad339524d857a2dd9e7231b497ed92aa0f5c334","after":"7fccf70e2a58c1fbedc9b9687c2ba0cf5992537b","ref":"refs/heads/master","pushedAt":"2024-06-14T00:18:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"benchmarks: bump to memchr 2.7.4 release","shortMessageHtmlLink":"benchmarks: bump to memchr 2.7.4 release"}},{"before":"b0af902c7f773c6400ef46c5c488ce89e5b58ece","after":"8ad339524d857a2dd9e7231b497ed92aa0f5c334","ref":"refs/heads/master","pushedAt":"2024-06-14T00:17:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"2.7.4","shortMessageHtmlLink":"2.7.4"}},{"before":"91e0648f0c1b1cc10b60033eb121ef9a181ad287","after":null,"ref":"refs/heads/ag/fix-big-endian","pushedAt":"2024-06-14T00:17:08.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"}},{"before":"ad08893ecd23a21dc2fdb27cdaf04f64f4834270","after":"b0af902c7f773c6400ef46c5c488ce89e5b58ece","ref":"refs/heads/master","pushedAt":"2024-06-14T00:16:53.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"perf: revert fallback optimization\n\nThis reverts #151 because it broke big endian targets. CI didn't catch\nit because of a misconfiguration that resulted in tests being skipped\nfor any target that required cross compilation.\n\nThis reverts commit 345fab74bc3223ec95518686cbe6ac2b7fe7a467.\n\nFixes #152","shortMessageHtmlLink":"perf: revert fallback optimization"}},{"before":null,"after":"91e0648f0c1b1cc10b60033eb121ef9a181ad287","ref":"refs/heads/ag/fix-big-endian","pushedAt":"2024-06-14T00:06:25.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"perf: revert fallback optimization\n\nThis reverts #151 because it broke big endian targets. CI didn't catch\nit because of a misconfiguration that resulted in tests being skipped\nfor any target that required cross compilation.\n\nThis reverts commit 345fab74bc3223ec95518686cbe6ac2b7fe7a467.\n\nFixes #152","shortMessageHtmlLink":"perf: revert fallback optimization"}},{"before":"345fab74bc3223ec95518686cbe6ac2b7fe7a467","after":"ad08893ecd23a21dc2fdb27cdaf04f64f4834270","ref":"refs/heads/master","pushedAt":"2024-06-13T16:13:23.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"2.7.3","shortMessageHtmlLink":"2.7.3"}},{"before":"e8bdf6b7f7cca21bbd20dd773223a24f285bc956","after":"345fab74bc3223ec95518686cbe6ac2b7fe7a467","ref":"refs/heads/master","pushedAt":"2024-06-13T16:11:58.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"all: improve perf of memchr fallback\n\nCurrent generic (\"all\") implementation checks that a chunk (`usize`)\r\ncontains a zero byte, and if it is, iterates over bytes of this\r\nchunk to find the index of zero byte. Instead, we can use more bit\r\noperations to find the index without loops.\r\n\r\nContext: we use `memchr`, but many of our strings are short.\r\nCurrently SIMD-optimized `memchr` processes bytes one by one when\r\nthe string length is shorter than SIMD register. I suspect it can\r\nbe made faster if we take `usize` bytes a chunk which does not fit\r\ninto SIMD register and process it with such utility, similarly to\r\nhow AVX2 implementation falls back to SSE2. So I looked at generic\r\nimplementation to reuse it in SIMD-optimized version, but there\r\nwere none. So here is it.\r\n\r\nPR #151","shortMessageHtmlLink":"all: improve perf of memchr fallback"}},{"before":"20ef11fa92d8b393735f10906c436a8ce6e792a4","after":"e8bdf6b7f7cca21bbd20dd773223a24f285bc956","ref":"refs/heads/master","pushedAt":"2024-06-12T17:34:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"benchmarks: bump dependencies","shortMessageHtmlLink":"benchmarks: bump dependencies"}},{"before":"1e4b8a870165a4a719c66a4434e3809b2b34f28f","after":"20ef11fa92d8b393735f10906c436a8ce6e792a4","ref":"refs/heads/master","pushedAt":"2024-03-27T20:35:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"2.7.2","shortMessageHtmlLink":"2.7.2"}},{"before":"30652e771266851a21db52a55ed1637bc270beb5","after":null,"ref":"refs/heads/ag/fix-wasm","pushedAt":"2024-03-27T20:34:54.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"}},{"before":"b12ad6d83415857513912b589f6f2f907b28d902","after":"1e4b8a870165a4a719c66a4434e3809b2b34f28f","ref":"refs/heads/master","pushedAt":"2024-03-27T20:34:51.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"wasm32: require 'simd128' to be enabled at compile time\n\nIt turns out that providing routines with `#[target_feature(enable =\n\"simd128\")]` on `wasm32` can fail in some older browsers. The specific\nproblem is not totally clear to me, but it is straight-forward enough to\nfix (I hope) by just requiring that `simd128` be enabled at compile time\nin order to include the `wasm32` SIMD modules in this crate.\n\nThis would not be a great solution if WASM supported runtime CPU feature\ndetection. And the status quo is that `simd128` has to be enabled at\ncompile time anyway for the SIMD code to take effect. So this shouldn't\ncause any regressions and is likely something we can do long term as\nwell. We can re-evaluate once and if WASM gets support for runtime CPU\nfeature detection.\n\nWe also add a CI test for `wasm32` *without* the `simd128` target\nfeature enabled.\n\nFixes #144","shortMessageHtmlLink":"wasm32: require 'simd128' to be enabled at compile time"}},{"before":null,"after":"30652e771266851a21db52a55ed1637bc270beb5","ref":"refs/heads/ag/fix-wasm","pushedAt":"2024-03-27T20:25:31.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"wasm32: require 'simd128' to be enabled at compile time\n\nIt turns out that providing routines with `#[target_feature(enable =\n\"simd128\")]` on `wasm32` can fail in some older browsers. The specific\nproblem is not totally clear to me, but it is straight-forward enough to\nfix (I hope) by just requiring that `simd128` be enabled at compile time\nin order to include the `wasm32` SIMD modules in this crate.\n\nThis would not be a great solution if WASM supported runtime CPU feature\ndetection. And the status quo is that `simd128` has to be enabled at\ncompile time anyway for the SIMD code to take effect. So this shouldn't\ncause any regressions and is likely something we can do long term as\nwell. We can re-evaluate once and if WASM gets support for runtime CPU\nfeature detection.\n\nWe also add a CI test for `wasm32` *without* the `simd128` target\nfeature enabled.\n\nFixes #144","shortMessageHtmlLink":"wasm32: require 'simd128' to be enabled at compile time"}},{"before":"21def527d55a531d161c8fedcbf3933094222aba","after":"b12ad6d83415857513912b589f6f2f907b28d902","ref":"refs/heads/master","pushedAt":"2024-03-27T20:04:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"ci: reintroduce x86-64 test for non-SSE environment\n\nThe old CI test was removed\r\n(https://github.com/BurntSushi/memchr/pull/77#issuecomment-1962389255)\r\ndue to https://github.com/rust-lang/rust/pull/116672\r\ncausing a mismatch of data layouts with the custom target\r\n(`src/tests/x86_64-soft_float.json`):\r\n\r\n```console\r\nerror: data-layout for target `x86_64-soft_float-10047705440633310713`, `e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128`, differs from LLVM target's `x86_64-unknown-none` default layout, `e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128`\r\n```\r\n\r\nThis PR removes the unused custom target and reintroduces\r\nthe CI test with the now-available tier 2 target\r\n[`x86_64-unknown-none`](https://doc.rust-lang.org/nightly/rustc/platfor\r\nm-support/x86_64-unknown-none.html). This makes this test much more\r\nrobust, since we don't have to update a custom target ourselves and can\r\neven use stable Rust now.\r\n\r\nPR #146","shortMessageHtmlLink":"ci: reintroduce x86-64 test for non-SSE environment"}},{"before":"14823b4ec0fb9ed77b51e6b9ed9596da2a4352c6","after":"21def527d55a531d161c8fedcbf3933094222aba","ref":"refs/heads/master","pushedAt":"2024-02-26T01:40:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"style: fix dead_code lint","shortMessageHtmlLink":"style: fix dead_code lint"}},{"before":"e1c10c57668a560f28d4afbce6c5edd94aafda1e","after":"14823b4ec0fb9ed77b51e6b9ed9596da2a4352c6","ref":"refs/heads/master","pushedAt":"2024-02-24T14:36:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"ci: remove x86-64 test for non-SSE environment\n\nThis was added in #77 to catch regressions, but it has starting\n[failing on CI] in a way that I don't understand. Since this is a niche\nuse case, I don't feel compelled to spend the time investigating. On #77,\nI suggested that we have one of three directions forward:\n\n1. Support for testing this in CI needs to become more robust.\n2. Its failure modes need to be better understandable by me.\n3. We don't test it at all and instead rely on patches from\nstakeholders to fix things if they break. (This is the new status quo.)\n\n[failing on CI]: https://github.com/BurntSushi/memchr/actions/runs/8030404672/job/21937751272","shortMessageHtmlLink":"ci: remove x86-64 test for non-SSE environment"}},{"before":"cedf318090876c6d557f234b158dd4fdc91c41ec","after":"e1c10c57668a560f28d4afbce6c5edd94aafda1e","ref":"refs/heads/master","pushedAt":"2024-02-24T12:08:14.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"benchmarks: add stringzilla to appropriate definitions","shortMessageHtmlLink":"benchmarks: add stringzilla to appropriate definitions"}},{"before":null,"after":"7cecc50e7aaf8ed3b549244d82d0bafba6dbf95d","ref":"refs/heads/ag/wasm-stuff","pushedAt":"2024-02-08T02:14:34.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"progress","shortMessageHtmlLink":"progress"}},{"before":"d419718ad2170d7f5e239117d3042d816fca0f4f","after":"cedf318090876c6d557f234b158dd4fdc91c41ec","ref":"refs/heads/master","pushedAt":"2023-12-29T15:36:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"benchmarks: add measurements for memchr 2.7 on aarch64","shortMessageHtmlLink":"benchmarks: add measurements for memchr 2.7 on aarch64"}},{"before":"17753b63fd365bb6c25bbc91f819c0bb81ffaafd","after":"d419718ad2170d7f5e239117d3042d816fca0f4f","ref":"refs/heads/master","pushedAt":"2023-12-29T15:32:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"benchmarks: add measurements for memchr 2.7 on x86-64","shortMessageHtmlLink":"benchmarks: add measurements for memchr 2.7 on x86-64"}},{"before":"31c1e7911e45f17db761aa1f152896d92d782587","after":"17753b63fd365bb6c25bbc91f819c0bb81ffaafd","ref":"refs/heads/master","pushedAt":"2023-12-28T22:03:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"benchmarks/engines/rust-memchr: bump to 2.7.1","shortMessageHtmlLink":"benchmarks/engines/rust-memchr: bump to 2.7.1"}},{"before":"5caaf3e736f9b6b7bfadcfee064d2914331a33fd","after":"31c1e7911e45f17db761aa1f152896d92d782587","ref":"refs/heads/master","pushedAt":"2023-12-28T22:02:51.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"2.7.1","shortMessageHtmlLink":"2.7.1"}},{"before":"b93d817ea62ee42da6d47280be2310a6154a0518","after":"5caaf3e736f9b6b7bfadcfee064d2914331a33fd","ref":"refs/heads/master","pushedAt":"2023-12-28T21:59:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"benchmarks/engines/rust-memchr: bump to 2.7.0","shortMessageHtmlLink":"benchmarks/engines/rust-memchr: bump to 2.7.0"}},{"before":"8b62928c7bd4e215c2c4827f7eb9dfc264eb465a","after":"b93d817ea62ee42da6d47280be2310a6154a0518","ref":"refs/heads/master","pushedAt":"2023-12-28T21:57:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"2.7.0","shortMessageHtmlLink":"2.7.0"}},{"before":"a22b2df27d7c445ef1e6f6e0d4c67d215700fb42","after":"8b62928c7bd4e215c2c4827f7eb9dfc264eb465a","ref":"refs/heads/master","pushedAt":"2023-12-28T21:57:11.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"cargo: remove unused exclusions\n\nWe retain 'tmp' since I occasionally create such directories.\n\nCloses #143","shortMessageHtmlLink":"cargo: remove unused exclusions"}},{"before":"ddf47128ba74d56411f542a048ff6af28c952a8f","after":null,"ref":"refs/heads/ag/fix-i139","pushedAt":"2023-12-28T21:55:11.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"}},{"before":"c46d73a5ac49f3c93969681ca24f377b6a08807b","after":"a22b2df27d7c445ef1e6f6e0d4c67d215700fb42","ref":"refs/heads/master","pushedAt":"2023-12-28T21:55:07.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"ci: update to wasmtime 15\n\nThis is what I'm using locally, and specifically, wasmtime 15 has\nstarted a migration to change the CLI flags. So this gets everyone on\nthe same page.","shortMessageHtmlLink":"ci: update to wasmtime 15"}},{"before":"9e4520137020c78a4700d5bcddeeadcf386545b9","after":"ddf47128ba74d56411f542a048ff6af28c952a8f","ref":"refs/heads/ag/fix-i139","pushedAt":"2023-12-28T20:54:22.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"ci: update to wasmtime 15\n\nThis is what I'm using locally, and specifically, wasmtime 15 has\nstarted a migration to change the CLI flags. So this gets everyone on\nthe same page.","shortMessageHtmlLink":"ci: update to wasmtime 15"}},{"before":"cdf76de0a1f53c2ebb1261ba9c21daadff769072","after":"9e4520137020c78a4700d5bcddeeadcf386545b9","ref":"refs/heads/ag/fix-i139","pushedAt":"2023-12-28T20:51:04.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"ci: update to wasmtime 15\n\nThis is what I'm using locally, and specifically, wasmtime 15 has\nstarted a migration to change the CLI flags. So this gets everyone on\nthe same page.","shortMessageHtmlLink":"ci: update to wasmtime 15"}},{"before":"fc1ebca5b2b9ef907cb49448862b4be6a0e89329","after":"cdf76de0a1f53c2ebb1261ba9c21daadff769072","ref":"refs/heads/ag/fix-i139","pushedAt":"2023-12-28T20:49:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"ci: debug","shortMessageHtmlLink":"ci: debug"}},{"before":"190f8cb73bc1f4d52bc6464a680e4feb59b990d2","after":"fc1ebca5b2b9ef907cb49448862b4be6a0e89329","ref":"refs/heads/ag/fix-i139","pushedAt":"2023-12-28T20:45:24.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"BurntSushi","name":"Andrew Gallant","path":"/BurntSushi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/456674?s=80&v=4"},"commit":{"message":"benchmarks/engines/bytecount: revert to 0.6.4\n\nIt looks like 0.6.7 is buggy for at least wasm32.","shortMessageHtmlLink":"benchmarks/engines/bytecount: revert to 0.6.4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEZPOKzgA","startCursor":null,"endCursor":null}},"title":"Activity ยท BurntSushi/memchr"}