{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":830587973,"defaultBranch":"main","name":"benchmark","ownerLogin":"hawkinsp","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2024-07-18T14:58:24.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/348932?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1721314727.0","currentOid":""},"activityList":{"items":[{"before":"e9d04ea7ece26fbf4de5e44a876ae3004f06f03e","after":"d8e44e940bcd29d8c197e5662d0fc8672aecbe46","ref":"refs/heads/nanobind2","pushedAt":"2024-07-18T15:04:19.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"hawkinsp","name":"Peter Hawkins","path":"/hawkinsp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/348932?s=80&v=4"},"commit":{"message":"Update benchmark Python bindings for nanobind 2.0, and update to nanobind 2.0.\n\nIncorporates the nanobind_bazel change from https://github.com/google/benchmark/pull/1795.\n\nnanobind 2.0 reworked the nanobind::enum_ class so it uses a real Python enum or intenum rather than its previous hand-rolled implementation.\nhttps://nanobind.readthedocs.io/en/latest/changelog.html#version-2-0-0-may-23-2024\n\nAs a consequence of that change, nanobind now checks when casting an integer to a enum value that the integer corresponds to a valid enum. Counter::Flags is a bitmask, and many combinations are not valid enum members.\n\nThis change:\na) sets nb::is_arithmetic(), which means Counter::Flags becomes an IntEnum that can be freely cast to an integer.\nb) defines the | operator for flags to return an integer, not an enum, avoiding the error.\nc) changes Counter's constructor to accept an int, not a Counter::Flags enum. Since Counter::Flags is an IntEnum now, it can be freely coerced to an int.\n\nIf https://github.com/wjakob/nanobind/pull/599 is merged into nanobind, then we can perhaps use a flag enum here instead.","shortMessageHtmlLink":"Update benchmark Python bindings for nanobind 2.0, and update to nano…"}},{"before":"69765d8c5e3daf1c3573c45e1fb9eec2c8fb8199","after":"e9d04ea7ece26fbf4de5e44a876ae3004f06f03e","ref":"refs/heads/nanobind2","pushedAt":"2024-07-18T15:01:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"hawkinsp","name":"Peter Hawkins","path":"/hawkinsp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/348932?s=80&v=4"},"commit":{"message":"Update benchmark Python bindings for nanobind 2.0, and update to nanobind 2.0.\n\nIncorporates the nanobind_bazel change from https://github.com/google/benchmark/pull/1795.\n\nnanobind 2.0 reworked the nanobind::enum_ class so it uses a real Python enum or intenum rather than its previous hand-rolled implementation.\nhttps://nanobind.readthedocs.io/en/latest/changelog.html#version-2-0-0-may-23-2024\n\nAs a consequence of that change, nanobind now checks when casting an integer to a enum value that the integer corresponds to a valid enum. Counter::Flags is a bitmask, and many combinations are not valid enum members.\n\nThis change:\na) sets nb::is_arithmetic(), which means Counter::Flags becomes an IntEnum that can be freely cast to an integer.\nb) defines the | operator for flags to return an integer, not an enum, avoiding the error.\nc) changes Counter's constructor to accept an int, not a Counter::Flags enum. Since Counter::Flags is an IntEnum now, it can be freely coerced to an int.\n\nIf https://github.com/wjakob/nanobind/pull/599 is merged into nanobind, then we can perhaps use a flag enum here instead.","shortMessageHtmlLink":"Update benchmark Python bindings for nanobind 2.0, and update to nano…"}},{"before":"2542240eb8a304914e1d3d534b259416e728ab1d","after":"69765d8c5e3daf1c3573c45e1fb9eec2c8fb8199","ref":"refs/heads/nanobind2","pushedAt":"2024-07-18T14:59:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"hawkinsp","name":"Peter Hawkins","path":"/hawkinsp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/348932?s=80&v=4"},"commit":{"message":"Update benchmark Python bindings for nanobind 2.0, and update to nanobind 2.0.\n\nIncorporates the nanobind_bazel change from https://github.com/google/benchmark/pull/1795.\n\nnanobind 2.0 reworked the nanobind::enum_ class so it uses a real Python enum or intenum rather than its previous hand-rolled implementation.\nhttps://nanobind.readthedocs.io/en/latest/changelog.html#version-2-0-0-may-23-2024\n\nAs a consequence of that change, nanobind now checks when casting an integer to a enum value that the integer corresponds to a valid enum. Counter::Flags is a bitmask, and many combinations are not valid enum members.\n\nThis change:\na) sets nb::is_arithmetic(), which means Counter::Flags becomes an IntEnum that can be freely cast to an integer.\nb) defines the | operator for flags to return an integer, not an enum, avoiding the error.\nc) changes Counter's constructor to accept an int, not a Counter::Flags enum. Since Counter::Flags is an IntEnum now, it can be freely coerced to an int.\n\nIf https://github.com/wjakob/nanobind/pull/599 is merged into nanobind, then we can perhaps use a flag enum here instead.","shortMessageHtmlLink":"Update benchmark Python bindings for nanobind 2.0, and update to nano…"}},{"before":null,"after":"2542240eb8a304914e1d3d534b259416e728ab1d","ref":"refs/heads/nanobind2","pushedAt":"2024-07-18T14:58:47.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"hawkinsp","name":"Peter Hawkins","path":"/hawkinsp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/348932?s=80&v=4"},"commit":{"message":"Update benchmark Python bindings for nanobind 2.0, and update to nanobind 2.0.\n\nIncorporates the nanobind_bazel change from https://github.com/google/benchmark/pull/1795.\n\nnanobind 2.0 reworked the nanobind::enum_ class so it uses a real Python enum or intenum rather than its previous hand-rolled implementation.\nhttps://github.com/google-deepmind/clrs/pull/119#issuecomment-1883834196\n\nAs a consequence of that change, nanobind now checks when casting an integer to a enum value that the integer corresponds to a valid enum. Counter::Flags is a bitmask, and many combinations are not valid enum members.\n\nThis change:\na) sets nb::is_arithmetic(), which means Counter::Flags becomes an IntEnum that can be freely cast to an integer.\nb) defines the | operator for flags to return an integer, not an enum, avoiding the error.\nc) changes Counter's constructor to accept an int, not a Counter::Flags enum. Since Counter::Flags is an IntEnum now, it can be freely coerced to an int.\n\nIf https://github.com/wjakob/nanobind/pull/599 is merged into nanobind, then we can perhaps use a flag enum here instead.","shortMessageHtmlLink":"Update benchmark Python bindings for nanobind 2.0, and update to nano…"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNy0xOFQxNTowNDoxOS4wMDAwMDBazwAAAASDDdAR","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNy0xOFQxNTowNDoxOS4wMDAwMDBazwAAAASDDdAR","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNy0xOFQxNDo1ODo0Ny4wMDAwMDBazwAAAASDDE2H"}},"title":"Activity · hawkinsp/benchmark"}