- Delete outdated tiles in overwrite mode (thanks @Blesss)
- Clip points outside tile borders
- Write tile CRS and tilejson property in metadata.json (thanks @pvgenuchten)
- Fix point duplications at tile borders when reprojecting
- Fix gaps at tile borders when reprojecting
- Debian packages for bullseye and buster (thanks @tobwen)
- RPM package for CentOS/RHEL 8
- Fix reading 2D types from PostGIS geometries with Z or ZM dimensions
- Fix CORS headers (thanks @tobwen)
- Fix invalid geometries for some polygon simplifications
- Support for multiple geometry types in one layer
- Add
connection_timeout
configuration for PG connection pool - Update to gdal 0.9.0 (Thanks @lnicola and @gerdos82!)
- Make
ST_MakeValid
in simplification optional (make_valid
) - Improved error messages for GDAL datasources
- Update Windows MSI to GDAL 3.3.2
- Fix clipping rectangle for non 256 pixel tiles
- Fix infinite seeding after connection timeout
- Same simplifcation as in 0.11 is applied, when
make_valid
is not set.
- Automatic parallelization of tile seeding (
t_rex generate
) - Add support for S3 tile storage (Thanks @arbakker!)
- Add optional extent SRID parameter in generate command (Thanks @arbakker!)
- Update to Maputnik 1.7.0
- Update to rust-postgres 0.19
- Support for PG connection with sslmode=require (Thanks @arbakker and @Daan-!)
- Support for HTTP HEAD requests (Thanks @sebastian-r-schmidt!)
- Return detailed config template error message (Thanks @arbakker!)
- Return projection in TileJSON (Thanks @lnicola!)
- Update to Actix-Web 3.0 (Thanks @lnicola!)
- Update to rust-postgres 0.17 (Thanks @lnicola and @WouterVisscher!)
- Avoid line artefacts in polygon simplification (Thanks @arbakker!)
- Force compatible WGS84 axis order with GDAL 3
- Zoom level dependent simplify configuration
- Support postgres varchar[] data type (Thanks @Blesss!)
- Update to async/await with Actix-Web 2.0
- Don't flip Y for Non-Mercator grids when seeding cache (use TMS instead of XYZ)
- Fix interference of some static URLs with tile URLs
- Add fonts.json endpoint as requested by Maputnik
- Template support in configuration files
- Load environment variables from a file named
.env
in the current directory or any of its parents - Initialize service only once before starting HttpServer threads
- Share DB connection pool between all HttpServer threads
- Migrate web server to Actix web 1.0
- Fix SQL queries for non-unique layer names
- Skip tile requests with z > grid.maxzoom
- Respect webserver threads configuration (broken since 0.9.0)
- Environment variable expansion
${VARNAME}
is not supported anymore. Use{{env.VARNAME}}
instead. TREX_DATASOURCE_URL
is not automatically applied anymore. Usedbconn = "{{ env.TREX_DATASOURCE_URL }}"
instead.
- New option
shift_longitude
for applyingST_Shift_Longitude
to (transformed) bbox
ST_Shift_Longitude
not applied by default for WGS 84 geometries
- Support option
detect-geometry-types
ingenconfig
command - Support GDAL M- and ZM-geometry types
- Avoid duplicated fid_field in attributes
- Prevent invalid geometries by filtering repeated points and check for minimum number of points (Thanks @nimix!)
- Adjust Mercator grid resolutions to avoid negative coordinates instead of 0.0
- New cache_limits option (Thanks @apzel!)
- New simplification tolerance option (Thanks @apzel!)
- Support environment variables in configuration file
- Update Maputnik to 1.5
- Update viewer (mapbox-gl 0.51, OL 5.3.0)
- Add support for GDAL 25D geometry types
- Add support for GDAL network adresses like GeoJSON services
- Use internal implementation for converting WGS84 extents to Web Mercator
- Add CORS headers for index.json and static_file_handler
- Better panic messages for PostGIS driver errors
- Fix build with OpenSSL v1.1.1
- Port to asynchronous actix web framework
- New mode
no-transform
to pretend grid SRS - New
drilldown
command and service for tileset statistics - Configurable directories for static file serving
- Add support for PostGIS Compoundcurve and Curvedpolygon
- New option
detect-geometry-types
for disabling geometry detection - New command line parameter
loglevel
- Make
ST_MakeValid
on geometries before clipping optional (make_valid
) - Return 204 No Content for empty tiles
minzoom
/maxzoom
,center
andstart_zoom
configuration on tileset level (Thanks frodrigo!)- Min-/maxzoom limits for tileset are deduced from layer/query limits
- New attribution configuration (Thanks frodrigo!)
- Support table names with special characters
- Omit empty layers in tiles (Thanks @frodrigo!)
- Return uncompressed tiles if requested
- Serve and seed commands don't deliver/cache tiles out of tileset min-/maxzoom limits
- Empty tiles are not stored to cache anymore
ST_MakeValid
is not applied by default anymore. Setmake_valid true
to reactivate.
- Implement layer_extent for GDAL, make SRID optional (Thanks @lnicola!)
- Use tileset extent when generating cache (Thanks @lnicola!)
- Update to rust-postgis 0.6.0 with support for Geometry and GeometryCollection (Thanks @kestred!)
- Fix scrolling issues in t-rex-viewer (Thanks @OSHistory!)
- Read layers from QGIS project file
- Fix extent calculation for reprojected OGR geometries
- Support for GDAL/OGR datasources (up to 84 drivers, see http://gdal.org/)
- Multiple datasources in tilesets
- Configurable layer tile size
- Options
bind
andport
forserve
command - New package formats: Deb package for Ubuntu, MSI for Windows and Docker image for all platforms
-
Changed configuration format of datasources
See Upgrading for conversion help.
-
User defined grid now in [grid.user] block
-
Changed user defined grid units to lower case (m, dd, ft)
- Support for PostgreSQL SSL connections
- Serve fonts in pbf format
- Fix queries with
!zoom!
variable - Fix queries for layers with minzoom > 0
- Use OGC SLD pixel size for
scale_denominator
calculation (like Mapnik)
- Use tileset extent from configuration as default for cache generation
- Serve fontstacks.json (used by Maputnik et al.)
- Fix queries at maxzoom levels
- Extent parameter of generate command is now in WGS84 instead of grid SRS
- Fix tileset extent detection of empty tables
- Tileset extent detection and configuration
- New seeding option
overwrite
(Thanks @kiambogo!) - cache_control_max_age setting (with new default 0)
- Write :tileset.json and and :tileset.style.json when generating cache
- Update built-in Mapbox GL viewer to 0.38.0
- Open backend URL in browser when starting server
- Add support for the environment variable TREX_DATASOURCE_URL to override the datasource.url config field (Thanks @kiambogo!)
- Serve favicon
- Emit info message when features are limited by
query_limit
- Turn off HTTP keep alive to avoid missing tiles in browser
- Fix WGS84 grid definition (Thanks @Wykks!)
- Use
buffer_size
instead ofbuffer-size
in config
- Change file cache scheme from TMS to XYZ
- Extend Web Mercator grid to level 22
- Limit features per tile to 1000 by default
- Fix TileJSON compatibility
- Fix generation of zoom levels greater than maximal grid zoom level
- Embedded Maputnik style editor
- Service Info page with viewer code snippets
- Fix
generate
command withextent
option
- Inline Mapbox GL (TOML) styles
- Extent and zoom calculation fixes (Thanks @rory and @joostvenema!)
- Support for PostgreSQL Unix socket connections
- Mac OS X build
- Fix integer overflows in grid calculations and MVT encoding
- New viewer with inlined OpenLayers and Mapbox GL libs
- User defined grids
- Fix clipping and simplification with reprojected geometries
- Experimental Mapbox GL Style Json output
- Support for Multi-Geometries (Multipoint, Multiline, Multipolygon)
- Tile cache generation command
- Improved polygon simplification
- Support for database column names which have a colon
- TileJSON center value format fixed
- Simplify option
- Experimental clipping support
- Automatic column type conversion
- Transform geometries to grid SRS
- Pre-build SQL queries
First Release