{"id":13531238,"url":"https://github.com/s-zeng/dhall-python","last_synced_at":"2025-04-01T19:31:50.137Z","repository":{"id":37083971,"uuid":"308711807","full_name":"s-zeng/dhall-python","owner":"s-zeng","description":"Python bindings for dhall, a functional configuration language","archived":false,"fork":true,"pushed_at":"2024-11-26T18:21:40.000Z","size":5290,"stargazers_count":47,"open_issues_count":19,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-27T19:52:18.270Z","etag":null,"topics":["dhall","python","rust"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/dhall/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"TristanCacqueray/python-dhall","license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/s-zeng.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":["s-zeng"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2020-10-30T18:23:26.000Z","updated_at":"2025-03-09T16:12:08.000Z","dependencies_parsed_at":"2023-02-12T14:30:43.826Z","dependency_job_id":null,"html_url":"https://github.com/s-zeng/dhall-python","commit_stats":null,"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-zeng%2Fdhall-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-zeng%2Fdhall-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-zeng%2Fdhall-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-zeng%2Fdhall-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/s-zeng","download_url":"https://codeload.github.com/s-zeng/dhall-python/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246700465,"owners_count":20819878,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dhall","python","rust"],"created_at":"2024-08-01T07:01:01.240Z","updated_at":"2025-04-01T19:31:45.119Z","avatar_url":"https://github.com/s-zeng.png","language":"Rust","funding_links":["https://github.com/sponsors/s-zeng"],"categories":["Binding"],"sub_categories":[],"readme":"[![Dhall logo](https://github.com/dhall-lang/dhall-lang/blob/master/img/dhall-logo.svg)](https://dhall-lang.org/)\n\n[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://GitHub.com/s-zeng/dhall-python/graphs/commit-activity)\n[![CI status](https://github.com/s-zeng/dhall-python/workflows/CI/badge.svg)](https://github.com/s-zeng/dhall-python/actions)\n[![PyPI version shields.io](https://img.shields.io/pypi/v/dhall.svg)](https://pypi.python.org/pypi/dhall/)\n[![PyPI downloads](https://img.shields.io/pypi/dm/dhall.svg)](https://pypistats.org/packages/dhall)\n\nDhall is a programmable configuration language optimized for\nmaintainability.\n\nYou can think of Dhall as: JSON + functions + types + imports\n\nNote that while Dhall is programmable, Dhall is not Turing-complete.  Many\nof Dhall's features take advantage of this restriction to provide stronger\nsafety guarantees and more powerful tooling.\n\nYou can try the language live in your browser by visiting the official website:\n\n* [https://dhall-lang.org](http://dhall-lang.org/)\n\n# `dhall-python`\n\n`dhall-python` contains [Dhall][dhall-lang] bindings for Python using the \n[rust][dhall-rust] implementation. It is meant to be used to integrate Dhall \ninto your python applications.\n\nIf you only want to convert Dhall to/from JSON or YAML, you should use the\nofficial tooling instead; instructions can be found\n[here](https://docs.dhall-lang.org/tutorials/Getting-started_Generate-JSON-or-YAML.html).\n\n## Usage\n\nInstall using pip:\n\n```shell\npip install dhall\n```\n\nSupports the following:\n\n- Operating Systems\n  - Windows\n  - Mac OS\n  - Linux (manylinux_2_24_x86_64)\n- Python versions\n  - 3.7\n  - 3.8\n  - 3.9\n  - 3.10\n  - 3.11\n\nPython 3.5 and 3.6 support is available in older versions of dhall-python.\n\ndhall-python implements a similar API to Python's [json\nmodule](https://docs.python.org/3/library/json.html):\n\n```python\n\u003e\u003e\u003e import dhall\n\u003e\u003e\u003e dhall.dumps({\"keyA\": 81, \"keyB\": True, \"keyC\": \"value\"})\n'{ keyA = 81, keyB = True, keyC = \"value\" }'\n\u003e\u003e\u003e dhall.loads(\"\"\"{ keyA = 81, keyB = True, keyC = \"value\" }\"\"\")\n{'keyA': 81, 'keyB': True, 'keyC': 'value'}\n```\n\n# License\n\ndhall-python is licensed under either of\n\n- Apache License, Version 2.0, (LICENSE-APACHE or\n  http://www.apache.org/licenses/LICENSE-2.0)\n- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)\n\nat your option.\n\n# Contribution\n\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in python-dhall by you, as defined in the Apache-2.0 license, shall\nbe dual licensed as above, without any additional terms or conditions.\n\nAll contributions are welcome! If you spot any bugs, or have any requests, \nissues and PRs are always welcome.\n\n# Developer guide\n\nThis project uses [poetry](https://python-poetry.org/docs/) for managing the development environment. If you don't have it installed, run\n\n```\ncurl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python\nexport PATH=\"$HOME/.poetry/bin:$PATH\"\n```\n\nThe project requires the latest `stable` version of Rust.\n\nInstall it via `rustup`:\n\n```\nrustup install stable\n```\n\nIf you have already installed the `stable` version, make sure it is up-to-date:\n\n```\nrustup update stable\n```\n\nAfter that, you can compile the current version of dhall-python and execute all tests and benchmarks with the following commands:\n\n```\nmake install\nmake test\n```\n\n🤫 Pssst!... run `make help` to learn more.\n\n\n[dhall-rust]: https://github.com/Nadrieril/dhall-rust\n[dhall-lang]: https://dhall-lang.org\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs-zeng%2Fdhall-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fs-zeng%2Fdhall-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs-zeng%2Fdhall-python/lists"}