$npx skillfedfor your agent

eccodes

Python interface to the ecCodes GRIB and BUFR decoder/encoder

Worth itPyPI Information AnalysisReleased Apr 20261.3M downloads / moApache License Version 2.0Pure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — eccodes-2.47.0-py3-none-any.whl
v2.47.0 · released 2026-04-22 · 4 runtime deps: numpy, attrs, cffi, findlibs

Yes. The package is actively maintained, has low install friction, carries no security vulnerabilities, and is licensed permissively. Install it if you work with GRIB or BUFR files. The only caveat is Windows support is untested—verify compatibility for your specific Windows environment before relying on it in production.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • The ecCodes C library must be available on the system.
  • PyPI wheels include it by default on Linux and macOS (via eccodeslib dependency); on Windows, verify the binary is bundled or set ECCODES_PYTHON_USE_FINDLIBS=1 to use an external installation.
  • Low friction: pure-wheel installation on PyPI with no compilation required by default.

License · maintenance · safety

Apache License Version 2.0 (permissive) — Licensed under Apache License Version 2.0, a permissive license that allows commercial and private use with minimal restrictions. No notable licensing constraints for most use cases.

last release 2026-04-22 (114 days) · last repo commit 2026-08-11 · 137 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,301,211 downloads/mo, #4,085 on PyPI

Verify before relying

pip install eccodes

import eccodes

# Read a GRIB file
with open('data.grib', 'rb') as f:
    msg_id = eccodes.codes_grib_new_from_file(f, eccodes.CODES_PRODUCT_GRIB)
    value = eccodes.codes_get(msg_id, 'shortName')
    eccodes.codes_release(msg_id)
  • Whether Windows support has improved since the description notes it as 'untested'
  • Performance characteristics of the pure-wheel vs. compiled modes in practice
  • Availability and stability of the eccodeslib dependency on all supported platforms
Same gist for agents: .md · .json

What it is and what it does

eccodes is a Python interface to the ECMWF ecCodes library, which decodes and encodes GRIB and BUFR files—the standard formats for meteorological and oceanographic data. It supports GRIB 1 and 2, BUFR 3 and 4, and works on Linux and macOS with tested support for modern Python versions (3.9–3.14) and PyPy3. The package ships as a pure wheel on PyPI with the ecCodes binary library included, meaning no external compilation is required for installation.

The library offers both low-level and high-level interfaces. The low-level API provides direct access to GRIB and BUFR message fields via key-value lookups, while a newer high-level BUFR interface simplifies common operations. By default, the wheel is twice as slow as a compiled version, but an optional build step using the ecCodes source headers can match native performance. The package uses findlibs to locate system libraries when needed, with environment variables available to control the search path.

Use it for

  • Extract meteorological variables (temperature, pressure, wind) from GRIB forecast or analysis files for weather modeling or analysis workflows.
  • Convert between GRIB 1 and GRIB 2 formats, or validate GRIB/BUFR file structure and metadata.
  • Decode BUFR observation data from weather stations or satellites for quality control or assimilation into data pipelines.
  • Build data ingestion tools that read multiple GRIB/BUFR files and extract specific fields for downstream analysis or visualization.
  • Integrate meteorological data processing into scientific Python stacks alongside numpy and other analysis libraries.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

The package is actively maintained, has low install friction, carries no security vulnerabilities, and is licensed permissively. Install it if you work with GRIB or BUFR files. The only caveat is Windows support is untested—verify compatibility for your specific Windows environment before relying on it in production.

Install

eccodes on PyPI

Before you install

Low friction: pure-wheel installation on PyPI with no compilation required by default. Maintenance is active with a recent release (114 days ago) and ongoing commits. The package depends on numpy, attrs, cffi, and findlibs—all stable, widely-used libraries.

The ecCodes C library must be available on the system. PyPI wheels include it by default on Linux and macOS (via eccodeslib dependency); on Windows, verify the binary is bundled or set ECCODES_PYTHON_USE_FINDLIBS=1 to use an external installation.

License in practice

Licensed under Apache License Version 2.0, a permissive license that allows commercial and private use with minimal restrictions. No notable licensing constraints for most use cases.

Quickstart

pip install eccodes

import eccodes

# Read a GRIB file
with open('data.grib', 'rb') as f:
    msg_id = eccodes.codes_grib_new_from_file(f, eccodes.CODES_PRODUCT_GRIB)
    value = eccodes.codes_get(msg_id, 'shortName')
    eccodes.codes_release(msg_id)

Verify before relying

  • Whether Windows support has improved since the description notes it as 'untested'
  • Performance characteristics of the pure-wheel vs. compiled modes in practice
  • Availability and stability of the eccodeslib dependency on all supported platforms

Package facts

LicenseApache License Version 2.0 permissive
Python supportNot specified
Install frictionLow. Pure-Python wheel
Runtime dependencies
4 packages
numpyattrscffifindlibs
MaintenanceActively maintained 114 days since the last release
Last repo commit
First released
Downloads1,301,211 / month, #4,085 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy

Evidence: eccodes-2.47.0-py3-none-any.whl

Tags

Capabilities
grib file reader pythonbufr decoder encodermeteorological data formatecCodes python bindingsweather data file processinggrib 1 grib 2 supportbufr 3 bufr 4 files
Topics
meteorological-datagrib-bufrscientific-computing
PyPI keywords
ecCodesGRIBBUFR

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “bufr decoder encoder”

  • eccodesReads and writes GRIB and BUFR meteorological data files via Python…
  • pdbufrpdbufr reads BUFR (Binary Universal Form for the Representation of…
  • eccodeslibeccodeslib provides Python bindings to decode and encode…

Give your agent the search over MCP, or paste the wish link into any chat.

More Information Analysis packages

regex Worth it
PyPI · Python Modules · released Jul 2026

A drop-in replacement for Python's standard `re` module that adds advanced regex features like nested sets, fuzzy matching, lookaround in conditionals, and full Unicode case-folding while maintaining backward compatibility.

Apache-2.0 AND CNRI-Pythoncompiled wheel · 3.10+
437.7Mdownloads / mo
pyarrow Worth it
PyPI · Information Analysis · released Aug 2026

pyarrow provides Python bindings to Apache Arrow's C++ libraries for efficient columnar data processing, serialization, and interoperability with pandas, NumPy, and other Python ecosystem tools.

Apache-2.0compiled wheel · 3.10+
432.9Mdownloads / mo
networkx Worth it
PyPI · Python Modules · released Dec 2025

NetworkX provides data structures and algorithms for creating, analyzing, and manipulating graphs and networks, supporting everything from simple undirected graphs to complex directed and weighted networks.

BSD-3-Clausepure Python
290.9Mdownloads / mo
snowflake-connector-python Worth it
PyPI · Software Development · released Aug 2026

Connects Python applications to Snowflake data warehouses using the DB API 2.0 specification, enabling SQL queries, data transfers, and warehouse operations.

Apache-2.0compiled wheel · 3.10+
193.6Mdownloads / mo
contourpy Worth it
PyPI · Information Analysis · released Jul 2025

ContourPy calculates contours of 2D quadrilateral grids using C++11 algorithms wrapped in Python, offering serial and multithreaded implementations without requiring Matplotlib as a dependency.

BSD-3-Clausecompiled wheel · 3.11+
191.2Mdownloads / mo
snowflake-snowpark-python Worth it
PyPI · Software Development · released Jul 2026

Snowpark Python provides APIs to query and process data directly in Snowflake without moving data to your local system, with support for both native Snowpark and pandas-compatible interfaces.

Install it if you use Snowflake and want to process data without moving it to your application layer.

Apache-2.0pure Python
100.7Mdownloads / mo

See also cfgrib · eccodeslib · pdbufr · pygrib · ecmwf-api-client · ecmwf-opendata · ecmwf-datastores-client · earthkit-meteo · earthkit-data · pyEDFlib