{"id":355,"library":"jiter","title":"jiter","description":"jiter is a fast iterable JSON parser for Python, currently at version 0.13.0, released on February 2, 2026. It is actively maintained with a release cadence of approximately every 2-3 months.","status":"active","version":"0.13.0","language":"python","source_language":"en","source_url":"https://github.com/pydantic/jiter","tags":["JSON parsing","Python","performance","jiter"],"install":[{"cmd":"pip install jiter","lang":"bash","label":"Install jiter"}],"dependencies":[{"reason":"Provides data validation and settings management using Python type annotations.","package":"pydantic","optional":true}],"imports":[{"note":"Ensure correct import path to access the from_json function.","symbol":"from_json","correct":"from jiter import from_json"}],"quickstart":{"code":"import os\nfrom jiter import from_json\n\njson_data = b'{\"name\": \"John\", \"age\": 30}'\nparsed_data = from_json(json_data)\nprint(parsed_data)  # Output: {'name': 'John', 'age': 30}","lang":"python","description":"A simple example demonstrating how to parse JSON data using jiter."},"warnings":[{"fix":"Update your Rust dependencies to be compatible with PyO3 0.28.","message":"In version 0.13.0, PyO3 was bumped to 0.28, which may require adjustments in Rust bindings if used.","severity":"breaking","affected_versions":"0.13.0"},{"fix":"Use the official 'jiter' package for continued support and updates.","message":"The 'jiter-pupy' package is a pure Python implementation of jiter and is no longer maintained.","severity":"deprecated","affected_versions":"All"}],"env_vars":null,"search_vec":"'-3':32 '0.13.0':14 '2':18,31 '2026':19 'activ':22 'approxim':29 'cadenc':27 'current':11 'everi':30 'fast':5 'februari':17 'iter':6 'jiter':1,2,38 'json':7,34 'maintain':23 'month':33 'pars':35 'parser':8 'perform':37 'python':10,36 'releas':15,26 'version':13","created_at":"2026-03-28T10:51:54.707231+00:00","updated_at":"2026-04-16T15:53:02.046244+00:00","problems":[{"fix":"Install the package using pip: `pip install jiter`","cause":"The 'jiter' package is not installed in the current Python environment or is not accessible to the running script.","error":"ModuleNotFoundError: No module named 'jiter'"},{"fix":"Ensure you have the Rust toolchain installed (e.g., `curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh`). If using poetry, try `poetry add jiter --build=venv` or manually install with pip if the environment is complex. For some environments like Chaquopy, specific `openai` versions might resolve conflicts.","cause":"This error often occurs during installation when `pip` or `poetry` cannot compile the underlying Rust extension for 'jiter', possibly due to missing build tools (like Rust toolchain or C compiler) or environment-specific issues (e.g., specific Python versions or operating systems).","error":"ERROR: Failed to build 'jiter' when installing build dependencies"},{"fix":"Provide complete and valid JSON bytes to `jiter.from_json()`, or set `partial_mode=True` to allow parsing of incomplete JSON and discard the trailing incomplete string, or `partial_mode='trailing-strings'` to include it. \nExample:\n```python\nimport jiter\n# Fix: Provide complete JSON\ncomplete_json = b'{\"key\": \"value\"}'\nparsed_data = jiter.from_json(complete_json)\n\n# Alternative: Allow partial JSON\npartial_json = b'{\"key\": \"incomplete st'\nparsed_data_partial = jiter.from_json(partial_json, partial_mode=True)\n```","cause":"The `jiter.from_json()` function was called with JSON bytes that are syntactically incomplete, and `partial_mode` was set to `False` (the default), which requires well-formed JSON.","error":"ValueError: JSON input is incomplete"},{"fix":"Ensure the JSON input does not contain objects with duplicate keys, or set `catch_duplicate_keys=False` to allow `jiter` to silently handle (typically by using the last encountered value) duplicate keys. \nExample:\n```python\nimport jiter\n# Fix: Remove duplicate key\nvalid_json = b'{\"key1\": \"value1\", \"key2\": \"value2\"}'\nparsed_data = jiter.from_json(valid_json, catch_duplicate_keys=True)\n\n# Alternative: Allow duplicate keys (last one wins by default if not caught)\nduplicate_key_json = b'{\"key\": \"value1\", \"key\": \"value2\"}'\nparsed_data_allowed = jiter.from_json(duplicate_key_json, catch_duplicate_keys=False)\n```","cause":"The `jiter.from_json()` function encountered a JSON object containing duplicate keys, and the `catch_duplicate_keys` option was set to `True`.","error":"ValueError: Duplicate key found"}],"ecosystem":"pypi","meta_description":null,"install_score":80,"quickstart_score":80,"quickstart_tag":"verified","pypi_latest":"0.16.0","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/pydantic/jiter","docs":null,"changelog":null,"pypi":"https://pypi.org/project/jiter/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["serialization","data"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-06-28","last_verified":"2026-08-27","next_check":"2026-07-28","install_tag":"verified"}}