# bufr2geojson
The bufr2geojson Python module contains both a command line interface and an API to convert data stored as WMO BUFR to GeoJSON (RFC 7946).
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/wmo-im/bufr2geojson/blob/main/requirements.txt). Dependencies are automatically installed during bufr2geojson installation.
```bash
# download and build Docker image
git clone https://github.com/wmo-im/bufr2geojson.git
cd bufr2geojson
docker build -t bufr2geojson .
# login to Docker container
docker run -it -v ${pwd}:/app bufr2geojson
cd /app
```
## Running
```bash
bufr2geojson data transform <input_file> --output-dir <output_directory> --csv <True|False>
```
e.g.
```bash
bufr2geojson data transform ./tests/A_ISIA21EIDB202100_C_EDZW_20220320210902_11839953.bin --output-dir ./output/
```
## Releasing
```bash
# create release (x.y.z is the release version)
vi bufr2geojson/__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/wmo-im/bufr2geojson/releases/new)
# bump version back to dev
vi bufr2geojson/__init__.py # update __version__
git commit -am 'back to dev'
git push origin main
```
## Documentation
The full documentation for bufr2geojson can be found at [https://bufr2geojson.readthedocs.io](https://bufr2geojson.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/wmo-im/bufr2geojson/issues).
## Contact
* [David Berry](https://github.com/david-i-berry)
Raw data
{
"_id": null,
"home_page": "https://github.com/wmo-im/bufr2geojson",
"name": "bufr2geojson",
"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/62/38/eeb94294240b936f2c686ebbb9e071d05b4cc92d45ddc39194f3a07c7f79/bufr2geojson-0.7.0.tar.gz",
"platform": "all",
"description": "# bufr2geojson\n\nThe bufr2geojson Python module contains both a command line interface and an API to convert data stored as WMO BUFR to GeoJSON (RFC 7946).\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/wmo-im/bufr2geojson/blob/main/requirements.txt). Dependencies are automatically installed during bufr2geojson installation.\n\n```bash\n# download and build Docker image\ngit clone https://github.com/wmo-im/bufr2geojson.git\ncd bufr2geojson\ndocker build -t bufr2geojson .\n\n# login to Docker container\ndocker run -it -v ${pwd}:/app bufr2geojson\ncd /app\n```\n\n## Running\n\n```bash\nbufr2geojson data transform <input_file> --output-dir <output_directory> --csv <True|False>\n```\n\ne.g.\n\n```bash\nbufr2geojson data transform ./tests/A_ISIA21EIDB202100_C_EDZW_20220320210902_11839953.bin --output-dir ./output/\n```\n\n## Releasing\n\n```bash\n# create release (x.y.z is the release version)\nvi bufr2geojson/__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/wmo-im/bufr2geojson/releases/new)\n\n# bump version back to dev\nvi bufr2geojson/__init__.py # update __version__\ngit commit -am 'back to dev'\ngit push origin main\n```\n\n## Documentation\n\nThe full documentation for bufr2geojson can be found at [https://bufr2geojson.readthedocs.io](https://bufr2geojson.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/wmo-im/bufr2geojson/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.7.0",
"project_urls": {
"Homepage": "https://github.com/wmo-im/bufr2geojson"
},
"split_keywords": [
"wmo",
"bufr",
"csv",
"encoding",
"weather",
"observations"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e34f579546bcdfe0d6c1dd960497dbe0258806225b76bf8c8cc13e4ad7768803",
"md5": "9c779ceeb04e903c8ecc48b7b6f1858f",
"sha256": "5ebb8201dc505017b52e64f59d6db073ab6b340c11c4b78f323b8733c25ae10b"
},
"downloads": -1,
"filename": "bufr2geojson-0.7.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "9c779ceeb04e903c8ecc48b7b6f1858f",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 28514,
"upload_time": "2025-01-07T12:22:06",
"upload_time_iso_8601": "2025-01-07T12:22:06.290498Z",
"url": "https://files.pythonhosted.org/packages/e3/4f/579546bcdfe0d6c1dd960497dbe0258806225b76bf8c8cc13e4ad7768803/bufr2geojson-0.7.0-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6238eeb94294240b936f2c686ebbb9e071d05b4cc92d45ddc39194f3a07c7f79",
"md5": "080e7e7a17be6615e361caac6ad8dd08",
"sha256": "943e37d73a6e216efa9400a2e2a891d6156feb9ba5f55e9004140e59752ec9b0"
},
"downloads": -1,
"filename": "bufr2geojson-0.7.0.tar.gz",
"has_sig": false,
"md5_digest": "080e7e7a17be6615e361caac6ad8dd08",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24030,
"upload_time": "2025-01-07T12:22:09",
"upload_time_iso_8601": "2025-01-07T12:22:09.302183Z",
"url": "https://files.pythonhosted.org/packages/62/38/eeb94294240b936f2c686ebbb9e071d05b4cc92d45ddc39194f3a07c7f79/bufr2geojson-0.7.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-07 12:22:09",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "wmo-im",
"github_project": "bufr2geojson",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "attrs",
"specs": [
[
">=",
"22.2.0"
]
]
},
{
"name": "cfunits",
"specs": []
},
{
"name": "click",
"specs": []
},
{
"name": "eccodes",
"specs": []
},
{
"name": "jsonschema",
"specs": []
},
{
"name": "jsonpath_ng",
"specs": []
},
{
"name": "pyoscar",
"specs": []
},
{
"name": "PyYAML",
"specs": []
}
],
"lcname": "bufr2geojson"
}