Implement a new `Process.version` foreign static method that returns the Wren version string. The C implementation uses `wrenSetSlotString` with the `WREN_VERSION_STRING` macro, and the Wren binding registers it alongside existing `Process` methods. A new test file validates the returned value is a non-empty string composed of dot-separated numeric segments.
Add a new `Process.cwd` static method that retrieves the current working directory via libuv's `uv_cwd` function. The implementation includes proper error handling that aborts the fiber with a descriptive message on failure. The foreign method is registered in the module table and exposed in the Wren API with a foreign static declaration. A test suite validates that the returned value is a non-empty string starting with "/", resolves correctly via `File.realPath`, and corresponds to an existing directory.
Add a new utility script `util/generate_projects.py` that automates regeneration of
premake project files across all supported platforms and toolchains. The script
locates premake5 via environment variable or PATH, validates its availability, and
generates projects for BSD, Linux, macOS (gmake2 and xcode4), and Windows (vs2017
and vs2019) toolchains.
The diff shows a single-character change in src/README.md, replacing square brackets with parentheses around the libuv URL to fix broken markdown link formatting.
Add uv_library_shutdown() and uv__threadpool_cleanup() functions, introduce
UV_UDP_MMSG_CHUNK and UV_UDP_RECVMMSG flags, document cpu_times fields in
milliseconds, adjust priority constants for IBM i PASE, widen ansi_parser_state
to unsigned short on Windows, refactor async spin loop with sched_yield() and
eventfd support on Linux, add ARM yield in cpu_relax(), implement
uv__process_title_cleanup() on BSD and Darwin, replace CoreFoundation
dependency with darwin-stub.h, and fix accept4 detection for FreeBSD ≥10.