{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":634043200,"defaultBranch":"main","name":"mojo","ownerLogin":"modularml","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-04-28T22:17:24.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/39327063?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1717196575.0","currentOid":""},"activityList":{"items":[{"before":"f7c5986d40c4a6aca8c0546624d076f4fc3412a8","after":"897007fa6afe00f9cbf6c15ebf9e4dd3123b3ed2","ref":"refs/heads/nightly","pushedAt":"2024-06-01T05:49:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] Bump compiler version to 2024.6.105","shortMessageHtmlLink":"[stdlib] Bump compiler version to 2024.6.105"}},{"before":"9d373914a35c8458abac5fcd81ccc71467bd5731","after":"f7c5986d40c4a6aca8c0546624d076f4fc3412a8","ref":"refs/heads/nightly","pushedAt":"2024-06-01T05:49:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] docs: Changelog `as_string_slice()` added in 24.4\n\nMODULAR_ORIG_COMMIT_REV_ID: 3cf1823181458c7b8a9b9aca1228937062fce0a8","shortMessageHtmlLink":"[stdlib] docs: Changelog as_string_slice() added in 24.4"}},{"before":"995a6b5599eec4ebf85024d6c66e5da5f961d87a","after":"9d373914a35c8458abac5fcd81ccc71467bd5731","ref":"refs/heads/nightly","pushedAt":"2024-06-01T05:49:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] docs: Fix tangled changelog for String APIs\n\nThese APIs underwent a lot of churn this release\ncycle :sweat_smile:\nMODULAR_ORIG_COMMIT_REV_ID: 5b7b44d5c21cc14e2a77850da3ece865e584248a","shortMessageHtmlLink":"[stdlib] docs: Fix tangled changelog for String APIs"}},{"before":"0ad3885f51b06ef4208429dc4bb457696ff913ba","after":"995a6b5599eec4ebf85024d6c66e5da5f961d87a","ref":"refs/heads/nightly","pushedAt":"2024-06-01T05:49:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"Fix mojo released changelog\n\nRevert changes that didn't make it into the cut\n\nMODULAR_ORIG_COMMIT_REV_ID: a0ff478449eef49528560cb0e032ba4117e3a151","shortMessageHtmlLink":"Fix mojo released changelog"}},{"before":"03e215e33032e3ed57db39f5e3e70799202ec21d","after":"0ad3885f51b06ef4208429dc4bb457696ff913ba","ref":"refs/heads/nightly","pushedAt":"2024-06-01T05:49:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"Move notes for Mojo changelog as per 24.4 branch\n\nThis still needs copy editing. This is merely to clear the slate for the\nchangelog in main.\n\nMODULAR_ORIG_COMMIT_REV_ID: b03122aff8d852d461b1bf746779857eb5291d42","shortMessageHtmlLink":"Move notes for Mojo changelog as per 24.4 branch"}},{"before":"e4af9a227562db6246a38d47177b84f5d22468ee","after":"03e215e33032e3ed57db39f5e3e70799202ec21d","ref":"refs/heads/nightly","pushedAt":"2024-06-01T05:49:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[External] [docs] Add section 'Dev Container' to the Mojo stdlib docs (#41065)\n\n[External] [docs] Add section 'Dev Container' to the Mojo stdlib docs\n\nTest online with GitHub Codespaces:\nhttps://codespaces.new/benz0li/mojo-dev-container?hide_repo_select=true&ref=main\n\nParent image: `glcr.b-data.ch/mojo/base:nightly`\n👉 This image is being rebuilt [at the start of every 4th\nhour](https://cron.help/every-4-hours).\n\nCo-authored-by: Olivier Benz \nCloses modularml/mojo#2664\nMODULAR_ORIG_COMMIT_REV_ID: 96e7a1d0b243761a48bd4af3bd1f5f7441abcc85","shortMessageHtmlLink":"[External] [docs] Add section 'Dev Container' to the Mojo stdlib docs…"}},{"before":"b0c8971439e3a05dd237b0141e1edec62b5063db","after":"e4af9a227562db6246a38d47177b84f5d22468ee","ref":"refs/heads/nightly","pushedAt":"2024-06-01T05:49:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] feature: Change `String.unsafe_ptr()` to return\n`UnsafePointer[UInt8]`\n\n* Add `alias C_char = Int8` in sys.ffi\n\n* Change `String.unsafe_ptr()` to return `UnsafePointer[UInt8]` (was\n`Int8`)\n* Remove `String.unsafe_uint8_ptr()`\n* Add `String.unsafe_cstr_ptr() -> UnsafePointer[C_char]` for\nconvenience\n\n* Change `String._steal_ptr()` to return `UnsafePointer[UInt8]` (was\n`DTypePointer[DType.int8]`)\n* Change `FileHandle._write` from taking `DTypePointer[int8]` to\n`UnsafePointer[UInt8]`\n* Change `DLHandle._get_function` to take `UnsafePointer[C_char]` (was\n`DTypePointer[DType.int8]`)\n\nMODULAR_ORIG_COMMIT_REV_ID: 6d49b224eeb2699aae52f659e197aab7f6b6c2eb","shortMessageHtmlLink":"[stdlib] feature: Change String.unsafe_ptr() to return"}},{"before":"d71b5821d4649c6b963d01a54f95147562d33aa6","after":"b0c8971439e3a05dd237b0141e1edec62b5063db","ref":"refs/heads/nightly","pushedAt":"2024-06-01T05:49:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[External] [stdlib] Enable assertions in unit tests (#41057)\n\n[External] [stdlib] Enable assertions in unit tests\n\nChange the default mode of running the standard library\nunit tests to run with `-D MOJO_ENABLE_ASSERTIONS`, i.e.\nassertions enabled.\n\nNot all of the tests work with assertions, so appropriate\nissues are filed to track that work along with a new substitution,\n`%bare-mojo` for running without assertions enabled.\n\nRelated to https://github.com/modularml/mojo/issues/2687\n\nCloses https://github.com/modularml/mojo/pull/2718\n\nMODULAR_ORIG_COMMIT_REV_ID: ddc68f1fd7ae786abe135f254264157d264caa93","shortMessageHtmlLink":"[External] [stdlib] Enable assertions in unit tests (#41057)"}},{"before":"9c3588689c7bf7f2c368f9ada20403feee376e52","after":"d71b5821d4649c6b963d01a54f95147562d33aa6","ref":"refs/heads/nightly","pushedAt":"2024-06-01T05:49:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[mojo-lang] Pipe `LifetimeSetType` through Coroutine and its users\n\nThis PR changes Coroutine to take a LifetimeSet, rather than a singular\nlifetime with a singular mutability. This allows the compiler to track\nfine-grained mutability on the lifetime effects of accessing the\ncoroutine.\n\nMODULAR_ORIG_COMMIT_REV_ID: 00cc495985fa12179dd1d7ba8697239a54d738d2","shortMessageHtmlLink":"[mojo-lang] Pipe LifetimeSetType through Coroutine and its users"}},{"before":"fa146a320795afe82e419365116d08b05b5346c2","after":"9c3588689c7bf7f2c368f9ada20403feee376e52","ref":"refs/heads/nightly","pushedAt":"2024-06-01T05:49:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] Support `Dict.popitem()`\n\nImplement `Dict.popitem()` which removes and\nreturns the last item in the `Dict`.\n\nFixes https://github.com/modularml/mojo/issues/2355.\n\nReapply after it got reverted now that the UB\nin `reversed()` for `Dict` has been fixed.\n\nMODULAR_ORIG_COMMIT_REV_ID: d8bf29ed0aeb6d59a9a0a3af650ce141993faa83","shortMessageHtmlLink":"[stdlib] Support Dict.popitem()"}},{"before":"0376a56a05a6b8fa7f56a3d2f4c4ff00127dca04","after":null,"ref":"refs/heads/laszlo/hotfix","pushedAt":"2024-05-31T23:02:55.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"JoeLoser","name":"Joe Loser","path":"/JoeLoser","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6462525?s=80&v=4"}},{"before":"e3fbc065a71b6b1587bbd731e1d4d8f958ca363a","after":"fa146a320795afe82e419365116d08b05b5346c2","ref":"refs/heads/nightly","pushedAt":"2024-05-31T19:42:11.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] Bump compiler version to 2024.5.3119","shortMessageHtmlLink":"[stdlib] Bump compiler version to 2024.5.3119"}},{"before":"457fb791fe6a7912d91fba83aee867c61008d238","after":"e3fbc065a71b6b1587bbd731e1d4d8f958ca363a","ref":"refs/heads/nightly","pushedAt":"2024-05-31T19:41:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] Construct `String` from `PythonObject`.\n\nThis makes working with `PythonObject` more user friendly due to\nremoving `Stringable` from `String` constructor.\n\nMODULAR_ORIG_COMMIT_REV_ID: b75eed03c4f73adc7321e5770a24d795551ff4fb","shortMessageHtmlLink":"[stdlib] Construct String from PythonObject."}},{"before":"2729b0212c868f41a906c556e641462cd8dd885f","after":"457fb791fe6a7912d91fba83aee867c61008d238","ref":"refs/heads/nightly","pushedAt":"2024-05-31T19:41:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[mojo-stdlib] Add an \"empty()\" method to StringRef for convenience.\n\nMODULAR_ORIG_COMMIT_REV_ID: 0148ca35a8303a2037aaf158697388b8f7809c23","shortMessageHtmlLink":"[mojo-stdlib] Add an \"empty()\" method to StringRef for convenience."}},{"before":"3df5fb4f9d3dd7cc5018aa8a160c3714b1a4f81e","after":"2729b0212c868f41a906c556e641462cd8dd885f","ref":"refs/heads/nightly","pushedAt":"2024-05-31T19:41:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[External] [stdlib] Consolidate bin and hex internal implementation (#40690)\n\n[External] [stdlib] Consolidate bin and hex internal implementation\n\nFixes #2730\n\n- Utilize `_format_int` for for both `bin` and `hex`\n- Support `SIMD` and `Indexer` types for `hex`\n- Move implementations into `format_int` module\n\n---------\n\nCo-authored-by: bgreni <42788181+bgreni@users.noreply.github.com>\nCo-authored-by: Rob Parolin \nCloses modularml/mojo#2790\nMODULAR_ORIG_COMMIT_REV_ID: 0d5c716cb884468c8d3d49ac585115c39f131880","shortMessageHtmlLink":"[External] [stdlib] Consolidate bin and hex internal implementation (…"}},{"before":"b9b552794f9ddc5c5d69ecb8a6e715287dbabd2b","after":"3df5fb4f9d3dd7cc5018aa8a160c3714b1a4f81e","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:04:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] Bump compiler version to 2024.5.3112","shortMessageHtmlLink":"[stdlib] Bump compiler version to 2024.5.3112"}},{"before":"4d089aa492e74fc82c3952155264782278c79063","after":"b9b552794f9ddc5c5d69ecb8a6e715287dbabd2b","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] Support dynamic module creation\n\nThis capability allows Mojo code to create inline modules with complex\nbehavior for Python interop. There is no need to rely on discovery of these\nsource files elsewhere on the system. While this still depends on CPython\nlibrary support, it eliminates at least one interaction with the host system.\n\nMODULAR_ORIG_COMMIT_REV_ID: 96c2100388bd6682589373569fca4385b6589e79","shortMessageHtmlLink":"[stdlib] Support dynamic module creation"}},{"before":"3161caa956f329dced74cceeee65034b4e911d51","after":"4d089aa492e74fc82c3952155264782278c79063","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[External] [stdlib] Fix UB in `reversed(Dict.values())` and `reversed(Dict.items())` (#40974)\n\n[External] [stdlib] Fix UB in `reversed(Dict.values())` and\n`reversed(Dict.items())`\n\nFinally found the culprit in the flakyness that plagued us since a few\nweek in the `test_reversed.mojo`.\n\n### The actual bug:\n\nWhen iterating over a list in reverse order, we should start at\n`len(my_list) - 1` not at `len(my_list)`.\nThat triggered an out of bounds access and thus was undefined behavior.\n\n### The effect on our CI\nAs you know, we have been seeing flakyness lately. It was documented a\nnumber of times and always related to `reverse`:\n* https://github.com/modularml/mojo/issues/2866#issuecomment-2135965412\n* https://github.com/modularml/mojo/issues/2369\n\n### Why was it passing sometimes?\nThis is because there were `Optional[...]` in the List. Thus if the flag\nof the `Optional` says that no element is present, it's just skipped\n(the dict doesn't have an entry at this index). So the list of the Dict\nwould often look like this: `[\"a\", \"b\", \"c\", \"d\"] None`\nbut the last `None` is actually memory that we don't have access to.\nSometimes it's then skipped in the iteration making the tests pass.\nSometimes it would cause segfaults because the test dict worked with\nstrings. Sometimes we would get `wrong variant type` since we don't know\nwhat happens to the memory between None check and access.\n\n### Why wasn't it found earlier?\n\nFirst of all, our Dict implementation is too complexe for what it does\nand thus is very good at hiding bugs.\n\nWell we did have `debug_assert` before getting the element of the\n`List`, but this `debug_assert` looked like this in the dict iterator:\n```mojo\n @parameter\n if forward:\n debug_assert(\n self.index < self.src[]._reserved, \"dict iter bounds\"\n )\n else:\n debug_assert(self.index >= 0, \"dict iter bounds\")\n```\nSo one bound was checked when reading in one direction and the other\nbound was checked in the other direction. A better `debug_assert` would\nhave been\n```mojo\ndebug_assert(0 <= self.index < self.src[]._reserved, \"dict iter bounds\")\n```\nWhen I worked on my PR https://github.com/modularml/mojo/pull/2718 the\ncondition `self.index < self.src[]._reserved` didn't trigger anything\nsince it was in the wrong branch, it was never executed.\n\nAlso before, `__get_ref` didn't have any bounds checks, even when\nassertions were enabled.\n\nA recent commit\nhttps://github.com/modularml/mojo/commit/8d0870e1b9e23fc9cf8b30882bb225a421f0fb9b\nadds `unsafe_get()` in List and make `__get_ref` use it. It also adds\n`debug_assert` to `unsafe_get()`, which means that now `__get_ref` has\nbounds checks if run with assertions enabled. This allowed me to catch\nthe out of bounds access when updating\nhttps://github.com/modularml/mojo/pull/2718 making the fail\ndeterministic and debuggable.\n\nSince we have this, the `debug_assert` in `dict.mojo` isn't necessary\nanymore.\n\n### Consequences on ongoing work:\n* This fix have been also added to\nhttps://github.com/modularml/mojo/pull/2718\n* The PR https://github.com/modularml/mojo/pull/2701 that we did with\n@jayzhan211 was actually correct. It was just using\n`reverse(Dict.items())` which was buggy at the time. After the fix is\nmerged, we can re-revert this PR.\n* https://github.com/modularml/mojo/pull/2794 is not necessary anymore\nsince the implementation by @jayzhan211 was correct.\n* The real cause of https://github.com/modularml/mojo/issues/2866 was\nfound, the issue has already been closed though.\n* https://github.com/modularml/mojo/issues/2369 can be closed for good.\n* https://github.com/modularml/mojo/pull/2832 can be closed for good.\n\n### Closing thoughts\n* We really need to run the unit tests with assertions enabled and add\nassertions whenever necessary\n* The dict implementation is a bit too complicated. For example,\n`self._reserved` is the length of the internal list. There is no need to\nstore the length of the list twice. Let's drop this variable and use\n`len(self._entries)` instead. I guess this is a relic of the time when\n`List` wasn't completely flushed out. If had done so, it would have been\novious that we can't do `my_list.__get_ref(len(my_list))`\n* Iterating manually over a list like this is bug-prone. The\nimplementation we have especially is, since\n```mojo\n @parameter\n if forward:\n self.index += 1\n else:\n self.index -= 1\n```\nis done twice in the code, it should only be done once. While there is\nno bug, code duplication and complexity hides bugs.\n* We should iterate over the list with a list iterator, not with a\ncustom-made iterator. This will remove a lot of code in the `dict.mojo`.\n\nCo-authored-by: Gabriel de Marmiesse \nCloses modularml/mojo#2896\nMODULAR_ORIG_COMMIT_REV_ID: b65009dc51f1e3027f91b5b61a5b7003cb022b87","shortMessageHtmlLink":"[External] [stdlib] Fix UB in reversed(Dict.values()) and `reversed…"}},{"before":"6dc53ab29d34eda81ccfd95a59ad84b76a853d26","after":"3161caa956f329dced74cceeee65034b4e911d51","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[KGEN] Rename ArgConvention::ByRef to ArgConvention::InOut, NFC. (#41013)\n\nThis aligns the terminology with the modern keyword, we haven't\ncalled it 'byref' for a long time. We may eventually rename\nthis again but for now align these.\n\nMODULAR_ORIG_COMMIT_REV_ID: eccdfc1e3620f1483b2435391610a530d6318037","shortMessageHtmlLink":"[KGEN] Rename ArgConvention::ByRef to ArgConvention::InOut, NFC. (#41…"}},{"before":"0bcf73eb9ed28c08790e13e3747621d1841cf38c","after":"6dc53ab29d34eda81ccfd95a59ad84b76a853d26","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[mojo-lang] Fix MOCO-757: Transfer ^ of borrowed arg leads to double free (#40892)\n\nMojo used to support transfering out of `let` declarations, which\nwere immutable but owned. We don't have to support this anymore,\nso there is no reason to support transfering from immutable refs.\n\nMODULAR_ORIG_COMMIT_REV_ID: ee2358b31fb300ab0843b53f54eea065b55e0fda","shortMessageHtmlLink":"[mojo-lang] Fix MOCO-757: Transfer ^ of borrowed arg leads to double …"}},{"before":"cdac9f1fc20d7a0ff2c53d6ae891c2da859977c7","after":"0bcf73eb9ed28c08790e13e3747621d1841cf38c","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[Docs] Assorted parameter doc updates\n\n- Adds a new section on \"infer-only\" parameters using the `//` sigil.\n- Adds a new section on parameter inference including struct parameter\ninference.\n- Adds a new section clarifying the difference between the terms\n\"generic\" and \"parameterized.\"\n\nMODULAR_ORIG_COMMIT_REV_ID: 3455f903637af7cce450ff980ec1a520bf04565d","shortMessageHtmlLink":"[Docs] Assorted parameter doc updates"}},{"before":"28c7e2b1228d0e0943e351ba0dab717615d2928b","after":"cdac9f1fc20d7a0ff2c53d6ae891c2da859977c7","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[External] [stdlib] More tests for the `bit` module (#40973)\n\n[External] [stdlib] More tests for the `bit` module\n\nAs mentioned in #2862 this PR is used to implement test cases for all\nthe functions that has not been tested originally.\n\nCo-authored-by: Jiexiang Liu <80805665+LJ-9801@users.noreply.github.com>\nCloses modularml/mojo#2877\nMODULAR_ORIG_COMMIT_REV_ID: 3ebcc372378e079c4b49990cbb9af041398a8a66","shortMessageHtmlLink":"[External] [stdlib] More tests for the bit module (#40973)"}},{"before":"303fb7199b02aeae7cc2a8c0c89f1b7b79d98653","after":"28c7e2b1228d0e0943e351ba0dab717615d2928b","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] docs: Update style guide value param guidance to match current\npractice (`snake_case`)\n\nMODULAR_ORIG_COMMIT_REV_ID: 5dc9b96ae4611c47426a8b13074ac93bdef2d53f","shortMessageHtmlLink":"[stdlib] docs: Update style guide value param guidance to match current"}},{"before":"41a7a4b572aa87d5042f6116805a94dde69d5f45","after":"303fb7199b02aeae7cc2a8c0c89f1b7b79d98653","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] Use `List` over `VariadicList` in `test_sort.mojo`\n\nThere's no need to use `VariadicList` here. Use the simple\n`List` type instead.\n\nMODULAR_ORIG_COMMIT_REV_ID: 98169fb0c13de3d28092f31ad8d0364cab246f5d","shortMessageHtmlLink":"[stdlib] Use List over VariadicList in test_sort.mojo"}},{"before":"d2ef76ff23b4fc3578a2b48eb58b2034a1e9cd26","after":"41a7a4b572aa87d5042f6116805a94dde69d5f45","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] docs: Fix mental typo in changelog\n\nMODULAR_ORIG_COMMIT_REV_ID: 41db2ee4d934b76ea88aa6e6b83a2d20f657f2fe","shortMessageHtmlLink":"[stdlib] docs: Fix mental typo in changelog"}},{"before":"06d36c6ffc91745493474deaf314dfcc8892c14f","after":"d2ef76ff23b4fc3578a2b48eb58b2034a1e9cd26","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[Docs] Add missing changelog item for InlineList.\n\nWe missed adding a changelog item when InlineList was added.\n\nMODULAR_ORIG_COMMIT_REV_ID: 3481d21551d0fd60f9143fb3fb30dcb483991244","shortMessageHtmlLink":"[Docs] Add missing changelog item for InlineList."}},{"before":"7cc5d58944deb919718dbfcab57c53a567e5a8b4","after":"06d36c6ffc91745493474deaf314dfcc8892c14f","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] Remove `math.polynomial.EvaluationMethod` and Estrin's method\n\nThis method was limited to degree 10 or less, poorly tested,\nunderutilized, and its performance unclear.\n\nMODULAR_ORIG_COMMIT_REV_ID: fcf5c29d5026e9c5d2c0b4691a014a5fc9a01890","shortMessageHtmlLink":"[stdlib] Remove math.polynomial.EvaluationMethod and Estrin's method"}},{"before":"4edfc6900fbb1033025caf8e80c7fc2bdc2b276d","after":"7cc5d58944deb919718dbfcab57c53a567e5a8b4","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] Remove `math.{rint,nearbyint}`\n\nBecause they are unused, untested, and it's not clear if they provide\nthe right API given that we could just overload `round`.\n\nMODULAR_ORIG_COMMIT_REV_ID: 49b03fce24844c3a2492af1d5c72e30064617a45","shortMessageHtmlLink":"[stdlib] Remove math.{rint,nearbyint}"}},{"before":"c0dd4400d54569c9fbb080d47afee39000216753","after":"4edfc6900fbb1033025caf8e80c7fc2bdc2b276d","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[External] [stdlib] Roundable trait with ndigits param in the round operation and Round to nearest even logic (#40794)\n\n[External] [stdlib] Roundable trait with ndigits param in the round\noperation and Round to nearest even logic\n\n* Add `Roundable.__round__(ndigits)` method\n* Implement the method in all the types that adhere to `Roundable`\n* Round to the next even number when the diff is exactly 0.5,\nrecommended way in [IEEE 754](https://en.wikipedia.org/wiki/IEEE_754),\nwhich also Python adheres to.\n* Tests\n\n---------\n\nCo-authored-by: Manuel Saelices \nCloses modularml/mojo#2752\nMODULAR_ORIG_COMMIT_REV_ID: f3349ff968cdb519bd505427a6aea8afe1ae1bb0","shortMessageHtmlLink":"[External] [stdlib] Roundable trait with ndigits param in the round o…"}},{"before":"8e780ef2ee764f7e8b28fd6837abd9310fd84108","after":"c0dd4400d54569c9fbb080d47afee39000216753","ref":"refs/heads/nightly","pushedAt":"2024-05-31T13:03:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"modularbot","name":"modularbot","path":"/modularbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/116839051?s=80&v=4"},"commit":{"message":"[stdlib] Rename `math.tgamma` to `math.gamma`\n\nBecause that's how it's called in Python.\n\nMODULAR_ORIG_COMMIT_REV_ID: e44072b5738ca477ca398c9749bc68809c6450f9","shortMessageHtmlLink":"[stdlib] Rename math.tgamma to math.gamma"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEWZVMYAA","startCursor":null,"endCursor":null}},"title":"Activity · modularml/mojo"}