This is a large jump, about 10 months. There are enough changes that I'm
disabling all of the new lints.
One notable feature is that ruff now formats Python within .md files, I
had to correct a few sections that were actually Bazel.
This makes some changes to the wrapper to respect .md files, and to fix
errors being swallowed. We no longer use `--quiet` and instead filter
the output ourselves.
MODULAR_ORIG_COMMIT_REV_ID: 682865af1c774db9426438626d45425c2191239d
Rename the container backing variadic `**kwargs` from `OwnedKwargsDict`
to `StringDict`, updating the compiler lowering, stdlib export, Python
bindings, tests, and docs.
This is a breaking change: code that refers to `OwnedKwargsDict` must
switch to `StringDict`.
MODULAR_ORIG_COMMIT_REV_ID: 0302a8b7a21acc153052f81332102192e73121e9
This commit adds a requirement on `@export`ed functions that they be
supplied with an explicit `abi` effect. The compiler currently produces
a warning on missing `abi` effects, which will become an error in a
future release.
MODULAR_ORIG_COMMIT_REV_ID: aba378d06ca59a60ba2b589704bbda1479b244c3
Fixes three issues in `mojo-python-interop` found during structured
skills evaluation.
1. All extension module examples updated from `fn` to `def` (11
instances), resolving contradiction with `mojo-syntax`.
2. Added `Python.dict()` Bool limitation note with WRONG/CORRECT
workaround.
3. Added `main()` + shared-lib constraint to the `mojo.importer`
section.
MODULAR_ORIG_COMMIT_REV_ID: 20b1de3db8695afe4bb8d9ec912ca9034aab7507
Fixes three agent skill files based on a structured eval where published
skills were used to build a Mojo CLI tool with Python FFI. Every
compilation failure was logged and traced back to skill gaps.
- **mojo-syntax**: String indexing (`s[byte=i]`) and universal `std.`
prefix added to WRONG/CORRECT table — the two most common compilation
failures
- **new-modular-project**: System prerequisites (gcc per OS, WSL2
guidance) and Python FFI `pixi add` patterns
- **mojo-python-interop**: Common FFI patterns — env var access, lambda
sort keys via `Python.evaluate`, dict `.get()`
All changes use WRONG/CORRECT pairs per editorial guidelines. 87 lines
across 3 independent files.
MODULAR_ORIG_COMMIT_REV_ID: 39abb66f9e1f494e3a0d28299ed8052e37f02d15
Using `aligned-no-space` style since it creates the smallest diff, I
don't think we care about the exact style.
MODULAR_ORIG_COMMIT_REV_ID: 0672b3c5baf992e5d7cfb7205b7ba3f5f786752f
This broke some formatting in the docs build, reverting for now while we
investigate.
MODULAR_ORIG_COMMIT_REV_ID: 03fecb8a1f46ab64ebb53451a3fb020537a47021
testing
We were starting to get more content added into the main `mojo-syntax`
skill related to Python interop, so it was worth pulling that out into a
separate skill that is activated only when needed for interacting with
Python code. After testing, the found some places where the models
struggled with CUDA translation and enhanced the guidance to avoid those
issues.
MODULAR_ORIG_COMMIT_REV_ID: a766e17f719eb59bac58ad3d99129d876ad79a91