{"id":10176,"library":"pyvrl","title":"PyVRL: Python Interface for Vector Remap Language (VRL)","description":"PyVRL is a Python library that allows you to execute Vector Remap Language (VRL) transformations directly within your Python applications. It provides bindings to the VRL compiler and runtime, enabling data manipulation, filtering, and routing with VRL expressions. The current version is 0.0.2, indicating it's in very early development with an irregular release cadence.","status":"active","version":"0.0.2","language":"python","source_language":"en","source_url":"https://github.com/crowdalert/pyvrl","tags":["vrl","vector-remap-language","data-transformation","data-processing"],"install":[{"cmd":"pip install pyvrl","lang":"bash","label":"Install stable version"}],"dependencies":[],"imports":[{"wrong":"from pyvrl.compiler import VRLCompiler","symbol":"Transform","correct":"from pyvrl import Transform"}],"quickstart":{"code":"from pyvrl.compiler import VRLCompiler\nfrom pyvrl.value import Value\n\n# Initialize the VRL compiler\ncompiler = VRLCompiler()\n\n# Compile a VRL program to uppercase the 'message' field\nvrl_program = '.message = upcase(.message)'\ncompiled_program = compiler.compile(vrl_program)\n\n# Prepare input data as a pyvrl.value.Value object\ninput_data = Value({\"message\": \"hello world\"})\n\n# Run the VRL program\noutput_data = compiled_program.run(input_data)\n\n# Convert the output back to a Python dictionary\nresult = output_data.as_python()\n\nprint(f\"Input: {input_data.as_python()}\")\nprint(f\"Output: {result}\")\n# Expected output: {'message': 'HELLO WORLD'}","lang":"python","description":"This quickstart demonstrates how to compile a VRL expression and execute it on a Python dictionary, ensuring data is correctly converted to and from `pyvrl.value.Value` objects."},"warnings":[{"fix":"Always consult the latest GitHub README and any release notes for API changes before upgrading. Pin your dependency to a specific patch version if stability is critical.","message":"As a library in early development (version 0.0.x), the API is subject to frequent and potentially breaking changes. Stability is not guaranteed between minor or even patch versions.","severity":"breaking","affected_versions":"<0.1.0"},{"fix":"Ensure all input data for VRL processing is wrapped using `pyvrl.value.Value(your_python_data)`. To retrieve Python-native types from `pyvrl` output, use the `.as_python()` method on the resulting `Value` object.","message":"VRL expressions in `pyvrl` operate on `pyvrl.value.Value` objects, not standard Python dictionaries or lists directly. Passing raw Python types where a `Value` is expected will result in type errors.","severity":"gotcha","affected_versions":"0.0.x"},{"fix":"Thoroughly test VRL expressions for correctness before embedding them in your Python code. You may use external VRL validators or the `Vector` CLI to pre-validate complex VRL logic.","message":"VRL syntax errors are caught by the `VRLCompiler` during the `compile()` step, not by Python's interpreter. Invalid VRL expressions will lead to `pyvrl.compiler.VRLCompilationError` at runtime.","severity":"gotcha","affected_versions":"0.0.x"}],"env_vars":null,"search_vec":"'0.0.2':51 'allow':15 'applic':28 'bind':31 'cadenc':63 'compil':35 'current':48 'data':39,70,73 'data-process':72 'data-transform':69 'develop':58 'direct':24 'earli':57 'enabl':38 'execut':18 'express':46 'filter':41 'indic':52 'interfac':3 'irregular':61 'languag':7,21,68 'librari':13 'manipul':40 'process':74 'provid':30 'python':2,12,27 'pyvrl':1,9 'releas':62 'remap':6,20,67 'rout':43 'runtim':37 'transform':23,71 'vector':5,19,66 'vector-remap-languag':65 'version':49 'vrl':8,22,34,45,64 'within':25","created_at":"2026-04-17T01:22:45.525964+00:00","updated_at":"2026-04-17T01:22:45.525964+00:00","problems":null,"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"0.0.2","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/crowdalert/pyvrl","docs":null,"changelog":null,"pypi":"https://pypi.org/project/pyvrl/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["data"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-06-30","last_verified":"2026-06-30","next_check":"2026-07-30","install_tag":null}}