2026.1.02
ImprovementLuciadLightspeed
LCD-8736, LCD-14942
TLcdKML22ModelDecoder now provides improved compatibility with KML files that contain
incorrectly formatted coordinates. It accepts a superfluous separator in front of a coordinate tuple, and treats
Unicode whitespace such as a no-break space as a separator between tuples. Previously such a
coordinates
element lost all of its coordinates, which left the geometry out of the map or
placed a Point at (0,0), with only a warning in the log to indicate the problem.
ImprovementOGC Server
LCD-14961
ImprovementOGC Server
LCD-14932
com.luciad.ogc.wcs.ALcdOGCWCSCommandDispatcherFactory now allows
to configure additional request parameters that should be taken into account for the key of cached WCS coverage
tiles.
ImprovementAviation Standards
LCD-14950, LCD-14214
TLcdAIXM51ModelDecoder now supports decoding an individual AIXM
5.1(.1) time slice, through the new method decodeTimeSlice. This method decodes a data source
that contains a time slice as its root element, as well as a data source whose root element is an
aixm:timeSlice property element containing the time slice. This eases working with AIXM
5.1(.1) time slices that are delivered without a surrounding feature or message, as is the case for some data
providers.
ImprovementAviation Standards
LCD-14937
TLcdDAFIFTHelipadDecoder has been made more robust when handling helipad
records with missing low- and high-end positions. In such cases, the decoder now falls back to a single-point
position, consistent with the existing behavior for short helipads (smaller than 500 feet).
ImprovementAviation Standards
LCD-14937
TLcdDAFIFTProcedureDecoder now also decodes the following
DAFIFT 8.0 procedure properties:
- TLcdDAFIFTProcedureDataProperties#EMERGENCY_SAFE_ALTITUDE,
- TLcdDAFIFTProcedureDataProperties#LATEST_REVISION_DATE,
- TLcdDAFIFTProcedureDataProperties#AMENDMENT_NUMBER,
- TLcdDAFIFTProcedureDataProperties#OFFICE_OF_PRIMARY_RESPONSIBILITY,
- TLcdDAFIFTProcedureDataProperties#HOST_COUNTRY_AUTHORITY,
- TLcdDAFIFTProcedureDataProperties#ALTERNATE_TAKEOFF_MINIMUMS,
- TLcdDAFIFTProcedureDataProperties#TRANSITION_ALTITUDE,
- TLcdDAFIFTProcedureDataProperties#TRANSITION_LEVEL.
ImprovementAviation Standards
LCD-14937
TLcdDAFIFModelDecoder now supports decoding DAFIFT 8.1 datasets,
in addition to the existing DAFIF 7 and DAFIFT 8.0 support. To enable this, several new DAFIFT 8.1 properties
have been introduced, as listed below. Refer to the corresponding Javadoc for details on their semantics and usage.
- Aerodrome:
- ATS Route:
- Helipad:
- Heliport:
- ILS Components (GlidePath, Localizer, Marker, ILSDME):
- Navaid:
- Procedure:
- TLcdDAFIFTProcedureDataProperties#PROCEDURE_DESIGN_CRITERIA,
- TLcdDAFIFTProcedureDataProperties#PROCEDURE_AMENDMENT_DATE,
- TLcdDAFIFTProcedureDataProperties#PRIMARY_APPROACH_ROUTE_QUALIFIER,
- TLcdDAFIFTProcedureDataProperties#SECONDARY_APPROACH_ROUTE_QUALIFIER,
- TLcdDAFIFTProcedureDataProperties#PRECISION_RNAV_LEVEL_OF_SERVICE_AUTHORIZED,
- TLcdDAFIFTProcedureDataProperties#PRECISION_RNAV_LEVEL_OF_SERVICE_NAME,
- TLcdDAFIFTProcedureDataProperties#LNAV_VNAV_RNAV_LEVEL_OF_SERVICE_AUTHORIZED,
- TLcdDAFIFTProcedureDataProperties#LNAV_VNAV_RNAV_LEVEL_OF_SERVICE_NAME,
- TLcdDAFIFTProcedureDataProperties#LNAV_RNAV_LEVEL_OF_SERVICE_AUTHORIZED,
- TLcdDAFIFTProcedureDataProperties#LNAV_RNAV_LEVEL_OF_SERVICE_NAME,
- TLcdDAFIFTProcedureDataProperties#MAGNETIC_VARIATION.
- Runway:
- TLcdDAFIFTRunwayDataProperties#COORDINATE_PRECISION,
- TLcdDAFIFTRunwayDirectionDataProperties#TAKEOFF_RUN_AVAILABLE,
- TLcdDAFIFTRunwayDirectionDataProperties#TAKEOFF_RUN_AVAILABLE_UNIT,
- TLcdDAFIFTRunwayDirectionDataProperties#ACCELERATE_STOP_DISTANCE_AVAILABLE,
- TLcdDAFIFTRunwayDirectionDataProperties#ACCELERATE_STOP_DISTANCE_AVAILABLE_UNIT.
- Waypoint:
Additionally, a new runway surface type AM2 has been added to
TLcdRunwaySurfaceType, representing a surface type consisting of metal planking.
ImprovementDefense Symbology
LCD-14917
The display names of the ELcdMS2525Standard enum values have been updates.
| ELcdMS2525bStandard value | Old display name | New display name |
|---|---|---|
MIL_STD_2525b |
MIL-STD 2525b | MIL-STD-2525B |
MIL_STD_2525c |
MIL-STD 2525c | MIL-STD-2525C |
| MIL_STD_2525d | MIL-STD 2525d | MIL-STD-2525D |
Bug fixLuciadLightspeed
LCD-14724
Bug fixLuciadLightspeed
LCD-14948
samples.gxy.rectification) lost its tie points for an image
without a camera model, such as a plain PNG image: they were not shown in the map view, and new tie points were
ignored. The sample now orthorectifies such an image only when the user enters the sensor parameters, which
initially place the sensor above the center of the image. The map view of the sample now also has projection
controls.
Bug fixLuciadLightspeed
LCD-14933
TLcdOGC3DTilesModelEncoder and
TLcd3DTilesProcessorBuilder would sometimes generate B3DM or GLB files that don't adhere to
the byte alignment requirements in the glTF specification.
Bug fixLuciadLightspeed
LCD-14969
TLcdTopocentricReference instances with
the same geodetic datum but different origins returned incorrect values.
Bug fixLucy (LuciadLightspeed)
LUCY-5085
TLcyVerticalViewAddOn: a newly created vertical view did not show the profile of a line or buffer
that was already selected on the map. The object had to be deselected and selected again. This has been fixed.
Bug fixLuciadLightspeed
LCD-13459
TLcdKML22MultiGeometry no longer fails with a
StackOverflowError. This affected both clone() and
clone(java.util.Map), and therefore any operation that copies a KML model containing a
MultiGeometry.
Bug fixAviation Standards
LCD-14938
SafeAltitudeArea features in Lightspeed views:
- Sectors that define their shape using a circle sector definition instead of an extent are now painted as arc bands, measured from the center point of the area. Previously, only sectors with an extent were painted.
- Sectors are now painted at the lower limit of their circle sector definition, which represents the altitude to stay above. The upper limit is used when no lower limit is available. Previously, only the upper limit was taken into account, causing sectors with only a lower limit to be painted on the terrain.
- The center point from which the sectors of an area are measured is now resolved for all feature types that AIXM 5.1(.1) allows an area to reference: a designated point, a navaid, a runway center line point, a touch down / lift off area, and an airport. The position is taken from the time slice that the time slice provider of the referenced feature returns.
- An area is now painted and labeled for a single time slice: the one returned by its time slice
provider (
TLcdAIXM51Feature#getDefaultTimeSliceProvider()), which represents the state of the area at the displayed time. Previously, all time slices of an area were painted and labeled, regardless of that provider, causing an area with multiple time slices to be drawn multiple times. - Areas no longer lose their radius and angle labels. These labels are produced once per area, to avoid duplicates on an edge that two sectors share. Previously, the label texts that had been produced were remembered for the lifetime of the styler, causing an area to lose these labels when the same text had already been produced for another area or during an earlier styling pass.
- Sectors with a significant obstacle or a radius that is unknown, which AIXM 5.1(.1) expresses as a nil
element, and sectors without a circle sector definition, no longer fail to paint with a
NullPointerException. They are now painted using the information that is available.
Bug fixInfrastructure Standards
LCD-14803
TLcdDWGModelDecoder that caused HATCH boundaries that are not closed to be
closed. These boundaries are AutoCAD-internal objects and are now left out of the decoded model.
Bug fixInfrastructure Standards
LCD-14802
TLcdDWGModelDecoder that caused the holes in HATCH objects to be decoded as
separate filled shapes instead of being cut out of the surface.
Bug fixInfrastructure Standards
LCD-14800
TLcdDWGModelDecoder that caused HATCH objects with a hatch pattern to be
painted as opaque solid fills. Hatch patterns are not supported, so such hatches are now painted with a
translucent fill.
Bug fixInfrastructure Standards
LCD-14799
TLcdDWGModelDecoder that caused entities with an inverted normal vector,
such as some LWPOLYLINE objects, to be mirrored and placed at the wrong location.
Bug fixMaritime Standards
LCD-14966
INT.IHO.S-101.1.5.0, are now decoded correctly. Previously only S-101 and
INT.IHO.S-101 were recognized.
Security fixLuciadLightspeed
LCD-14959
The following dependencies have been upgraded:
| Group ID | Artifact ID | Old Version | New Version | CVEs |
|---|---|---|---|---|
| org.eclipse.jetty | jetty-alpn-client | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty | jetty-annotations | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty | jetty-client | 12.1.12 | 12.1.14 | CVE-2026-77711 CVE-2026-76184 CVE-2026-19864 |
| org.eclipse.jetty | jetty-http | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty | jetty-io | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty | jetty-plus | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty | jetty-security | 12.1.12 | 12.1.14 | CVE-2026-19863 |
| org.eclipse.jetty | jetty-server | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty | jetty-session | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty | jetty-util | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty | jetty-xml | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.compression | jetty-compression-common | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.compression | jetty-compression-gzip | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.compression | jetty-compression-server | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.ee | jetty-ee-webapp | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.ee11 | jetty-ee11-annotations | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.ee11 | jetty-ee11-plus | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.ee11 | jetty-ee11-servlet | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.ee11 | jetty-ee11-webapp | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.ee11.websocket | jetty-ee11-websocket-jakarta-client | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.ee11.websocket | jetty-ee11-websocket-jakarta-common | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.ee11.websocket | jetty-ee11-websocket-jakarta-server | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.ee11.websocket | jetty-ee11-websocket-jetty-server | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.ee11.websocket | jetty-ee11-websocket-servlet | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.websocket | jetty-websocket-core-client | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.websocket | jetty-websocket-core-common | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.websocket | jetty-websocket-core-server | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.websocket | jetty-websocket-jetty-api | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.websocket | jetty-websocket-jetty-common | 12.1.12 | 12.1.14 | |
| org.eclipse.jetty.websocket | jetty-websocket-jetty-server | 12.1.12 | 12.1.14 |
Security fixLuciadLightspeed
LCD-14955
The following dependencies have been upgraded:
| Group ID | Artifact ID | Old Version | New Version | CVEs |
|---|---|---|---|---|
| ch.qos.logback | logback-classic | 1.6.4 | 1.6.5 | CVE-2026-104721 |
| ch.qos.logback | logback-core | 1.6.4 | 1.6.5 |
Security fixLuciadLightspeed
LCD-14952
| Group ID | Artifact ID | Old Version | New Version |
|---|---|---|---|
| org.postgresql | postgresql | 42.7.13 | 42.7.14 |
The driver now refuses a connection whose requireAuth property excludes every
authentication method, and rejects an empty requireAuth value. Replace such a value
with the methods your server uses, for example requireAuth=scram-sha-256.
CVE-2026-107314, CVE-2026-107315
Security fixAdvanced Raster Connectors
LCD-14944
openssl library included in the GDAL native libraries has been updated to version
3.5.9 to address security vulnerabilities.
CVE-2026-35189, CVE-2026-35191, CVE-2026-42772, CVE-2026-54872, CVE-2026-54873, CVE-2026-54875, CVE-2026-72897, CVE-2026-75804, CVE-2026-75805, CVE-2026-75806, CVE-2026-77696, CVE-2026-84782, CVE-2026-84784
Security fixAdvanced Raster Connectors
LCD-14943
libcurl library included in the GDAL native libraries has been updated to version
8.23.0 to address security vulnerabilities.
CVE-2026-13608, CVE-2026-18924, CVE-2026-19931, CVE-2026-80229, CVE-2026-80230, CVE-2026-80231, CVE-2026-80255, CVE-2026-82208, CVE-2026-82209, CVE-2026-86409, CVE-2026-86410, CVE-2026-86411, CVE-2026-86412, CVE-2026-86413, CVE-2026-86414, CVE-2026-86415, CVE-2026-87861, CVE-2026-87862, CVE-2026-87863, CVE-2026-87864, CVE-2026-87865, CVE-2026-87866, CVE-2026-92386, CVE-2026-92387, CVE-2026-92388, CVE-2026-92389, CVE-2026-92390, CVE-2026-92391, CVE-2026-92392, CVE-2026-94265, CVE-2026-94266, CVE-2026-107928, CVE-2026-107929
Security fixMaritime Standards
LCD-14949
openssl library included in the native S-101 libraries has been updated to version
3.5.9 to address security vulnerabilities.
CVE-2026-35189, CVE-2026-35191, CVE-2026-42772, CVE-2026-54872, CVE-2026-54873, CVE-2026-54875, CVE-2026-72897, CVE-2026-75804, CVE-2026-75805, CVE-2026-75806, CVE-2026-77696, CVE-2026-84782, CVE-2026-84784
2026.1
2026.1.01
ImprovementLuciadLightspeed
LCD-14894
ImprovementLuciadLightspeed
LCD-14864
closestPointOnShape now also accepts ILcdShapeList and
ILcdComplexPolygon shapes, like closestPointsBetweenShapes: they are
unwrapped, and the closest point over all of their parts is returned. This applies to all variants:
TLcdEllipsoidUtil, TLcdSphereUtil,
TLcdCartesian, TLcdEllipsoidRhumblineUtil and
TLcdSphereRhumblineUtil.
ImprovementLuciadLightspeed
LCD-14864
closestPointsBetweenShapes computes the shortest distance between two
arbitrary shapes and returns the connecting segment(s) that realize it. Supported shapes are
ILcdPoint, ILcdCircle, ILcdPolyline and
ILcdPolygon, with ILcdShapeList and
ILcdComplexPolygon unwrapped automatically. It is available on
TLcdEllipsoidUtil, TLcdSphereUtil,
TLcdCartesian, TLcdEllipsoidRhumblineUtil and
TLcdSphereRhumblineUtil, each with and without explicit tolerance parameters, taking a
sphere radius or an ellipsoid, and returning meters (coordinate units for TLcdCartesian).
ImprovementLuciadLightspeed
LCD-14872
TLcdSphereUtil.closestPointOnShape and
TLcdSphereRhumblineUtil.closestPointOnShape now have overloads that take a sphere radius
and return the shortest distance in meters, measured on a sphere of that radius. Each is offered with and without
explicit tolerance parameters. The existing overloads that do not take a radius are now deprecated.
ImprovementLuciadLightspeed
LCD-14863
closestPointOnShape now also accepts an ILcdPoint as the shape
argument, returning the point-to-point distance.
ImprovementLuciadLightspeed
LCD-14863
TLcdEllipsoidRhumblineUtil.closestPointOnShape and
TLcdSphereRhumblineUtil.closestPointOnShape now also accept geodesic-interpolated
ILcdPolyline and ILcdPolygon instances, returning the shortest rhumb
distance to the geodesic shape. Previously only rhumb-interpolated polylines and polygons were supported. This
is backed by the new methods TLcdEllipsoidUtil.closestPointOnGeodesicRhumb and
TLcdSphereUtil.closestPointOnGeodesicRhumb.
ImprovementLuciadLightspeed
LCD-14863
closestPointOnShape now also accepts ILcdCircle shapes, across all
variants: TLcdEllipsoidUtil, TLcdSphereUtil,
TLcdCartesian, TLcdEllipsoidRhumblineUtil and
TLcdSphereRhumblineUtil.
ImprovementAdvanced Raster Connectors
LCD-14895
TLcdGDALModelDecoder now supports a model reference decoder priority, like the
TLcdGeoTIFFModelDecoder, TLcdLASModelDecoder and TLcdE57ModelDecoder.
Set the system property com.luciad.format.gdal.TLcdGDALModelDecoder.referenceDecoderPriority
to EXTERNAL_FIRST to let an external reference file (.prj, .ref or .epsg) next to the data file
override the reference provided by GDAL. The default is EMBEDDED_FIRST.
This is useful when the embedded reference is incorrect or incomplete. For example, GDAL decodes SRTM HGT
(*.hgt) data using WGS 84 (EPSG:4326), which does not include a vertical reference, even though the elevation
values themselves may be relative to a geoid such as EGM96.
ImprovementAdvanced Raster Connectors
LCD-14916
TLcdLuciadPanoramaModelEncoder calculation of cubemap images:
depending on the input datasets, conversion can be up to 2 times faster than before.
ImprovementAviation Standards
LCD-14882
TLcdAIXMProcedureHandler now decodes more information about the legs of a SID, STAR or IAP.
The following properties have been added to TLcdAIXMProcedureLegDataProperties and
ILcdAIXMProcedureLegFeature:
VERTICAL_ANGLE: the vertical path angle that is published for the leg, in degrees.SPEED_LIMIT: the speed limit of the leg, as anILcdISO19103Measurewith the unit it is published in.SPEED_REFERENCE: the reference the speed limit applies to, such as indicated air speed, as aTLcdProcedureLegSpeedReference.BANK_ANGLE: the bank angle that is recommended for the leg, in degrees.ATC_REPORTING: the type of position report that an ATC unit requires at the leg, as aTLcdProcedureLegATCReporting.NAVIGATION_SYSTEM_TYPEandNAVIGATION_SYSTEM_IDENTIFIER: the navigation or radar system that the leg is to be flown on, for example a GNSS or an ILS.
ImprovementDefense Symbology
LCD-14839, LCD-14848
uniqueDesignation and additionalInformation modifier labels are now rendered with a surrounding text box.
ImprovementDefense Symbology
LCD-14827
hostile (ENY) modifier has been improved for the Direction of Movement symbols.
ImprovementDefense Symbology
LCD-14896
ImprovementDefense Symbology
LCD-14887
ImprovementDefense Symbology
LCD-14845
ImprovementDefense Symbology
LCD-14908
It is now possible to configure the APP-6A and APP-6B "Antitank Ditch" symbols to be painted using the "Under Construction"
stroke pattern.
To paint these symbols using the "Under Construction" stroke pattern, set the ILcdAPP6ACoded.sTypeOfEquipment modifier to "U" or "Under Construction".
ImprovementDefense Symbology
LCD-14909
It is now possible to configure the APP-6A and APP-6B "Biological and Chemical Attack, Release Event" symbols to be painted
using the "Chemical" icon.
To paint these symbols using the "Chemical" icon, set the ILcdAPP6ACoded.sTypeOfEquipment modifier to "C" or "Chemical".
ImprovementInfrastructure Standards
LCD-14885
TLcd3DTilesProcessorBuilder: Increase the support for large JPEG textures. In some cases
these textures couldn't be handled by libjpeg-turbo, we now fall back to Java Image I/O when needed.
ImprovementInfrastructure Standards
LCD-14880
TLcdNWDModelDecoder and TLcdRevitModelDecoder
use considerably less memory when decoding large datasets.
ImprovementTiling Engine
LF-2932
TLfnPointCloudPreprocessor and LuciadFusion can now combine multiple non-georefenced
point clouds into a single service. This is particularly useful for non-georeferenced E57 files, which can
combine multiple related scans in one file.
Bug fixLuciadLightspeed
LCD-14875, LCD-14936
TLcdOGC3DTilesModelDecoder and the glTF decoding now ignore unknown, non-standard
properties in the glTF content instead of failing to decode the tile. Such properties are written by some
exporters, for example DJI Terra.
Bug fixLuciadLightspeed
LCD-14910
TLspIconStyle: objects in the same layer whose icon styles differ only in their icon or
their scale could be selected using the size of another object's icon. As a result, an object with a large icon
could sometimes only be selected by clicking close to its center. Similarly, when an object
is styled with several oriented icons, selection now takes the orientation of each icon into account instead of
only that of the first icon.
Bug fixLuciadLightspeed
intersection2DLineSegments in TLcdEllipsoidRhumblineUtil and
TLcdSphereRhumblineUtil could hang for rhumb lines that cross the date line. This also
affected topology and constructive geometry operations on rhumb line shapes, and
closestPointsBetweenShapes of TLcdEllipsoidRhumblineUtil and
TLcdSphereRhumblineUtil.
Bug fixLuciadLightspeed
contains2D in TLcdEllipsoidRhumblineUtil and
TLcdSphereRhumblineUtil now considers a point within 0.1 mm of an end point of the rhumb
line to be on it. Previously a point only micrometers beyond an end point, as intersection computations
can return it, could be considered not on the rhumb line. The rhumb line distance of
TLcdEllipsoid and TLcdSphereRhumblineUtil now also includes the
north-south part for points whose latitudes differ by less than 1e-8 degree (about a millimeter).
Bug fixLuciadLightspeed
intersectionGeodesicRhumblineSFCT and intersectsGeodesicRhumbline in
TLcdEllipsoidRhumblineUtil and TLcdSphereRhumblineUtil now find all
intersections of a geodesic and a rhumb line. Previously they could miss intersections, in particular for long
lines, near the poles and near the date line. TLcdSphereRhumblineUtil also missed the
intersections of nearly parallel lines. This also affects topology and constructive geometry operations on shapes
that combine geodesic and rhumb line interpolation. The computation is also faster, most of all when the lines do
not intersect.
Bug fixLuciadLightspeed
TLcdEllipsoid.geodesicPointSFCT with a fraction is now accurate for a geodesic that crosses
the date line. Previously the point could be up to a meter off the geodesic for a geodesic of a kilometer, and
centimeters off for longer geodesics.
Bug fixLuciadLightspeed
LCD-14878
Bug fixLuciadLightspeed
closestPointOnShape in TLcdEllipsoidUtil,
TLcdEllipsoidRhumblineUtil, TLcdSphereUtil and
TLcdSphereRhumblineUtil now throws an IllegalArgumentException for a
linearly interpolated ILcdPolyline or ILcdPolygon, as documented.
Previously it silently returned the cartesian distance in the coordinate units of the shape (degrees), instead
of the documented geodesic or rhumb distance.
Bug fixLuciadLightspeed
LCD-14876
closestPointOnShape in TLcdEllipsoidUtil,
TLcdEllipsoidRhumblineUtil, TLcdSphereUtil,
TLcdSphereRhumblineUtil and TLcdCartesian now takes the closing
edge of an ILcdPolygon into account, from its last point back to its first point.
Previously it ignored that edge, so it could return a point and distance that were not the closest.
Bug fixLuciadLightspeed
LCD-14871
TLcdSphereUtil.closestPointOnShape now consistently returns the distance in arc
degrees for a rhumb-interpolated ILcdPolyline or ILcdPolygon.
Previously it returned meters for such shapes, while returning arc degrees for geodesic-interpolated
shapes and points, which was inconsistent with the documented unit.
Bug fixLuciadLightspeed
LCD-14680
TLcdOGC3DTilesModelDecoder will now throw a
TLcdModelDecodeException with a clear message when encountering a GLB file that it can't
handle.
Bug fixLuciadLightspeed
LCD-14927
ILcdGXYEditableLabelsLayer to its labeling algorithm, as those labels were never painted.
Previously, such labels could make the labeling algorithm fail and interrupt the label placement of the whole view.
Bug fixLuciadLightspeed
LCD-14890
Bug fixLuciadLightspeed
LCD-14889
TLcdTextIcon.Builder now copies the list passed to lines.
Previously, modifying that list afterwards could leave the icon with a stale size. As a result,
a TLcdGXYLabelPainter whose retrieveLabels returned the
same array with changed content could paint a label background that was too small for its text.
Bug fixLuciadLightspeed
LCD-14860
ThreadGroup leak in the thread pools used internally by Luciad code. Long-running
applications in which such a pool repeatedly became idle and was used again leaked one
ThreadGroup each time. The configured thread priority is now also retained in that case.
Bug fixOGC Server
LCD-14935
INTERPOLATION value is now treated case-insensitive.
Bug fixOGC Server
LCD-14927
GetMap responses showed no labels, for example those of a
TextSymbolizer in an SLD style, when lazy initialization of the WMS service was enabled.
Labels are now painted the same way with and without lazy initialization. This also prevents a
GetMap request for a layer whose SLD style combines a PointSymbolizer
and a TextSymbolizer from failing with
"Point symbolizer painter can not handle geometry of type".
Bug fixOGC Server
LCD-14914
GetMap request with a FILTER parameter
without a spatial component could omit features that should be rendered. The extent of a filtered layer was
taken from the request that first rendered it, and a later request with the same parameters but a different
BBOX reused that layer. As a result, the filtered features outside the extent of the
first request were not rendered.
Bug fixOGC Server
LCD-14785
WCSGetCoverage request bounding box
against the data extent of the coverage. For data with a geodetic reference this could result in an
incorrect rejection of the request.
Bug fixAviation Standards
LCD-14940
TLcdAIXM51ModelDecoder failed with an IOException
when decoding an empty WFS 2.0.0 feature collection, as returned by a WFS 2.0.0 service for a query without results.
Such a feature collection is now decoded into an empty model.
Bug fixAviation Standards
TLcdProcedure3DGeometryCalculator no longer lets an aircraft descend while it climbs.
When the aircraft had reached the altitude of a leg with a minimum altitude, and the next leg did not require a
higher altitude, it descended toward that minimum, and climbed back in the next leg. This affected SIDs and the
missed approach of approach procedures. In addition, a course change of exactly 4 degrees, the smallest one that
TLcdProcedureGeometryCalculator draws as a turn, is now always drawn as a turn. Before,
rounding errors decided.
Bug fixAviation Standards
LCD-14913
TLcdProcedure3DGeometryCalculator where the altitudes of the last leg and the
initial altitude of a STAR or IAP could be based on altitude constraints that do not belong to the procedure. As a
result, the last leg could for example descend instead of staying level, and the calculated altitudes could depend
on the procedures that were calculated before with the same calculator instance.
Bug fixAviation Standards
LCD-14920
TLcdAIXMProcedureHandler now decodes the fix of a procedure leg without a fly-by indicator
(codeTurnValid) as a fly-by fix. Previously, such a fix was flown over, which made the
calculated geometry overshoot the fix before turning to the next leg.
Bug fixAviation Standards
LCD-14918
TLcdAIXMProcedureHandler now converts magnetic courses of procedure legs to true courses,
as required by ILcdProcedureLeg.getCourse(). Previously, magnetic tracks, magnetic bearings,
VOR radials and headings were used as true courses, causing the calculated geometry of legs such as CF, VI or HM
to be rotated by the magnetic variation. Courses associated with a VOR or TACAN are converted using the station
declination of the navaid. Other courses are converted using the magnetic variation of the procedure's aerodrome.
The COURSE_TYPE property continues to hold the course type as published.
Bug fixDefense Standards
LCD-14928
Bug fixDefense Symbology
LCD-14886
The APP-6E Cyberspace symbols now display the headquarters staff, feint/dummy and
task force indicators when their hqTaskForceDummy modifier is set.
Previously these indicators were missing.
In addition, the hqTaskForceDummy modifier now only offers the indicators that the
APP-6E standard allows for the following symbol sets:
- Land Equipment (
15): the headquarters and task force indicators are disabled. - Land Installation (
20): the task force indicator is disabled. - Dismounted Individual (
27): the headquarters and task force indicators are disabled. - Activities (
40): the feint/dummy and task force indicators are disabled. - Cyberspace - Non Unit (
64): the feint/dummy indicator is now enabled. Previously none of the indicators were available for this symbol set.
Bug fixDefense Symbology
LCD-14828
hostile (ENY) modifier label is now shown for Axis of Advance symbols in APP-6E.
Bug fixDefense Symbology
LCD-14826
The APP-6E mined area symbols now display the feint/dummy indicator when their
hqTaskForceDummy modifier is set to one of the
Feint/Dummy values. Previously the indicator was missing, so a
decoy area was indistinguishable from a real one.
The change affects the following APP-6E symbols:
- Minefield - Dynamic Depiction
- Mined Area
- Mined Area, Fenced
Bug fixDefense Symbology
LCD-14930
Fixed incorrect rendering of a number of APP-6A and APP-6B icons.
APP-6A:
- Hostile or Insurgent Infantry (2.X.3.1.15): now uses the Infantry icon, where it used to have the Motorised Infantry icon.
APP-6A and APP-6B:
- Hail (3.X.7.3): now uses the correct icon.
- Ice Pellets (3.X.7.4): now use the correct color.
- Ice Crystals (3.X.7.5): now use the correct color.
- Freezing Fog (3.X.9.2.1): now use the correct color.
APP-6B:
- Multi-Functional Earth Mover (1.X.3.2.2.3.2.1): now has a circular frame instead of a rectangular one when in the Friendly affiliation.
Bug fixInfrastructure Standards
LCD-14742
TLcd3DTilesProcessorBuilder: Fix output texture degradation when the input mesh has
UDIM textures tiles.
Bug fixMaritime Standards
LCD-14178, LCD-14811
Bug fixMaritime Standards
LCD-14809
.001, .002, ...) no longer affects the
geometry of features the update leaves untouched. Previously, an update that only modified the attributes of a
feature discarded the geometry it had in the base cell, and an update that replaced the geometry of a feature kept
the replaced geometry as well. The affected features were either not drawn at all or drawn twice.
Bug fixMaritime Standards
LCD-14166
Bug fixMaritime Standards
LCD-14150, LCD-14167, LCD-14807
Bug fixMaritime Standards
LCD-14806
Bug fixMaritime Standards
LCD-14810
Bug fixMaritime Standards
LCD-14911
Upgrade considerationLuciadLightspeed
LCD-14892
| Group ID | Artifact ID | Old Version | New Version |
|---|---|---|---|
| com.fasterxml.jackson.core | jackson-core | 2.21.6 | 2.21.7 |
| com.fasterxml.jackson.core | jackson-databind | 2.21.6 | 2.21.7 |
| com.fasterxml.jackson.datatype | jackson-datatype-jdk8 | 2.21.6 | 2.21.7 |
| com.fasterxml.jackson.datatype | jackson-datatype-jsr310 | 2.21.6 | 2.21.7 |
Upgrade considerationLuciadLightspeed
LCD-14891
| Group ID | Artifact ID | Old Version | New Version |
|---|---|---|---|
| ch.qos.logback | logback-classic | 1.5.38 | 1.6.4 |
| ch.qos.logback | logback-core | 1.5.38 | 1.6.4 |
| org.slf4j | jcl-over-slf4j | 2.0.18 | 2.0.19 |
| org.slf4j | jul-to-slf4j | 2.0.18 | 2.0.19 |
| org.slf4j | slf4j-api | 2.0.18 | 2.0.19 |
2026.1
New featureLucy (LuciadLightspeed)
TLcyAPP6AAddOn.
The default standard for the addon is now APP-6E. The APP6 addon is now also enabled by default in Lucy MapCentric, rather
than the MS2525 addon.
Read the How to switch between military symbologies in Lucy article for more information on how to configure the standard to be used.
New featureLucy (LuciadLightspeed)
TLcyLspMBTilesFormatAddOn now supports Mapbox style files for MBTiles vector tile data sources.
Styles are resolved automatically using the following precedence:
-
For local MBTiles files, an equally named Mapbox style file (
.json) located alongside the MBTiles file is applied automatically. -
Otherwise, the MBTiles metadata is checked for a
STYLEproperty that references a Mapbox style. LuciadFusion uses this mechanism to advertise a style file associated with a published MBTiles data source. - If no style can be found, a default style is applied.
New featureLuciadLightspeed

mapboxStyle on the class TLspMBTilesVectorLayerBuilder
to configure such a style file. See Working with MBTiles data for more information.
If no style is configured explicitly, the MBTiles metadata is checked for a STYLE property
that references a Mapbox style. If such a property is present, that style is applied automatically. LuciadFusion
uses this mechanism to advertise the style file associated with a published MBTiles data source.
New featureLuciadLightspeed

Added support for the OGC Indexed 3D Scene Layers (I3S) data format. OGC I3S is an open community standard that defines a 3D content delivery format used to rapidly stream and distribute large volumes of 3D GIS data to mobile, web and desktop clients.
For more details, see the OGC I3S entry in the Data Formats documentation section.
New featureLucy (LuciadLightspeed)
.slpk files) and their visualization in Lightspeed
views. This functionality is provided through two new add-ons:
TLcyI3SFormatAddOn: provides core I3S decoding support.TLcyLspI3SFormatAddOn: adds visualization support in Lightspeed views.
New featureAviation Standards
TLcdDAFIFModelDecoder now supports decoding DAFIFT 8.1 datasets,
in addition to the existing DAFIF 7 and DAFIFT 8.0 support. To enable this, several new DAFIFT 8.1 properties
have been introduced, as listed below. Refer to the corresponding Javadoc for details on their semantics and usage.
- Aerodrome:
- ATS Route:
- Helipad:
- Heliport:
- ILS Components (GlidePath, Localizer, Marker, ILSDME):
- Navaid:
- Procedure:
- TLcdDAFIFTProcedureDataProperties#PROCEDURE_DESIGN_CRITERIA,
- TLcdDAFIFTProcedureDataProperties#PROCEDURE_AMENDMENT_DATE,
- TLcdDAFIFTProcedureDataProperties#PRIMARY_APPROACH_ROUTE_QUALIFIER,
- TLcdDAFIFTProcedureDataProperties#SECONDARY_APPROACH_ROUTE_QUALIFIER,
- TLcdDAFIFTProcedureDataProperties#PRECISION_RNAV_LEVEL_OF_SERVICE_AUTHORIZED,
- TLcdDAFIFTProcedureDataProperties#PRECISION_RNAV_LEVEL_OF_SERVICE_NAME,
- TLcdDAFIFTProcedureDataProperties#LNAV_VNAV_RNAV_LEVEL_OF_SERVICE_AUTHORIZED,
- TLcdDAFIFTProcedureDataProperties#LNAV_VNAV_RNAV_LEVEL_OF_SERVICE_NAME,
- TLcdDAFIFTProcedureDataProperties#LNAV_RNAV_LEVEL_OF_SERVICE_AUTHORIZED,
- TLcdDAFIFTProcedureDataProperties#LNAV_RNAV_LEVEL_OF_SERVICE_NAME,
- TLcdDAFIFTProcedureDataProperties#MAGNETIC_VARIATION.
- Runway:
- TLcdDAFIFTRunwayDataProperties#COORDINATE_PRECISION,
- TLcdDAFIFTRunwayDirectionDataProperties#TAKEOFF_RUN_AVAILABLE,
- TLcdDAFIFTRunwayDirectionDataProperties#TAKEOFF_RUN_AVAILABLE_UNIT,
- TLcdDAFIFTRunwayDirectionDataProperties#ACCELERATE_STOP_DISTANCE_AVAILABLE,
- TLcdDAFIFTRunwayDirectionDataProperties#ACCELERATE_STOP_DISTANCE_AVAILABLE_UNIT.
- Waypoint:
Additionally, a new runway surface type AM2 has been added to
TLcdRunwaySurfaceType, representing a surface type consisting of metal planking.
New featureDefense Symbology
We have added full support for the military standard 'APP-6 NATO Joint Military Symbology, Edition E Version 2, October 2025'.
The symbols of the Cyberspace symbol set, which we added previous minor release, LuciadLightspeed 2026.0, have been upgraded from APP-6E E Version 1 to APP-6E Version 2.
You can visualize the APP-6E symbols using the Military Symbology samples available for both GXY and Lightspeed.
In a Lightspeed view, you can create a layer for these symbols with TLspAPP6ALayerBuilder.
In a GXY view, you can paint them by setting a TLcdAPP6AGXYPainterProvider on your TLcdGXYLayer.

New featureInfrastructure Standards
TLcd3DTilesProcessorBuilder can now process GLB files that use the
EXT_texture_webp glTF extension. This increases compatibility with exporters that
optimize GLB files for file size.
New featureTiling Engine
TLfnPointCloudPreprocessor can now pre-process non-georeferenced point clouds.
It's now also possible to use LuciadFusion Studio to create an OGC 3D Tiles service from a non-georeferenced point
cloud. For more information and limitations, see the
Pre-process point cloud data article.
ImprovementLuciadLightspeed
ImprovementLuciadLightspeed
.vmoptions files which are used to configure the JVM parameters for
the LuciadLightspeed samples and Lucy now use -XX:MaxRAMPercentage to
set the Java heap size instead of -Xmx. The previously configured heap
sizes were fairly conservative, so on modern systems the applications will now typically be able
to allocate more memory and therefore run more comfortably.
ImprovementLuciadLightspeed
On NVidia GPUs, TLspViewBuilder now takes the GPU's video memory size into account
when computing the default size of the OpenGL resource cache (#glResourceCacheSize()). This
significantly improves the Lightspeed view's ability to load large datasets. In previous versions, the default
cache size was usually overly conservative for modern GPUs with 8+ GB of memory.
The change reduces the need for users to manually adjust the cache size to alleviate performance issues. It only takes effect if the application does not explicitly set the cache size itself (either via the API or via the corresponding system property). On non-NVidia GPUs, the behavior is unchanged compared to previous LuciadLightspeed versions.
ImprovementLuciadLightspeed
LCD-14120, LCD-14594, LCD-14595, LCD-14596, LCD-14738
TLcdOGCBinarySpatialOperator to support the operand flexibility introduced in OGC
Filter 2.0.3. Binary spatial operators can now use either property names or geometries for both operands, enabling
support for additional valid OGC Filter expressions.
To support this behavior, the following methods have been added to
TLcdOGCBinarySpatialOperator:
setFirstArgument(Object)/getFirstArgument()setSecondArgument(Object)/getSecondArgument()
setPropertyName(TLcdOGCPropertyName)/getPropertyName()setShape(ILcdShape)/getShape()
setFirstArgument(Object)/getFirstArgument() and
setSecondArgument(Object)/getSecondArgument() instead.
ImprovementLuciadLightspeed
ImprovementLuciadLightspeed
TLcdOGC3DTilesModelDecoder, TLsp3DTileLayerBuilder: the internals
of the OGC 3D Tiles support have been considerably revamped. Noteworthy improvements include:
- Improved concurrency: downloading and decoding of tile payloads now happen on separate threads; larger thread pool for local data.
- Throttling of GPU data transfers for freshly downloaded tiles, to reduce frame drops during navigation.
- Improved prioritization of tile downloads based on camera position, and cancellation of downloads that become obsolete due to camera movement.
- Texture compression to reduce GPU memory usage and CPU-to-GPU data transfer volumes.
- Evaluation of the geometric error property is now DPI-aware.
- LPC point cloud layers no longer ignore the quality factor configured on the layer builder.
- Authentication can now be configured by annotating an
ILcdPasswordProviderwith@LcdService. It is no longer necessary to install a customILcdInputStreamFactoryon the model decoder for this. - Support for HTTP/2 if supported by the server; automatic fallback to HTTP/1.1 otherwise.
ImprovementLucy (LuciadLightspeed)
ImprovementLuciadLightspeed
TLcdInputStreamFactory
now supports automatic discovery of
ILcdPasswordProvider
implementations via
TLcdServiceLoader. If you do not explicitly set a password provider on
the factory, the factory will look for providers annotated with
@LcdService
and try to use those.
ImprovementLucy (LuciadLightspeed)
LUCY-5100
TLcyDrawingAddOn: the text object customizer panel offers more horizontal space
for the text edit field. In addition, the field now does line wrapping.
ImprovementLuciadLightspeed
LCD-14116
TLcdSLDTextSymbolizer and a TLcdSLDPointSymbolizer
by configuring an SLD vendor option with name rotationSpace and value VIEW or WORLD.
ImprovementLuciadLightspeed
LCD-14202
ImprovementDatabase Connectors
TLcdOracleSpatialModelDecoder
and TLcdOracleSpatialModelEncoder.
ImprovementOGC Server
GetMap responses now include a Content-Disposition
header that suggests a filename for the response, for all supported map formats. Browsers use this header to pick a
sensible filename when they cannot render a format inline and instead offer it for download.
ImprovementOGC Server
LCD-14728
You can now configure the maximum expiry time for WFS-T feature locks with the
wfs.maxLockExpiry servlet configuration parameter. The value is expressed in seconds and
applies to locks created or refreshed by LockFeature and
GetFeatureWithLock requests.
If a client requests an expiry value that exceeds this limit, the request is rejected with an
InvalidParameterValue service exception report.
The configured limit is also advertised as a maxExpiry constraint on the
LockFeature and GetFeatureWithLock operations in the WFS
GetCapabilities response, so that clients can find out about it up front.
ImprovementOGC Server
LCD-14727
AutomaticDataLocking constraint in
the ows:OperationsMetadata section when the server supports locking and transactions. The
constraint is set to FALSE, informing clients that feature locking is not performed
automatically and that the LockFeature operation must be used before update or delete
transactions when locking is required.
ImprovementOGC Server
LCD-14587
GetFeatureInfo output format has been added to the WMS and WMTS servers.
This format encodes features using a GML 3.1.1‑based application schema and is identified by the MIME type
application/vnd.ogc.gml/3.1.1.
ImprovementAviation Standards
TLcdDAFIFTHelipadDecoder has been made more robust when handling helipad
records with missing low- and high-end positions. In such cases, the decoder now falls back to a single-point
position, consistent with the existing behavior for short helipads (smaller than 500 feet).
ImprovementAviation Standards
LCD-14638
TLcdDAFIFTProcedureDecoder now also decodes the following
DAFIFT 8.0 procedure properties:
- TLcdDAFIFTProcedureDataProperties#EMERGENCY_SAFE_ALTITUDE,
- TLcdDAFIFTProcedureDataProperties#LATEST_REVISION_DATE,
- TLcdDAFIFTProcedureDataProperties#AMENDMENT_NUMBER,
- TLcdDAFIFTProcedureDataProperties#OFFICE_OF_PRIMARY_RESPONSIBILITY,
- TLcdDAFIFTProcedureDataProperties#HOST_COUNTRY_AUTHORITY,
- TLcdDAFIFTProcedureDataProperties#ALTERNATE_TAKEOFF_MINIMUMS,
- TLcdDAFIFTProcedureDataProperties#TRANSITION_ALTITUDE,
- TLcdDAFIFTProcedureDataProperties#TRANSITION_LEVEL.
ImprovementInfrastructure Standards
LCD-14070
ImprovementTiling Engine
TLcdCartesianReference
for such files. This allows you to create an OGC 3D Tiles service directly from a
non-referenced LAS/LAZ file without extra steps.
Bug fixLuciadLightspeed
LCD-14527
TLcdLonLatPointFormat can now handle patterns that include a hyphen as separator character,
such as lat(dmsa)-lon(dmsa).
Bug fixLucy (LuciadLightspeed)
LUCY-5087
<relevant-format>.modelDecoder.supportGeoidDatums = true
to false in the appropriate format add-on configuration file.
For more information on vertical datum issues, refer to our article
Detecting and fixing vertical datum issues .
Bug fixLuciadLightspeed
LCD-14758
libX11.so, resulting in a JVM
crash. Both of these problems have been fixed.
Bug fixAviation Standards
LCD-14746
Bug fixInfrastructure Standards
LCD-13913
TLcd3DTilesProcessorBuilder: Improve color accuracy of a Draco-encoded tileset when
starting from input data that uses many materials.
Bug fixMaritime Standards
LCD-14805
Upgrade considerationLuciadLightspeed
LCD-14199
Within spatial condition now
follows the DE-9IM model as defined by the OGC Filter specification. In particular, a geometry
located on the boundary of another geometry is no longer considered to be within that geometry.
This may change the outcome of existing filters that rely on the previous behavior.
To restore the legacy behavior, start the Java Virtual Machine with the System property
com.luciad.ogc.filter.TLcdOGCBinarySpatialOperator.USE_LEGACY_WITHIN_SEMANTICS=true.
Upgrade considerationLuciadLightspeed
LCD-14016
sqlite3.dll, libsqlite3.so and
libsqlite3.dylib
are no longer included in the SQLiteJ native JARs that ship with LuciadLightspeed and LuciadFusion.
Upgrade considerationLuciadLightspeed
Upgrade considerationLuciadLightspeed
Upgrade considerationLuciadLightspeed
Upgrade considerationLucy (LuciadLightspeed)
TLcyOGC3DTilesAddOn
no longer installs an
ILcdInputStreamFactory
on the TLcdOGC3DTilesModelDecoder by default, because the decoder has its own internal
higher-performance HTTP client. If you need authentication for your 3D Tiles data, add an
@LcdService
annotation to your ILcdPasswordProvider and the decoder
will pick it up automatically. If you do need the decoder to use input stream factories that are registered as a
service in Lucy, set the configuration option
TLcyOGC3DTilesAddOn.useInputStreamFactory=true
in TLcyOGC3DTilesAddOn.cfg. We recommend only doing so if you need to support non-HTTP
transports such as S3.
Upgrade considerationLuciadLightspeed
LCD-14546, LCD-14547
TLspPanController
is now greedy by default, meaning it avoids user interactions other than mouse
drags while panning. If this is not desired, the old behavior can be restored by using
TLspPanController#setGreedy(false).
Upgrade considerationLuciadLightspeed
LCD-13532, LCD-14109, LCD-14112
-
The LuciadLightspeed image processing framework uses a shared cache to store input, intermediate or processed
data required by the imaging engine.
The default size of this cache has been increased from 64 MB to 128 MB.
This cache size can be configured by setting the system property
com.luciad.imaging.maxCacheSizeto a value in megabytes, e.g.-Dcom.luciad.imaging.maxCacheSize=64to limit the cache size to 64 MB. Note that the cache should be large enough to fit at least all data that is being painted. -
The OpenCL imaging engine requires memory on the OpenCL device, typically a GPU, for its operation.
It also uses a cache and its default size has been increased from 32 MB to 48 MB.
This cache size can be configured by setting the system property
com.luciad.imaging.engine.opencl.maxCLCacheSizeto a value in megabytes, e.g.-Dcom.luciad.imaging.engine.opencl.maxCLCacheSize=32to limit the cache size to 32 MB. -
The default size of the tile cache used by a height provider to read data from an image has been increased from
10 MB to 16 MB.
This cache size can be configured when creating the height provider using the new cache size property on
TLcdImageModelHeightProviderFactoryor when creating aTLcdImageHeightProviderdirectly with the new builder. The maximal number of entries that can be stored in this cache has also been increased. You can configure it similarly to the cache size.
Upgrade considerationLuciadLightspeed
LCD-14117
| Group ID | Artifact ID | Old Version | New Version |
|---|---|---|---|
| ch.qos.logback | logback-classic | 1.5.36 | 1.5.38 |
| ch.qos.logback | logback-core | 1.5.36 | 1.5.38 |
| com.fasterxml.jackson.core | jackson-core | 2.21.5 | 2.21.6 |
| com.fasterxml.jackson.core | jackson-databind | 2.21.5 | 2.21.6 |
| com.fasterxml.jackson.datatype | jackson-datatype-jdk8 | 2.21.5 | 2.21.6 |
| com.fasterxml.jackson.datatype | jackson-datatype-jsr310 | 2.21.5 | 2.21.6 |
| jakarta.servlet | jakarta.servlet-api | 6.0.0 | 6.1.0 |
| org.antlr | antlr4-runtime | 4.9.2 | 4.13.2 |
| org.apache.commons | commons-lang3 | 3.18.0 | 3.20.0 |
| org.apache.httpcomponents.client5 | httpclient5 | 5.6 | 5.6.4 |
| org.apache.httpcomponents.client5 | httpclient5-cache | 5.6 | 5.6.4 |
| software.amazon.awssdk | annotations | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | apache-client | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | arns | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | auth | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | aws-core | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | aws-query-protocol | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | aws-xml-protocol | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | checksums | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | checksums-spi | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | crt-core | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | endpoints-spi | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | http-auth | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | http-auth-aws | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | http-auth-spi | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | http-client-spi | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | identity-spi | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | json-utils | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | metrics-spi | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | profiles | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | protocol-core | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | regions | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | s3 | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | sdk-core | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | third-party-jackson-core | 2.25.57 | 2.41.16 |
| software.amazon.awssdk | utils | 2.25.57 | 2.41.16 |
The following dependencies have been removed:
| Group ID | Artifact ID | Version |
|---|---|---|
| org.apache.httpcomponents | httpclient | 4.5.13 |
| org.apache.httpcomponents | httpcore | 4.4.13 |
| org.slf4j | jcl-over-slf4j | 2.0.18 |
The following dependencies have been added:
| Group ID | Artifact ID | Version |
|---|---|---|
| software.amazon.awssdk | apache5-client | 2.41.16 |
| software.amazon.awssdk | http-auth-aws-eventstream | 2.41.16 |
| software.amazon.awssdk | retries | 2.41.16 |
| software.amazon.awssdk | retries-spi | 2.41.16 |
| software.amazon.awssdk | utils-lite | 2.41.16 |
The following sample dependencies have been updated:
| Group ID | Artifact ID | Old Version | New Version |
|---|---|---|---|
| com.zaxxer | HikariCP | 6.3.3 | 7.0.2 |
| io.micrometer | micrometer-commons | 1.15.12 | 1.17.1 |
| io.micrometer | micrometer-observation | 1.15.12 | 1.17.1 |
| jakarta.annotation | jakarta.annotation-api | 2.1.1 | 3.0.0 |
| jakarta.enterprise | jakarta.enterprise.cdi-api | 4.0.1 | 4.1.0 |
| jakarta.enterprise | jakarta.enterprise.lang-model | 4.0.1 | 4.1.0 |
| jakarta.interceptor | jakarta.interceptor-api | 2.1.0 | 2.2.0 |
| jakarta.websocket | jakarta.websocket-api | 2.1.1 | 2.2.0 |
| jakarta.websocket | jakarta.websocket-client-api | 2.1.1 | 2.2.0 |
| org.apache.logging.log4j | log4j-api | 2.24.3 | 2.25.5 |
| org.apache.logging.log4j | log4j-to-slf4j | 2.24.3 | 2.25.5 |
| org.apache.tomcat.embed | tomcat-embed-el | 10.1.55 | 11.0.24 |
| org.eclipse.jetty | jetty-alpn-client | 12.0.33 | 12.1.12 |
| org.eclipse.jetty | jetty-client | 12.0.33 | 12.1.12 |
| org.eclipse.jetty | jetty-http | 12.0.33 | 12.1.12 |
| org.eclipse.jetty | jetty-io | 12.0.33 | 12.1.12 |
| org.eclipse.jetty | jetty-plus | 12.0.33 | 12.1.12 |
| org.eclipse.jetty | jetty-security | 12.0.33 | 12.1.12 |
| org.eclipse.jetty | jetty-server | 12.0.33 | 12.1.12 |
| org.eclipse.jetty | jetty-session | 12.0.33 | 12.1.12 |
| org.eclipse.jetty | jetty-util | 12.0.33 | 12.1.12 |
| org.eclipse.jetty | jetty-xml | 12.0.33 | 12.1.12 |
| org.eclipse.jetty.websocket | jetty-websocket-core-client | 12.0.33 | 12.1.12 |
| org.eclipse.jetty.websocket | jetty-websocket-core-common | 12.0.33 | 12.1.12 |
| org.eclipse.jetty.websocket | jetty-websocket-core-server | 12.0.33 | 12.1.12 |
| org.eclipse.jetty.websocket | jetty-websocket-jetty-api | 12.0.33 | 12.1.12 |
| org.eclipse.jetty.websocket | jetty-websocket-jetty-common | 12.0.33 | 12.1.12 |
| org.ow2.asm | asm | 9.9.1 | 9.10.1 |
| org.ow2.asm | asm-commons | 9.9.1 | 9.10.1 |
| org.ow2.asm | asm-tree | 9.9.1 | 9.10.1 |
| org.springframework | spring-aop | 6.2.19 | 7.0.9 |
| org.springframework | spring-beans | 6.2.19 | 7.0.9 |
| org.springframework | spring-context | 6.2.19 | 7.0.9 |
| org.springframework | spring-core | 6.2.19 | 7.0.9 |
| org.springframework | spring-expression | 6.2.19 | 7.0.9 |
| org.springframework | spring-web | 6.2.19 | 7.0.9 |
| org.springframework | spring-webmvc | 6.2.19 | 7.0.9 |
| org.springframework.boot | spring-boot | 3.5.15 | 4.1.1 |
| org.springframework.boot | spring-boot-autoconfigure | 3.5.15 | 4.1.1 |
| org.springframework.boot | spring-boot-starter | 3.5.15 | 4.1.1 |
| org.springframework.boot | spring-boot-starter-logging | 3.5.15 | 4.1.1 |
| org.springframework.boot | spring-boot-starter-web | 3.5.15 | 4.1.1 |
| org.yaml | snakeyaml | 2.5 | 2.6 |
The following sample dependencies have been added:
| Group ID | Artifact ID | Version |
|---|---|---|
| org.apache.httpcomponents.client5 | httpclient5 | 5.6.4 |
| org.apache.httpcomponents.core5 | httpcore5 | 5.4.3 |
| org.apache.httpcomponents.core5 | httpcore5-h2 | 5.4.3 |
| org.eclipse.jetty | jetty-annotations | 12.1.12 |
| org.eclipse.jetty.compression | jetty-compression-common | 12.1.12 |
| org.eclipse.jetty.compression | jetty-compression-gzip | 12.1.12 |
| org.eclipse.jetty.compression | jetty-compression-server | 12.1.12 |
| org.eclipse.jetty.ee | jetty-ee-webapp | 12.1.12 |
| org.eclipse.jetty.ee11 | jetty-ee11-annotations | 12.1.12 |
| org.eclipse.jetty.ee11 | jetty-ee11-plus | 12.1.12 |
| org.eclipse.jetty.ee11 | jetty-ee11-servlet | 12.1.12 |
| org.eclipse.jetty.ee11 | jetty-ee11-webapp | 12.1.12 |
| org.eclipse.jetty.ee11.websocket | jetty-ee11-websocket-jakarta-client | 12.1.12 |
| org.eclipse.jetty.ee11.websocket | jetty-ee11-websocket-jakarta-common | 12.1.12 |
| org.eclipse.jetty.ee11.websocket | jetty-ee11-websocket-jakarta-server | 12.1.12 |
| org.eclipse.jetty.ee11.websocket | jetty-ee11-websocket-jetty-server | 12.1.12 |
| org.eclipse.jetty.ee11.websocket | jetty-ee11-websocket-servlet | 12.1.12 |
| org.eclipse.jetty.websocket | jetty-websocket-jetty-server | 12.1.12 |
| org.jspecify | jspecify | 1.0.1 |
| org.springframework.boot | spring-boot-http-converter | 4.1.1 |
| org.springframework.boot | spring-boot-jetty | 4.1.1 |
| org.springframework.boot | spring-boot-servlet | 4.1.1 |
| org.springframework.boot | spring-boot-starter-jetty | 4.1.1 |
| org.springframework.boot | spring-boot-starter-jetty-runtime | 4.1.1 |
| org.springframework.boot | spring-boot-web-server | 4.1.1 |
| org.springframework.boot | spring-boot-webmvc | 4.1.1 |
The following sample dependencies have been removed:
| Group ID | Artifact ID | Version |
|---|---|---|
| org.eclipse.jetty | jetty-ee | 12.0.33 |
| org.eclipse.jetty | jetty-jndi | 12.0.33 |
| org.eclipse.jetty.ee10 | jetty-ee10-annotations | 12.0.33 |
| org.eclipse.jetty.ee10 | jetty-ee10-plus | 12.0.33 |
| org.eclipse.jetty.ee10 | jetty-ee10-servlet | 12.0.33 |
| org.eclipse.jetty.ee10 | jetty-ee10-webapp | 12.0.33 |
| org.eclipse.jetty.ee10.websocket | jetty-ee10-websocket-jakarta-client | 12.0.33 |
| org.eclipse.jetty.ee10.websocket | jetty-ee10-websocket-jakarta-common | 12.0.33 |
| org.eclipse.jetty.ee10.websocket | jetty-ee10-websocket-jakarta-server | 12.0.33 |
| org.eclipse.jetty.ee10.websocket | jetty-ee10-websocket-jetty-server | 12.0.33 |
| org.eclipse.jetty.ee10.websocket | jetty-ee10-websocket-servlet | 12.0.33 |
| org.springframework.boot | spring-boot-starter-json | 3.5.15 |
Upgrade considerationLuciadLightspeed
software.amazon.awssdk:s3 dependency from version 2.25.57 to 2.41.16.
The AWS SDK now uses the ApacheHttpClient5 implementation by default, replacing the previous Apache 4–based HTTP client.
As part of this upgrade, the transitive dependencies httpclient and httpcore (Apache HTTP Client 4)
have been removed because they contained known security vulnerabilities.
Clients who still wish to use the Apache 4 HTTP client remain free to do so, but must now add the required
httpclient and
httpcore dependencies explicitly in their own project configuration.
Upgrade considerationAdvanced Raster Connectors
LCD-14577, LCD-14636
TLcdGDALModelDecoder can no longer decode Magellan BLX Topo and SGI Image Format files.
The GDAL library no longer offers supports for these formats.
On Windows, the TLcdGDALModelDecoder now verifies that the JVM is compatible with the GDAL native libraries before initializing.
The minimum supported JVM patch levels have been updated to Java 17.0.19+, Java 21.0.11+, and Java 25.0.3+. If the JVM is
not a known-supported version, a compatibility check is run.
If the check fails, the TLcdGDALModelDecoder is deactivated and will not decode any files.
This prevents EXCEPTION_ACCESS_VIOLATION crashes on incompatible JVMs.
To disable this check and force initialization regardless of JVM version, set the system property com.luciad.format.gdal.checkJVMCompatibility to false.
Note that there are no known JVM compatibility issues on Linux and macOS.
Upgrade considerationOGC Server
HTTP 500 Internal Server Error by default when
an exception occurs while painting a requested map or tile. Previously this had to be enabled explicitly, and
the services returned an image in which the affected data was missing.
Set the com.luciad.fusion.wms.server.errorResponseOnPaintException system property to
false to restore the previous behavior.
Upgrade considerationDefense Symbology
The hostile text modifier now accepts only two values:
ENY (the default) and null.
You can use the modifier to disable the ENY indicator: setting it
to null removes the annotation from both the icon label and the stroke
decoration of tactical graphics. Previously, symbols with a hostile affiliation were always
annotated with ENY, regardless of the modifier value.
The change affects all supported military symbology standards.
Upgrade considerationDefense Symbology
A number of control measure Line symbols in APP-6D and MIL-STD 2525D no longer display the generic
PL ("phase line") label. Previously these symbols were labeled twice:
once with PL followed by the first
uniqueDesignation modifier, and once with the abbreviation specific to
the symbol followed by the second uniqueDesignation modifier. They are
now labeled only with their own abbreviation, followed by the
first uniqueDesignation modifier.
The change affects the following symbols. All of them belong to symbol set
25 (Control Measure); the symbol code is given for each symbol.
- APP-6D
- Light Line:
110200 - Final Coordination Line:
140700 - Limit Of Advance:
140900 - Line Of Departure:
141100 - Line Of Contact:
140200 - Probable Line Of Deployment:
141200 - Bridgehead Line (BL):
141400 - Holding Line:
141500 - Release Line:
141600
- Light Line:
- MIL-STD-2525D
- Light Line:
110200 - Final Coordination Line:
140700 - Limit Of Advance:
140900 - Line Of Departure / Line Of Contact:
141100 - Line Of Contact:
140200 - Probable Line Of Deployment:
141200 - Bridgehead Line (BL):
141400 - Holding Line (HL):
141500 - Release Line:
141600
- Light Line:
Upgrade considerationInfrastructure Standards
LCD-14769
TLcdNWDModelDecoder.
Upgrade considerationInfrastructure Standards
TLcd3DTilesProcessorBuilder to support GLB files using webp texture compression.