All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
v0.21.0 - 2026-02-16
- Update vecorel-cli
- Make the library better usable as a Python library
- Add support for Python 3.14, remove support for Python 3.10
- Support HCAT mapping CSV files without crop_code
- Split Germany BB and NDS in block dataset and crop fields
- Fix the column additions of the determination fields in the AI4SF converter
- Add HCAT to datasets where possible
- Updated years & variants for at_crop, be_vlg, es_an, es_cl, es_pv, ie, pt, se
- Extend create_stac, include include fiboa data
- Publish command; skip hidden files, generate better texts
- Fix to vecorel: converter.license and provider should be string
- Added a Dockerfile to simplify working with fiboa
- Command
fiboa publishto automate source coop publication process- Run the converter to get the parquet file
- Validate parquet file
- Check for README.md, if missing generates one based on data-survey (if available) and converter
- Check for LICENSE.txt, if missing generate one based on the converter file
- Generate pmtiles file
- Check AWS-environment vars
- Synchronize parquet + pmtiles + README/LICENSE to source coop repo
- Check for license validity, either SPDX string or custom with url
- Seperate concerns for HCAT utility classes:
- AddHCATMixin assures hcat-extension validity and csv-based data-conversion if required
- EuroCropsConverterMixin is a BaseClass for EuroCrops-provided datasets
- EuroLandBaseConverter is a BaseClass for Euroland-provided datasets
- Avoid base property schema override
- Add Converter for Bulgaria
- Remove unintended CommonMark formatting (indentation) from descriptions in converters
- Fibo improve command:
- Upgrades from fiboa-0.2 if required
- Adds HCAT if specified
- Various minor bug fixes
v0.20.3 - 2025-09-13
- Update vecorel-cli to solve issues with resolving schemas
v0.20.2 - 2025-08-29
- Reimplementation tests and CI
- Update extensions namespace to fiboa.org, use vecorel schemas
- Calibrate ha and m2 calculation in converters
- Adapt
create-stac-collectionto fiboa
v0.20.1 - 2025-08-27
- Reimplementation some modules (e.g. converters)
- Upgrade vecorel-cli dependency
v0.20.0 - 2025-08-25
- Reimplementation based on vecorel-cli
- Upgrade to support fiboa >= 0.3
- Removed support for fiboa < 0.3
v0.11.0 - 2025-08-25
- Converter for JECAM datasets
- Converter for Romania, based on LandCover dataset
- Converter for Brasil CONAB fields collection
- Converter for India 10k dataset
- Improve Converter template.py usability
- Check proper 2-letter country-id for admin-extension
- Replace BaseConverter.source_variants by years
- Remove functionality for function based converters
v0.10.0 - 2025-03-11
- Converter for Austrian crop fields
- Converters for Spain: Aragon, Andalusia, Balearic Islands, Basque Country, Catalonia, Cantabria, Castilla y León, Castilla-La Mancha, Canary Islands, Extremadura, Galicia, Madrid, Navarra, Valencia
- Use ruff format + linting for a uniform code style
- Refactored converters to use a class-based approach
- Start to use
https://fiboa.org/code/prefixed codes for our own code lists - Use only unix line-endings in source files
- Use set instead of list for Converter.extensions
- Converted datasets are hilbert-curve sorted
v0.9.0 - 2025-01-07
- Command
fiboa improvewith helpers to- change the CRS
- change the GeoParquet version and compression
- fill missing perimeter/area values
- fix invalid geometries
- rename columns
- Converter for Lithuania (EuroCrops)
- Converter for Slovenia
- Converter for Slovakia
- Converter for Switzerland
- Converter for Czech
- Converter for US Department of Agriculture Crop Sequence Boundaries
- Converter for California (US) Statewide Crop Mapping
- Converter for Latvia (from original source)
- Converter for Japan, currently based on supplied (non-fiboa) parquet files
- Many converters implement the admin extension
fiboa convert: New parameter--original-geometries/-ogto keep the original geometries
fiboa convert:- Writes custom schemas to collection metadata
- Geometries are made valid using GeoPanda's
make_validmethod by default - MultiPolygons are converted to Polygons by default
fiboa validateuses custom schemas for validationfiboa mergekeeps custom schemas when needed- Extended converter for Croatia; with crop_code and crop_name
- Many converters implement the admin extension
fiboa convert: Removed the explicit parameterexplode_multipolygonfrom the converter
- Fix converter for Estland to use the id
ec_eeinstead ofec_es - Assure tests don't download external sources
v0.8.0 - 2024-11-12
- Merge command:
fiboa merge - Converter for Croatia
- Converter for Germany, Mecklenburg-Western Pomerania
- Converter for Germany, Saarland
- Converter for Germany, Saxony
- Converter for Estonia (EuroCrops)
- Converter for Sweden
- Converter for Luxembourg
- Converter for Ireland
- Converter for Lacuna Labels (A region-wide, multi-year set of crop field boundary labels for Africa)
- Require changelogs for Pull Requests
fiboa convert: Default compression changed fromzstdtobrotli- The default row group size of exported parquet files was changed from ~1.000.000 to 25.000
- Datatype conversion from pandas to pyarrow fixed
v0.7.0 - 2024-08-24
- Converter for Luís Eduardo Magalhães (LEM) and other municipalities in the west of Bahia state, Brazil (
br_ba_lem) - Converter for Denmark (
dk) - Additional converters for EuroCrops datasets:
ec_be_vlg,ec_nl_crop - New parameter
--geoparquet1to generate GeoParquet 1.0 without bbox column instead of GeoParquet 1.1 with bbox column
- CLI creates GeoParquet 1.1 with bbox column by default
- The function signature in the
convertfunction of the converters has changed to a simpler more future-proof variant. - The EuroCrops converters extend the original converters
fiboa convert: Create output folder if it doesn't exist- Strip whitespaces/newlines from created STAC collections
fiboa create-geojson: Don't write FeatureCollections to folder if a filename is given
v0.6.0 - 2024-07-25
- Added a
SHORT_NAMEvariable to the converter template - Added a
FILE_MIGRATIONvariable to the converter template for per-file migrations - Added a
LAYER_FILTERvariable to the converter template for loading specific layers from a file - Added
-iparameter to specify input files for converters fiboa convertersoutput can be customized with options-p,-sand-v.fiboa convertreads JSON file with custom logic, which allows to access nested objects through dot notation- Converter for Slovenia via EuroCrops (
ec_lv) - Converter for Planet's Automated Field Boundary (
planet_afb) - Converter for Portugal (
pt) - Converter for Varda FieldID (
varda) - Converter for DigiFarm (
digifarm) - Converter for AI4SmallFarms in Cambodia and Vietnam (
ai4sf) - Further tests
- The
BBOXis optional in the converter template as it will be computed automatically from the data. - The
PROVIDER_NAMEandPROVIDER_URLvariables in the converter template were replaced byPROVIDERS fiboa convertersis more readable by default- Upgraded to geopandas 1.0.0, which migrates from fiona to pyogrio for data loading
- The EuroCrops converters (prefix:
ec_) use the HCAT fiboa extension
- Fixed schema issue for the
tk10column inde_bbconverter - jsonschema library doesn't warn against external references any longer
v0.5.0 - 2024-06-17
- Basic support for
patternPropertiesin GeoParquet creation - The converter template accepts multiple input URLs
- Added parameter to explode multipolygons to polygons (
explode_multipolygon, default:False) - Converter for Belgium, Flanders (
be_vlg) - Converter for Belgium, Wallonia (
be_wa) - Converter for Finland (
fi) - Converter for France (
fr) - Converter for The Netherlands (
nlandnl_crops) - Converter for Slovenia via EuroCrops (
ec_si)
- The
--cacheoption for theconvertcommand asks for a folder instead of a file - The
cache_fileparameter in converters has been renamed tocache(requires changes in the converter templates) - The converter template allows for more detailed source information
- The
URIconstant in the template was renamed toSOURCES(requires changes in the converter templates)
- Extensions were not correctly displayed in
describeandvalidatecommand - Fixed regular expressions for email and uuid in data validation
v0.4.0 - 2024-05-10
- Converter for France via EuroCrops (
ec_fr) fiboa create-geojson: Show conversion progressfiboa jsonschemaandfiboa validate: SupportgeometryTypesforgeometrydata type in GeoJSONfiboa validate:- Basic validation for objects, geometries and bounding boxes in GeoParquet files
fiboa validate-schema: The-moption is applied correctly if$schemais present in schemafiboa validateandfiboa validate-schema: Don't stop validation after the first file.fiboa validate:- Is more robust against invalid collections and doesn't abort if not needed
- Check NULL values correctly in case of arrays
- Throw an error if no files were provided
fiboa create-geojson:- Handles GeoParquet bbox correctly
- Converts numpy arrays
- Doesn't export empty collections
- Fix recursive import
v0.3.10 - 2024-05-06
fiboa convert:- Added step that allows to set constant values (
ADD_COLUMNS) - Support for reading GeoParquet files
- Help lists all available converters
- Added step that allows to set constant values (
fiboa converters: More detailed list of available converters/datasets
fiboa convert:determination_datetimeis not required any longer- Default compression changed from
brotlitozstd
v0.3.9 - 2024-05-01
- JSON Schema and GeoJSON validation also errors when the data doesn't comply to the given formats
v0.3.8 - 2024-04-27
- Converter for Thuringia, Germany (
de_th)
- Fixed GeoJSON to GeoParquet conversion of the
datedata type
v0.3.7 - 2024-04-25
- Small fixes in CLI output and docs
v0.3.6 - 2024-04-24
fiboa describe: New parameters--columnand--num
fiboa create-geoparquet: Allow collection creation based on parameters and define clear priority of collection inputs
fiboa describe: Show all columns / don't hide data with...fiboa validate: Warn more clearly if no schema is defined for a column
v0.3.5 - 2024-04-22
- Converters: Allow to filter rows with pandas Series operations easily
- Support converting to array data type
v0.3.4 - 2024-04-19
- Validate GeoParquet metadata
- Load schemas for GeoParquet and STAC based on given version numbers
- Fix missing license issue for AT converter
v0.3.3 - 2024-04-12
- Update converters for Germany to use the flik extension
- Provide more details in data validation messages
- Fix issue with
get_pyarrow_type_for_geopandas - Fix missing schemas issue for AT converter
v0.3.2 - 2024-04-12
fiboa rename-extensionto quickly replace template placeholders in new extensions
v0.3.1 - 2024-04-11
- Support for enums and GeoParquet structs
fiboa convert: Allow data of the GeoDataFrame or individual columns to be changed via custom functions
fiboa create-geoparquet: Handle column conversion more gracefullyfiboa validate: Don't fail collection test if something unexpected happenedfiboa create-geojson: Option-fdoesn't need a value any longerfiboa convert: Fixed invalid method call
v0.3.0 - 2024-04-10
- Command to validate the fiboa schemas (
fiboa validate-schema) - Command to create GeoJSON from GeoParquet (
fiboa create-geojson) - Converter for Austria (
at) - Converter for Berlin/Brandenburg, Germany (
de_bb) - Converter for Schleswig Holstein, Germany (
de_sh) - Converter for Lower Saxony, Germany (
de_nds)
- Renamed
fiboa createtofiboa create-geoparquet - The
--collectionparameter is not needed anylonger if the collection can be read directly from the GeoJSON files (fiboaproperty or link with relation typecollection)
- Several minor improvements for the conversion process
v0.2.1 - 2024-04-02
- Fixed the field boundary generation for de-nrw, which was pointing at the wrong dataset.
v0.2.0 - 2024-04-02
- Converter framework (
fiboa convert) - Converter for North Rhine-Westphalia, Germany (
de_nrw)
- Validator for GeoParquet recognizes missing fields
--jsonoption for describe command doesn't throw error
v0.1.1 - 2024-03-27
- Add experimental data validation support for GroParquet files
v0.1.0 - 2024-03-27
- Add
describecommand to inspect fiboa GeoParquet files - Add
jsonschemacommand to create JSON Schema from fiboa schema - Add validateion for GeoJSON
v0.0.9 - 2024-02-28
- Support string enums
v0.0.8 - 2024-02-28
- Fixed reading GeoJSON FeatureCollections
v0.0.7 - 2024-02-23
- Allow folders to be specified as input files #3
v0.0.6 - 2024-02-23
- Add
-eoption for create command to support extension schema mapping to local files
v0.0.5 - 2024-02-23
- Add
-eoption for validate command to support extension schema mapping to local files
v0.0.4 - 2024-02-23
- Adds missing dependencies
v0.0.3 - 2024-02-23
- Use extension schemas for conversion
- Correctly write the Parquet schema and columns - workaround for geopandas/geopandas#3182
v0.0.2 - 2024-02-16
- Basic validation for collection
- Minimal validation for data
- Fixed creation of GeoParquet files
v0.0.1 - 2024-02-16
- First release