{"name": "ParcelFlux", "package_name": "parcelflux", "version": "0.3.7", "experimental": false, "qgis_min": "3.28.0", "qgis_max": "4.99.0", "downloads": 191, "uploaded_by": null, "upload_datetime": "2026-10-27T16:36:00.228929", "changelog": "0.3.7 - Help opens the online guide on geophilo.com instead of a copy bundled in the plugin package; the plugin no longer ships documentation HTML.\n0.3.6 - Hub listing text rewritten; author Geophilo; university affiliation removed; documentation links use the standard geophilo.com pages (manual.html, guide/); manual HTML no longer ships in the plugin package.\n0.3.5 - Upgraded official plugin icon to high-end tactile 3D brand identity with circular teal pedestal; synchronized documentation, repository and issue tracker endpoints to GeoPhilo and GitLab.\n0.3.1 - Palette-aware adaptive theme.\nChanged: replace every hardcoded colour in the dock, seed gallery, guide and about HTML with palette-derived tokens so the entire UI stays readable under QGIS light, dark and high-contrast themes while keeping the ParcelFlux green accent identity.\nAdded: theme.py module with WCAG contrast-ratio checks, palette-aware colour tokens, and a single apply_adaptive_theme() entry point; the dock now listens for PaletteChange and re-applies the theme automatically when the user switches themes.\n0.3.0 - Complete, verifiable subdivision.\nFix: oversized parcels are no longer deleted from the output. max_area used to filter them out, punching holes into the block; with the default 2000 m2 limit a whole block could produce zero parcels and vanish without a message. Oversized parcels are now bisected across their long axis until they fit, and anything that still cannot fit is kept and flagged. Output area now equals input area.\nFix: slivers are merged into a neighbour instead of being discarded at write time.\nFix: plugin unload no longer leaves an orphan toolbar behind on reload.\nAdded: minimum street frontage, explicit front-row parcel depth, and corner-plot widening constraints.\nAdded: pf_flag output column marking oversize, undersize and narrow parcels, so a plan is never quietly incomplete.\nAdded: quality report after every run - parcel and block counts, coverage percentage, area min/mean/median/max, mean frontage, merge and re-split counts.\nAdded: preview before adding, with Apply and Discard.\nAdded: seed comparison - run four seeds and pick a layout from rendered thumbnails.\nQuality: first automated test suite (17 engine checks, 16 dock and lifecycle checks), passing on QGIS 3.44 LTR and QGIS 4.2.\n0.2.13 - Fix: splitwithlines hang on irregular blocks. The v0.2.10 change (split real geometry instead of OBB) caused native:splitwithlines to freeze on complex concave blocks when division lines didn't align with high-vertex-count boundaries. Now splits the OBB (fast 4-vertex rectangle) and clips parcels back to the real block footprint \u2014 same accurate output, no hang.\n0.2.12 - Add wd_ratio facade column; replace random.Random with self-contained LCG (bandit B311).\n0.2.11 - CITATION.cff Zenodo DOI integration.\n0.2.10 - Fix: irregular and repaired blocks are now subdivided inside their real block geometry; OBB is used only as a layout guide, preventing parcels from expanding to the block bounding box.\n0.2.9 - Fix: core now rejects missing or invalid CRS inputs and preserves the source CRS on all temporary and output memory layers, including custom CRS definitions.\n0.2.8 - Fix: core now rejects invalid layers and unsafe parameter ranges up front, returns clear validation errors, and passes cancellation-aware feedback into native QGIS Processing steps.\n0.2.7 - Fix: core processing now honors cooperative cancellation checkpoints between processing stages and large geometry loops, returning Cancelled before adding output.\n0.2.6 - Fix: cancel and plugin unload no longer use unsafe QThread.terminate(); running jobs now request cancellation, discard late results, and detach safely during plugin shutdown.\n0.2.5 - Added: facade columns now contain computed exterior frontage length, side frontage, rear-edge proxy, exterior facade count, corner flag, and cardinal front direction instead of empty placeholders.\n0.2.4 - Fix: plugin unload now removes toolbar/menu/actions cleanly, the first panel toggle reliably shows the dock, and the worker completion signal no longer shadows QThread.finished.\n0.2.3 - Fix: single-row blocks no longer receive an unwanted centerline split. Irregular/invalid polygons are now split on their repaired OBB geometry, residual merge counting is accurate, max_area=0 disables the upper area filter, generated output field names avoid collisions, and a Hub-safe PNG icon is bundled.\n0.2.1 - Fix: invalid-geometry crash. OBB step no longer aborts when the user's global Processing \"Invalid features filtering\" is set to Stop. All processing.run() calls now use a private context with SkipInvalid; irregular blocks are pre-fixed via native:fixgeometries before OBB; self-intersecting \"regular-looking\" blocks are routed through the repair path too.\n0.2.0 - Fix: polygon layer selection (layer combo now correctly lists polygon layers; previous filter blocked them). UI: full tabbed redesign (Run / Guide / About), in-panel rich guide, slider+spinbox controls, configurable random seed with re-roll, selected-features-only mode, projected-CRS guard with explicit error, status banner, reset-to-defaults.\n0.1.1 - English-only UI, optional id/facade columns, QGIS 3/4 compatibility, HTML guide.\n0.1.0 - Initial dock-based release.", "external_deps": null, "download_url": "https://plugins.qgis.org/plugins/parcelflux/version/0.3.7/download/"}