xrlint


Namexrlint JSON
Version 0.4.0 PyPI version JSON
download
home_pageNone
SummaryA linter for xarray datasets.
upload_time2025-01-27 12:49:29
maintainerNone
docs_urlNone
authorNorman Fomferra (Brockmann Consult GmbH)
requires_python>=3.10
licenseMIT
keywords xarray
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![CI](https://github.com/bcdev/xrlint/actions/workflows/tests.yml/badge.svg)](https://github.com/bcdev/xrlint/actions/workflows/tests.yml)
[![codecov](https://codecov.io/gh/bcdev/xrlint/graph/badge.svg?token=GVKuJao97t)](https://codecov.io/gh/bcdev/xrlint)
[![PyPI Version](https://img.shields.io/pypi/v/xrlint)](https://pypi.org/project/xrlint/)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v0.json)](https://github.com/charliermarsh/ruff)[![GitHub License](https://img.shields.io/github/license/bcdev/xrlint)](https://github.com/bcdev/xrlint)

# XRLint - A linter for xarray datasets


XRLint is a [linting](https://en.wikipedia.org/wiki/Lint_(software)) 
tool and library for [xarray]() datasets.
Its design is heavily inspired by the awesome [ESLint](https://eslint.org/).


## Features 

- Flexible validation for `xarray.Dataset` objects by configurable rules.
- Available from CLI and Python API.
- Custom plugins providing custom rule sets allow addressing 
  different dataset conventions.
- Project-specific configurations including configuration of individual 
  rules and file-specific settings.
- Works with dataset files in the local filesystem or any of the remote 
  filesystems supported by xarray.

## Inbuilt Rules

The following plugins provide XRLint's [inbuilt rules](https://bcdev.github.io/xrlint/rule-ref/):

- `xrlint.plugins.core`: implementing the rules for
  [tidy data](https://tutorial.xarray.dev/intermediate/data_cleaning/05.1_intro.html)
  and the 
  [CF-Conventions](https://cfconventions.org/cf-conventions/cf-conventions.html).
- `xrlint.plugins.core`: implementing the rules for 
  [xcube datasets](https://xcube.readthedocs.io/en/latest/cubespec.html).
  Note, this plugin is fully optional. You must manually configure 
  it to apply its rules. It may be moved into a separate GitHub repo 
  once XRLint is mature enough. 


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "xrlint",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "xarray",
    "author": "Norman Fomferra (Brockmann Consult GmbH)",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/90/b5/d3edcac159074611370752009a91d620528ed253f59ea6dbf766ac1921ab/xrlint-0.4.0.tar.gz",
    "platform": null,
    "description": "[![CI](https://github.com/bcdev/xrlint/actions/workflows/tests.yml/badge.svg)](https://github.com/bcdev/xrlint/actions/workflows/tests.yml)\n[![codecov](https://codecov.io/gh/bcdev/xrlint/graph/badge.svg?token=GVKuJao97t)](https://codecov.io/gh/bcdev/xrlint)\n[![PyPI Version](https://img.shields.io/pypi/v/xrlint)](https://pypi.org/project/xrlint/)\n[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v0.json)](https://github.com/charliermarsh/ruff)[![GitHub License](https://img.shields.io/github/license/bcdev/xrlint)](https://github.com/bcdev/xrlint)\n\n# XRLint - A linter for xarray datasets\n\n\nXRLint is a [linting](https://en.wikipedia.org/wiki/Lint_(software)) \ntool and library for [xarray]() datasets.\nIts design is heavily inspired by the awesome [ESLint](https://eslint.org/).\n\n\n## Features \n\n- Flexible validation for `xarray.Dataset` objects by configurable rules.\n- Available from CLI and Python API.\n- Custom plugins providing custom rule sets allow addressing \n  different dataset conventions.\n- Project-specific configurations including configuration of individual \n  rules and file-specific settings.\n- Works with dataset files in the local filesystem or any of the remote \n  filesystems supported by xarray.\n\n## Inbuilt Rules\n\nThe following plugins provide XRLint's [inbuilt rules](https://bcdev.github.io/xrlint/rule-ref/):\n\n- `xrlint.plugins.core`: implementing the rules for\n  [tidy data](https://tutorial.xarray.dev/intermediate/data_cleaning/05.1_intro.html)\n  and the \n  [CF-Conventions](https://cfconventions.org/cf-conventions/cf-conventions.html).\n- `xrlint.plugins.core`: implementing the rules for \n  [xcube datasets](https://xcube.readthedocs.io/en/latest/cubespec.html).\n  Note, this plugin is fully optional. You must manually configure \n  it to apply its rules. It may be moved into a separate GitHub repo \n  once XRLint is mature enough. \n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A linter for xarray datasets.",
    "version": "0.4.0",
    "project_urls": {
        "Changelog": "https://github.com/bcdev/xrlint/blob/main/CHANGES.md",
        "Documentation": "https://bcdev.github.io/xrlint",
        "Issues": "https://github.com/bcdev/xrlint/issues",
        "Repository": "https://github.com/bcdev/xrlint"
    },
    "split_keywords": [
        "xarray"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "fb239e2052774b801fb5838ceb6d4f4e49fdc390d908c6b7afc8a93eb6ec3137",
                "md5": "cfb87f3f558c72e3e6308e7164501d01",
                "sha256": "6a84eec06842642222c924e9209006680f673922988ef01c7b9b6e8042ffc2dd"
            },
            "downloads": -1,
            "filename": "xrlint-0.4.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "cfb87f3f558c72e3e6308e7164501d01",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 116900,
            "upload_time": "2025-01-27T12:49:27",
            "upload_time_iso_8601": "2025-01-27T12:49:27.984726Z",
            "url": "https://files.pythonhosted.org/packages/fb/23/9e2052774b801fb5838ceb6d4f4e49fdc390d908c6b7afc8a93eb6ec3137/xrlint-0.4.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "90b5d3edcac159074611370752009a91d620528ed253f59ea6dbf766ac1921ab",
                "md5": "078b417e8351a7f5a1ceb1066af3c8dc",
                "sha256": "3d0901c7b8ea6488d3c52f11e5ec47dad296eed752bfb6f2aef25fb76a8c02e4"
            },
            "downloads": -1,
            "filename": "xrlint-0.4.0.tar.gz",
            "has_sig": false,
            "md5_digest": "078b417e8351a7f5a1ceb1066af3c8dc",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 86912,
            "upload_time": "2025-01-27T12:49:29",
            "upload_time_iso_8601": "2025-01-27T12:49:29.864330Z",
            "url": "https://files.pythonhosted.org/packages/90/b5/d3edcac159074611370752009a91d620528ed253f59ea6dbf766ac1921ab/xrlint-0.4.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-27 12:49:29",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "bcdev",
    "github_project": "xrlint",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "xrlint"
}
        
Elapsed time: 0.98866s