{"name": "Survey Management System", "package_name": "surveymanagement", "version": "2.0.2", "experimental": false, "qgis_min": "3.0.0", "qgis_max": "3.99.0", "downloads": 119, "uploaded_by": "sochukwumaobim", "upload_datetime": "2026-08-23T19:41:37.549035", "changelog": "Version 2.0.2 (August 2026):\nFIX: DXF import in the Parcellation Module (PlotAccess) never\nactually installed ezdxf on a fresh system -- it only tried a\nbare import twice, then told the user to go use the *main*\nplugin's DXF import instead. That only \"worked\" because the\nmain plugin was the one place that actually called the\ninstaller. Parcellation's DXF import now calls the same\ninstaller directly and is fully self-contained -- no need to\nopen the main plugin first\n\nVersion 2.0.1 (August 2026):\nFIX: DXF import in PlotAccess opened files in binary mode, but\nezdxf.read() requires a text stream -- every DXF import failed\nwith \"a bytes-like object is required, not 'str'\"\nFIX: ezdxf's dependency installer used --no-deps, skipping numpy,\npyparsing, fontTools, and typing_extensions -- all four are\nrequired just to import ezdxf, regardless of which features\nare used, so any environment without them already present\n(independently of this plugin) could never complete a DXF\nimport no matter how many times ezdxf was reinstalled\nFIX: dependency availability checks only verified an \"ezdxf\" folder\nexisted on disk, never that it could actually be imported --\nso a broken install could be reported as working\nFIX: DXF-extracted coordinates could be numpy.float64 rather than\nplain float; normalized at the point of extraction\n\nVersion 2.0.0 (August 2026):\nNEW: PlotAccess \u2014 road-aware, exact-area cadastral subdivision engine\nNEW: Automatic road layout \u2014 roads are computed by the engine, no\nmanual road drawing required\nNEW: Hard road-access constraint \u2014 every plot must front a real\nroad corridor; landlocked plots resolved automatically\nNEW: Exact target area on the large majority of plots via\nBrent's-method root-finding, not approximate rounding\nNEW: Parcellation dialog \u2014 paste/import perimeter coordinates,\nconfigurable plot area, frontage, road width, cross-road spacing\nNEW: Colour-coded plan output with compliant/edge plot status\nNEW: Area schedule and setting-out coordinate tables\nNEW: Export to DXF, Excel, or a branded PDF report; direct print\nFIX: Corrected a font double-scaling bug in the PDF report generator\nFIX: Redesigned PDF report layout \u2014 branded header/footer, page\nnumbers, zebra-striped tables, colour-coded status\n\nVersion 1.2.0 (April 2026):\nNEW: AutoCAD DXF/DWG import \u2014 extract beacon coordinates, traverse\nlegs, bearings, distances and metadata from AutoCAD plan files\nNEW: AI-powered metadata extraction (plan number, owner, surveyor,\nLGA, state, date) via hosted server \u2014 no API key needed\nNEW: DXF import preview dialog \u2014 review and confirm before loading\nNEW: First-run setup wizard \u2014 installs psycopg2 and creates database\nautomatically, no command line required\nNEW: User login with username and password (default: admin / admin123)\nNEW: Three-tier access control \u2014 superuser, surveyor, viewer roles\nNEW: Full audit trail in audit_log table\nNEW: User Administration panel for superusers\nNEW: Traverse precision ratio (1:5000 Nigerian Survey Regulations)\nNEW: Adjoining survey boundary detection via PostGIS ST_DWithin\nNEW: Custom CRS input with live EPSG validation\nFIX: Traverse delete button index bug corrected\nFIX: Documents tab index resolved using indexOf()\n\nVersion 1.0.0 (March 2026):\nInitial release \u2014 survey metadata, coordinates, traverses,\ndocuments, PostgreSQL/PostGIS integration, global search.", "external_deps": null, "download_url": "https://plugins.qgis.org/plugins/surveymanagement/version/2.0.2/download/"}