Version: [5157] RasterViz 1.4.5

Version 1.4.5 (2026): Fixed the 10 "Try, Except, Pass"/"Try, Except,
Continue" findings (Bandit B110/B112) that were blocking the QGIS
Plugin Repository's automated security scan. Every bare `except
Exception: pass`/`continue` across basemap_io.py, dialog.py,
raster_io.py, and vector_io.py — all guarding genuinely
optional/non-fatal fallback paths (older PyQGIS API without a given
setter, a rendering-speed optimisation that can't be applied, a single
feature that fails to reproject, etc.) — now logs the caught exception
via QgsMessageLog instead of silently discarding it, so failures are
visible in the QGIS log panel without changing any runtime behaviour.
Version 1.4.4 (2026): Fixed a basemap/overlay misalignment (basemap
looked "shifted" a little compared to the raster/vector layers on top
of it, or compared to the same layer in QGIS's own canvas).
basemap_io.py's render told matplotlib the basemap image covered the
raw requested extent, but QgsMapSettings actually renders a slightly
different, aspect-corrected extent (QgsMapSettings.visibleExtent())
whenever the output pixel size's aspect ratio doesn't exactly match
the requested extent's aspect ratio — which is almost always the case.
The basemap now uses that actually-rendered extent for imshow(), so it
lines up exactly with the raster/vector data drawn on top, matching
QGIS's own canvas.
Version 1.4.3 (2026): The right-hand panel
(Data/Layers/Display/Basemap/Title & Font/Geometry/Colorbar tabs) had
a hard `setMaximumWidth(300)` that stopped the splitter handle from
being dragged wider — removed that cap, so the panel can now be
resized to whatever width the user wants. Note: individual fields
inside the panel (combo boxes, line edits, spin boxes) are still
capped at 185px wide by design so they don't stretch oddly; dragging
the panel wider just gives them more breathing room, it doesn't
stretch the fields themselves.
Version 1.4.2 (2026): Performance — the per-pixel no-data mask loop in
raster_io.py's block decoder now checks the block's own `hasNoData()`
flag first and skips the O(width x height) Python loop entirely when
the block has no no-data pixels at all (the common case for most
rendered previews), instead of always looping over every pixel. This
is a CPU-side fix, not GPU/OpenCL: RasterViz's pixel reading,
stretching, and rendering are plain NumPy/QGIS-native/Matplotlib and
were never on a code path QGIS's own OpenCL acceleration setting (used
only by a handful of Processing algorithms like
Hillshade/Slope/Viewshed) would touch.
Version 1.4.1 (2026): UI overhaul — every control panel (Data Source,
Vector Symbology, Display, Title & Font, Geometry, Colorbar) is now
organised into clearly labelled group boxes by function (e.g. "North
Arrow", "Scale Bar", "Map Frame", "Legend — Position & Size") instead
of one long mixed list per tab. Removed every in-app UI icon
(toolbar/tab/list-item icons and the icons.py glyph module); buttons,
tabs, and the layers list now use plain text/labels only, with a
"[Raster]"/"[Vector]" text tag replacing the old layer-type icon.
Standardised control heights/padding across combo boxes, spin boxes,
line edits, and buttons for a more comfortable, consistent click/tap
target size.
Version 1.4.0 (2026): Replaced the contextily-based web basemap engine
with a 100% QGIS-native one — basemaps are now fetched, stitched, and
reprojected by QGIS itself via a native QgsRasterLayer XYZ connection
(the same URI scheme QuickMapServices uses) rendered through
QgsMapRendererCustomPainterJob, instead of the contextily pip package.
RasterViz now has ZERO third-party Python dependencies; the "Install
Dependencies" button/dialog and one-time first-run notice have been
removed since there is nothing left to install. All basemaps from
1.3.1 are still available with the same names, and the per-(provider,
CRS, view) basemap cache still works the same way.
Version 1.3.1 (2026): Fixed a layout bug that left a large empty gap
above "Legend Layout Settings" in the Colorbar tab (Qt was sizing that
area to its tallest sub-tab even while the shorter one was showing);
narrowed the right-hand settings panel further. The "Install
Dependencies" dialog now falls back automatically to installing into
the plugin's own folder when a Python build has user site-packages
disabled (previously failed outright with "User site-packages are
disabled for this Python"). Basemap tiles are now cached per
(provider, CRS, view) so re-rendering after an unrelated control
change (title, font, decimals, ...) reuses the
already-fetched/stitched/warped basemap image instead of re-fetching
it from the network every time.
Version 1.3.0 (2026): Raster and vector engines are now 100%
QGIS-native — rasterio, geopandas, and fiona are no longer needed at
all (raster via QgsRasterLayer/dataProvider().block(), vector via
QgsVectorLayer/OGR). Vector rendering now goes through QGIS's own
QgsFeatureRequest pipeline (destination-CRS reprojection, view-extent
spatial filtering, and on-the-fly simplification), fixing slow/heavy
redraws with large nationwide vector files. Added a working in-app
"Install Dependencies" dialog (Plugins > RasterViz > Install
Dependencies, plus a header button and a one-time first-run notice)
that installs contextily directly into QGIS's own Python with a
background worker thread, progress bar, and clear error messages — no
terminal/OSGeo4W Shell needed. Removed the qtawesome dependency
entirely, replaced by a small built-in SVG icon set. Removed the
custom dark-mode toggle and forced font/stylesheet; the UI now follows
QGIS's own active theme and font. Narrowed the right-hand vertical tab
strip (Display / Title & Font / Geometry / Colorbar) to fit its
icon+label instead of the style's default wide padding.
Version 1.2.0 (2026): Rebuilt on the multi-layer engine from the
standalone RasterViz edition. Adds a unified raster+vector layer
panel, vector overlay support (Shapefile, GeoPackage, GeoJSON,
KML/KMZ) with single/categorized symbology, web basemap layer (Esri,
OSM, CartoDB, OpenTopoMap, NASA GIBS, and more) via contextily, an
expanded colormap library, north arrow and scale bar, and a raster
backend switched to rasterio for consistent multi-format reading
(GeoTIFF, IMG, VRT, NetCDF, HDF). Optional dependencies (rasterio,
geopandas, fiona, contextily, qtawesome) degrade gracefully with an
in-app notice if missing.
Version 1.1.0 (2026): Initial public release. Includes single-band
continuous rendering, discrete/classified rendering, RGB composite,
customizable pointed colorbar, coordinate tick formatting (DMS, DM,
DD, UTM), and live preview via cached NumPy array. Export to PNG, SVG,
TIFF, PDF supported.

yes

defani.arman

2026-08-16T08:34:12.252969+00:00

3.0.0

3.99.0

None

no

Version management

Plugin details