libjson Validation
Port build from safelibs/port-libjson at commit 1eca23bf1edb (release build-1eca23bf1edb)
Tests
json-c compile link smoke Original / libjson / compile-link-smoke Passed
Malformed JSON handling Original / libjson / malformed-json-handling Passed
Refcount and object mutation Original / libjson / refcount-object-mutation Passed
json-c serializer round trip Original / libjson / serializer-roundtrip Passed
json-c tokener parse Original / libjson / tokener-parse Passed
GDAL ogr2ogr CSV WKT Original / libjson / usage-gdal-batch11-ogr2ogr-csv-wkt Passed
GDAL ogr2ogr -fid selects single feature Original / libjson / usage-gdal-batch11-ogr2ogr-fid-zero Passed
Converts a GeoJSON FeatureCollection while selecting only the first feature with -fid 0 and verifies the output GeoJSON contains exactly one feature whose name attribute is alpha.
GDAL ogr2ogr GeoJSONSeq Original / libjson / usage-gdal-batch11-ogr2ogr-geojsonseq Passed
GDAL ogr2ogr GML output Original / libjson / usage-gdal-batch11-ogr2ogr-gml-output Passed
GDAL ogr2ogr disable shapefile spatial index Original / libjson / usage-gdal-batch11-ogr2ogr-lco-spatial-index-no Passed
Converts a GeoJSON FeatureCollection to ESRI Shapefile with -lco SPATIAL_INDEX=NO and verifies that the .qix spatial-index sidecar is not produced while the shapefile components are.
GDAL ogr2ogr select name Original / libjson / usage-gdal-batch11-ogr2ogr-select-name Passed
GDAL ogr2ogr SQL order asc Original / libjson / usage-gdal-batch11-ogr2ogr-sql-order-asc Passed
GDAL ogr2ogr Web Mercator Original / libjson / usage-gdal-batch11-ogr2ogr-webmercator Passed
GDAL ogr2ogr value filter Original / libjson / usage-gdal-batch11-ogr2ogr-where-value Passed
GDAL ogrinfo feature count Original / libjson / usage-gdal-batch11-ogrinfo-feature-count Passed
GDAL ogrinfo SQL distinct kind Original / libjson / usage-gdal-batch11-ogrinfo-sql-distinct-kind Passed
GDAL ogrinfo park filter Original / libjson / usage-gdal-batch11-ogrinfo-where-park Passed
GDAL gdal_translate -a_nodata sets nodata value Original / libjson / usage-gdal-gdal-translate-a-nodata-zero Passed
Runs gdal_translate -a_nodata 0 on the bundled gdalicon raster and verifies that gdalinfo -json reports the assigned nodata value on each band of the GTiff output.
GDAL gdal_translate single-band selection Original / libjson / usage-gdal-gdal-translate-band-select Passed
Selects only the first band of the bundled gdalicon raster with gdal_translate -b 1 and verifies that gdalinfo -json reports a one-band GTiff output.
GDAL gdal_translate GTiff DEFLATE compression Original / libjson / usage-gdal-gdal-translate-co-compress-deflate Passed
Encodes the bundled gdalicon raster as GTiff with -co COMPRESSION=DEFLATE and verifies the IMAGE_STRUCTURE metadata reports DEFLATE in gdalinfo -json output.
GDAL gdal_translate GTiff JSON metadata Original / libjson / usage-gdal-gdal-translate-gtiff-json Passed
Converts the bundled gdalicon PNG to a GeoTIFF with gdal_translate and verifies that gdalinfo -json reports the GTiff driver and matching raster size.
GDAL gdal_translate JPEG JSON metadata Original / libjson / usage-gdal-gdal-translate-jpeg-json Passed
Converts the bundled gdalicon PNG to a JPEG with gdal_translate and verifies that gdalinfo -json reports the JPEG driver on the rewritten raster.
GDAL gdal_translate JPEG quality option Original / libjson / usage-gdal-gdal-translate-jpeg-quality Passed
Encodes the bundled gdalicon raster to JPEG with gdal_translate -co QUALITY=50 and verifies the resulting file reports the JPEG driver via gdalinfo -json.
GDAL gdal_translate -mo custom metadata Original / libjson / usage-gdal-gdal-translate-mo-metadata Passed
Sets a custom dataset metadata key/value pair via gdal_translate -mo and verifies that gdalinfo -json echoes the entry in the default metadata domain.
GDAL gdal_translate VRT output Original / libjson / usage-gdal-gdal-translate-of-vrt Passed
Wraps a small GeoTIFF in a VRT side-car via gdal_translate -of VRT and verifies gdalinfo -json on the VRT reports the VRT driver and a SourceFilename pointing at the underlying TIFF.
GDAL gdal_translate -ot Float32 type conversion Original / libjson / usage-gdal-gdal-translate-ot-float32 Passed
Converts the bundled gdalicon raster to a Float32 GeoTIFF with gdal_translate -ot Float32 and verifies that gdalinfo -json reports Float32 as the band data type.
GDAL gdal_translate UInt16 conversion Original / libjson / usage-gdal-gdal-translate-ot-uint16 Passed
Converts the bundled gdalicon PNG into a GeoTIFF with -ot UInt16, then verifies via gdalinfo -json that every band of the output reports type UInt16.
GDAL gdal_translate -outsize 50% downscale Original / libjson / usage-gdal-gdal-translate-outsize-50pct Passed
Downscales the bundled gdalicon PNG to 50% width and height with gdal_translate -outsize and verifies the gdalinfo -json reported size matches the halved source dimensions.
GDAL gdal_translate PNG round-trip Original / libjson / usage-gdal-gdal-translate-png-roundtrip Passed
Round-trips the bundled gdalicon raster through PNG and back to GeoTIFF with gdal_translate, verifying gdalinfo -json reports the PNG driver on the intermediate output and the GTiff driver on the round-tripped result.
GDAL gdal_translate -projwin crop Original / libjson / usage-gdal-gdal-translate-projwin-crop Passed
Stamps a synthetic geotransform on the gdalicon PNG and crops a sub-window with gdal_translate -projwin, verifying the cropped raster reports a strictly smaller pixel size than the source via gdalinfo -json.
GDAL gdal_translate -scale rescaling Original / libjson / usage-gdal-gdal-translate-scale-rescale Passed
Rescales the bundled gdalicon raster's first band into the 0-100 range with gdal_translate -scale and verifies that gdalinfo -json -mm reports a computed maximum within the requested output range.
GDAL gdal_translate -srcwin pixel crop Original / libjson / usage-gdal-gdal-translate-srcwin-crop Passed
Crops a sub-window of the bundled gdalicon raster with gdal_translate -srcwin in pixel coordinates and verifies that gdalinfo -json reports the requested width and height on the resulting GeoTIFF.
GDAL gdaladdo average overviews Original / libjson / usage-gdal-gdaladdo-overviews Passed
Adds 2x and 4x overviews to a synthesized GeoTIFF with gdaladdo -r average and verifies that gdalinfo -json reports overview entries on the first band.
GDAL gdalbuildvrt JSON metadata Original / libjson / usage-gdal-gdalbuildvrt-json Passed
Builds a VRT mosaic over a small raster fixture with gdalbuildvrt and verifies that gdalinfo -json reports the VRT driver and lists the underlying source file.
GDAL gdalbuildvrt over two GeoTIFFs Original / libjson / usage-gdal-gdalbuildvrt-two-tiffs Passed
Builds a VRT mosaic over two synthetically georeferenced GeoTIFFs derived from gdalicon and verifies that gdalinfo -json reports the VRT driver and lists both source tiff files.
GDAL gdalinfo --formats listing Original / libjson / usage-gdal-gdalinfo-formats-json Passed
Runs gdalinfo --formats and verifies the JSON-relevant raster drivers GTiff, PNG and GeoJSON appear with their read/write capability tag in the listing.
GDAL gdalinfo -json band block size Original / libjson / usage-gdal-gdalinfo-json-band-blocks Passed
Builds a small GTiff via gdal_translate then verifies gdalinfo -json reports a positive band block size for band 1.
GDAL gdalinfo JSON bands count Original / libjson / usage-gdal-gdalinfo-json-bands-count Passed
GDAL gdalinfo JSON checksum Original / libjson / usage-gdal-gdalinfo-json-checksum Passed
gdal gdalinfo JSON color interpretation Original / libjson / usage-gdal-gdalinfo-json-colorinterp Passed
Reads raster JSON metadata with gdalinfo and verifies the first band reports a color interpretation string.
GDAL gdalinfo JSON coordinate system axis mapping Original / libjson / usage-gdal-gdalinfo-json-coordsys-axis-mapping Passed
Tags the bundled gdalicon raster with EPSG:3857 and verifies that gdalinfo -json emits a coordinateSystem object whose dataAxisToSRSAxisMapping is the expected [1,2] array and whose WKT begins with the projected CRS keyword.
GDAL gdalinfo JSON corner coordinates Original / libjson / usage-gdal-gdalinfo-json-corner-coordinates Passed
GDAL gdalinfo JSON driver long name Original / libjson / usage-gdal-gdalinfo-json-driver-long-name Passed
GDAL gdalinfo --formats reports GeoJSON Original / libjson / usage-gdal-gdalinfo-json-driver-metadata Passed
gdal gdalinfo JSON driver PNG Original / libjson / usage-gdal-gdalinfo-json-driver-png Passed
GDAL gdalinfo JSON extent polygon Original / libjson / usage-gdal-gdalinfo-json-extent-polygon Passed
Stamps a CRS+geotransform onto the bundled gdalicon raster, then runs gdalinfo -json and verifies the JSON output exposes a wgs84Extent Polygon geometry with a closed coordinate ring rendered via json-c.
gdal gdalinfo JSON files list Original / libjson / usage-gdal-gdalinfo-json-files-list Passed
Reads raster JSON metadata with gdalinfo and verifies that the reported backing files list is non-empty.
GDAL gdalinfo JSON geoTransform array Original / libjson / usage-gdal-gdalinfo-json-geotransform Passed
Stamps a known affine geotransform onto the bundled gdalicon raster and verifies that gdalinfo -json emits a 6-element geoTransform array whose origin and pixel-size entries match the values supplied via -a_ullr.
GDAL raster JSON metadata Original / libjson / usage-gdal-gdalinfo-json-raster Passed
Runs gdalinfo JSON output against a small raster fixture and verifies the reported driver metadata.
GDAL gdalinfo JSON size Original / libjson / usage-gdal-gdalinfo-json-size Passed
GDAL gdalinfo JSON stats min max Original / libjson / usage-gdal-gdalinfo-json-stats-mm Passed
Runs gdalinfo -json -mm against the bundled sample raster and verifies a computedMin entry is reported in the JSON band metadata.
GDAL gdalinfo -listmdd lists metadata domains Original / libjson / usage-gdal-gdalinfo-listmdd Passed
Adds a custom IMAGE_STRUCTURE-related option and a default-domain -mo entry to a GTiff and verifies gdalinfo -listmdd is accepted and produces a Driver header alongside the listed domain set.
GDAL gdalinfo -mdd default metadata domain Original / libjson / usage-gdal-gdalinfo-mdd-default-domain Passed
Stamps a custom -mo metadata pair onto a GTiff via gdal_translate, then asks gdalinfo -mdd default for that domain and verifies the value is rendered in the textual report.
GDAL gdalinfo -mm min/max Original / libjson / usage-gdal-gdalinfo-mm-stats Passed
Computes per-band min/max with gdalinfo -mm on the bundled gdalicon raster and verifies the textual output reports a Computed Min/Max line for at least one band.
GDAL gdalinfo -nofl flag is accepted and parsed Original / libjson / usage-gdal-gdalinfo-nofl-flag Passed
Runs gdalinfo with the -nofl flag against a GTiff converted from the bundled gdalicon raster and verifies that the flag is accepted (exit 0), still emits the core Driver/Size/Band lines, and that the Files: section, when present, lists only the GTiff itself (the -nofl flag's documented behaviour: show only the first file of the file list).
GDAL gdalmanage identify on a GTiff Original / libjson / usage-gdal-gdalmanage-identify-gtiff Passed
Builds a GTiff from the bundled gdalicon raster and runs gdalmanage identify on it, verifying that the GTiff driver is named in the textual output.
GDAL gdalsrsinfo -o all section labels Original / libjson / usage-gdal-gdalsrsinfo-all-section-labels Passed
Runs gdalsrsinfo -o all on EPSG:3857 and verifies that the multi-format dump exposes the PROJ.4, OGC WKT1, OGC WKT2:2019, and PROJJSON section headers Ubuntu 24.04's gdalsrsinfo emits, with PROJJSON parseable as valid JSON.
GDAL gdalsrsinfo pretty WKT2 2019 Original / libjson / usage-gdal-gdalsrsinfo-pretty-wkt2-2019 Passed
Renders EPSG:4326 with gdalsrsinfo -o wkt2_2019 in pretty (multi-line) form and verifies the output spans multiple indented lines while still carrying the GEOGCRS root keyword.
gdal gdalsrsinfo proj4 Original / libjson / usage-gdal-gdalsrsinfo-proj4 Passed
GDAL SRS PROJJSON output Original / libjson / usage-gdal-gdalsrsinfo-projjson Passed
GDAL gdalsrsinfo --single-line WKT2 output Original / libjson / usage-gdal-gdalsrsinfo-single-line-wkt2 Passed
Runs gdalsrsinfo --single-line -o wkt2_2019 EPSG:4326 and verifies the WKT is emitted on a single line beginning with the GEOGCRS keyword and embedding the EPSG:4326 authority id.
GDAL gdalsrsinfo UTM 33N PROJJSON Original / libjson / usage-gdal-gdalsrsinfo-utm33n-projjson Passed
Resolves EPSG:32633 with gdalsrsinfo -o projjson and verifies the JSON document reports a ProjectedCRS whose name advertises the WGS 84 / UTM zone 33N projection.
GDAL gdalsrsinfo -V rejects an invalid SRS string Original / libjson / usage-gdal-gdalsrsinfo-validate-invalid Passed
Runs gdalsrsinfo -V against a clearly invalid SRS definition and verifies the tool exits non-zero, treating the validate flag as a real validation step rather than a no-op.
gdal gdalsrsinfo WKT WGS84 Original / libjson / usage-gdal-gdalsrsinfo-wkt-wgs84 Passed
GDAL SRS WKT output Original / libjson / usage-gdal-gdalsrsinfo-wkt Passed
GDAL gdalsrsinfo WKT2 2019 Original / libjson / usage-gdal-gdalsrsinfo-wkt2-2019 Passed
Runs gdalsrsinfo with the wkt2_2019 output format for EPSG:4326 and verifies the GEOGCRS root keyword is present.
gdal gdalsrsinfo XML Original / libjson / usage-gdal-gdalsrsinfo-xml Passed
GDAL gdaltindex GeoJSON tile index Original / libjson / usage-gdal-gdaltindex-geojson Passed
Builds a GeoJSON tile index with gdaltindex over a small raster fixture and verifies the resulting FeatureCollection records the input filename in its location attribute.
GDAL gdaltransform EPSG roundtrip Original / libjson / usage-gdal-gdaltransform-epsg-roundtrip Passed
Pipes a coordinate pair through gdaltransform between EPSG:4326 and EPSG:3857 and verifies the projected easting matches the expected webmercator value.
GDAL gdaltransform projects bbox corner within expected bounds Original / libjson / usage-gdal-gdaltransform-output-xy-bounds Passed
Pipes a known WGS84 lon/lat pair (90 deg east, 0 deg north) through gdaltransform to EPSG:3857 and asserts the projected easting falls inside an explicit numeric bounding box that brackets the canonical webmercator value.
GDAL gdaltransform -output_xy Original / libjson / usage-gdal-gdaltransform-output-xy-only Passed
Pipes a coordinate triple through gdaltransform -output_xy between EPSG:4326 and EPSG:3857 and verifies the output line carries exactly two whitespace-separated fields with the Z component dropped.
GDAL gdalwarp 3857 JSON metadata Original / libjson / usage-gdal-gdalwarp-3857-json Passed
Reprojects a small GeoTIFF to EPSG:3857 with gdalwarp and verifies that gdalinfo -json reports the EPSG:3857 authority code on the resulting raster CRS.
GDAL gdalwarp cubic resampling Original / libjson / usage-gdal-gdalwarp-cubic-resample Passed
Resamples a small GeoTIFF with gdalwarp -r cubic to a coarser pixel size and verifies gdalinfo -json reports the requested coarser geo-transform pixel size on the resampled raster.
GDAL gdalwarp -dstnodata setting Original / libjson / usage-gdal-gdalwarp-dstnodata Passed
Reprojects a synthetic EPSG:4326 raster to itself with gdalwarp -dstnodata 0 and verifies that gdalinfo -json reports a NoDataValue of 0 on at least one output band.
GDAL gdalwarp -multi flag accepted Original / libjson / usage-gdal-gdalwarp-multi-flag Passed
Reprojects a small GeoTIFF to EPSG:3857 with gdalwarp run in multi-threaded mode (-multi) and verifies the output raster is produced and gdalinfo -json reports the EPSG:3857 authority on the resulting CRS.
GDAL gdalwarp -te target extent Original / libjson / usage-gdal-gdalwarp-te-target-extent Passed
Reprojects a synthetic EPSG:4326 raster to a sub-region with gdalwarp -te (xmin ymin xmax ymax) and verifies that gdalinfo -json reports corner coordinates clamped to the requested target extent.
GDAL gdalwarp -tr resolution change Original / libjson / usage-gdal-gdalwarp-tr-resolution Passed
Reprojects a small GeoTIFF to itself with gdalwarp -tr forcing a coarser pixel resolution and verifies that gdalinfo -json reports a strictly smaller raster size than the source.
GDAL ogr2ogr append GPKG Original / libjson / usage-gdal-ogr2ogr-append-gpkg Passed
Appends a second copy of the GeoJSON dataset into a GeoPackage through ogr2ogr and verifies the expanded feature count.
GDAL ogr2ogr SQL buffer geometry Original / libjson / usage-gdal-ogr2ogr-buffer-sql Passed
Buffers a GeoJSON point layer through an ogr2ogr -dialect SQLite -sql query that calls ST_Buffer and verifies the output features carry Polygon geometry rather than Point.
GDAL ogr2ogr clipsrc bbox Original / libjson / usage-gdal-ogr2ogr-clipsrc-bbox Passed
Clips a GeoJSON feature collection to a bounding box with ogr2ogr -clipsrc and verifies only points inside the box survive.
GDAL ogr2ogr coordinate precision Original / libjson / usage-gdal-ogr2ogr-coordinate-precision Passed
Rewrites GeoJSON with rounded coordinate precision through ogr2ogr and verifies integral coordinates are emitted.
GDAL copies GeoJSON Original / libjson / usage-gdal-ogr2ogr-copy-geojson Passed
GDAL ogr2ogr CSV as XY Original / libjson / usage-gdal-ogr2ogr-csv-as-xy Passed
GDAL ogr2ogr CSV column order preserved Original / libjson / usage-gdal-ogr2ogr-csv-column-order Passed
Exports a GeoJSON FeatureCollection whose property keys are deliberately not alphabetical to CSV via ogr2ogr and verifies the emitted header row preserves source field order rather than sorting it alphabetically.
GDAL ogr2ogr CSV export Original / libjson / usage-gdal-ogr2ogr-csv-export Passed
GDAL converts GeoJSON to CSV Original / libjson / usage-gdal-ogr2ogr-csv-geojson Passed
gdal ogr2ogr CSV group filter Original / libjson / usage-gdal-ogr2ogr-csv-group-b Passed
Exports a filtered GeoJSON subset to CSV with ogr2ogr and verifies only the selected group rows remain.
GDAL ogr2ogr CSV headers Original / libjson / usage-gdal-ogr2ogr-csv-headers Passed
Exports GeoJSON to CSV through ogr2ogr and verifies the emitted header row names the geometry and property columns.
GDAL ogr2ogr CSV tab separator Original / libjson / usage-gdal-ogr2ogr-csv-tab-delim Passed
Converts a GeoJSON layer to CSV with -lco SEPARATOR=TAB and verifies the header line is tab-delimited.
gdal ogr2ogr CSV XY headers Original / libjson / usage-gdal-ogr2ogr-csv-xy-headers Passed
Exports GeoJSON to CSV with XY geometry columns and verifies the expected X and Y header names in the CSV output.
GDAL ogr2ogr ESRI Shapefile output Original / libjson / usage-gdal-ogr2ogr-esri-shapefile Passed
Converts a GeoJSON FeatureCollection to an ESRI Shapefile with ogr2ogr and verifies that the full shapefile suite (.shp/.shx/.dbf) is produced and that ogrinfo reports the expected feature count.
gdal ogr2ogr field type string integer Original / libjson / usage-gdal-ogr2ogr-field-type-string-integer Passed
Converts integer fields to strings with ogr2ogr and verifies the resulting GeoJSON property type is string.
GDAL ogr2ogr FlatGeobuf output Original / libjson / usage-gdal-ogr2ogr-flatgeobuf Passed
Converts a small GeoJSON FeatureCollection to the FlatGeobuf binary format with ogr2ogr -f FlatGeobuf and verifies that ogrinfo -json reports the FlatGeobuf driver and round-trips the original feature count.
GDAL ogr2ogr GeoJSON ID_FIELD promotion Original / libjson / usage-gdal-ogr2ogr-geojson-id-field Passed
Rewrites a small GeoJSON FeatureCollection through ogr2ogr with -lco ID_FIELD=n and verifies the json-c GeoJSON writer promotes the named integer property into a top-level Feature id, while removing it from properties.
GDAL ogr2ogr GeoJSON SIGNIFICANT_FIGURES truncation Original / libjson / usage-gdal-ogr2ogr-geojson-significant-figures Passed
Rewrites a GeoJSON point with high-precision coordinates through ogr2ogr -lco SIGNIFICANT_FIGURES=4 and verifies the output coordinate digits are reduced to the requested precision while preserving the leading magnitude.
GDAL GeoJSONSeq conversion Original / libjson / usage-gdal-ogr2ogr-geojsonseq Passed
GDAL converts GeoJSON to GeoPackage Original / libjson / usage-gdal-ogr2ogr-gpkg-geojson Passed
gdal ogr2ogr GPKG renamed layer Original / libjson / usage-gdal-ogr2ogr-gpkg-renamed-layer Passed
Writes GeoJSON to a renamed GeoPackage layer with ogr2ogr and verifies the stored layer name through ogrinfo.
GDAL ogr2ogr GPX waypoint output Original / libjson / usage-gdal-ogr2ogr-gpx-point Passed
Converts an EPSG:4326 GeoJSON FeatureCollection of points to GPX with ogr2ogr and verifies the emitted file has a gpx XML root element and at least one waypoint.
GDAL ogr2ogr -sql arrow numeric expression Original / libjson / usage-gdal-ogr2ogr-id-generate-arrow Passed
Runs ogr2ogr with an SQL expression CAST to convert a string column into integer and writes a GeoJSON whose properties carry the numeric value.
GDAL ogr2ogr KML output Original / libjson / usage-gdal-ogr2ogr-kml-output Passed
Converts a GeoJSON FeatureCollection to KML with ogr2ogr and verifies the resulting file declares the KML namespace and carries a Placemark for one of the input features.
GDAL ogr2ogr CSV with -lco ENCODING=UTF-8 Original / libjson / usage-gdal-ogr2ogr-lco-encoding-utf8 Passed
Exports a GeoJSON FeatureCollection containing non-ASCII property values to CSV with ogr2ogr -lco ENCODING=UTF-8 and -lco GEOMETRY=AS_WKT, verifying the produced CSV preserves the UTF-8 bytes and emits POINT WKT geometry.
GDAL ogr2ogr limit Original / libjson / usage-gdal-ogr2ogr-limit-geojson Passed
gdal ogr2ogr limit two features Original / libjson / usage-gdal-ogr2ogr-limit-two-features Passed
Caps GeoJSON output with ogr2ogr -limit 2 and verifies the resulting feature collection contains exactly two features.
GDAL ogr2ogr SQLite envelope SQL Original / libjson / usage-gdal-ogr2ogr-makevalid-sql Passed
Computes axis-aligned envelopes for GeoJSON points via an ogr2ogr -dialect SQLite -sql query using ST_Envelope and verifies the rewritten layer holds Polygon geometries with the original feature count preserved.
GDAL ogr2ogr MapInfo output Original / libjson / usage-gdal-ogr2ogr-mapinfo-output Passed
Converts a GeoJSON FeatureCollection to a MapInfo MIF/MID pair with ogr2ogr and verifies that the .mif sidecar declares MapInfo metadata and references the layer columns.
GDAL ogr2ogr multipoint Original / libjson / usage-gdal-ogr2ogr-multipoint Passed
GDAL ogr2ogr -nln renamed GeoPackage layer Original / libjson / usage-gdal-ogr2ogr-nln-renamed-gpkg Passed
Copies a small GeoJSON FeatureCollection into a GeoPackage with ogr2ogr -nln renamed_pts and verifies that ogrinfo -json reports the renamed layer name and the original feature count on the produced GPKG.
GDAL ogr2ogr descending order Original / libjson / usage-gdal-ogr2ogr-order-desc Passed
GDAL ogr2ogr -overwrite vs -append Original / libjson / usage-gdal-ogr2ogr-overwrite-vs-append Passed
Materializes a GeoPackage from GeoJSON, then re-runs ogr2ogr with -overwrite and verifies the layer feature count is reset to the source size rather than doubled as it would be with -append.
GDAL ogr2ogr RFC7946 precision rounds coordinates Original / libjson / usage-gdal-ogr2ogr-precision-rfc7946 Passed
Runs ogr2ogr -f GeoJSON with -lco RFC7946=YES and -lco COORDINATE_PRECISION=2 and verifies coordinates in the output JSON are rounded to two decimals.
GDAL ogr2ogr layer rename Original / libjson / usage-gdal-ogr2ogr-rename-layer Passed
GDAL ogr2ogr reproject 3857 CRS identifier Original / libjson / usage-gdal-ogr2ogr-reproject-3857-crs-id Passed
Reprojects a GeoJSON layer to EPSG:3857 with ogr2ogr and verifies that ogrinfo -json reports the EPSG authority and code in the resulting CRS metadata.
GDAL reprojects GeoJSON Original / libjson / usage-gdal-ogr2ogr-reproject-geojson Passed
GDAL ogr2ogr RFC 7946 output Original / libjson / usage-gdal-ogr2ogr-rfc7946 Passed
GDAL ogr2ogr field select Original / libjson / usage-gdal-ogr2ogr-select-field Passed
gdal ogr2ogr select name only Original / libjson / usage-gdal-ogr2ogr-select-name-only Passed
Restricts output fields with ogr2ogr -select name and verifies the resulting GeoJSON properties contain name but drop value.
GDAL ogr2ogr select two fields Original / libjson / usage-gdal-ogr2ogr-select-two-fields Passed
Selects two named fields from GeoJSON through ogr2ogr and verifies omitted properties are absent in the result.
GDAL ogr2ogr spatial filter Original / libjson / usage-gdal-ogr2ogr-spatial-filter Passed
Applies a spatial filter during GeoJSON export with ogr2ogr and verifies the reduced feature set.
gdal ogr2ogr SQL double value Original / libjson / usage-gdal-ogr2ogr-sql-double-value Passed
Runs an ogr2ogr SQLite SQL projection that doubles a numeric field and verifies the derived values in GeoJSON output.
GDAL ogr2ogr SQL subset Original / libjson / usage-gdal-ogr2ogr-sql-group-b Passed
gdal ogr2ogr SQL group count Original / libjson / usage-gdal-ogr2ogr-sql-group-count Passed
GDAL ogr2ogr SQL max value Original / libjson / usage-gdal-ogr2ogr-sql-max-value Passed
gdal ogr2ogr SQL order desc Original / libjson / usage-gdal-ogr2ogr-sql-order-desc Passed
Runs an ogr2ogr SQLite SQL projection with ORDER BY value DESC and verifies the GeoJSON feature ordering is reversed.
GDAL ogr2ogr SQL rename field Original / libjson / usage-gdal-ogr2ogr-sql-rename-field Passed
Renames a selected field through ogr2ogr SQL output and verifies the renamed property appears in the result.
GDAL ogr2ogr SQLite concat fields Original / libjson / usage-gdal-ogr2ogr-sqlite-concat-fields Passed
Uses the SQLite dialect to concatenate two attributes into a derived field and verifies the joined values appear in the GeoJSON output.
GDAL ogr2ogr SQLite MIN value Original / libjson / usage-gdal-ogr2ogr-sqlite-min-value Passed
Runs an ogr2ogr SQLite dialect query that selects the minimum numeric attribute and verifies the aggregate value in the GeoJSON output.
GDAL filters GeoJSON with ogr2ogr Original / libjson / usage-gdal-ogr2ogr-where-geojson Passed
Runs ogr2ogr with an attribute where clause and verifies only the matching GeoJSON feature is written.
gdal ogr2ogr where name equality Original / libjson / usage-gdal-ogr2ogr-where-name-equality Passed
Filters GeoJSON output with ogr2ogr -where on a name equality predicate and verifies only the matching feature is retained.
GDAL ogr2ogr where filter Original / libjson / usage-gdal-ogr2ogr-where-value Passed
GDAL ogr2ogr WRITE_BBOX GeoJSON Original / libjson / usage-gdal-ogr2ogr-write-bbox-geojson Passed
Converts a CSV point dataset to GeoJSON with ogr2ogr -lco WRITE_BBOX=YES and verifies that the rendered FeatureCollection bbox spans the input coordinate range.
GDAL ogrinfo -al full feature list Original / libjson / usage-gdal-ogrinfo-al-features-list Passed
Runs ogrinfo -al (without -so) on a GeoJSON FeatureCollection and verifies the textual output enumerates every feature record by checking the OGRFeature markers and per-feature property values for all three sample points.
GDAL ogrinfo extent Original / libjson / usage-gdal-ogrinfo-extent Passed
GDAL ogrinfo -fid feature lookup Original / libjson / usage-gdal-ogrinfo-fid-lookup Passed
Looks up a single feature in a GeoJSON layer with ogrinfo -fid 1 and asserts the returned feature has FID 1 and a property name.
GDAL filters GeoJSON Original / libjson / usage-gdal-ogrinfo-filter-geojson Passed
Runs ogrinfo with an attribute filter against a GeoJSON fixture and verifies the selected feature.
GDAL ogrinfo --formats GeoJSON driver Original / libjson / usage-gdal-ogrinfo-formats-json-driver Passed
Runs ogrinfo --formats and verifies the GeoJSON, GeoJSONSeq and ESRIJSON vector drivers are advertised as read-capable in the listing.
GDAL reads GeoJSON Original / libjson / usage-gdal-ogrinfo-geojson Passed
GDAL ogrinfo without geometry Original / libjson / usage-gdal-ogrinfo-geom-no Passed
GDAL ogrinfo GPKG multilayer JSON Original / libjson / usage-gdal-ogrinfo-gpkg-multilayer-json Passed
Builds a GeoPackage that holds two named layers via successive ogr2ogr -append invocations and verifies that ogrinfo -json -al -so reports both layers with their distinct feature counts.
GDAL ogrinfo JSON all features Original / libjson / usage-gdal-ogrinfo-json-all-features Passed
Emits JSON layer output from ogrinfo with -al and verifies the reported layer name and feature count.
GDAL ogrinfo -json geometryFields bbox Original / libjson / usage-gdal-ogrinfo-json-bbox-vector Passed
Runs ogrinfo -json -al on a Point GeoJSON dataset and verifies the layer geometryFields entry exposes a 4-element extent that bounds the inputs.
GDAL ogrinfo -json reports driver shortName Original / libjson / usage-gdal-ogrinfo-json-driver-name Passed
Runs ogrinfo -json on a small GeoJSON layer and verifies the reported driver shortName is GeoJSON.
gdal ogrinfo JSON extent bounds Original / libjson / usage-gdal-ogrinfo-json-extent-bounds Passed
Reads GeoJSON layer metadata with ogrinfo -json -al and verifies the geometry extent bounds match the input coordinates.
gdal ogrinfo JSON feature coords Original / libjson / usage-gdal-ogrinfo-json-feature-coords Passed
Reads GeoJSON layer features with ogrinfo -json -al and verifies the second feature reports the expected point coordinates.
GDAL ogrinfo -json featureCount Original / libjson / usage-gdal-ogrinfo-json-feature-count Passed
Runs ogrinfo -json on a 4-feature GeoJSON layer and verifies the reported featureCount equals 4.
GDAL ogrinfo JSON feature names Original / libjson / usage-gdal-ogrinfo-json-feature-names Passed
GDAL ogrinfo JSON field types Original / libjson / usage-gdal-ogrinfo-json-field-types Passed
Runs ogrinfo -json -al -so against a GeoJSON layer and verifies the declared field types include both String and Integer entries.
GDAL ogrinfo JSON fields toggle Original / libjson / usage-gdal-ogrinfo-json-fields-no Passed
Runs ogrinfo -json -so over a 3-feature GeoJSON layer with three string properties and verifies the layer descriptor reports the matching feature count and field inventory.
gdal ogrinfo JSON geometry type Original / libjson / usage-gdal-ogrinfo-json-geometry-type Passed
gdal ogrinfo JSON group a count Original / libjson / usage-gdal-ogrinfo-json-group-a-count Passed
Reads filtered GeoJSON metadata with ogrinfo -json and verifies the group-a predicate leaves exactly one feature.
GDAL ogrinfo JSON group filter Original / libjson / usage-gdal-ogrinfo-json-group-filter Passed
GDAL ogrinfo JSON multipolygon type Original / libjson / usage-gdal-ogrinfo-json-multipolygon-type Passed
Reads a polygon GeoJSON layer with ogrinfo -json -al and verifies the geometry type metadata reports the Polygon family.
gdal ogrinfo JSON summary-only fields Original / libjson / usage-gdal-ogrinfo-json-so-fields Passed
Reads summary-only GeoJSON metadata with ogrinfo -json -so and verifies the feature count and field inventory.
GDAL ogrinfo JSON summary Original / libjson / usage-gdal-ogrinfo-json-summary Passed
GDAL ogrinfo JSON where Original / libjson / usage-gdal-ogrinfo-json-where Passed
GDAL ogrinfo layer name Original / libjson / usage-gdal-ogrinfo-layer-name Passed
GDAL spatial filter over GeoJSON Original / libjson / usage-gdal-ogrinfo-spatial-filter Passed
gdal ogrinfo SQL average value Original / libjson / usage-gdal-ogrinfo-sql-average-value Passed
gdal ogrinfo SQL between values Original / libjson / usage-gdal-ogrinfo-sql-between-values Passed
Runs an ogrinfo SQLite SQL filter with a BETWEEN predicate and verifies both selected feature names in the output.
GDAL ogrinfo SQL count Original / libjson / usage-gdal-ogrinfo-sql-count Passed
GDAL SQL over GeoJSON Original / libjson / usage-gdal-ogrinfo-sql-geojson Passed
gdal ogrinfo SQL max feature value Original / libjson / usage-gdal-ogrinfo-sql-max-feature-value Passed
Runs an ogrinfo SQLite SQL query that selects MAX(value) into an alias and verifies the largest feature value in the output.
GDAL ogrinfo SQL max value Original / libjson / usage-gdal-ogrinfo-sql-max-value Passed
gdal ogrinfo SQL min value Original / libjson / usage-gdal-ogrinfo-sql-min-value Passed
Runs an ogrinfo SQLite SQL query that selects MIN(value) and verifies the smallest feature value in the output.
GDAL ogrinfo SQL order Original / libjson / usage-gdal-ogrinfo-sql-order Passed
Queries GeoJSON data with ordered SQL through ogrinfo and verifies the highest-valued feature appears first.
gdal ogrinfo SQL sum value Original / libjson / usage-gdal-ogrinfo-sql-sum-value Passed
Runs an ogrinfo SQLite SQL query that sums feature values and verifies the aggregated total in the output.
GDAL ogrinfo SQLite dialect over CSV Original / libjson / usage-gdal-ogrinfo-sqlite-dialect-csv Passed
Materializes a CSV layer from GeoJSON and runs ogrinfo with the SQLite dialect to "SELECT *" from the layer, verifying the JSON-emitting form returns every source feature.
GDAL ogrinfo summary only Original / libjson / usage-gdal-ogrinfo-summary-only Passed
GDAL ogrinfo where filter Original / libjson / usage-gdal-ogrinfo-where-name Passed
Filters GeoJSON features with ogrinfo where syntax and verifies only the matching feature remains.
GDAL gdalinfo JSON approximate band statistics Original / libjson / usage-gdal-r10-gdalinfo-json-approx-stats Passed
Runs gdalinfo -json -approx_stats against the bundled gdalicon raster and verifies the band metadata emitted via json-c carries minimum, maximum, mean and stdDev keys with consistent numeric ordering.
GDAL gdalinfo JSON histogram bucket count Original / libjson / usage-gdal-r10-gdalinfo-json-hist Passed
Runs gdalinfo -json -hist against the bundled gdalicon raster and verifies the histograms section emitted via json-c is a non-empty array with a positive bucket count for the first band.
GDAL gdalinfo JSON omits color table for single-band Byte tiff Original / libjson / usage-gdal-r10-gdalinfo-json-no-color-table Passed
Converts the bundled gdalicon raster into a single-band Byte GeoTIFF via gdal_translate -b 1 and verifies that gdalinfo -json (json-c serialised) reports a single Red-interpretation band (band 1 of the source RGB) with no colorTable key.
GDAL ogr2ogr explodecollections splits multipoint Original / libjson / usage-gdal-r10-ogr2ogr-explode-collections Passed
Converts a GeoJSON multipoint feature with three component points to a per-point feature collection via ogr2ogr -explodecollections and verifies json-c emits three Point features in the resulting GeoJSON.
GDAL ogrinfo -json reports per-property OGR field types Original / libjson / usage-gdal-r10-ogrinfo-json-properties-types Passed
Builds a tiny GeoJSON layer with mixed string, integer and real properties and verifies ogrinfo -json (json-c serialised) reports a layers[0].fields entry per property with names mapped to OGR Integer/Integer64/Real/String types.
GDAL gdalinfo JSON every band reports a 32x32 block dimension Original / libjson / usage-gdal-r11-gdalinfo-json-bands-block-32x32 Passed
Runs gdalinfo -json on the bundled gdalicon 32x32 PNG and verifies the json-c emitted .bands[].block array equals [32, 32] for every band, exposing PNG's whole-image strip layout uniformly across channels.
GDAL gdalinfo JSON metadata IMAGE_STRUCTURE.INTERLEAVE equals PIXEL for PNG icon Original / libjson / usage-gdal-r11-gdalinfo-json-image-structure-interleave-pixel Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .metadata IMAGE_STRUCTURE domain carries an INTERLEAVE key whose value is exactly "PIXEL".
GDAL gdalinfo JSON band[0].mask.flags reports PER_DATASET and ALPHA Original / libjson / usage-gdal-r11-gdalinfo-json-mask-flags-per-dataset Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the first band's mask.flags array (json-c emitted) contains exactly the strings PER_DATASET and ALPHA in the documented order, reflecting the per-dataset alpha mask exposed by GDAL.
GDAL gdalinfo JSON .stac.eo:bands names match RGBA description order Original / libjson / usage-gdal-r11-gdalinfo-json-stac-eo-bands-rgba Passed
Runs gdalinfo -json against the bundled gdalicon RGBA PNG and verifies the json-c emitted .stac["eo:bands"] array contains exactly four entries named b1..b4 with descriptions Red, Green, Blue, Alpha in band order.
GDAL gdalinfo JSON .stac.raster:bands data_type uint8 for PNG icon Original / libjson / usage-gdal-r11-gdalinfo-json-stac-raster-bands-uint8 Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .stac["raster:bands"] array reports data_type "uint8" for every band of the four-channel raster.
GDAL ogrinfo JSON layer featureCount equals input feature count Original / libjson / usage-gdal-r11-ogrinfo-json-layer-feature-count-three Passed
Writes a 3-feature GeoJSON FeatureCollection and runs ogrinfo -json against it, verifying the json-c emitted .layers[0].featureCount equals 3 and .layers[0].name matches the input file stem.
GDAL gdalinfo JSON bands[].type is "Byte" for the gdalicon PNG Original / libjson / usage-gdal-r12-gdalinfo-json-bands-type-byte Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies every entry of the json-c emitted .bands[].type field is the literal string "Byte".
GDAL gdalinfo JSON .bands[].colorInterpretation lists Red/Green/Blue/Alpha in order Original / libjson / usage-gdal-r12-gdalinfo-json-color-interpretation-rgba Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the json-c emitted .bands[].colorInterpretation values are exactly Red, Green, Blue, Alpha in that order.
GDAL gdalinfo JSON coordinateSystem.dataAxisToSRSAxisMapping is a non-empty array Original / libjson / usage-gdal-r12-gdalinfo-json-coordinate-system-data-axis-mapping Passed
Translates the bundled gdalicon PNG to a GeoTIFF with EPSG:4326 and verifies gdalinfo -json (json-c serialised) reports a coordinateSystem.dataAxisToSRSAxisMapping array of length 2 with positive integer entries.
GDAL gdalinfo JSON .driverShortName equals "PNG" with .files including the PNG path Original / libjson / usage-gdal-r12-gdalinfo-json-driver-short-name-png Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .driverShortName is "PNG" and .files is a non-empty array whose first entry ends with .png.
GDAL gdalinfo JSON .size equals [32, 32] for the bundled gdalicon Original / libjson / usage-gdal-r12-gdalinfo-json-size-matches-icon Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c serialised .size array equals [32, 32], matching the documented icon dimensions.
GDAL ogr2ogr converts a 3-feature GeoJSON to a CSV with one header + three rows Original / libjson / usage-gdal-r12-ogr2ogr-csv-newline-record-count Passed
Writes a 3-feature GeoJSON FeatureCollection (which ogr2ogr ingests via json-c) and converts it with ogr2ogr to CSV, verifying the result file has exactly four newline-terminated lines (one header + three records).
GDAL ogrinfo -json -al returns feature properties.name matching input Original / libjson / usage-gdal-r12-ogrinfo-json-feature-properties-name-roundtrip Passed
Writes a 2-feature GeoJSON FeatureCollection with distinct name properties and runs ogrinfo -json -al -features against it, verifying the json-c emitted .layers[0].features[].properties.name list equals the input names in order. (-features is required in GDAL 3.8+ to include feature payloads under the -json layer summary.)
GDAL ogrinfo -json -al emits Point geometry coordinates matching input Original / libjson / usage-gdal-r12-ogrinfo-json-geometry-coordinates-point Passed
Writes a single-feature GeoJSON Point at coordinates [3.5, 4.5] and runs ogrinfo -json -al, verifying the json-c emitted .layers[0].features[0].geometry.type is "Point" and .coordinates equals [3.5, 4.5].
GDAL gdal_translate -b 1 -b 2 emits a 2-band GTiff whose .bands[].type is "Byte" Original / libjson / usage-gdal-r13-gdal-translate-two-bands-byte-types Passed
Runs gdal_translate with explicit -b 1 -b 2 band selection on the bundled gdalicon PNG to a GeoTIFF and verifies gdalinfo -json (json-c serialised) reports exactly two bands whose .bands[].type values are both the literal string "Byte".
GDAL gdalinfo JSON .bands[].band lists 1, 2, 3, 4 in order for the icon Original / libjson / usage-gdal-r13-gdalinfo-json-bands-band-numbering Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the json-c emitted .bands[].band values form the contiguous sequence [1, 2, 3, 4], reflecting the documented one-based ordinal numbering of raster bands.
GDAL gdalinfo JSON cornerCoordinates upperLeft is [0,0] and lowerRight is [32,32] Original / libjson / usage-gdal-r13-gdalinfo-json-corner-coordinates-pixel-bounds Passed
Runs gdalinfo -json on the bundled gdalicon PNG (which has no SRS, so corner coordinates are reported in raster pixel space) and verifies the json-c emitted upperLeft equals [0,0] and lowerRight equals [32,32], matching the icon's 32x32 pixel extent.
GDAL gdalinfo JSON .files reports exactly one path ending in .png Original / libjson / usage-gdal-r13-gdalinfo-json-files-singleton-png Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .files array has length exactly 1, confirming a single PNG dataset advertises only one underlying file.
GDAL gdalinfo JSON metadata.IMAGE_STRUCTURE.COMPRESSION is "LZW" for an LZW GTiff Original / libjson / usage-gdal-r13-gdalinfo-json-image-structure-compression-lzw Passed
Translates the bundled gdalicon PNG to a GeoTIFF with -co COMPRESS=LZW and verifies gdalinfo -json (json-c serialised) reports metadata.IMAGE_STRUCTURE.COMPRESSION exactly equal to the string "LZW", confirming the creation option round-trips through the structural metadata.
GDAL gdalinfo JSON .stac["proj:shape"] equals [32, 32] for the bundled icon Original / libjson / usage-gdal-r13-gdalinfo-json-stac-proj-shape-32x32 Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .stac["proj:shape"] array equals [32, 32], the documented STAC representation of the icon's pixel-space height x width.
GDAL gdalinfo JSON .bands[0].block components are positive on a tiled GTiff Original / libjson / usage-gdal-r14-gdalinfo-json-band-block-32x32-shape Passed
Translates the bundled gdalicon PNG to a tiled GeoTIFF and verifies gdalinfo -json (json-c serialised) reports a .bands[0].block array of exactly two positive numeric entries, confirming the documented per-band block dimension shape on a tiled output.
GDAL gdalinfo JSON .bands[].colorInterpretation lists Red, Green, Blue, Alpha in order Original / libjson / usage-gdal-r14-gdalinfo-json-bands-color-interp-rgba-order Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the json-c emitted .bands[].colorInterpretation array equals exactly ["Red", "Green", "Blue", "Alpha"], confirming the documented RGBA channel naming and per-band ordering.
GDAL gdalinfo JSON .description equals the dataset path Original / libjson / usage-gdal-r14-gdalinfo-json-description-matches-path Passed
Runs gdalinfo -json on the bundled gdalicon PNG copied into a tempdir and verifies the json-c emitted .description field equals the exact filesystem path passed on the command line, confirming the documented dataset description encoding.
GDAL gdalinfo JSON .geoTransform is a 6-element numeric affine vector Original / libjson / usage-gdal-r14-gdalinfo-json-geotransform-length-six Passed
Translates the bundled gdalicon PNG to a GeoTIFF with a known affine through -a_ullr and verifies gdalinfo -json (json-c serialised) reports a .geoTransform array of length exactly 6 whose entries are all numbers, confirming the documented affine transform shape.
GDAL gdalinfo JSON .size equals [32, 32] for the bundled icon Original / libjson / usage-gdal-r14-gdalinfo-json-size-array-pixel-dimensions Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .size array equals exactly [32, 32], the documented [width, height] pair of the icon raster.
GDAL gdalinfo -stats JSON .bands[0].minimum/maximum lie within [0, 255] Original / libjson / usage-gdal-r14-gdalinfo-json-stats-min-max-bounded-byte Passed
Runs gdalinfo -json -stats on the bundled gdalicon PNG and verifies the json-c emitted .bands[0].minimum and .bands[0].maximum are both numbers within the documented Byte data type range [0, 255] with minimum less than or equal to maximum.
GDAL gdalinfo JSON .bands array has length 4 for the bundled RGBA icon Original / libjson / usage-gdal-r15-gdalinfo-json-bands-length-four-rgba Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the json-c emitted .bands array has length exactly 4, the documented per-channel band count for the RGBA raster shipped with libgdal.
GDAL gdalinfo JSON .bands[0].mask.overviews is an empty array on the bundled icon Original / libjson / usage-gdal-r15-gdalinfo-json-bands-mask-overviews-empty-array Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .bands[0].mask.overviews is an empty array, the documented default mask-overview list when no overviews have been built.
GDAL gdalinfo JSON .bands[0].metadata is an empty object on the bundled icon Original / libjson / usage-gdal-r15-gdalinfo-json-bands-metadata-empty-object Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .bands[0].metadata is an object with zero keys, the documented metadata default when no per-band metadata is set.
GDAL gdalinfo JSON cornerCoordinates.center equals [16,16] for the icon Original / libjson / usage-gdal-r15-gdalinfo-json-corner-coordinates-center-pixel Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted cornerCoordinates.center array equals exactly [16, 16], the documented half-extent of the 32x32 raster in pixel coordinates.
GDAL gdalinfo JSON .driverLongName equals "Portable Network Graphics" for a PNG Original / libjson / usage-gdal-r15-gdalinfo-json-driver-long-name-portable-network-graphics Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .driverLongName field equals the literal string "Portable Network Graphics", the documented PNG driver long name advertised by libgdal.
GDAL gdalinfo JSON .stac["raster:bands"] has length 4 on the RGBA icon Original / libjson / usage-gdal-r15-gdalinfo-json-stac-raster-bands-length-four Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the json-c emitted .stac["raster:bands"] array has length exactly 4 with each element carrying a string data_type, exercising the documented STAC raster:bands extension shape.
GDAL ogr2ogr --formats output includes the GeoJSON driver Original / libjson / usage-gdal-r16-ogr2ogr-formats-lists-geojson Passed
Runs ogr2ogr --formats and asserts the printed driver listing names "GeoJSON" — the vector driver backed by json-c that this library exists to support.
GDAL ogr2ogr -lco RFC7946=YES emits GeoJSONSeq with bounded coordinates Original / libjson / usage-gdal-r16-ogr2ogr-geojsonseq-rfc7946-coord-precision Passed
Converts a GeoJSON to GeoJSONSeq with -lco RFC7946=YES and asserts the resulting newline-delimited features parse as JSON via jq -e on each line, and the first emitted line's geometry coordinates length is 2.
GDAL ogr2ogr GeoJSON to GPKG and back preserves property keys Original / libjson / usage-gdal-r16-ogr2ogr-gpkg-roundtrip-property-keys Passed
Converts a 3-feature GeoJSON to GPKG with ogr2ogr, then back to GeoJSON, and asserts the property keys "name" and "kind" survive the round trip via jq -e on the json-c emitted FeatureCollection.
GDAL ogr2ogr -s_srs EPSG:4326 -t_srs EPSG:3857 emits non-degree coordinates Original / libjson / usage-gdal-r16-ogr2ogr-s-srs-t-srs-reprojected-coords Passed
Reprojects a 4326 GeoJSON point at (10, 50) to EPSG:3857 with ogr2ogr -s_srs/-t_srs and asserts the json-c emitted output's first coordinate has absolute value greater than 100000 (web-mercator metres), confirming reprojection happened.
GDAL ogr2ogr SELECT WHERE id>1 yields 2 features Original / libjson / usage-gdal-r16-ogr2ogr-sql-where-id-gt1-feature-count Passed
Runs ogr2ogr with -sql "SELECT * FROM in WHERE id > 1" on a 3-feature GeoJSON and asserts the output GeoJSON's features array has length 2 via jq -e.
GDAL ogrinfo -json reports driver shortName GeoJSON Original / libjson / usage-gdal-r16-ogrinfo-json-driver-geojson-name Passed
Runs ogrinfo -json -so on a GeoJSON file and asserts the json-c emitted driverShortName is exactly "GeoJSON" — pinning the driver-name field in the JSON summary.
GDAL ogrinfo -json -al -features lists all 3 features Original / libjson / usage-gdal-r16-ogrinfo-json-features-flag-emits-features Passed
Runs ogrinfo -json -al -features on a 3-feature GeoJSON and asserts the json-c emitted top-level features array has exactly 3 entries; -features is required since GDAL 3.8+ hides feature payloads by default in -json -al.
GDAL ogrinfo -json -so summary-only omits feature payloads Original / libjson / usage-gdal-r16-ogrinfo-json-so-suppresses-features Passed
Runs ogrinfo -json -so on a 3-feature GeoJSON and asserts the json-c emitted output contains the layer summary (featureCount field) but does NOT contain any inline Feature payload, confirming -so still suppresses features even when -features is not given.
GDAL ogr2ogr -nln renames the output layer name in GeoJSON Original / libjson / usage-gdal-r17-ogr2ogr-csv-to-geojson-nln-renames-layer Passed
Converts a CSV with WKT to GeoJSON via ogr2ogr -nln renamed_layer and asserts the top-level "name" field in the emitted GeoJSON matches the requested layer name, exercising json-c output naming.
GDAL ogr2ogr CSV to KML preserves feature count of 3 Original / libjson / usage-gdal-r17-ogr2ogr-csv-to-kml-feature-count Passed
Converts a 3-row WKT-bearing CSV to KML via ogr2ogr and asserts the resulting KML contains 3 Placemark elements, pinning Ubuntu 24.04 GDAL's CSV-to-KML feature parity.
GDAL ogr2ogr --debug ON completes a GeoJSON copy with exit 0 Original / libjson / usage-gdal-r17-ogr2ogr-debug-on-completes-successfully Passed
Runs ogr2ogr --debug ON on a small GeoJSON copy and asserts the command exits zero and produces a parseable output GeoJSON, confirming debug-mode tracing does not regress the json-c output path.
GDAL ogr2ogr GeoJSON to GPKG round-trip preserves field names Original / libjson / usage-gdal-r17-ogr2ogr-geojson-to-gpkg-roundtrip-fields Passed
Converts a GeoJSON with named property fields into GPKG and back to GeoJSON via ogr2ogr; asserts both target fields ("alpha_name", "beta_value") survive the round trip via jq inspection of the final feature.
GDAL ogr2ogr -lco WRITE_BBOX=YES emits feature bbox in GeoJSON Original / libjson / usage-gdal-r17-ogr2ogr-lco-write-bbox-yes-emits-bbox Passed
Re-writes a GeoJSON via ogr2ogr -f GeoJSON -lco WRITE_BBOX=YES and asserts the resulting feature objects include a "bbox" 4-element array, pinning GDAL's per-feature bbox layer-creation option round-trip.
GDAL ogr2ogr SQL SELECT name returns a single-field GeoJSON Original / libjson / usage-gdal-r17-ogr2ogr-sql-select-name-single-field Passed
Runs ogr2ogr with an OGR SQL "SELECT name FROM ..." projection on a 2-field input and asserts the output GeoJSON features.properties contains only "name" — verifying SQL field projection through json-c-emitted output.
GDAL ogrinfo -json reports Point geometry type for a point layer Original / libjson / usage-gdal-r17-ogrinfo-json-geometry-type-point Passed
Runs ogrinfo -json on a point-only GeoJSON and asserts the json-c output exposes a "geometryFields" entry whose type is "Point", pinning the geometry-type discovery contract.
GDAL ogrinfo -json -so suppresses feature payloads while keeping layer metadata Original / libjson / usage-gdal-r17-ogrinfo-json-so-summary-suppresses-features Passed
Runs ogrinfo -json -so on a 3-feature GeoJSON and asserts the json-c output has no top-level features list while still emitting the layer entry, locking in the summary-only mode shape distinct from -features.
GDAL ogr2ogr -clipsrc rectangle leaves only the inside point in the GeoJSON output Original / libjson / usage-gdal-r18-ogr2ogr-clipsrc-rectangle-survivors Passed
Runs ogr2ogr -clipsrc with a rectangle covering [-0.5,-0.5,0.5,0.5] over a 2-point CSV and asserts only the point at (0,0) survives in the emitted GeoJSON, locking the clipsrc filtering against the json-c writer.
GDAL ogr2ogr -limit 1 emits a single feature into the output GeoJSON Original / libjson / usage-gdal-r18-ogr2ogr-csv-limit-one-feature Passed
Converts a 3-feature CSV with WKT to GeoJSON via ogr2ogr -limit 1 and asserts the emitted FeatureCollection has exactly one feature, locking the json-c-driven limit clause feature count.
GDAL ogr2ogr GeoJSON to CSV preserves the 3 feature rows Original / libjson / usage-gdal-r18-ogr2ogr-geojson-to-csv-row-count Passed
Converts a 3-feature GeoJSON to CSV via ogr2ogr -f CSV and asserts the resulting CSV has exactly 3 data rows in addition to its header, locking the row-count fidelity of the json-c-driven feature iteration.
GDAL ogr2ogr -spat clips features outside the bbox in the emitted GeoJSON Original / libjson / usage-gdal-r18-ogr2ogr-spat-clip-bbox-feature-count Passed
Converts a 3-point CSV to GeoJSON with ogr2ogr -spat 0 0 1 1 and asserts only two features survive — the points at (0,0) and (1,1) — locking the spatial filter feature count emitted via the json-c writer.
GDAL ogrinfo -json reports driverShortName "GeoJSON" on a GeoJSON input Original / libjson / usage-gdal-r18-ogrinfo-json-driver-geojson-name Passed
Runs ogrinfo -json on a 2-feature GeoJSON and asserts the json-c output contains a driverShortName equal to "GeoJSON", pinning the driver-identification field name and value emitted by Ubuntu 24.04 gdal.
GDAL ogrinfo -json -features emits featureCount equal to 3 on a 3-feature input Original / libjson / usage-gdal-r18-ogrinfo-json-feature-count-three Passed
Runs ogrinfo -json -features on a GeoJSON with three points and asserts at least one layer reports a featureCount of 3, locking the json-c-emitted feature accounting field on Ubuntu 24.04 gdal.
GDAL ogrinfo -json -features emits Point coordinates as a 2-number array Original / libjson / usage-gdal-r18-ogrinfo-json-features-coordinates-shape Passed
Runs ogrinfo -json -features on a single-Point GeoJSON and asserts the emitted feature geometry coordinates field is a 2-element numeric array, pinning the json-c output shape for Point geometries.
GDAL ogrinfo -json reports both id and name fields on the source layer Original / libjson / usage-gdal-r18-ogrinfo-json-fields-include-id-name Passed
Runs ogrinfo -json -so on a GeoJSON whose features carry id and name properties and asserts the json-c output enumerates field entries whose names contain both "id" and "name", pinning the schema discovery output.
GDAL ogr2ogr -lco WRITE_BBOX=YES emits a 4-number FeatureCollection bbox Original / libjson / usage-gdal-r19-ogr2ogr-bbox-yes-emits-numeric-array Passed
Converts a multi-point GeoJSON with -lco WRITE_BBOX=YES and asserts the top-level bbox emitted via json-c is a 4-element array of numbers spanning the input extent, pinning the bbox layer-creation option shape.
GDAL ogr2ogr -lco RFC7946=YES emits a GeoJSON with WGS84 coordinates only Original / libjson / usage-gdal-r19-ogr2ogr-csv-to-geojson-rfc7946 Passed
Converts a CSV with WKT points in EPSG:4326 to RFC 7946 GeoJSON via ogr2ogr -lco RFC7946=YES and asserts the json-c-emitted geometry coordinates have exactly two numbers, pinning the strict RFC7946 coordinate-shape contract.
GDAL ogr2ogr -lco COORDINATE_PRECISION truncates emitted coordinate decimals Original / libjson / usage-gdal-r19-ogr2ogr-geojson-coordinate-precision Passed
Converts a single-point GeoJSON to GeoJSON with -lco COORDINATE_PRECISION=2 and asserts the json-c serialiser emits the X coordinate as exactly two decimal places (1.23), pinning the precision-truncation layer-creation option.
GDAL ogr2ogr GeoJSON to FlatGeobuf preserves the feature count via ogrinfo -json Original / libjson / usage-gdal-r19-ogr2ogr-geojson-to-flatgeobuf-feature-count Passed
Converts a 4-feature GeoJSON to FlatGeobuf via ogr2ogr -f FlatGeobuf and reads the resulting layer with ogrinfo -json -so, asserting the json-c-emitted featureCount field equals 4.
GDAL ogr2ogr writes LineString geometries as an array of 2-element coordinate arrays Original / libjson / usage-gdal-r19-ogr2ogr-linestring-coordinates-array Passed
Converts a 3-vertex LineString GeoJSON through ogr2ogr to GeoJSON and asserts the json-c-emitted geometry.coordinates is an array of three 2-element numeric arrays, pinning the LineString output shape.
GDAL ogr2ogr -skipfailures keeps valid features when source WKT is malformed Original / libjson / usage-gdal-r19-ogr2ogr-skipfailures-bad-wkt-keeps-good Passed
Converts a CSV containing one valid POINT WKT and one malformed WKT via ogr2ogr -skipfailures -f GeoJSON and asserts the json-c-serialised output contains exactly one feature, pinning the skipfailures recovery contract.
GDAL ogrinfo -json extent is a 4-element numeric array Original / libjson / usage-gdal-r19-ogrinfo-json-extent-array-shape Passed
Runs ogrinfo -json on a GeoJSON with two points and asserts the json-c output contains a 4-element numeric "extent" array equal to [minx,miny,maxx,maxy] = [0,0,10,5], pinning the extent serialisation shape.
GDAL ogrinfo -json field descriptors carry both name and type strings Original / libjson / usage-gdal-r19-ogrinfo-json-fields-have-name-and-type Passed
Runs ogrinfo -json on a GeoJSON with named typed properties and asserts every entry of the layer.fields array emitted via json-c has both a string "name" and a string "type", pinning the field-descriptor shape.
GDAL gdalinfo -json -stats reports a numeric stdDev for a uniform GTiff band Original / libjson / usage-gdal-r20-gdalinfo-json-stdev-numeric Passed
Builds a small uniform-value GeoTIFF via gdal_translate from an XYZ grid, runs gdalinfo -json -stats, and asserts the .bands[0].stdDev field is a JSON number (any numeric value) and the .bands[0].mean field is also numeric, pinning the json-c emitted numeric statistics shape.
GDAL ogr2ogr CSV-to-GeoJSON output has top-level "type":"FeatureCollection" Original / libjson / usage-gdal-r20-ogr2ogr-geojson-feature-collection-type Passed
Converts a small CSV with WKT points to GeoJSON via ogr2ogr -f GeoJSON, then asserts the root .type field of the json-c-emitted output is exactly the string "FeatureCollection", pinning the canonical GeoJSON top-level container shape.
GDAL ogr2ogr -limit 0 produces a GeoJSON with an empty features array Original / libjson / usage-gdal-r20-ogr2ogr-limit-zero-yields-empty-features Passed
Converts a 3-row CSV with WKT points to GeoJSON via ogr2ogr -limit 0 and asserts the json-c-emitted output's .features array has length 0 while .type remains "FeatureCollection", pinning the zero-limit behavior.
GDAL ogr2ogr CSV-WKT-multipoint to GeoJSON emits MultiPoint with array-of-pairs Original / libjson / usage-gdal-r20-ogr2ogr-multipoint-coordinates-array-of-pairs Passed
Converts a CSV containing a WKT MULTIPOINT to GeoJSON via ogr2ogr and asserts the json-c-emitted feature has .geometry.type == "MultiPoint" and that every coordinate entry is an array of length 2 (x,y), pinning the MultiPoint serialization invariants.
GDAL ogr2ogr CSV-WKT-polygon to GeoJSON emits feature geometry type "Polygon" Original / libjson / usage-gdal-r20-ogr2ogr-polygon-geometry-type-string Passed
Converts a CSV containing a WKT POLYGON to GeoJSON via ogr2ogr and asserts every feature in the json-c-emitted output has .geometry.type == "Polygon", pinning the polygon geometry type-string serialization.
GDAL ogr2ogr -select name on a multi-column CSV keeps only "name" in GeoJSON Original / libjson / usage-gdal-r20-ogr2ogr-select-projects-single-column Passed
Converts a CSV with two scalar columns (name, value) to GeoJSON via ogr2ogr -select name, then asserts every feature's .properties object has exactly one key "name" and no "value" key in the json-c-emitted output, pinning column projection.
GDAL ogrinfo -json -features preserves integer property values Original / libjson / usage-gdal-r20-ogrinfo-json-feature-properties-roundtrip Passed
Reads a GeoJSON FeatureCollection with integer "count" properties via ogrinfo -json -features and asserts that searching for any feature with property count == 7 succeeds in the json-c-emitted payload, pinning numeric property round-trip through ogrinfo's feature dump.
GDAL ogrinfo -json -al output exposes a layers-like array whose name is a string Original / libjson / usage-gdal-r20-ogrinfo-json-layers-array-name-string Passed
Runs ogrinfo -json -al on a GeoJSON FeatureCollection and asserts that searching for any object with a string "name" field via jq finds at least one entry, pinning that json-c emits the layer descriptor's "name" as a JSON string in the ogrinfo -json -al payload.
GDAL gdalinfo -json with -mdd all reports raster metadata domains Original / libjson / usage-gdal-r21-gdal-translate-of-json-mbtiles-driver Passed
Creates a GTiff with a known metadata item via gdal_translate -mo, runs gdalinfo -json -mdd all, and asserts the metadata object emitted by json-c contains the configured FOO key in the default domain, pinning the metadata-domain JSON projection.
GDAL gdalinfo -json geoTransform pixel size matches a_ullr extent Original / libjson / usage-gdal-r21-gdalinfo-json-geotransform-pixel-size Passed
Creates an 8x8 GTiff anchored at a known ullr extent (-10,10,10,-10) and asserts the json-c-emitted .geoTransform[1] equals 2.5 (positive x pixel size) and .geoTransform[5] equals -2.5 (negative y pixel size), pinning the array-of-six affine layout.
GDAL gdalinfo -json bands entries have a "band" integer attribute starting at 1 Original / libjson / usage-gdal-r21-gdalinfo-json-mask-flags-band-attribute Passed
Creates a three-band Byte GTiff, runs gdalinfo -json, and asserts each json-c-emitted .bands[] entry has a "band" integer attribute and that the numbering is exactly [1,2,3], pinning 1-based band indexing in the multi-band JSON shape.
GDAL gdalinfo -json coordinateSystem.wkt contains WGS 84 datum string Original / libjson / usage-gdal-r21-gdalinfo-json-wgs84-wkt-substring Passed
Creates a small WGS84-anchored GTiff via gdal_create, runs gdalinfo -json, and asserts .coordinateSystem.wkt is a string emitted by json-c containing the WGS 84 datum identifier, pinning the SRS WKT field shape in the JSON document.
GDAL gdalmdiminfo emits json-c JSON with type=group on a GTiff dataset Original / libjson / usage-gdal-r21-gdalmdiminfo-default-json-shape Passed
Creates a small Zarr dataset via gdal_create then runs gdalmdiminfo against it, asserting the json-c-emitted output parses cleanly and contains a top-level "type" key set to the string "group" and driver "Zarr", pinning the multi-dim info root document shape.
GDAL ogr2ogr -lco WRITE_BBOX=YES feature bbox is a 4-number array Original / libjson / usage-gdal-r21-ogr2ogr-geojson-bbox-length-four Passed
Builds a small CSV of 2D points, converts to GeoJSON with -lco WRITE_BBOX=YES, and asserts the per-feature bbox array json-c emits has exactly four numeric entries [minX,minY,maxX,maxY], pinning the 2D bbox layout for non-RFC7946 output.
GDAL ogrinfo -json reports per-field nullable booleans Original / libjson / usage-gdal-r21-ogrinfo-json-fields-nullable-flag Passed
Generates a tiny GeoJSON feature with a single string attribute, runs ogrinfo -json -so, and asserts each field entry emitted by json-c has a "nullable" boolean key (typically true for GeoJSON), pinning the field schema JSON projection.
GDAL gdalsrsinfo EPSG Original / libjson / usage-gdalsrsinfo-epsg Passed
Resolves a spatial reference through gdalsrsinfo and verifies the EPSG authority code is reported.
gdalsrsinfo mapinfo WGS84 Original / libjson / usage-gdalsrsinfo-mapinfo-wgs84 Passed
Emits a MapInfo coordinate system description with gdalsrsinfo and verifies the projection header text.
GDAL gdalsrsinfo NAD83 datum name Original / libjson / usage-gdalsrsinfo-nad83-datum Passed
Renders EPSG:4269 (NAD83) with gdalsrsinfo -o wkt and verifies the WKT mentions the North American Datum 1983 (the canonical PROJ datum name) and the GEOGCRS root keyword.
GDAL SRS info PROJJSON identifier Original / libjson / usage-gdalsrsinfo-projjson-id Passed
ttyd config file mode Original / libjson / usage-ttyd-config-file-mode Passed
Starts ttyd with options sourced from a config file (-c / --config) instead of the command line, requests the served page over loopback and verifies it carries the ttyd marker, exercising json-c through the service-style client's config path.
ttyd credential help flag Original / libjson / usage-ttyd-credential-help-flag Passed
Invokes ttyd --help and verifies the basic-auth credential flag (-c / --credential) is documented with the username:password format on Ubuntu 24.04 ttyd.
ttyd help options Original / libjson / usage-ttyd-help-options Passed
Invokes ttyd --help and verifies the documented option flags include the listen interface and base path switches.
ttyd loopback content type Original / libjson / usage-ttyd-loopback-content-type Passed
ttyd serves index.html on loopback root Original / libjson / usage-ttyd-loopback-favicon-svg Passed
Starts ttyd on loopback and verifies that GET / returns a 2xx HTML payload large enough to be the bundled SPA index, not an empty stub.
ttyd loopback web session Original / libjson / usage-ttyd-loopback-index Passed
Starts ttyd on loopback and requests its web page to exercise json-c through a service-style client.
ttyd loopback token endpoint JSON Original / libjson / usage-ttyd-loopback-token-config Passed
Starts ttyd with a credential and verifies the /token endpoint returns a JSON body whose token field is a string.
ttyd loopback websocket path Original / libjson / usage-ttyd-loopback-websocket-script Passed
ttyd loopback xterm asset Original / libjson / usage-ttyd-loopback-xterm-asset Passed
ttyd debug help flag documented Original / libjson / usage-ttyd-r10-help-debug-flag Passed
Invokes ttyd --help and verifies the debug verbosity option (-d / --debug) is documented in the option list shipped with Ubuntu 24.04 ttyd 1.7.x.
ttyd max-clients help flag documented Original / libjson / usage-ttyd-r10-help-max-clients-flag Passed
Invokes ttyd --help and verifies the concurrent client cap option (-m / --max-clients) is documented in the option list shipped with Ubuntu 24.04 ttyd 1.7.x.
ttyd once-mode help flag documented Original / libjson / usage-ttyd-r10-help-once-flag Passed
Invokes ttyd --help and verifies the single-session mode option (-o / --once) is documented in the option list shipped with Ubuntu 24.04 ttyd 1.7.x.
ttyd rejects wrong basic-auth credential with 401 Original / libjson / usage-ttyd-r10-loopback-bad-credential-401 Passed
Starts ttyd on loopback with -c admin:secret and verifies that a request supplying the wrong basic-auth credential is rejected with HTTP 401, while the matching credential succeeds.
ttyd token endpoint emits base64 of credential Original / libjson / usage-ttyd-r10-loopback-token-base64-prefix Passed
Starts ttyd on loopback with -c root:toor and verifies that the JSON response served at /token (parsed via json-c on the server side) carries the precise base64 encoding of the credential and nothing else.
ttyd --help advertises the -b/--base-path reverse-proxy flag Original / libjson / usage-ttyd-r11-help-base-path-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the long-form -b/--base-path flag exactly as documented for reverse-proxy mounting (json-c parses /token responses for that mode).
ttyd --help advertises the -6/--ipv6 flag Original / libjson / usage-ttyd-r11-help-ipv6-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -6/--ipv6 short/long pair, exposing the IPv6 listener mode that shares the same json-c config plumbing as IPv4.
ttyd --help advertises -S/--ssl with -C/-K certificate flag pair Original / libjson / usage-ttyd-r11-help-ssl-flags Passed
Runs ttyd --help and verifies the OPTIONS block lists the SSL trio (-S/--ssl, -C/--ssl-cert, -K/--ssl-key) so the json-c configured server can be brought up over TLS.
ttyd -b /xterm mounts the index page only under the configured prefix Original / libjson / usage-ttyd-r11-loopback-base-path-prefix Passed
Starts ttyd on loopback with a /xterm base-path and verifies the index page (json-c served) returns 200 at /xterm/ while the bare / responds 404, exercising the reverse-proxy mount path.
ttyd --help advertises the -i/--interface flag Original / libjson / usage-ttyd-r12-help-interface-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -i/--interface short/long pair used to constrain the listener address served by the json-c configured HTTP front-end.
ttyd --help advertises the -p/--port flag Original / libjson / usage-ttyd-r12-help-port-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -p/--port short/long pair used to bind the embedded HTTP server (which itself parses /token requests through json-c).
ttyd --help advertises the -O/--check-origin flag Original / libjson / usage-ttyd-r13-help-check-origin-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -O/--check-origin short/long pair, the option that controls cross-origin WebSocket validation for the json-c served front end.
ttyd --help emits a USAGE block listing options Original / libjson / usage-ttyd-r13-help-reconnect-flag Passed
Runs ttyd --help (which exits non-zero on noble's ttyd 1.7.x) and verifies the output contains a "USAGE:" header — the json-c-driven argv parser's help dispatcher. (Earlier rounds keyed on the -r/--reconnect or -O/--once flag lines, which are not stably advertised across ttyd builds; the USAGE header is the cross-version anchor.)
ttyd --help advertises the -s/--signal flag Original / libjson / usage-ttyd-r13-help-signal-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -s/--signal short/long pair, the option that selects the signal sent to the spawned process when a client disconnects from the json-c configured server.
ttyd --help advertises the -T/--terminal-type flag Original / libjson / usage-ttyd-r13-help-terminal-type-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -T/--terminal-type short/long pair, the option that selects the TERM string ttyd advertises to its json-c configured front end.
ttyd --help advertises the -B/--browser flag Original / libjson / usage-ttyd-r14-help-browser-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -B/--browser short/long pair, the option that opens a system browser tab against the json-c served front end after ttyd starts.
ttyd --help advertises the -t/--client-option flag Original / libjson / usage-ttyd-r14-help-client-option-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -t/--client-option short/long pair, the option that injects key=value pairs into the json-c serialised configuration delivered to the front end.
ttyd --help advertises the -P/--ping-interval flag Original / libjson / usage-ttyd-r14-help-ping-interval-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -P/--ping-interval short/long pair, the option that controls keep-alive pings on the WebSocket transport carrying the json-c framed messages.
ttyd --help advertises the -W/--writable flag Original / libjson / usage-ttyd-r14-help-writable-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -W/--writable short/long pair, the option that toggles whether clients of the json-c served front end may write to the spawned process.
ttyd --help advertises the -H/--auth-header flag Original / libjson / usage-ttyd-r15-help-auth-header-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -H/--auth-header short/long pair, the option that names the HTTP header carrying authentication identity from a reverse proxy fronting the json-c served terminal.
ttyd --help advertises the -w/--cwd flag Original / libjson / usage-ttyd-r15-help-cwd-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -w/--cwd short/long pair, the option that selects the working directory for the child program whose output is framed into the json-c serialised WebSocket transport.
ttyd --help advertises the -I/--index flag Original / libjson / usage-ttyd-r15-help-index-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -I/--index short/long pair, the option that selects a custom index.html document served alongside the json-c configuration delivered to the front end.
ttyd --help advertises the -a/--url-arg flag Original / libjson / usage-ttyd-r15-help-url-arg-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -a/--url-arg short/long pair, the option that lets clients pass arguments through query strings into the spawned process backing the json-c served front end.
ttyd --help advertises both interface and port flags in one OPTIONS block Original / libjson / usage-ttyd-r16-help-iface-and-port-flags Passed
Captures ttyd --help once and asserts both -i/--interface AND -p/--port flags appear in the same OPTIONS block, locking in the listener-binding flag pair as co-resident, distinct from earlier rounds that checked each flag in isolation.
ttyd --help advertises both -u/--uid and -g/--gid flags Original / libjson / usage-ttyd-r16-help-uid-gid-flags Passed
Invokes ttyd --help and asserts the documented uid and gid drop-privileges flags are present, distinct from credential and auth-header coverage in earlier rounds.
ttyd --help advertises the -b/--base-path flag Original / libjson / usage-ttyd-r17-help-advertises-base-path-flag Passed
Captures ttyd --help and asserts the --base-path option appears, pinning the reverse-proxy mount-point flag on Ubuntu 24.04 ttyd 1.7.
ttyd --help advertises the -W/--writable flag Original / libjson / usage-ttyd-r17-help-advertises-writable-flag Passed
Captures ttyd --help and asserts the -W/--writable flag appears in the OPTIONS block, locking in the writable-mode option as documented in Ubuntu 24.04 ttyd's CLI surface.
ttyd --help advertises the -c/--credential basic auth flag Original / libjson / usage-ttyd-r18-help-advertises-credential-flag Passed
Captures ttyd --help and asserts the -c/--credential option appears, pinning the basic-authentication flag exposure in the Ubuntu 24.04 ttyd 1.7 CLI surface that parses option text via json-c.
ttyd --help advertises the -m/--max-clients flag Original / libjson / usage-ttyd-r18-help-advertises-max-clients-flag Passed
Captures ttyd --help output and asserts the -m/--max-clients option appears, pinning the client-cap CLI flag exposure on Ubuntu 24.04 ttyd, whose configuration handling relies on json-c.
ttyd --help advertises the -C/--ssl-cert option Original / libjson / usage-ttyd-r19-help-advertises-ssl-cert-flag Passed
Captures ttyd --help and asserts the --ssl-cert option appears, pinning the SSL certificate file path flag exposure in the Ubuntu 24.04 ttyd 1.7 CLI surface where option text is materialised via json-c.
ttyd --help advertises the -K/--ssl-key option Original / libjson / usage-ttyd-r19-help-advertises-ssl-key-flag Passed
Captures ttyd --help and asserts the --ssl-key option appears, pinning the SSL key file path flag exposure in the Ubuntu 24.04 ttyd 1.7 CLI surface where option text is materialised via json-c.
ttyd --help advertises the -U/--socket-owner flag Original / libjson / usage-ttyd-r20-help-advertises-socket-owner-flag Passed
Captures ttyd --help and asserts the --socket-owner option appears, pinning the UNIX domain socket file owner flag exposure in the Ubuntu 24.04 ttyd 1.7 CLI surface where option text is materialised via json-c.
ttyd --help advertises the -A/--ssl-ca flag Original / libjson / usage-ttyd-r20-help-advertises-ssl-ca-flag Passed
Captures ttyd --help and asserts the --ssl-ca option appears, pinning the client-certificate CA file flag exposure in the Ubuntu 24.04 ttyd 1.7 CLI surface where option text is materialised via json-c.
ttyd loopback with -c rejects unauthenticated index with HTTP 401 Original / libjson / usage-ttyd-r21-loopback-401-without-credential Passed
Starts ttyd on loopback with -c user:pw and requests / without credentials, asserting the response status is 401, pinning the basic-auth gate that fronts the json-c-driven web UI when a credential is configured.
ttyd loopback HTTP response advertises server header beginning with ttyd/ Original / libjson / usage-ttyd-r21-loopback-server-header-ttyd-version Passed
Starts ttyd on loopback, captures HEAD response headers for /, and asserts the Server header value matches "ttyd/<digits>" form, pinning the libwebsockets-driven server banner exposed alongside json-c-encoded payloads.
ttyd loopback /token endpoint returns application/json Content-Type header Original / libjson / usage-ttyd-r21-loopback-token-endpoint-content-type-json Passed
Starts ttyd on loopback with credentials, requests /token over HTTP, and asserts the response Content-Type header includes "application/json", pinning that the json-c-encoded token payload is advertised with the JSON MIME type.
ttyd writable help flag (readonly default) Original / libjson / usage-ttyd-readonly-help-flag Passed
Invokes ttyd --help and verifies that the documented writable option (-W / --writable) is present and is described as the inverse of ttyd's default read-only behavior, since ttyd is read-only by default and exposes no separate --readonly flag.
ttyd token endpoint with basic auth Original / libjson / usage-ttyd-token-basic-auth Passed
Starts ttyd on loopback with -c admin:secret basic-auth credentials, requests the /token endpoint with the matching Authorization header, and verifies the JSON response contains the base64 encoded credential token while an unauthenticated request to the index page is rejected with HTTP 401.
ttyd token endpoint empty credential Original / libjson / usage-ttyd-token-endpoint-empty Passed
Starts ttyd on loopback without basic-auth, fetches the /token endpoint over HTTP, and verifies the response is a JSON document with an empty token string, exercising the json-c output path used to advertise auth state to the web client.
ttyd version banner Original / libjson / usage-ttyd-version-banner Passed
CVE-2013-6371 libjson regression Original / libjson / cve-2013-6371 Passed
Asserts that the JSON_C_STR_HASH_PERLLIKE mode reachable through json_global_set_string_hash still exposes the original CVE-2013-6371 hash-collision DoS — 30 000 keys crafted to share the same djb-33 hash insert into a single bucket and run at least 5x slower than the same workload with random keys (and take more than 0.3 seconds in absolute terms), evidencing the un-seeded deterministic hash recurrence h*33+c is still callable from the public API.
json-c compile link smoke Port / libjson / compile-link-smoke Passed
Malformed JSON handling Port / libjson / malformed-json-handling Passed
Refcount and object mutation Port / libjson / refcount-object-mutation Passed
json-c serializer round trip Port / libjson / serializer-roundtrip Passed
json-c tokener parse Port / libjson / tokener-parse Passed
GDAL ogr2ogr CSV WKT Port / libjson / usage-gdal-batch11-ogr2ogr-csv-wkt Passed
GDAL ogr2ogr -fid selects single feature Port / libjson / usage-gdal-batch11-ogr2ogr-fid-zero Passed
Converts a GeoJSON FeatureCollection while selecting only the first feature with -fid 0 and verifies the output GeoJSON contains exactly one feature whose name attribute is alpha.
GDAL ogr2ogr GeoJSONSeq Port / libjson / usage-gdal-batch11-ogr2ogr-geojsonseq Passed
GDAL ogr2ogr GML output Port / libjson / usage-gdal-batch11-ogr2ogr-gml-output Passed
GDAL ogr2ogr disable shapefile spatial index Port / libjson / usage-gdal-batch11-ogr2ogr-lco-spatial-index-no Passed
Converts a GeoJSON FeatureCollection to ESRI Shapefile with -lco SPATIAL_INDEX=NO and verifies that the .qix spatial-index sidecar is not produced while the shapefile components are.
GDAL ogr2ogr select name Port / libjson / usage-gdal-batch11-ogr2ogr-select-name Passed
GDAL ogr2ogr SQL order asc Port / libjson / usage-gdal-batch11-ogr2ogr-sql-order-asc Passed
GDAL ogr2ogr Web Mercator Port / libjson / usage-gdal-batch11-ogr2ogr-webmercator Passed
GDAL ogr2ogr value filter Port / libjson / usage-gdal-batch11-ogr2ogr-where-value Passed
GDAL ogrinfo feature count Port / libjson / usage-gdal-batch11-ogrinfo-feature-count Passed
GDAL ogrinfo SQL distinct kind Port / libjson / usage-gdal-batch11-ogrinfo-sql-distinct-kind Passed
GDAL ogrinfo park filter Port / libjson / usage-gdal-batch11-ogrinfo-where-park Passed
GDAL gdal_translate -a_nodata sets nodata value Port / libjson / usage-gdal-gdal-translate-a-nodata-zero Passed
Runs gdal_translate -a_nodata 0 on the bundled gdalicon raster and verifies that gdalinfo -json reports the assigned nodata value on each band of the GTiff output.
GDAL gdal_translate single-band selection Port / libjson / usage-gdal-gdal-translate-band-select Passed
Selects only the first band of the bundled gdalicon raster with gdal_translate -b 1 and verifies that gdalinfo -json reports a one-band GTiff output.
GDAL gdal_translate GTiff DEFLATE compression Port / libjson / usage-gdal-gdal-translate-co-compress-deflate Passed
Encodes the bundled gdalicon raster as GTiff with -co COMPRESSION=DEFLATE and verifies the IMAGE_STRUCTURE metadata reports DEFLATE in gdalinfo -json output.
GDAL gdal_translate GTiff JSON metadata Port / libjson / usage-gdal-gdal-translate-gtiff-json Passed
Converts the bundled gdalicon PNG to a GeoTIFF with gdal_translate and verifies that gdalinfo -json reports the GTiff driver and matching raster size.
GDAL gdal_translate JPEG JSON metadata Port / libjson / usage-gdal-gdal-translate-jpeg-json Passed
Converts the bundled gdalicon PNG to a JPEG with gdal_translate and verifies that gdalinfo -json reports the JPEG driver on the rewritten raster.
GDAL gdal_translate JPEG quality option Port / libjson / usage-gdal-gdal-translate-jpeg-quality Passed
Encodes the bundled gdalicon raster to JPEG with gdal_translate -co QUALITY=50 and verifies the resulting file reports the JPEG driver via gdalinfo -json.
GDAL gdal_translate -mo custom metadata Port / libjson / usage-gdal-gdal-translate-mo-metadata Passed
Sets a custom dataset metadata key/value pair via gdal_translate -mo and verifies that gdalinfo -json echoes the entry in the default metadata domain.
GDAL gdal_translate VRT output Port / libjson / usage-gdal-gdal-translate-of-vrt Passed
Wraps a small GeoTIFF in a VRT side-car via gdal_translate -of VRT and verifies gdalinfo -json on the VRT reports the VRT driver and a SourceFilename pointing at the underlying TIFF.
GDAL gdal_translate -ot Float32 type conversion Port / libjson / usage-gdal-gdal-translate-ot-float32 Passed
Converts the bundled gdalicon raster to a Float32 GeoTIFF with gdal_translate -ot Float32 and verifies that gdalinfo -json reports Float32 as the band data type.
GDAL gdal_translate UInt16 conversion Port / libjson / usage-gdal-gdal-translate-ot-uint16 Passed
Converts the bundled gdalicon PNG into a GeoTIFF with -ot UInt16, then verifies via gdalinfo -json that every band of the output reports type UInt16.
GDAL gdal_translate -outsize 50% downscale Port / libjson / usage-gdal-gdal-translate-outsize-50pct Passed
Downscales the bundled gdalicon PNG to 50% width and height with gdal_translate -outsize and verifies the gdalinfo -json reported size matches the halved source dimensions.
GDAL gdal_translate PNG round-trip Port / libjson / usage-gdal-gdal-translate-png-roundtrip Passed
Round-trips the bundled gdalicon raster through PNG and back to GeoTIFF with gdal_translate, verifying gdalinfo -json reports the PNG driver on the intermediate output and the GTiff driver on the round-tripped result.
GDAL gdal_translate -projwin crop Port / libjson / usage-gdal-gdal-translate-projwin-crop Passed
Stamps a synthetic geotransform on the gdalicon PNG and crops a sub-window with gdal_translate -projwin, verifying the cropped raster reports a strictly smaller pixel size than the source via gdalinfo -json.
GDAL gdal_translate -scale rescaling Port / libjson / usage-gdal-gdal-translate-scale-rescale Passed
Rescales the bundled gdalicon raster's first band into the 0-100 range with gdal_translate -scale and verifies that gdalinfo -json -mm reports a computed maximum within the requested output range.
GDAL gdal_translate -srcwin pixel crop Port / libjson / usage-gdal-gdal-translate-srcwin-crop Passed
Crops a sub-window of the bundled gdalicon raster with gdal_translate -srcwin in pixel coordinates and verifies that gdalinfo -json reports the requested width and height on the resulting GeoTIFF.
GDAL gdaladdo average overviews Port / libjson / usage-gdal-gdaladdo-overviews Passed
Adds 2x and 4x overviews to a synthesized GeoTIFF with gdaladdo -r average and verifies that gdalinfo -json reports overview entries on the first band.
GDAL gdalbuildvrt JSON metadata Port / libjson / usage-gdal-gdalbuildvrt-json Passed
Builds a VRT mosaic over a small raster fixture with gdalbuildvrt and verifies that gdalinfo -json reports the VRT driver and lists the underlying source file.
GDAL gdalbuildvrt over two GeoTIFFs Port / libjson / usage-gdal-gdalbuildvrt-two-tiffs Passed
Builds a VRT mosaic over two synthetically georeferenced GeoTIFFs derived from gdalicon and verifies that gdalinfo -json reports the VRT driver and lists both source tiff files.
GDAL gdalinfo --formats listing Port / libjson / usage-gdal-gdalinfo-formats-json Passed
Runs gdalinfo --formats and verifies the JSON-relevant raster drivers GTiff, PNG and GeoJSON appear with their read/write capability tag in the listing.
GDAL gdalinfo -json band block size Port / libjson / usage-gdal-gdalinfo-json-band-blocks Passed
Builds a small GTiff via gdal_translate then verifies gdalinfo -json reports a positive band block size for band 1.
GDAL gdalinfo JSON bands count Port / libjson / usage-gdal-gdalinfo-json-bands-count Passed
GDAL gdalinfo JSON checksum Port / libjson / usage-gdal-gdalinfo-json-checksum Passed
gdal gdalinfo JSON color interpretation Port / libjson / usage-gdal-gdalinfo-json-colorinterp Passed
Reads raster JSON metadata with gdalinfo and verifies the first band reports a color interpretation string.
GDAL gdalinfo JSON coordinate system axis mapping Port / libjson / usage-gdal-gdalinfo-json-coordsys-axis-mapping Passed
Tags the bundled gdalicon raster with EPSG:3857 and verifies that gdalinfo -json emits a coordinateSystem object whose dataAxisToSRSAxisMapping is the expected [1,2] array and whose WKT begins with the projected CRS keyword.
GDAL gdalinfo JSON corner coordinates Port / libjson / usage-gdal-gdalinfo-json-corner-coordinates Passed
GDAL gdalinfo JSON driver long name Port / libjson / usage-gdal-gdalinfo-json-driver-long-name Passed
GDAL gdalinfo --formats reports GeoJSON Port / libjson / usage-gdal-gdalinfo-json-driver-metadata Passed
gdal gdalinfo JSON driver PNG Port / libjson / usage-gdal-gdalinfo-json-driver-png Passed
GDAL gdalinfo JSON extent polygon Port / libjson / usage-gdal-gdalinfo-json-extent-polygon Passed
Stamps a CRS+geotransform onto the bundled gdalicon raster, then runs gdalinfo -json and verifies the JSON output exposes a wgs84Extent Polygon geometry with a closed coordinate ring rendered via json-c.
gdal gdalinfo JSON files list Port / libjson / usage-gdal-gdalinfo-json-files-list Passed
Reads raster JSON metadata with gdalinfo and verifies that the reported backing files list is non-empty.
GDAL gdalinfo JSON geoTransform array Port / libjson / usage-gdal-gdalinfo-json-geotransform Passed
Stamps a known affine geotransform onto the bundled gdalicon raster and verifies that gdalinfo -json emits a 6-element geoTransform array whose origin and pixel-size entries match the values supplied via -a_ullr.
GDAL raster JSON metadata Port / libjson / usage-gdal-gdalinfo-json-raster Passed
Runs gdalinfo JSON output against a small raster fixture and verifies the reported driver metadata.
GDAL gdalinfo JSON size Port / libjson / usage-gdal-gdalinfo-json-size Passed
GDAL gdalinfo JSON stats min max Port / libjson / usage-gdal-gdalinfo-json-stats-mm Passed
Runs gdalinfo -json -mm against the bundled sample raster and verifies a computedMin entry is reported in the JSON band metadata.
GDAL gdalinfo -listmdd lists metadata domains Port / libjson / usage-gdal-gdalinfo-listmdd Passed
Adds a custom IMAGE_STRUCTURE-related option and a default-domain -mo entry to a GTiff and verifies gdalinfo -listmdd is accepted and produces a Driver header alongside the listed domain set.
GDAL gdalinfo -mdd default metadata domain Port / libjson / usage-gdal-gdalinfo-mdd-default-domain Passed
Stamps a custom -mo metadata pair onto a GTiff via gdal_translate, then asks gdalinfo -mdd default for that domain and verifies the value is rendered in the textual report.
GDAL gdalinfo -mm min/max Port / libjson / usage-gdal-gdalinfo-mm-stats Passed
Computes per-band min/max with gdalinfo -mm on the bundled gdalicon raster and verifies the textual output reports a Computed Min/Max line for at least one band.
GDAL gdalinfo -nofl flag is accepted and parsed Port / libjson / usage-gdal-gdalinfo-nofl-flag Passed
Runs gdalinfo with the -nofl flag against a GTiff converted from the bundled gdalicon raster and verifies that the flag is accepted (exit 0), still emits the core Driver/Size/Band lines, and that the Files: section, when present, lists only the GTiff itself (the -nofl flag's documented behaviour: show only the first file of the file list).
GDAL gdalmanage identify on a GTiff Port / libjson / usage-gdal-gdalmanage-identify-gtiff Passed
Builds a GTiff from the bundled gdalicon raster and runs gdalmanage identify on it, verifying that the GTiff driver is named in the textual output.
GDAL gdalsrsinfo -o all section labels Port / libjson / usage-gdal-gdalsrsinfo-all-section-labels Passed
Runs gdalsrsinfo -o all on EPSG:3857 and verifies that the multi-format dump exposes the PROJ.4, OGC WKT1, OGC WKT2:2019, and PROJJSON section headers Ubuntu 24.04's gdalsrsinfo emits, with PROJJSON parseable as valid JSON.
GDAL gdalsrsinfo pretty WKT2 2019 Port / libjson / usage-gdal-gdalsrsinfo-pretty-wkt2-2019 Passed
Renders EPSG:4326 with gdalsrsinfo -o wkt2_2019 in pretty (multi-line) form and verifies the output spans multiple indented lines while still carrying the GEOGCRS root keyword.
gdal gdalsrsinfo proj4 Port / libjson / usage-gdal-gdalsrsinfo-proj4 Passed
GDAL SRS PROJJSON output Port / libjson / usage-gdal-gdalsrsinfo-projjson Passed
GDAL gdalsrsinfo --single-line WKT2 output Port / libjson / usage-gdal-gdalsrsinfo-single-line-wkt2 Passed
Runs gdalsrsinfo --single-line -o wkt2_2019 EPSG:4326 and verifies the WKT is emitted on a single line beginning with the GEOGCRS keyword and embedding the EPSG:4326 authority id.
GDAL gdalsrsinfo UTM 33N PROJJSON Port / libjson / usage-gdal-gdalsrsinfo-utm33n-projjson Passed
Resolves EPSG:32633 with gdalsrsinfo -o projjson and verifies the JSON document reports a ProjectedCRS whose name advertises the WGS 84 / UTM zone 33N projection.
GDAL gdalsrsinfo -V rejects an invalid SRS string Port / libjson / usage-gdal-gdalsrsinfo-validate-invalid Passed
Runs gdalsrsinfo -V against a clearly invalid SRS definition and verifies the tool exits non-zero, treating the validate flag as a real validation step rather than a no-op.
gdal gdalsrsinfo WKT WGS84 Port / libjson / usage-gdal-gdalsrsinfo-wkt-wgs84 Passed
GDAL SRS WKT output Port / libjson / usage-gdal-gdalsrsinfo-wkt Passed
GDAL gdalsrsinfo WKT2 2019 Port / libjson / usage-gdal-gdalsrsinfo-wkt2-2019 Passed
Runs gdalsrsinfo with the wkt2_2019 output format for EPSG:4326 and verifies the GEOGCRS root keyword is present.
gdal gdalsrsinfo XML Port / libjson / usage-gdal-gdalsrsinfo-xml Passed
GDAL gdaltindex GeoJSON tile index Port / libjson / usage-gdal-gdaltindex-geojson Passed
Builds a GeoJSON tile index with gdaltindex over a small raster fixture and verifies the resulting FeatureCollection records the input filename in its location attribute.
GDAL gdaltransform EPSG roundtrip Port / libjson / usage-gdal-gdaltransform-epsg-roundtrip Passed
Pipes a coordinate pair through gdaltransform between EPSG:4326 and EPSG:3857 and verifies the projected easting matches the expected webmercator value.
GDAL gdaltransform projects bbox corner within expected bounds Port / libjson / usage-gdal-gdaltransform-output-xy-bounds Passed
Pipes a known WGS84 lon/lat pair (90 deg east, 0 deg north) through gdaltransform to EPSG:3857 and asserts the projected easting falls inside an explicit numeric bounding box that brackets the canonical webmercator value.
GDAL gdaltransform -output_xy Port / libjson / usage-gdal-gdaltransform-output-xy-only Passed
Pipes a coordinate triple through gdaltransform -output_xy between EPSG:4326 and EPSG:3857 and verifies the output line carries exactly two whitespace-separated fields with the Z component dropped.
GDAL gdalwarp 3857 JSON metadata Port / libjson / usage-gdal-gdalwarp-3857-json Passed
Reprojects a small GeoTIFF to EPSG:3857 with gdalwarp and verifies that gdalinfo -json reports the EPSG:3857 authority code on the resulting raster CRS.
GDAL gdalwarp cubic resampling Port / libjson / usage-gdal-gdalwarp-cubic-resample Passed
Resamples a small GeoTIFF with gdalwarp -r cubic to a coarser pixel size and verifies gdalinfo -json reports the requested coarser geo-transform pixel size on the resampled raster.
GDAL gdalwarp -dstnodata setting Port / libjson / usage-gdal-gdalwarp-dstnodata Passed
Reprojects a synthetic EPSG:4326 raster to itself with gdalwarp -dstnodata 0 and verifies that gdalinfo -json reports a NoDataValue of 0 on at least one output band.
GDAL gdalwarp -multi flag accepted Port / libjson / usage-gdal-gdalwarp-multi-flag Passed
Reprojects a small GeoTIFF to EPSG:3857 with gdalwarp run in multi-threaded mode (-multi) and verifies the output raster is produced and gdalinfo -json reports the EPSG:3857 authority on the resulting CRS.
GDAL gdalwarp -te target extent Port / libjson / usage-gdal-gdalwarp-te-target-extent Passed
Reprojects a synthetic EPSG:4326 raster to a sub-region with gdalwarp -te (xmin ymin xmax ymax) and verifies that gdalinfo -json reports corner coordinates clamped to the requested target extent.
GDAL gdalwarp -tr resolution change Port / libjson / usage-gdal-gdalwarp-tr-resolution Passed
Reprojects a small GeoTIFF to itself with gdalwarp -tr forcing a coarser pixel resolution and verifies that gdalinfo -json reports a strictly smaller raster size than the source.
GDAL ogr2ogr append GPKG Port / libjson / usage-gdal-ogr2ogr-append-gpkg Passed
Appends a second copy of the GeoJSON dataset into a GeoPackage through ogr2ogr and verifies the expanded feature count.
GDAL ogr2ogr SQL buffer geometry Port / libjson / usage-gdal-ogr2ogr-buffer-sql Passed
Buffers a GeoJSON point layer through an ogr2ogr -dialect SQLite -sql query that calls ST_Buffer and verifies the output features carry Polygon geometry rather than Point.
GDAL ogr2ogr clipsrc bbox Port / libjson / usage-gdal-ogr2ogr-clipsrc-bbox Passed
Clips a GeoJSON feature collection to a bounding box with ogr2ogr -clipsrc and verifies only points inside the box survive.
GDAL ogr2ogr coordinate precision Port / libjson / usage-gdal-ogr2ogr-coordinate-precision Passed
Rewrites GeoJSON with rounded coordinate precision through ogr2ogr and verifies integral coordinates are emitted.
GDAL copies GeoJSON Port / libjson / usage-gdal-ogr2ogr-copy-geojson Passed
GDAL ogr2ogr CSV as XY Port / libjson / usage-gdal-ogr2ogr-csv-as-xy Passed
GDAL ogr2ogr CSV column order preserved Port / libjson / usage-gdal-ogr2ogr-csv-column-order Passed
Exports a GeoJSON FeatureCollection whose property keys are deliberately not alphabetical to CSV via ogr2ogr and verifies the emitted header row preserves source field order rather than sorting it alphabetically.
GDAL ogr2ogr CSV export Port / libjson / usage-gdal-ogr2ogr-csv-export Passed
GDAL converts GeoJSON to CSV Port / libjson / usage-gdal-ogr2ogr-csv-geojson Passed
gdal ogr2ogr CSV group filter Port / libjson / usage-gdal-ogr2ogr-csv-group-b Passed
Exports a filtered GeoJSON subset to CSV with ogr2ogr and verifies only the selected group rows remain.
GDAL ogr2ogr CSV headers Port / libjson / usage-gdal-ogr2ogr-csv-headers Passed
Exports GeoJSON to CSV through ogr2ogr and verifies the emitted header row names the geometry and property columns.
GDAL ogr2ogr CSV tab separator Port / libjson / usage-gdal-ogr2ogr-csv-tab-delim Passed
Converts a GeoJSON layer to CSV with -lco SEPARATOR=TAB and verifies the header line is tab-delimited.
gdal ogr2ogr CSV XY headers Port / libjson / usage-gdal-ogr2ogr-csv-xy-headers Passed
Exports GeoJSON to CSV with XY geometry columns and verifies the expected X and Y header names in the CSV output.
GDAL ogr2ogr ESRI Shapefile output Port / libjson / usage-gdal-ogr2ogr-esri-shapefile Passed
Converts a GeoJSON FeatureCollection to an ESRI Shapefile with ogr2ogr and verifies that the full shapefile suite (.shp/.shx/.dbf) is produced and that ogrinfo reports the expected feature count.
gdal ogr2ogr field type string integer Port / libjson / usage-gdal-ogr2ogr-field-type-string-integer Passed
Converts integer fields to strings with ogr2ogr and verifies the resulting GeoJSON property type is string.
GDAL ogr2ogr FlatGeobuf output Port / libjson / usage-gdal-ogr2ogr-flatgeobuf Passed
Converts a small GeoJSON FeatureCollection to the FlatGeobuf binary format with ogr2ogr -f FlatGeobuf and verifies that ogrinfo -json reports the FlatGeobuf driver and round-trips the original feature count.
GDAL ogr2ogr GeoJSON ID_FIELD promotion Port / libjson / usage-gdal-ogr2ogr-geojson-id-field Passed
Rewrites a small GeoJSON FeatureCollection through ogr2ogr with -lco ID_FIELD=n and verifies the json-c GeoJSON writer promotes the named integer property into a top-level Feature id, while removing it from properties.
GDAL ogr2ogr GeoJSON SIGNIFICANT_FIGURES truncation Port / libjson / usage-gdal-ogr2ogr-geojson-significant-figures Passed
Rewrites a GeoJSON point with high-precision coordinates through ogr2ogr -lco SIGNIFICANT_FIGURES=4 and verifies the output coordinate digits are reduced to the requested precision while preserving the leading magnitude.
GDAL GeoJSONSeq conversion Port / libjson / usage-gdal-ogr2ogr-geojsonseq Passed
GDAL converts GeoJSON to GeoPackage Port / libjson / usage-gdal-ogr2ogr-gpkg-geojson Passed
gdal ogr2ogr GPKG renamed layer Port / libjson / usage-gdal-ogr2ogr-gpkg-renamed-layer Passed
Writes GeoJSON to a renamed GeoPackage layer with ogr2ogr and verifies the stored layer name through ogrinfo.
GDAL ogr2ogr GPX waypoint output Port / libjson / usage-gdal-ogr2ogr-gpx-point Passed
Converts an EPSG:4326 GeoJSON FeatureCollection of points to GPX with ogr2ogr and verifies the emitted file has a gpx XML root element and at least one waypoint.
GDAL ogr2ogr -sql arrow numeric expression Port / libjson / usage-gdal-ogr2ogr-id-generate-arrow Passed
Runs ogr2ogr with an SQL expression CAST to convert a string column into integer and writes a GeoJSON whose properties carry the numeric value.
GDAL ogr2ogr KML output Port / libjson / usage-gdal-ogr2ogr-kml-output Passed
Converts a GeoJSON FeatureCollection to KML with ogr2ogr and verifies the resulting file declares the KML namespace and carries a Placemark for one of the input features.
GDAL ogr2ogr CSV with -lco ENCODING=UTF-8 Port / libjson / usage-gdal-ogr2ogr-lco-encoding-utf8 Passed
Exports a GeoJSON FeatureCollection containing non-ASCII property values to CSV with ogr2ogr -lco ENCODING=UTF-8 and -lco GEOMETRY=AS_WKT, verifying the produced CSV preserves the UTF-8 bytes and emits POINT WKT geometry.
GDAL ogr2ogr limit Port / libjson / usage-gdal-ogr2ogr-limit-geojson Passed
gdal ogr2ogr limit two features Port / libjson / usage-gdal-ogr2ogr-limit-two-features Passed
Caps GeoJSON output with ogr2ogr -limit 2 and verifies the resulting feature collection contains exactly two features.
GDAL ogr2ogr SQLite envelope SQL Port / libjson / usage-gdal-ogr2ogr-makevalid-sql Passed
Computes axis-aligned envelopes for GeoJSON points via an ogr2ogr -dialect SQLite -sql query using ST_Envelope and verifies the rewritten layer holds Polygon geometries with the original feature count preserved.
GDAL ogr2ogr MapInfo output Port / libjson / usage-gdal-ogr2ogr-mapinfo-output Passed
Converts a GeoJSON FeatureCollection to a MapInfo MIF/MID pair with ogr2ogr and verifies that the .mif sidecar declares MapInfo metadata and references the layer columns.
GDAL ogr2ogr multipoint Port / libjson / usage-gdal-ogr2ogr-multipoint Passed
GDAL ogr2ogr -nln renamed GeoPackage layer Port / libjson / usage-gdal-ogr2ogr-nln-renamed-gpkg Passed
Copies a small GeoJSON FeatureCollection into a GeoPackage with ogr2ogr -nln renamed_pts and verifies that ogrinfo -json reports the renamed layer name and the original feature count on the produced GPKG.
GDAL ogr2ogr descending order Port / libjson / usage-gdal-ogr2ogr-order-desc Passed
GDAL ogr2ogr -overwrite vs -append Port / libjson / usage-gdal-ogr2ogr-overwrite-vs-append Passed
Materializes a GeoPackage from GeoJSON, then re-runs ogr2ogr with -overwrite and verifies the layer feature count is reset to the source size rather than doubled as it would be with -append.
GDAL ogr2ogr RFC7946 precision rounds coordinates Port / libjson / usage-gdal-ogr2ogr-precision-rfc7946 Passed
Runs ogr2ogr -f GeoJSON with -lco RFC7946=YES and -lco COORDINATE_PRECISION=2 and verifies coordinates in the output JSON are rounded to two decimals.
GDAL ogr2ogr layer rename Port / libjson / usage-gdal-ogr2ogr-rename-layer Passed
GDAL ogr2ogr reproject 3857 CRS identifier Port / libjson / usage-gdal-ogr2ogr-reproject-3857-crs-id Passed
Reprojects a GeoJSON layer to EPSG:3857 with ogr2ogr and verifies that ogrinfo -json reports the EPSG authority and code in the resulting CRS metadata.
GDAL reprojects GeoJSON Port / libjson / usage-gdal-ogr2ogr-reproject-geojson Passed
GDAL ogr2ogr RFC 7946 output Port / libjson / usage-gdal-ogr2ogr-rfc7946 Passed
GDAL ogr2ogr field select Port / libjson / usage-gdal-ogr2ogr-select-field Passed
gdal ogr2ogr select name only Port / libjson / usage-gdal-ogr2ogr-select-name-only Passed
Restricts output fields with ogr2ogr -select name and verifies the resulting GeoJSON properties contain name but drop value.
GDAL ogr2ogr select two fields Port / libjson / usage-gdal-ogr2ogr-select-two-fields Passed
Selects two named fields from GeoJSON through ogr2ogr and verifies omitted properties are absent in the result.
GDAL ogr2ogr spatial filter Port / libjson / usage-gdal-ogr2ogr-spatial-filter Passed
Applies a spatial filter during GeoJSON export with ogr2ogr and verifies the reduced feature set.
gdal ogr2ogr SQL double value Port / libjson / usage-gdal-ogr2ogr-sql-double-value Passed
Runs an ogr2ogr SQLite SQL projection that doubles a numeric field and verifies the derived values in GeoJSON output.
GDAL ogr2ogr SQL subset Port / libjson / usage-gdal-ogr2ogr-sql-group-b Passed
gdal ogr2ogr SQL group count Port / libjson / usage-gdal-ogr2ogr-sql-group-count Passed
GDAL ogr2ogr SQL max value Port / libjson / usage-gdal-ogr2ogr-sql-max-value Passed
gdal ogr2ogr SQL order desc Port / libjson / usage-gdal-ogr2ogr-sql-order-desc Passed
Runs an ogr2ogr SQLite SQL projection with ORDER BY value DESC and verifies the GeoJSON feature ordering is reversed.
GDAL ogr2ogr SQL rename field Port / libjson / usage-gdal-ogr2ogr-sql-rename-field Passed
Renames a selected field through ogr2ogr SQL output and verifies the renamed property appears in the result.
GDAL ogr2ogr SQLite concat fields Port / libjson / usage-gdal-ogr2ogr-sqlite-concat-fields Passed
Uses the SQLite dialect to concatenate two attributes into a derived field and verifies the joined values appear in the GeoJSON output.
GDAL ogr2ogr SQLite MIN value Port / libjson / usage-gdal-ogr2ogr-sqlite-min-value Passed
Runs an ogr2ogr SQLite dialect query that selects the minimum numeric attribute and verifies the aggregate value in the GeoJSON output.
GDAL filters GeoJSON with ogr2ogr Port / libjson / usage-gdal-ogr2ogr-where-geojson Passed
Runs ogr2ogr with an attribute where clause and verifies only the matching GeoJSON feature is written.
gdal ogr2ogr where name equality Port / libjson / usage-gdal-ogr2ogr-where-name-equality Passed
Filters GeoJSON output with ogr2ogr -where on a name equality predicate and verifies only the matching feature is retained.
GDAL ogr2ogr where filter Port / libjson / usage-gdal-ogr2ogr-where-value Passed
GDAL ogr2ogr WRITE_BBOX GeoJSON Port / libjson / usage-gdal-ogr2ogr-write-bbox-geojson Passed
Converts a CSV point dataset to GeoJSON with ogr2ogr -lco WRITE_BBOX=YES and verifies that the rendered FeatureCollection bbox spans the input coordinate range.
GDAL ogrinfo -al full feature list Port / libjson / usage-gdal-ogrinfo-al-features-list Passed
Runs ogrinfo -al (without -so) on a GeoJSON FeatureCollection and verifies the textual output enumerates every feature record by checking the OGRFeature markers and per-feature property values for all three sample points.
GDAL ogrinfo extent Port / libjson / usage-gdal-ogrinfo-extent Passed
GDAL ogrinfo -fid feature lookup Port / libjson / usage-gdal-ogrinfo-fid-lookup Passed
Looks up a single feature in a GeoJSON layer with ogrinfo -fid 1 and asserts the returned feature has FID 1 and a property name.
GDAL filters GeoJSON Port / libjson / usage-gdal-ogrinfo-filter-geojson Passed
Runs ogrinfo with an attribute filter against a GeoJSON fixture and verifies the selected feature.
GDAL ogrinfo --formats GeoJSON driver Port / libjson / usage-gdal-ogrinfo-formats-json-driver Passed
Runs ogrinfo --formats and verifies the GeoJSON, GeoJSONSeq and ESRIJSON vector drivers are advertised as read-capable in the listing.
GDAL reads GeoJSON Port / libjson / usage-gdal-ogrinfo-geojson Passed
GDAL ogrinfo without geometry Port / libjson / usage-gdal-ogrinfo-geom-no Passed
GDAL ogrinfo GPKG multilayer JSON Port / libjson / usage-gdal-ogrinfo-gpkg-multilayer-json Passed
Builds a GeoPackage that holds two named layers via successive ogr2ogr -append invocations and verifies that ogrinfo -json -al -so reports both layers with their distinct feature counts.
GDAL ogrinfo JSON all features Port / libjson / usage-gdal-ogrinfo-json-all-features Passed
Emits JSON layer output from ogrinfo with -al and verifies the reported layer name and feature count.
GDAL ogrinfo -json geometryFields bbox Port / libjson / usage-gdal-ogrinfo-json-bbox-vector Passed
Runs ogrinfo -json -al on a Point GeoJSON dataset and verifies the layer geometryFields entry exposes a 4-element extent that bounds the inputs.
GDAL ogrinfo -json reports driver shortName Port / libjson / usage-gdal-ogrinfo-json-driver-name Passed
Runs ogrinfo -json on a small GeoJSON layer and verifies the reported driver shortName is GeoJSON.
gdal ogrinfo JSON extent bounds Port / libjson / usage-gdal-ogrinfo-json-extent-bounds Passed
Reads GeoJSON layer metadata with ogrinfo -json -al and verifies the geometry extent bounds match the input coordinates.
gdal ogrinfo JSON feature coords Port / libjson / usage-gdal-ogrinfo-json-feature-coords Passed
Reads GeoJSON layer features with ogrinfo -json -al and verifies the second feature reports the expected point coordinates.
GDAL ogrinfo -json featureCount Port / libjson / usage-gdal-ogrinfo-json-feature-count Passed
Runs ogrinfo -json on a 4-feature GeoJSON layer and verifies the reported featureCount equals 4.
GDAL ogrinfo JSON feature names Port / libjson / usage-gdal-ogrinfo-json-feature-names Passed
GDAL ogrinfo JSON field types Port / libjson / usage-gdal-ogrinfo-json-field-types Passed
Runs ogrinfo -json -al -so against a GeoJSON layer and verifies the declared field types include both String and Integer entries.
GDAL ogrinfo JSON fields toggle Port / libjson / usage-gdal-ogrinfo-json-fields-no Passed
Runs ogrinfo -json -so over a 3-feature GeoJSON layer with three string properties and verifies the layer descriptor reports the matching feature count and field inventory.
gdal ogrinfo JSON geometry type Port / libjson / usage-gdal-ogrinfo-json-geometry-type Passed
gdal ogrinfo JSON group a count Port / libjson / usage-gdal-ogrinfo-json-group-a-count Passed
Reads filtered GeoJSON metadata with ogrinfo -json and verifies the group-a predicate leaves exactly one feature.
GDAL ogrinfo JSON group filter Port / libjson / usage-gdal-ogrinfo-json-group-filter Passed
GDAL ogrinfo JSON multipolygon type Port / libjson / usage-gdal-ogrinfo-json-multipolygon-type Passed
Reads a polygon GeoJSON layer with ogrinfo -json -al and verifies the geometry type metadata reports the Polygon family.
gdal ogrinfo JSON summary-only fields Port / libjson / usage-gdal-ogrinfo-json-so-fields Passed
Reads summary-only GeoJSON metadata with ogrinfo -json -so and verifies the feature count and field inventory.
GDAL ogrinfo JSON summary Port / libjson / usage-gdal-ogrinfo-json-summary Passed
GDAL ogrinfo JSON where Port / libjson / usage-gdal-ogrinfo-json-where Passed
GDAL ogrinfo layer name Port / libjson / usage-gdal-ogrinfo-layer-name Passed
GDAL spatial filter over GeoJSON Port / libjson / usage-gdal-ogrinfo-spatial-filter Passed
gdal ogrinfo SQL average value Port / libjson / usage-gdal-ogrinfo-sql-average-value Passed
gdal ogrinfo SQL between values Port / libjson / usage-gdal-ogrinfo-sql-between-values Passed
Runs an ogrinfo SQLite SQL filter with a BETWEEN predicate and verifies both selected feature names in the output.
GDAL ogrinfo SQL count Port / libjson / usage-gdal-ogrinfo-sql-count Passed
GDAL SQL over GeoJSON Port / libjson / usage-gdal-ogrinfo-sql-geojson Passed
gdal ogrinfo SQL max feature value Port / libjson / usage-gdal-ogrinfo-sql-max-feature-value Passed
Runs an ogrinfo SQLite SQL query that selects MAX(value) into an alias and verifies the largest feature value in the output.
GDAL ogrinfo SQL max value Port / libjson / usage-gdal-ogrinfo-sql-max-value Passed
gdal ogrinfo SQL min value Port / libjson / usage-gdal-ogrinfo-sql-min-value Passed
Runs an ogrinfo SQLite SQL query that selects MIN(value) and verifies the smallest feature value in the output.
GDAL ogrinfo SQL order Port / libjson / usage-gdal-ogrinfo-sql-order Passed
Queries GeoJSON data with ordered SQL through ogrinfo and verifies the highest-valued feature appears first.
gdal ogrinfo SQL sum value Port / libjson / usage-gdal-ogrinfo-sql-sum-value Passed
Runs an ogrinfo SQLite SQL query that sums feature values and verifies the aggregated total in the output.
GDAL ogrinfo SQLite dialect over CSV Port / libjson / usage-gdal-ogrinfo-sqlite-dialect-csv Passed
Materializes a CSV layer from GeoJSON and runs ogrinfo with the SQLite dialect to "SELECT *" from the layer, verifying the JSON-emitting form returns every source feature.
GDAL ogrinfo summary only Port / libjson / usage-gdal-ogrinfo-summary-only Passed
GDAL ogrinfo where filter Port / libjson / usage-gdal-ogrinfo-where-name Passed
Filters GeoJSON features with ogrinfo where syntax and verifies only the matching feature remains.
GDAL gdalinfo JSON approximate band statistics Port / libjson / usage-gdal-r10-gdalinfo-json-approx-stats Passed
Runs gdalinfo -json -approx_stats against the bundled gdalicon raster and verifies the band metadata emitted via json-c carries minimum, maximum, mean and stdDev keys with consistent numeric ordering.
GDAL gdalinfo JSON histogram bucket count Port / libjson / usage-gdal-r10-gdalinfo-json-hist Passed
Runs gdalinfo -json -hist against the bundled gdalicon raster and verifies the histograms section emitted via json-c is a non-empty array with a positive bucket count for the first band.
GDAL gdalinfo JSON omits color table for single-band Byte tiff Port / libjson / usage-gdal-r10-gdalinfo-json-no-color-table Passed
Converts the bundled gdalicon raster into a single-band Byte GeoTIFF via gdal_translate -b 1 and verifies that gdalinfo -json (json-c serialised) reports a single Red-interpretation band (band 1 of the source RGB) with no colorTable key.
GDAL ogr2ogr explodecollections splits multipoint Port / libjson / usage-gdal-r10-ogr2ogr-explode-collections Passed
Converts a GeoJSON multipoint feature with three component points to a per-point feature collection via ogr2ogr -explodecollections and verifies json-c emits three Point features in the resulting GeoJSON.
GDAL ogrinfo -json reports per-property OGR field types Port / libjson / usage-gdal-r10-ogrinfo-json-properties-types Passed
Builds a tiny GeoJSON layer with mixed string, integer and real properties and verifies ogrinfo -json (json-c serialised) reports a layers[0].fields entry per property with names mapped to OGR Integer/Integer64/Real/String types.
GDAL gdalinfo JSON every band reports a 32x32 block dimension Port / libjson / usage-gdal-r11-gdalinfo-json-bands-block-32x32 Passed
Runs gdalinfo -json on the bundled gdalicon 32x32 PNG and verifies the json-c emitted .bands[].block array equals [32, 32] for every band, exposing PNG's whole-image strip layout uniformly across channels.
GDAL gdalinfo JSON metadata IMAGE_STRUCTURE.INTERLEAVE equals PIXEL for PNG icon Port / libjson / usage-gdal-r11-gdalinfo-json-image-structure-interleave-pixel Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .metadata IMAGE_STRUCTURE domain carries an INTERLEAVE key whose value is exactly "PIXEL".
GDAL gdalinfo JSON band[0].mask.flags reports PER_DATASET and ALPHA Port / libjson / usage-gdal-r11-gdalinfo-json-mask-flags-per-dataset Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the first band's mask.flags array (json-c emitted) contains exactly the strings PER_DATASET and ALPHA in the documented order, reflecting the per-dataset alpha mask exposed by GDAL.
GDAL gdalinfo JSON .stac.eo:bands names match RGBA description order Port / libjson / usage-gdal-r11-gdalinfo-json-stac-eo-bands-rgba Passed
Runs gdalinfo -json against the bundled gdalicon RGBA PNG and verifies the json-c emitted .stac["eo:bands"] array contains exactly four entries named b1..b4 with descriptions Red, Green, Blue, Alpha in band order.
GDAL gdalinfo JSON .stac.raster:bands data_type uint8 for PNG icon Port / libjson / usage-gdal-r11-gdalinfo-json-stac-raster-bands-uint8 Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .stac["raster:bands"] array reports data_type "uint8" for every band of the four-channel raster.
GDAL ogrinfo JSON layer featureCount equals input feature count Port / libjson / usage-gdal-r11-ogrinfo-json-layer-feature-count-three Passed
Writes a 3-feature GeoJSON FeatureCollection and runs ogrinfo -json against it, verifying the json-c emitted .layers[0].featureCount equals 3 and .layers[0].name matches the input file stem.
GDAL gdalinfo JSON bands[].type is "Byte" for the gdalicon PNG Port / libjson / usage-gdal-r12-gdalinfo-json-bands-type-byte Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies every entry of the json-c emitted .bands[].type field is the literal string "Byte".
GDAL gdalinfo JSON .bands[].colorInterpretation lists Red/Green/Blue/Alpha in order Port / libjson / usage-gdal-r12-gdalinfo-json-color-interpretation-rgba Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the json-c emitted .bands[].colorInterpretation values are exactly Red, Green, Blue, Alpha in that order.
GDAL gdalinfo JSON coordinateSystem.dataAxisToSRSAxisMapping is a non-empty array Port / libjson / usage-gdal-r12-gdalinfo-json-coordinate-system-data-axis-mapping Passed
Translates the bundled gdalicon PNG to a GeoTIFF with EPSG:4326 and verifies gdalinfo -json (json-c serialised) reports a coordinateSystem.dataAxisToSRSAxisMapping array of length 2 with positive integer entries.
GDAL gdalinfo JSON .driverShortName equals "PNG" with .files including the PNG path Port / libjson / usage-gdal-r12-gdalinfo-json-driver-short-name-png Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .driverShortName is "PNG" and .files is a non-empty array whose first entry ends with .png.
GDAL gdalinfo JSON .size equals [32, 32] for the bundled gdalicon Port / libjson / usage-gdal-r12-gdalinfo-json-size-matches-icon Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c serialised .size array equals [32, 32], matching the documented icon dimensions.
GDAL ogr2ogr converts a 3-feature GeoJSON to a CSV with one header + three rows Port / libjson / usage-gdal-r12-ogr2ogr-csv-newline-record-count Passed
Writes a 3-feature GeoJSON FeatureCollection (which ogr2ogr ingests via json-c) and converts it with ogr2ogr to CSV, verifying the result file has exactly four newline-terminated lines (one header + three records).
GDAL ogrinfo -json -al returns feature properties.name matching input Port / libjson / usage-gdal-r12-ogrinfo-json-feature-properties-name-roundtrip Passed
Writes a 2-feature GeoJSON FeatureCollection with distinct name properties and runs ogrinfo -json -al -features against it, verifying the json-c emitted .layers[0].features[].properties.name list equals the input names in order. (-features is required in GDAL 3.8+ to include feature payloads under the -json layer summary.)
GDAL ogrinfo -json -al emits Point geometry coordinates matching input Port / libjson / usage-gdal-r12-ogrinfo-json-geometry-coordinates-point Passed
Writes a single-feature GeoJSON Point at coordinates [3.5, 4.5] and runs ogrinfo -json -al, verifying the json-c emitted .layers[0].features[0].geometry.type is "Point" and .coordinates equals [3.5, 4.5].
GDAL gdal_translate -b 1 -b 2 emits a 2-band GTiff whose .bands[].type is "Byte" Port / libjson / usage-gdal-r13-gdal-translate-two-bands-byte-types Passed
Runs gdal_translate with explicit -b 1 -b 2 band selection on the bundled gdalicon PNG to a GeoTIFF and verifies gdalinfo -json (json-c serialised) reports exactly two bands whose .bands[].type values are both the literal string "Byte".
GDAL gdalinfo JSON .bands[].band lists 1, 2, 3, 4 in order for the icon Port / libjson / usage-gdal-r13-gdalinfo-json-bands-band-numbering Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the json-c emitted .bands[].band values form the contiguous sequence [1, 2, 3, 4], reflecting the documented one-based ordinal numbering of raster bands.
GDAL gdalinfo JSON cornerCoordinates upperLeft is [0,0] and lowerRight is [32,32] Port / libjson / usage-gdal-r13-gdalinfo-json-corner-coordinates-pixel-bounds Passed
Runs gdalinfo -json on the bundled gdalicon PNG (which has no SRS, so corner coordinates are reported in raster pixel space) and verifies the json-c emitted upperLeft equals [0,0] and lowerRight equals [32,32], matching the icon's 32x32 pixel extent.
GDAL gdalinfo JSON .files reports exactly one path ending in .png Port / libjson / usage-gdal-r13-gdalinfo-json-files-singleton-png Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .files array has length exactly 1, confirming a single PNG dataset advertises only one underlying file.
GDAL gdalinfo JSON metadata.IMAGE_STRUCTURE.COMPRESSION is "LZW" for an LZW GTiff Port / libjson / usage-gdal-r13-gdalinfo-json-image-structure-compression-lzw Passed
Translates the bundled gdalicon PNG to a GeoTIFF with -co COMPRESS=LZW and verifies gdalinfo -json (json-c serialised) reports metadata.IMAGE_STRUCTURE.COMPRESSION exactly equal to the string "LZW", confirming the creation option round-trips through the structural metadata.
GDAL gdalinfo JSON .stac["proj:shape"] equals [32, 32] for the bundled icon Port / libjson / usage-gdal-r13-gdalinfo-json-stac-proj-shape-32x32 Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .stac["proj:shape"] array equals [32, 32], the documented STAC representation of the icon's pixel-space height x width.
GDAL gdalinfo JSON .bands[0].block components are positive on a tiled GTiff Port / libjson / usage-gdal-r14-gdalinfo-json-band-block-32x32-shape Passed
Translates the bundled gdalicon PNG to a tiled GeoTIFF and verifies gdalinfo -json (json-c serialised) reports a .bands[0].block array of exactly two positive numeric entries, confirming the documented per-band block dimension shape on a tiled output.
GDAL gdalinfo JSON .bands[].colorInterpretation lists Red, Green, Blue, Alpha in order Port / libjson / usage-gdal-r14-gdalinfo-json-bands-color-interp-rgba-order Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the json-c emitted .bands[].colorInterpretation array equals exactly ["Red", "Green", "Blue", "Alpha"], confirming the documented RGBA channel naming and per-band ordering.
GDAL gdalinfo JSON .description equals the dataset path Port / libjson / usage-gdal-r14-gdalinfo-json-description-matches-path Passed
Runs gdalinfo -json on the bundled gdalicon PNG copied into a tempdir and verifies the json-c emitted .description field equals the exact filesystem path passed on the command line, confirming the documented dataset description encoding.
GDAL gdalinfo JSON .geoTransform is a 6-element numeric affine vector Port / libjson / usage-gdal-r14-gdalinfo-json-geotransform-length-six Passed
Translates the bundled gdalicon PNG to a GeoTIFF with a known affine through -a_ullr and verifies gdalinfo -json (json-c serialised) reports a .geoTransform array of length exactly 6 whose entries are all numbers, confirming the documented affine transform shape.
GDAL gdalinfo JSON .size equals [32, 32] for the bundled icon Port / libjson / usage-gdal-r14-gdalinfo-json-size-array-pixel-dimensions Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .size array equals exactly [32, 32], the documented [width, height] pair of the icon raster.
GDAL gdalinfo -stats JSON .bands[0].minimum/maximum lie within [0, 255] Port / libjson / usage-gdal-r14-gdalinfo-json-stats-min-max-bounded-byte Passed
Runs gdalinfo -json -stats on the bundled gdalicon PNG and verifies the json-c emitted .bands[0].minimum and .bands[0].maximum are both numbers within the documented Byte data type range [0, 255] with minimum less than or equal to maximum.
GDAL gdalinfo JSON .bands array has length 4 for the bundled RGBA icon Port / libjson / usage-gdal-r15-gdalinfo-json-bands-length-four-rgba Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the json-c emitted .bands array has length exactly 4, the documented per-channel band count for the RGBA raster shipped with libgdal.
GDAL gdalinfo JSON .bands[0].mask.overviews is an empty array on the bundled icon Port / libjson / usage-gdal-r15-gdalinfo-json-bands-mask-overviews-empty-array Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .bands[0].mask.overviews is an empty array, the documented default mask-overview list when no overviews have been built.
GDAL gdalinfo JSON .bands[0].metadata is an empty object on the bundled icon Port / libjson / usage-gdal-r15-gdalinfo-json-bands-metadata-empty-object Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .bands[0].metadata is an object with zero keys, the documented metadata default when no per-band metadata is set.
GDAL gdalinfo JSON cornerCoordinates.center equals [16,16] for the icon Port / libjson / usage-gdal-r15-gdalinfo-json-corner-coordinates-center-pixel Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted cornerCoordinates.center array equals exactly [16, 16], the documented half-extent of the 32x32 raster in pixel coordinates.
GDAL gdalinfo JSON .driverLongName equals "Portable Network Graphics" for a PNG Port / libjson / usage-gdal-r15-gdalinfo-json-driver-long-name-portable-network-graphics Passed
Runs gdalinfo -json on the bundled gdalicon PNG and verifies the json-c emitted .driverLongName field equals the literal string "Portable Network Graphics", the documented PNG driver long name advertised by libgdal.
GDAL gdalinfo JSON .stac["raster:bands"] has length 4 on the RGBA icon Port / libjson / usage-gdal-r15-gdalinfo-json-stac-raster-bands-length-four Passed
Runs gdalinfo -json on the bundled gdalicon RGBA PNG and verifies the json-c emitted .stac["raster:bands"] array has length exactly 4 with each element carrying a string data_type, exercising the documented STAC raster:bands extension shape.
GDAL ogr2ogr --formats output includes the GeoJSON driver Port / libjson / usage-gdal-r16-ogr2ogr-formats-lists-geojson Passed
Runs ogr2ogr --formats and asserts the printed driver listing names "GeoJSON" — the vector driver backed by json-c that this library exists to support.
GDAL ogr2ogr -lco RFC7946=YES emits GeoJSONSeq with bounded coordinates Port / libjson / usage-gdal-r16-ogr2ogr-geojsonseq-rfc7946-coord-precision Passed
Converts a GeoJSON to GeoJSONSeq with -lco RFC7946=YES and asserts the resulting newline-delimited features parse as JSON via jq -e on each line, and the first emitted line's geometry coordinates length is 2.
GDAL ogr2ogr GeoJSON to GPKG and back preserves property keys Port / libjson / usage-gdal-r16-ogr2ogr-gpkg-roundtrip-property-keys Passed
Converts a 3-feature GeoJSON to GPKG with ogr2ogr, then back to GeoJSON, and asserts the property keys "name" and "kind" survive the round trip via jq -e on the json-c emitted FeatureCollection.
GDAL ogr2ogr -s_srs EPSG:4326 -t_srs EPSG:3857 emits non-degree coordinates Port / libjson / usage-gdal-r16-ogr2ogr-s-srs-t-srs-reprojected-coords Passed
Reprojects a 4326 GeoJSON point at (10, 50) to EPSG:3857 with ogr2ogr -s_srs/-t_srs and asserts the json-c emitted output's first coordinate has absolute value greater than 100000 (web-mercator metres), confirming reprojection happened.
GDAL ogr2ogr SELECT WHERE id>1 yields 2 features Port / libjson / usage-gdal-r16-ogr2ogr-sql-where-id-gt1-feature-count Passed
Runs ogr2ogr with -sql "SELECT * FROM in WHERE id > 1" on a 3-feature GeoJSON and asserts the output GeoJSON's features array has length 2 via jq -e.
GDAL ogrinfo -json reports driver shortName GeoJSON Port / libjson / usage-gdal-r16-ogrinfo-json-driver-geojson-name Passed
Runs ogrinfo -json -so on a GeoJSON file and asserts the json-c emitted driverShortName is exactly "GeoJSON" — pinning the driver-name field in the JSON summary.
GDAL ogrinfo -json -al -features lists all 3 features Port / libjson / usage-gdal-r16-ogrinfo-json-features-flag-emits-features Passed
Runs ogrinfo -json -al -features on a 3-feature GeoJSON and asserts the json-c emitted top-level features array has exactly 3 entries; -features is required since GDAL 3.8+ hides feature payloads by default in -json -al.
GDAL ogrinfo -json -so summary-only omits feature payloads Port / libjson / usage-gdal-r16-ogrinfo-json-so-suppresses-features Passed
Runs ogrinfo -json -so on a 3-feature GeoJSON and asserts the json-c emitted output contains the layer summary (featureCount field) but does NOT contain any inline Feature payload, confirming -so still suppresses features even when -features is not given.
GDAL ogr2ogr -nln renames the output layer name in GeoJSON Port / libjson / usage-gdal-r17-ogr2ogr-csv-to-geojson-nln-renames-layer Passed
Converts a CSV with WKT to GeoJSON via ogr2ogr -nln renamed_layer and asserts the top-level "name" field in the emitted GeoJSON matches the requested layer name, exercising json-c output naming.
GDAL ogr2ogr CSV to KML preserves feature count of 3 Port / libjson / usage-gdal-r17-ogr2ogr-csv-to-kml-feature-count Passed
Converts a 3-row WKT-bearing CSV to KML via ogr2ogr and asserts the resulting KML contains 3 Placemark elements, pinning Ubuntu 24.04 GDAL's CSV-to-KML feature parity.
GDAL ogr2ogr --debug ON completes a GeoJSON copy with exit 0 Port / libjson / usage-gdal-r17-ogr2ogr-debug-on-completes-successfully Passed
Runs ogr2ogr --debug ON on a small GeoJSON copy and asserts the command exits zero and produces a parseable output GeoJSON, confirming debug-mode tracing does not regress the json-c output path.
GDAL ogr2ogr GeoJSON to GPKG round-trip preserves field names Port / libjson / usage-gdal-r17-ogr2ogr-geojson-to-gpkg-roundtrip-fields Passed
Converts a GeoJSON with named property fields into GPKG and back to GeoJSON via ogr2ogr; asserts both target fields ("alpha_name", "beta_value") survive the round trip via jq inspection of the final feature.
GDAL ogr2ogr -lco WRITE_BBOX=YES emits feature bbox in GeoJSON Port / libjson / usage-gdal-r17-ogr2ogr-lco-write-bbox-yes-emits-bbox Passed
Re-writes a GeoJSON via ogr2ogr -f GeoJSON -lco WRITE_BBOX=YES and asserts the resulting feature objects include a "bbox" 4-element array, pinning GDAL's per-feature bbox layer-creation option round-trip.
GDAL ogr2ogr SQL SELECT name returns a single-field GeoJSON Port / libjson / usage-gdal-r17-ogr2ogr-sql-select-name-single-field Passed
Runs ogr2ogr with an OGR SQL "SELECT name FROM ..." projection on a 2-field input and asserts the output GeoJSON features.properties contains only "name" — verifying SQL field projection through json-c-emitted output.
GDAL ogrinfo -json reports Point geometry type for a point layer Port / libjson / usage-gdal-r17-ogrinfo-json-geometry-type-point Passed
Runs ogrinfo -json on a point-only GeoJSON and asserts the json-c output exposes a "geometryFields" entry whose type is "Point", pinning the geometry-type discovery contract.
GDAL ogrinfo -json -so suppresses feature payloads while keeping layer metadata Port / libjson / usage-gdal-r17-ogrinfo-json-so-summary-suppresses-features Passed
Runs ogrinfo -json -so on a 3-feature GeoJSON and asserts the json-c output has no top-level features list while still emitting the layer entry, locking in the summary-only mode shape distinct from -features.
GDAL ogr2ogr -clipsrc rectangle leaves only the inside point in the GeoJSON output Port / libjson / usage-gdal-r18-ogr2ogr-clipsrc-rectangle-survivors Passed
Runs ogr2ogr -clipsrc with a rectangle covering [-0.5,-0.5,0.5,0.5] over a 2-point CSV and asserts only the point at (0,0) survives in the emitted GeoJSON, locking the clipsrc filtering against the json-c writer.
GDAL ogr2ogr -limit 1 emits a single feature into the output GeoJSON Port / libjson / usage-gdal-r18-ogr2ogr-csv-limit-one-feature Passed
Converts a 3-feature CSV with WKT to GeoJSON via ogr2ogr -limit 1 and asserts the emitted FeatureCollection has exactly one feature, locking the json-c-driven limit clause feature count.
GDAL ogr2ogr GeoJSON to CSV preserves the 3 feature rows Port / libjson / usage-gdal-r18-ogr2ogr-geojson-to-csv-row-count Passed
Converts a 3-feature GeoJSON to CSV via ogr2ogr -f CSV and asserts the resulting CSV has exactly 3 data rows in addition to its header, locking the row-count fidelity of the json-c-driven feature iteration.
GDAL ogr2ogr -spat clips features outside the bbox in the emitted GeoJSON Port / libjson / usage-gdal-r18-ogr2ogr-spat-clip-bbox-feature-count Passed
Converts a 3-point CSV to GeoJSON with ogr2ogr -spat 0 0 1 1 and asserts only two features survive — the points at (0,0) and (1,1) — locking the spatial filter feature count emitted via the json-c writer.
GDAL ogrinfo -json reports driverShortName "GeoJSON" on a GeoJSON input Port / libjson / usage-gdal-r18-ogrinfo-json-driver-geojson-name Passed
Runs ogrinfo -json on a 2-feature GeoJSON and asserts the json-c output contains a driverShortName equal to "GeoJSON", pinning the driver-identification field name and value emitted by Ubuntu 24.04 gdal.
GDAL ogrinfo -json -features emits featureCount equal to 3 on a 3-feature input Port / libjson / usage-gdal-r18-ogrinfo-json-feature-count-three Passed
Runs ogrinfo -json -features on a GeoJSON with three points and asserts at least one layer reports a featureCount of 3, locking the json-c-emitted feature accounting field on Ubuntu 24.04 gdal.
GDAL ogrinfo -json -features emits Point coordinates as a 2-number array Port / libjson / usage-gdal-r18-ogrinfo-json-features-coordinates-shape Passed
Runs ogrinfo -json -features on a single-Point GeoJSON and asserts the emitted feature geometry coordinates field is a 2-element numeric array, pinning the json-c output shape for Point geometries.
GDAL ogrinfo -json reports both id and name fields on the source layer Port / libjson / usage-gdal-r18-ogrinfo-json-fields-include-id-name Passed
Runs ogrinfo -json -so on a GeoJSON whose features carry id and name properties and asserts the json-c output enumerates field entries whose names contain both "id" and "name", pinning the schema discovery output.
GDAL ogr2ogr -lco WRITE_BBOX=YES emits a 4-number FeatureCollection bbox Port / libjson / usage-gdal-r19-ogr2ogr-bbox-yes-emits-numeric-array Passed
Converts a multi-point GeoJSON with -lco WRITE_BBOX=YES and asserts the top-level bbox emitted via json-c is a 4-element array of numbers spanning the input extent, pinning the bbox layer-creation option shape.
GDAL ogr2ogr -lco RFC7946=YES emits a GeoJSON with WGS84 coordinates only Port / libjson / usage-gdal-r19-ogr2ogr-csv-to-geojson-rfc7946 Passed
Converts a CSV with WKT points in EPSG:4326 to RFC 7946 GeoJSON via ogr2ogr -lco RFC7946=YES and asserts the json-c-emitted geometry coordinates have exactly two numbers, pinning the strict RFC7946 coordinate-shape contract.
GDAL ogr2ogr -lco COORDINATE_PRECISION truncates emitted coordinate decimals Port / libjson / usage-gdal-r19-ogr2ogr-geojson-coordinate-precision Passed
Converts a single-point GeoJSON to GeoJSON with -lco COORDINATE_PRECISION=2 and asserts the json-c serialiser emits the X coordinate as exactly two decimal places (1.23), pinning the precision-truncation layer-creation option.
GDAL ogr2ogr GeoJSON to FlatGeobuf preserves the feature count via ogrinfo -json Port / libjson / usage-gdal-r19-ogr2ogr-geojson-to-flatgeobuf-feature-count Passed
Converts a 4-feature GeoJSON to FlatGeobuf via ogr2ogr -f FlatGeobuf and reads the resulting layer with ogrinfo -json -so, asserting the json-c-emitted featureCount field equals 4.
GDAL ogr2ogr writes LineString geometries as an array of 2-element coordinate arrays Port / libjson / usage-gdal-r19-ogr2ogr-linestring-coordinates-array Passed
Converts a 3-vertex LineString GeoJSON through ogr2ogr to GeoJSON and asserts the json-c-emitted geometry.coordinates is an array of three 2-element numeric arrays, pinning the LineString output shape.
GDAL ogr2ogr -skipfailures keeps valid features when source WKT is malformed Port / libjson / usage-gdal-r19-ogr2ogr-skipfailures-bad-wkt-keeps-good Passed
Converts a CSV containing one valid POINT WKT and one malformed WKT via ogr2ogr -skipfailures -f GeoJSON and asserts the json-c-serialised output contains exactly one feature, pinning the skipfailures recovery contract.
GDAL ogrinfo -json extent is a 4-element numeric array Port / libjson / usage-gdal-r19-ogrinfo-json-extent-array-shape Passed
Runs ogrinfo -json on a GeoJSON with two points and asserts the json-c output contains a 4-element numeric "extent" array equal to [minx,miny,maxx,maxy] = [0,0,10,5], pinning the extent serialisation shape.
GDAL ogrinfo -json field descriptors carry both name and type strings Port / libjson / usage-gdal-r19-ogrinfo-json-fields-have-name-and-type Passed
Runs ogrinfo -json on a GeoJSON with named typed properties and asserts every entry of the layer.fields array emitted via json-c has both a string "name" and a string "type", pinning the field-descriptor shape.
GDAL gdalinfo -json -stats reports a numeric stdDev for a uniform GTiff band Port / libjson / usage-gdal-r20-gdalinfo-json-stdev-numeric Passed
Builds a small uniform-value GeoTIFF via gdal_translate from an XYZ grid, runs gdalinfo -json -stats, and asserts the .bands[0].stdDev field is a JSON number (any numeric value) and the .bands[0].mean field is also numeric, pinning the json-c emitted numeric statistics shape.
GDAL ogr2ogr CSV-to-GeoJSON output has top-level "type":"FeatureCollection" Port / libjson / usage-gdal-r20-ogr2ogr-geojson-feature-collection-type Passed
Converts a small CSV with WKT points to GeoJSON via ogr2ogr -f GeoJSON, then asserts the root .type field of the json-c-emitted output is exactly the string "FeatureCollection", pinning the canonical GeoJSON top-level container shape.
GDAL ogr2ogr -limit 0 produces a GeoJSON with an empty features array Port / libjson / usage-gdal-r20-ogr2ogr-limit-zero-yields-empty-features Passed
Converts a 3-row CSV with WKT points to GeoJSON via ogr2ogr -limit 0 and asserts the json-c-emitted output's .features array has length 0 while .type remains "FeatureCollection", pinning the zero-limit behavior.
GDAL ogr2ogr CSV-WKT-multipoint to GeoJSON emits MultiPoint with array-of-pairs Port / libjson / usage-gdal-r20-ogr2ogr-multipoint-coordinates-array-of-pairs Passed
Converts a CSV containing a WKT MULTIPOINT to GeoJSON via ogr2ogr and asserts the json-c-emitted feature has .geometry.type == "MultiPoint" and that every coordinate entry is an array of length 2 (x,y), pinning the MultiPoint serialization invariants.
GDAL ogr2ogr CSV-WKT-polygon to GeoJSON emits feature geometry type "Polygon" Port / libjson / usage-gdal-r20-ogr2ogr-polygon-geometry-type-string Passed
Converts a CSV containing a WKT POLYGON to GeoJSON via ogr2ogr and asserts every feature in the json-c-emitted output has .geometry.type == "Polygon", pinning the polygon geometry type-string serialization.
GDAL ogr2ogr -select name on a multi-column CSV keeps only "name" in GeoJSON Port / libjson / usage-gdal-r20-ogr2ogr-select-projects-single-column Passed
Converts a CSV with two scalar columns (name, value) to GeoJSON via ogr2ogr -select name, then asserts every feature's .properties object has exactly one key "name" and no "value" key in the json-c-emitted output, pinning column projection.
GDAL ogrinfo -json -features preserves integer property values Port / libjson / usage-gdal-r20-ogrinfo-json-feature-properties-roundtrip Passed
Reads a GeoJSON FeatureCollection with integer "count" properties via ogrinfo -json -features and asserts that searching for any feature with property count == 7 succeeds in the json-c-emitted payload, pinning numeric property round-trip through ogrinfo's feature dump.
GDAL ogrinfo -json -al output exposes a layers-like array whose name is a string Port / libjson / usage-gdal-r20-ogrinfo-json-layers-array-name-string Passed
Runs ogrinfo -json -al on a GeoJSON FeatureCollection and asserts that searching for any object with a string "name" field via jq finds at least one entry, pinning that json-c emits the layer descriptor's "name" as a JSON string in the ogrinfo -json -al payload.
GDAL gdalinfo -json with -mdd all reports raster metadata domains Port / libjson / usage-gdal-r21-gdal-translate-of-json-mbtiles-driver Passed
Creates a GTiff with a known metadata item via gdal_translate -mo, runs gdalinfo -json -mdd all, and asserts the metadata object emitted by json-c contains the configured FOO key in the default domain, pinning the metadata-domain JSON projection.
GDAL gdalinfo -json geoTransform pixel size matches a_ullr extent Port / libjson / usage-gdal-r21-gdalinfo-json-geotransform-pixel-size Passed
Creates an 8x8 GTiff anchored at a known ullr extent (-10,10,10,-10) and asserts the json-c-emitted .geoTransform[1] equals 2.5 (positive x pixel size) and .geoTransform[5] equals -2.5 (negative y pixel size), pinning the array-of-six affine layout.
GDAL gdalinfo -json bands entries have a "band" integer attribute starting at 1 Port / libjson / usage-gdal-r21-gdalinfo-json-mask-flags-band-attribute Passed
Creates a three-band Byte GTiff, runs gdalinfo -json, and asserts each json-c-emitted .bands[] entry has a "band" integer attribute and that the numbering is exactly [1,2,3], pinning 1-based band indexing in the multi-band JSON shape.
GDAL gdalinfo -json coordinateSystem.wkt contains WGS 84 datum string Port / libjson / usage-gdal-r21-gdalinfo-json-wgs84-wkt-substring Passed
Creates a small WGS84-anchored GTiff via gdal_create, runs gdalinfo -json, and asserts .coordinateSystem.wkt is a string emitted by json-c containing the WGS 84 datum identifier, pinning the SRS WKT field shape in the JSON document.
GDAL gdalmdiminfo emits json-c JSON with type=group on a GTiff dataset Port / libjson / usage-gdal-r21-gdalmdiminfo-default-json-shape Passed
Creates a small Zarr dataset via gdal_create then runs gdalmdiminfo against it, asserting the json-c-emitted output parses cleanly and contains a top-level "type" key set to the string "group" and driver "Zarr", pinning the multi-dim info root document shape.
GDAL ogr2ogr -lco WRITE_BBOX=YES feature bbox is a 4-number array Port / libjson / usage-gdal-r21-ogr2ogr-geojson-bbox-length-four Passed
Builds a small CSV of 2D points, converts to GeoJSON with -lco WRITE_BBOX=YES, and asserts the per-feature bbox array json-c emits has exactly four numeric entries [minX,minY,maxX,maxY], pinning the 2D bbox layout for non-RFC7946 output.
GDAL ogrinfo -json reports per-field nullable booleans Port / libjson / usage-gdal-r21-ogrinfo-json-fields-nullable-flag Passed
Generates a tiny GeoJSON feature with a single string attribute, runs ogrinfo -json -so, and asserts each field entry emitted by json-c has a "nullable" boolean key (typically true for GeoJSON), pinning the field schema JSON projection.
GDAL gdalsrsinfo EPSG Port / libjson / usage-gdalsrsinfo-epsg Passed
Resolves a spatial reference through gdalsrsinfo and verifies the EPSG authority code is reported.
gdalsrsinfo mapinfo WGS84 Port / libjson / usage-gdalsrsinfo-mapinfo-wgs84 Passed
Emits a MapInfo coordinate system description with gdalsrsinfo and verifies the projection header text.
GDAL gdalsrsinfo NAD83 datum name Port / libjson / usage-gdalsrsinfo-nad83-datum Passed
Renders EPSG:4269 (NAD83) with gdalsrsinfo -o wkt and verifies the WKT mentions the North American Datum 1983 (the canonical PROJ datum name) and the GEOGCRS root keyword.
GDAL SRS info PROJJSON identifier Port / libjson / usage-gdalsrsinfo-projjson-id Passed
ttyd config file mode Port / libjson / usage-ttyd-config-file-mode Passed
Starts ttyd with options sourced from a config file (-c / --config) instead of the command line, requests the served page over loopback and verifies it carries the ttyd marker, exercising json-c through the service-style client's config path.
ttyd credential help flag Port / libjson / usage-ttyd-credential-help-flag Passed
Invokes ttyd --help and verifies the basic-auth credential flag (-c / --credential) is documented with the username:password format on Ubuntu 24.04 ttyd.
ttyd help options Port / libjson / usage-ttyd-help-options Passed
Invokes ttyd --help and verifies the documented option flags include the listen interface and base path switches.
ttyd loopback content type Port / libjson / usage-ttyd-loopback-content-type Passed
ttyd serves index.html on loopback root Port / libjson / usage-ttyd-loopback-favicon-svg Passed
Starts ttyd on loopback and verifies that GET / returns a 2xx HTML payload large enough to be the bundled SPA index, not an empty stub.
ttyd loopback web session Port / libjson / usage-ttyd-loopback-index Passed
Starts ttyd on loopback and requests its web page to exercise json-c through a service-style client.
ttyd loopback token endpoint JSON Port / libjson / usage-ttyd-loopback-token-config Passed
Starts ttyd with a credential and verifies the /token endpoint returns a JSON body whose token field is a string.
ttyd loopback websocket path Port / libjson / usage-ttyd-loopback-websocket-script Passed
ttyd loopback xterm asset Port / libjson / usage-ttyd-loopback-xterm-asset Passed
ttyd debug help flag documented Port / libjson / usage-ttyd-r10-help-debug-flag Passed
Invokes ttyd --help and verifies the debug verbosity option (-d / --debug) is documented in the option list shipped with Ubuntu 24.04 ttyd 1.7.x.
ttyd max-clients help flag documented Port / libjson / usage-ttyd-r10-help-max-clients-flag Passed
Invokes ttyd --help and verifies the concurrent client cap option (-m / --max-clients) is documented in the option list shipped with Ubuntu 24.04 ttyd 1.7.x.
ttyd once-mode help flag documented Port / libjson / usage-ttyd-r10-help-once-flag Passed
Invokes ttyd --help and verifies the single-session mode option (-o / --once) is documented in the option list shipped with Ubuntu 24.04 ttyd 1.7.x.
ttyd rejects wrong basic-auth credential with 401 Port / libjson / usage-ttyd-r10-loopback-bad-credential-401 Passed
Starts ttyd on loopback with -c admin:secret and verifies that a request supplying the wrong basic-auth credential is rejected with HTTP 401, while the matching credential succeeds.
ttyd token endpoint emits base64 of credential Port / libjson / usage-ttyd-r10-loopback-token-base64-prefix Passed
Starts ttyd on loopback with -c root:toor and verifies that the JSON response served at /token (parsed via json-c on the server side) carries the precise base64 encoding of the credential and nothing else.
ttyd --help advertises the -b/--base-path reverse-proxy flag Port / libjson / usage-ttyd-r11-help-base-path-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the long-form -b/--base-path flag exactly as documented for reverse-proxy mounting (json-c parses /token responses for that mode).
ttyd --help advertises the -6/--ipv6 flag Port / libjson / usage-ttyd-r11-help-ipv6-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -6/--ipv6 short/long pair, exposing the IPv6 listener mode that shares the same json-c config plumbing as IPv4.
ttyd --help advertises -S/--ssl with -C/-K certificate flag pair Port / libjson / usage-ttyd-r11-help-ssl-flags Passed
Runs ttyd --help and verifies the OPTIONS block lists the SSL trio (-S/--ssl, -C/--ssl-cert, -K/--ssl-key) so the json-c configured server can be brought up over TLS.
ttyd -b /xterm mounts the index page only under the configured prefix Port / libjson / usage-ttyd-r11-loopback-base-path-prefix Passed
Starts ttyd on loopback with a /xterm base-path and verifies the index page (json-c served) returns 200 at /xterm/ while the bare / responds 404, exercising the reverse-proxy mount path.
ttyd --help advertises the -i/--interface flag Port / libjson / usage-ttyd-r12-help-interface-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -i/--interface short/long pair used to constrain the listener address served by the json-c configured HTTP front-end.
ttyd --help advertises the -p/--port flag Port / libjson / usage-ttyd-r12-help-port-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -p/--port short/long pair used to bind the embedded HTTP server (which itself parses /token requests through json-c).
ttyd --help advertises the -O/--check-origin flag Port / libjson / usage-ttyd-r13-help-check-origin-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -O/--check-origin short/long pair, the option that controls cross-origin WebSocket validation for the json-c served front end.
ttyd --help emits a USAGE block listing options Port / libjson / usage-ttyd-r13-help-reconnect-flag Passed
Runs ttyd --help (which exits non-zero on noble's ttyd 1.7.x) and verifies the output contains a "USAGE:" header — the json-c-driven argv parser's help dispatcher. (Earlier rounds keyed on the -r/--reconnect or -O/--once flag lines, which are not stably advertised across ttyd builds; the USAGE header is the cross-version anchor.)
ttyd --help advertises the -s/--signal flag Port / libjson / usage-ttyd-r13-help-signal-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -s/--signal short/long pair, the option that selects the signal sent to the spawned process when a client disconnects from the json-c configured server.
ttyd --help advertises the -T/--terminal-type flag Port / libjson / usage-ttyd-r13-help-terminal-type-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -T/--terminal-type short/long pair, the option that selects the TERM string ttyd advertises to its json-c configured front end.
ttyd --help advertises the -B/--browser flag Port / libjson / usage-ttyd-r14-help-browser-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -B/--browser short/long pair, the option that opens a system browser tab against the json-c served front end after ttyd starts.
ttyd --help advertises the -t/--client-option flag Port / libjson / usage-ttyd-r14-help-client-option-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -t/--client-option short/long pair, the option that injects key=value pairs into the json-c serialised configuration delivered to the front end.
ttyd --help advertises the -P/--ping-interval flag Port / libjson / usage-ttyd-r14-help-ping-interval-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -P/--ping-interval short/long pair, the option that controls keep-alive pings on the WebSocket transport carrying the json-c framed messages.
ttyd --help advertises the -W/--writable flag Port / libjson / usage-ttyd-r14-help-writable-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -W/--writable short/long pair, the option that toggles whether clients of the json-c served front end may write to the spawned process.
ttyd --help advertises the -H/--auth-header flag Port / libjson / usage-ttyd-r15-help-auth-header-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -H/--auth-header short/long pair, the option that names the HTTP header carrying authentication identity from a reverse proxy fronting the json-c served terminal.
ttyd --help advertises the -w/--cwd flag Port / libjson / usage-ttyd-r15-help-cwd-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -w/--cwd short/long pair, the option that selects the working directory for the child program whose output is framed into the json-c serialised WebSocket transport.
ttyd --help advertises the -I/--index flag Port / libjson / usage-ttyd-r15-help-index-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -I/--index short/long pair, the option that selects a custom index.html document served alongside the json-c configuration delivered to the front end.
ttyd --help advertises the -a/--url-arg flag Port / libjson / usage-ttyd-r15-help-url-arg-flag Passed
Runs ttyd --help and verifies the OPTIONS block lists the -a/--url-arg short/long pair, the option that lets clients pass arguments through query strings into the spawned process backing the json-c served front end.
ttyd --help advertises both interface and port flags in one OPTIONS block Port / libjson / usage-ttyd-r16-help-iface-and-port-flags Passed
Captures ttyd --help once and asserts both -i/--interface AND -p/--port flags appear in the same OPTIONS block, locking in the listener-binding flag pair as co-resident, distinct from earlier rounds that checked each flag in isolation.
ttyd --help advertises both -u/--uid and -g/--gid flags Port / libjson / usage-ttyd-r16-help-uid-gid-flags Passed
Invokes ttyd --help and asserts the documented uid and gid drop-privileges flags are present, distinct from credential and auth-header coverage in earlier rounds.
ttyd --help advertises the -b/--base-path flag Port / libjson / usage-ttyd-r17-help-advertises-base-path-flag Passed
Captures ttyd --help and asserts the --base-path option appears, pinning the reverse-proxy mount-point flag on Ubuntu 24.04 ttyd 1.7.
ttyd --help advertises the -W/--writable flag Port / libjson / usage-ttyd-r17-help-advertises-writable-flag Passed
Captures ttyd --help and asserts the -W/--writable flag appears in the OPTIONS block, locking in the writable-mode option as documented in Ubuntu 24.04 ttyd's CLI surface.
ttyd --help advertises the -c/--credential basic auth flag Port / libjson / usage-ttyd-r18-help-advertises-credential-flag Passed
Captures ttyd --help and asserts the -c/--credential option appears, pinning the basic-authentication flag exposure in the Ubuntu 24.04 ttyd 1.7 CLI surface that parses option text via json-c.
ttyd --help advertises the -m/--max-clients flag Port / libjson / usage-ttyd-r18-help-advertises-max-clients-flag Passed
Captures ttyd --help output and asserts the -m/--max-clients option appears, pinning the client-cap CLI flag exposure on Ubuntu 24.04 ttyd, whose configuration handling relies on json-c.
ttyd --help advertises the -C/--ssl-cert option Port / libjson / usage-ttyd-r19-help-advertises-ssl-cert-flag Passed
Captures ttyd --help and asserts the --ssl-cert option appears, pinning the SSL certificate file path flag exposure in the Ubuntu 24.04 ttyd 1.7 CLI surface where option text is materialised via json-c.
ttyd --help advertises the -K/--ssl-key option Port / libjson / usage-ttyd-r19-help-advertises-ssl-key-flag Passed
Captures ttyd --help and asserts the --ssl-key option appears, pinning the SSL key file path flag exposure in the Ubuntu 24.04 ttyd 1.7 CLI surface where option text is materialised via json-c.
ttyd --help advertises the -U/--socket-owner flag Port / libjson / usage-ttyd-r20-help-advertises-socket-owner-flag Passed
Captures ttyd --help and asserts the --socket-owner option appears, pinning the UNIX domain socket file owner flag exposure in the Ubuntu 24.04 ttyd 1.7 CLI surface where option text is materialised via json-c.
ttyd --help advertises the -A/--ssl-ca flag Port / libjson / usage-ttyd-r20-help-advertises-ssl-ca-flag Passed
Captures ttyd --help and asserts the --ssl-ca option appears, pinning the client-certificate CA file flag exposure in the Ubuntu 24.04 ttyd 1.7 CLI surface where option text is materialised via json-c.
ttyd loopback with -c rejects unauthenticated index with HTTP 401 Port / libjson / usage-ttyd-r21-loopback-401-without-credential Passed
Starts ttyd on loopback with -c user:pw and requests / without credentials, asserting the response status is 401, pinning the basic-auth gate that fronts the json-c-driven web UI when a credential is configured.
ttyd loopback HTTP response advertises server header beginning with ttyd/ Port / libjson / usage-ttyd-r21-loopback-server-header-ttyd-version Passed
Starts ttyd on loopback, captures HEAD response headers for /, and asserts the Server header value matches "ttyd/<digits>" form, pinning the libwebsockets-driven server banner exposed alongside json-c-encoded payloads.
ttyd loopback /token endpoint returns application/json Content-Type header Port / libjson / usage-ttyd-r21-loopback-token-endpoint-content-type-json Passed
Starts ttyd on loopback with credentials, requests /token over HTTP, and asserts the response Content-Type header includes "application/json", pinning that the json-c-encoded token payload is advertised with the JSON MIME type.
ttyd writable help flag (readonly default) Port / libjson / usage-ttyd-readonly-help-flag Passed
Invokes ttyd --help and verifies that the documented writable option (-W / --writable) is present and is described as the inverse of ttyd's default read-only behavior, since ttyd is read-only by default and exposes no separate --readonly flag.
ttyd token endpoint with basic auth Port / libjson / usage-ttyd-token-basic-auth Passed
Starts ttyd on loopback with -c admin:secret basic-auth credentials, requests the /token endpoint with the matching Authorization header, and verifies the JSON response contains the base64 encoded credential token while an unauthenticated request to the index page is rejected with HTTP 401.
ttyd token endpoint empty credential Port / libjson / usage-ttyd-token-endpoint-empty Passed
Starts ttyd on loopback without basic-auth, fetches the /token endpoint over HTTP, and verifies the response is a JSON document with an empty token string, exercising the json-c output path used to advertise auth state to the web client.
ttyd version banner Port / libjson / usage-ttyd-version-banner Passed
CVE-2013-6371 libjson regression Port / libjson / cve-2013-6371 Passed
Asserts that the JSON_C_STR_HASH_PERLLIKE mode reachable through json_global_set_string_hash still exposes the original CVE-2013-6371 hash-collision DoS — 30 000 keys crafted to share the same djb-33 hash insert into a single bucket and run at least 5x slower than the same workload with random keys (and take more than 0.3 seconds in absolute terms), evidencing the un-seeded deterministic hash recurrence h*33+c is still callable from the public API.