{ "info": { "author": "Osmose (Michael Kelly)", "author_email": "me@mkelly.me", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.6", "Topic :: Software Development" ], "description": "# PyJEXL\n\nA Python-based JEXL parser and evaluator.\n\n__NOTE:__ This library handles the JEXL from\n[TechnologyAdvice's JEXL library][jexl]. It does __NOT__ handle the\nsimilarly-named Apache Commons JEXL language.\n\n[jexl]: https://github.com/TechnologyAdvice/Jexl\n\n## Limitations and Differences from JEXL\n\n- JavaScript-style implicit type conversions aren't supported, but may be added\n in the future. Instead, Python type semantics are used.\n- Property access is only supported for mapping objects currently.\n- Several odd edge-cases in JEXL are ignored because they are unintuitive,\n difficult to implement, or a bad pattern:\n - Implicitly using the first element in an array when chaining identifiers\n is not supported. In JEXL, if `foo.bar` is a list, the expression\n `foo.bar.baz` is equivalent to `foo.bar[0].baz`.\n - Conditional expressions (AKA ternary expressions) cannot have a missing\n consequent, i.e. `\"foo\" ?: 4` is invalid.\n\n## License\n\nLicensed under the MIT License. See `LICENSE` for details.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Osmose/pyjexl", "keywords": "jexl parser", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pyjexl", "package_url": "https://pypi.org/project/pyjexl/", "platform": "", "project_url": "https://pypi.org/project/pyjexl/", "project_urls": { "Homepage": "https://github.com/Osmose/pyjexl" }, "release_url": "https://pypi.org/project/pyjexl/0.2.3/", "requires_dist": [ "parsimonious", "future" ], "requires_python": "", "summary": "A JEXL parser and evaluator.", "version": "0.2.3" }, "last_serial": 3763073, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "b5e7882549da2fb9c2c55b6040a65a58", "sha256": "4959f63e45b29af4aed27446bf1cda4046fc65ddee339628d218e51351897d00" }, "downloads": -1, "filename": "pyjexl-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b5e7882549da2fb9c2c55b6040a65a58", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9838, "upload_time": "2017-03-23T18:00:11", "url": "https://files.pythonhosted.org/packages/84/2c/aa846580a65dda08bf5a763c03979e5740e65419dee117f277afd07c0618/pyjexl-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1810658593be0ed541017c212a81d6a8", "sha256": "e4669e3209fe16f086d8ce246418a16ceed6d18ee3a88ad043a73e066cd5f280" }, "downloads": -1, "filename": "pyjexl-0.1.0.tar.gz", "has_sig": false, "md5_digest": "1810658593be0ed541017c212a81d6a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7390, "upload_time": "2017-03-23T18:00:14", "url": "https://files.pythonhosted.org/packages/72/87/aea4dc92ba6083c39e2f093873b45d8c6cd37df2b9c8bd37a50969df3639/pyjexl-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "0592e7b5c50f8bd96d7910b60f3d33fa", "sha256": "876b7349994e52f7f995f4983a599ee9f83740230f0ca88c160aca835c1aa8c1" }, "downloads": -1, "filename": "pyjexl-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0592e7b5c50f8bd96d7910b60f3d33fa", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9884, "upload_time": "2017-03-23T19:51:47", "url": "https://files.pythonhosted.org/packages/56/73/0753c3f07dd31050a6fded55e05dc97ccf726635878316325f1068cc76a3/pyjexl-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6537304f0610b011854d810f4669c22b", "sha256": "05d8a3923abc4cd490c07c58194ddfbb2e1dbf0f09c0494b09b238934520b6fa" }, "downloads": -1, "filename": "pyjexl-0.1.1.tar.gz", "has_sig": false, "md5_digest": "6537304f0610b011854d810f4669c22b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7437, "upload_time": "2017-03-23T19:51:49", "url": "https://files.pythonhosted.org/packages/49/43/54c91c32958ce7c5b3f6bacbad7acff67f3af108286de6d5a80ac95a1c1c/pyjexl-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "aa447ca7ecc49d174d48d944a2af4dde", "sha256": "b745d0308ba71f5ea401aae0c87a78760fb27e9b55f77257360d8b4c5c582d3a" }, "downloads": -1, "filename": "pyjexl-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aa447ca7ecc49d174d48d944a2af4dde", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9895, "upload_time": "2017-03-23T20:06:16", "url": "https://files.pythonhosted.org/packages/02/6b/189708c6117b7579c8221fd615b1e8f6c0ad509412d1c190843ee3a74785/pyjexl-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "effcfb9f931ad71ea5cfd05d1e3914b6", "sha256": "f1e9103afbfb49cb10f28bcdddaa0265ad0f81361b53789995ef2c3a99bbc11f" }, "downloads": -1, "filename": "pyjexl-0.1.2.tar.gz", "has_sig": false, "md5_digest": "effcfb9f931ad71ea5cfd05d1e3914b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7452, "upload_time": "2017-03-23T20:06:18", "url": "https://files.pythonhosted.org/packages/32/7e/57cc8a3324126080e586c6b4a9011ad6a8abd7bfd4c4223a2e1c5903c4e8/pyjexl-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "c570c309a3eb4599f2bee62292795998", "sha256": "20994cc6054d4bff6047c5d372040dafeee06a037e2fb3a53f00ca7c1f95b6bd" }, "downloads": -1, "filename": "pyjexl-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c570c309a3eb4599f2bee62292795998", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9883, "upload_time": "2017-03-23T21:31:52", "url": "https://files.pythonhosted.org/packages/ed/af/ab9fe22bc042f2df516beba59cfc628e4230c1306f2089738f796f628984/pyjexl-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e89e09e926fa8b9eb554727b973a2e74", "sha256": "e9dbb26d500d86343fc6dc8aa3f6394a5b6afbb1dd297206556088f77467a49e" }, "downloads": -1, "filename": "pyjexl-0.1.3.tar.gz", "has_sig": false, "md5_digest": "e89e09e926fa8b9eb554727b973a2e74", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7428, "upload_time": "2017-03-23T21:31:54", "url": "https://files.pythonhosted.org/packages/1a/4d/4f374f77cb9e0ec403ff829903aabebc967088284979f9f58333f3196b06/pyjexl-0.1.3.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "c3bc0cd7acf59ccc75ae2baa4fbb3ce2", "sha256": "a063d32c30c11185e1a340e79998fc3d2df3ec18007023d32b5dac0de7b38d3c" }, "downloads": -1, "filename": "pyjexl-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c3bc0cd7acf59ccc75ae2baa4fbb3ce2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10197, "upload_time": "2017-05-31T16:38:24", "url": "https://files.pythonhosted.org/packages/a5/32/4d8f163a0a47f18c080ca9ca789cff3b64fbf721cd2cecc5f550c4953240/pyjexl-0.2.0-py2.py3-none-any.whl" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "6f4cbf384564740586104026f884dfcf", "sha256": "66a7fb0437d1c3b411f6f59ceff4845531573bff64488961c97342782f81baff" }, "downloads": -1, "filename": "pyjexl-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6f4cbf384564740586104026f884dfcf", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10173, "upload_time": "2018-03-12T19:18:24", "url": "https://files.pythonhosted.org/packages/7f/fd/b3c9f0fc69818c18a8e91197dd303643d9b8b9b12d9ebef3edafd74d02b0/pyjexl-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "48f93663e60432b1c188b1dfec37c931", "sha256": "cd770db502ea4f6b2f2c72ebd9a14f2f7d0146058ac87299be2e5a36738144c0" }, "downloads": -1, "filename": "pyjexl-0.2.1.tar.gz", "has_sig": false, "md5_digest": "48f93663e60432b1c188b1dfec37c931", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7870, "upload_time": "2018-03-12T19:18:25", "url": "https://files.pythonhosted.org/packages/f0/a6/8719c2ec5ecb647be28d0cb185b31c4840a7a3e15fed3613661fb663ca9f/pyjexl-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "bfa5a41a1caed870d270d28288a4facc", "sha256": "bd7270551b31604cdc13eb38a7826c3613967e78b037b5c97161fada1a33ac1f" }, "downloads": -1, "filename": "pyjexl-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bfa5a41a1caed870d270d28288a4facc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10168, "upload_time": "2018-03-27T19:51:34", "url": "https://files.pythonhosted.org/packages/4d/89/0a484b6a3f600ee95a78ae1d3fe4f032d4e0f18a79479d564d795774bae3/pyjexl-0.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3592b24b05255cfc06ca59d79cfb321e", "sha256": "94305e95b631c7d29cefcf689d156b095742c740f09ce2ea96c664188be81e36" }, "downloads": -1, "filename": "pyjexl-0.2.2.tar.gz", "has_sig": false, "md5_digest": "3592b24b05255cfc06ca59d79cfb321e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7675, "upload_time": "2018-03-27T19:51:35", "url": "https://files.pythonhosted.org/packages/f7/6a/257ea8f760f39d9e5a79acc31eeb70eed408e9cfc4371b136654139739ba/pyjexl-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "cb867bd2f44abd2e56ef0699d42085d7", "sha256": "1369c08c3f1f6931bc3c3089f24e79902680b6022412ccfc5e818441cf0dca52" }, "downloads": -1, "filename": "pyjexl-0.2.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cb867bd2f44abd2e56ef0699d42085d7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10142, "upload_time": "2018-04-13T20:31:53", "url": "https://files.pythonhosted.org/packages/7d/a4/2cfcbcd404a09d22cc511a2406d76352698709a4c420d9d03a4b1ebfcaac/pyjexl-0.2.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "78fce4bb149493963fe013daea7b7282", "sha256": "56eb1ab1bd78eb12d3c514b6e2f2c93fe7f2fdd00bd821873e3f089706452c51" }, "downloads": -1, "filename": "pyjexl-0.2.3.tar.gz", "has_sig": false, "md5_digest": "78fce4bb149493963fe013daea7b7282", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7721, "upload_time": "2018-04-13T20:31:54", "url": "https://files.pythonhosted.org/packages/e1/74/6fcc56d342e037229c9ad20ff1b67cf69a7cfcdccaa43a3eec6baa1f3ab7/pyjexl-0.2.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "cb867bd2f44abd2e56ef0699d42085d7", "sha256": "1369c08c3f1f6931bc3c3089f24e79902680b6022412ccfc5e818441cf0dca52" }, "downloads": -1, "filename": "pyjexl-0.2.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cb867bd2f44abd2e56ef0699d42085d7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10142, "upload_time": "2018-04-13T20:31:53", "url": "https://files.pythonhosted.org/packages/7d/a4/2cfcbcd404a09d22cc511a2406d76352698709a4c420d9d03a4b1ebfcaac/pyjexl-0.2.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "78fce4bb149493963fe013daea7b7282", "sha256": "56eb1ab1bd78eb12d3c514b6e2f2c93fe7f2fdd00bd821873e3f089706452c51" }, "downloads": -1, "filename": "pyjexl-0.2.3.tar.gz", "has_sig": false, "md5_digest": "78fce4bb149493963fe013daea7b7282", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7721, "upload_time": "2018-04-13T20:31:54", "url": "https://files.pythonhosted.org/packages/e1/74/6fcc56d342e037229c9ad20ff1b67cf69a7cfcdccaa43a3eec6baa1f3ab7/pyjexl-0.2.3.tar.gz" } ] }