Repository navigation
feat: faker2-rs — Rust-backed Python package (PyO3 wrapper) - #11
Merged
Merged
Conversation
Add native/: a maturin/PyO3 project exposing the Rust faker2 engine to Python as the `faker2_rs` package. All generation runs in Rust; Python is a thin wrapper. - native/src/lib.rs: #[pymodule] `faker2_rs._native` with a seedable Faker class (name/email/address/... + first_name_real / first_name_like_real / name_of) and stateless helpers (infer_gender_real, detect_country, homophones, available_countries). - Self-contained wheels: the dataset is bundled into the package and located at runtime; rust gains a FAKER2_BALANCED_PARAMS env override (matching FAKER2_NAMES_PARQUET) so the bundled data is used. - .github/workflows/wheels.yml: build abi3 wheels for Linux (x86_64/aarch64), macOS (Intel/Apple Silicon) and Windows via maturin-action; attach to the Release on tag and publish to PyPI when PYPI_API_TOKEN is set. Scope: wraps the current Rust port (core engine + en_US providers + the 139-country name intelligence). More locales port onto the same engine over time; the legacy 130-locale pure-Python faker2 is unchanged. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…runs Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…er2 sdist Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
native/adds faker2-rs: a thin Python wrapper over the Rustfaker2engine (PyO3/maturin). All fake-data generation runs in Rust.Fakerclass + stateless name-intelligence helpers.FAKER2_BALANCED_PARAMSenv override alongsideFAKER2_NAMES_PARQUET).wheels.yml: abi3 wheels for Linux x86_64/aarch64, macOS Intel/ARM, Windows → attached to the Release, PyPI on token.Scope: wraps the current Rust port (core + en_US + 139-country name intelligence). Remaining locales port onto the same engine incrementally; the legacy pure-Python
faker2is untouched.🤖 Generated with Claude Code