csv2bufr


Namecsv2bufr JSON
Version 0.8.6 PyPI version JSON
download
home_pagehttps://github.com/World-Meteorological-Organization/csv2bufr
SummaryConfigurable module to convert data from CSV to WMO BUFR format
upload_time2025-08-15 10:49:57
maintainerDavid I. Berry
docs_urlNone
authorDavid I. Berry
requires_pythonNone
licenseApache Software License
keywords wmo bufr csv encoding weather observations
VCS
bugtrack_url
requirements click eccodes jsonschema
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # csv2bufr

The csv2bufr Python module contains both a command line interface and an API to convert data stored in a CSV file to the WMO BUFR data format.
More information on the BUFR format can be found in the [WMO Manual on Codes, Volume I.2](https://library.wmo.int/doc_num.php?explnum_id=10722).

## Installation

### Requirements
- Python 3 and above
- [ecCodes](https://confluence.ecmwf.int/display/ECC)

### Dependencies

Dependencies are listed in [requirements.txt](https://github.com/World-Meteorological-Organization/csv2bufr/blob/main/requirements.txt). Dependencies are automatically installed during csv2bufr installation.

```bash
docker pull wmoim/csv2bufr
```

## Running

Transform data from file ``<my-csv-file.csv>``  for station ``<wigos_station_identifier>`` to BUFR using template 
specified in file ``<csv-to-bufr-mapping.json>`` and with station metadata file the file ``<metadata-file.csv>``. 
Write output to ``<output-directory-path>``.

```bash
csv2bufr data transform <my-csv-file.csv> \
    <wigos_station_identifier> \
    --station-metadata <metadata-file.csv> \
    --bufr-template <csv-to-bufr-mapping.json> \
    --output <output-directory-path>
```

## Releasing

```bash
# create release (x.y.z is the release version)
vi csv2bufr/__init__.py  # update __version__
git commit -am 'update release version vx.y.z'
git push origin main
git tag -a vx.y.z -m 'tagging release version vx.y.z'
git push --tags

# upload to PyPI
rm -fr build dist *.egg-info
python setup.py sdist bdist_wheel --universal
twine upload dist/*

# publish release on GitHub (https://github.com/World-Meteorological-Organization/csv2bufr/releases/new)

# bump version back to dev
vi csv2bufr/__init__.py  # update __version__
git commit -am 'back to dev'
git push origin main
```
## Documentation

The full documentation for csv2bufr can be found at [https://csv2bufr.readthedocs.io](https://csv2bufr.readthedocs.io), including sample files.

### Code Conventions

* [PEP8](https://www.python.org/dev/peps/pep-0008)

### Bugs and Issues

All bugs, enhancements and issues are managed on [GitHub](https://github.com/World-Meteorological-Organization/csv2bufr/issues).

## Contact

* [David Berry](https://github.com/david-i-berry)


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/World-Meteorological-Organization/csv2bufr",
    "name": "csv2bufr",
    "maintainer": "David I. Berry",
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": "DBerry@wmo.int",
    "keywords": "WMO BUFR csv encoding weather observations",
    "author": "David I. Berry",
    "author_email": "DBerry@wmo.int",
    "download_url": "https://files.pythonhosted.org/packages/80/39/92ce6fee2ff5a02310afe61583170e8d4c6d8f302133a8d8ea872caead99/csv2bufr-0.8.6.tar.gz",
    "platform": "all",
    "description": "# csv2bufr\n\nThe csv2bufr Python module contains both a command line interface and an API to convert data stored in a CSV file to the WMO BUFR data format.\nMore information on the BUFR format can be found in the [WMO Manual on Codes, Volume I.2](https://library.wmo.int/doc_num.php?explnum_id=10722).\n\n## Installation\n\n### Requirements\n- Python 3 and above\n- [ecCodes](https://confluence.ecmwf.int/display/ECC)\n\n### Dependencies\n\nDependencies are listed in [requirements.txt](https://github.com/World-Meteorological-Organization/csv2bufr/blob/main/requirements.txt). Dependencies are automatically installed during csv2bufr installation.\n\n```bash\ndocker pull wmoim/csv2bufr\n```\n\n## Running\n\nTransform data from file ``<my-csv-file.csv>``  for station ``<wigos_station_identifier>`` to BUFR using template \nspecified in file ``<csv-to-bufr-mapping.json>`` and with station metadata file the file ``<metadata-file.csv>``. \nWrite output to ``<output-directory-path>``.\n\n```bash\ncsv2bufr data transform <my-csv-file.csv> \\\n    <wigos_station_identifier> \\\n    --station-metadata <metadata-file.csv> \\\n    --bufr-template <csv-to-bufr-mapping.json> \\\n    --output <output-directory-path>\n```\n\n## Releasing\n\n```bash\n# create release (x.y.z is the release version)\nvi csv2bufr/__init__.py  # update __version__\ngit commit -am 'update release version vx.y.z'\ngit push origin main\ngit tag -a vx.y.z -m 'tagging release version vx.y.z'\ngit push --tags\n\n# upload to PyPI\nrm -fr build dist *.egg-info\npython setup.py sdist bdist_wheel --universal\ntwine upload dist/*\n\n# publish release on GitHub (https://github.com/World-Meteorological-Organization/csv2bufr/releases/new)\n\n# bump version back to dev\nvi csv2bufr/__init__.py  # update __version__\ngit commit -am 'back to dev'\ngit push origin main\n```\n## Documentation\n\nThe full documentation for csv2bufr can be found at [https://csv2bufr.readthedocs.io](https://csv2bufr.readthedocs.io), including sample files.\n\n### Code Conventions\n\n* [PEP8](https://www.python.org/dev/peps/pep-0008)\n\n### Bugs and Issues\n\nAll bugs, enhancements and issues are managed on [GitHub](https://github.com/World-Meteorological-Organization/csv2bufr/issues).\n\n## Contact\n\n* [David Berry](https://github.com/david-i-berry)\n\n",
    "bugtrack_url": null,
    "license": "Apache Software License",
    "summary": "Configurable module to convert data from CSV to WMO BUFR format",
    "version": "0.8.6",
    "project_urls": {
        "Homepage": "https://github.com/World-Meteorological-Organization/csv2bufr"
    },
    "split_keywords": [
        "wmo",
        "bufr",
        "csv",
        "encoding",
        "weather",
        "observations"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ef908ec5a072d5f21074556498ddc5c951ae8013f064ddfc39e56c47b35b5b8f",
                "md5": "b6543bf3c813c3c53236c6555e68d4d8",
                "sha256": "eb57f5a7665213612d2163c4d831471fe0df46ae79b2db8ad772bfe06f837c6f"
            },
            "downloads": -1,
            "filename": "csv2bufr-0.8.6-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b6543bf3c813c3c53236c6555e68d4d8",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": null,
            "size": 25932,
            "upload_time": "2025-08-15T10:49:56",
            "upload_time_iso_8601": "2025-08-15T10:49:56.115632Z",
            "url": "https://files.pythonhosted.org/packages/ef/90/8ec5a072d5f21074556498ddc5c951ae8013f064ddfc39e56c47b35b5b8f/csv2bufr-0.8.6-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "803992ce6fee2ff5a02310afe61583170e8d4c6d8f302133a8d8ea872caead99",
                "md5": "c396be1a5563fd69d960cc3cc568fdcc",
                "sha256": "bdc2dd78720ae01ae55a12db0be01dc1774e1f0191ec2536064fdccbc4c4216f"
            },
            "downloads": -1,
            "filename": "csv2bufr-0.8.6.tar.gz",
            "has_sig": false,
            "md5_digest": "c396be1a5563fd69d960cc3cc568fdcc",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 24080,
            "upload_time": "2025-08-15T10:49:57",
            "upload_time_iso_8601": "2025-08-15T10:49:57.307329Z",
            "url": "https://files.pythonhosted.org/packages/80/39/92ce6fee2ff5a02310afe61583170e8d4c6d8f302133a8d8ea872caead99/csv2bufr-0.8.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-15 10:49:57",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "World-Meteorological-Organization",
    "github_project": "csv2bufr",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "click",
            "specs": []
        },
        {
            "name": "eccodes",
            "specs": []
        },
        {
            "name": "jsonschema",
            "specs": []
        }
    ],
    "lcname": "csv2bufr"
}
        
Elapsed time: 3.26634s