Skip to content

Releases: bcgov/groundwater-drawdown-tool

v0.5.4

Choose a tag to compare

@MoezLabiadh MoezLabiadh released this 12 Aug 17:19

Working through the feedback from the end-user testing round. These notes
move under a version heading when the release is actually cut.

Added

  • Licensed and unlicensed wells are now shown. Every well carries its
    GWELLS licence status — Licensed, Unlicensed, Historical, or Unknown
    where GWELLS does not say — in the details table, the map pop-up, the
    CSV, the PDF, the KML, and the standalone map. On the map, a dark
    ring
    around a marker means the well is currently licensed. Licence
    status is shown for information only; it does not change any well's
    status or at-risk result.
  • An "Other" option in the aquifer picker. If the well is completed
    in an aquifer that has not been delineated, you can now say so — even
    when the point sits on or near mapped aquifers. Pick "Other", choose
    the material, and enter T and S. The results page and the PDF record
    the choice, and name the nearest mapped aquifer so a reviewer can see
    what was set aside.
  • A "Method, assumptions and limitations" panel on the results page,
    collapsed until you open it. It explains what the tool does and does
    not tell you, and what the 30% at-risk threshold means. Guidance on
    aquifer defaults now sits with the T and S fields on the setup page,
    and guidance on checking driller's logs sits with the details table.
    The PDF export carries all of it in one section.
  • A 0 m reference line on the distance-drawdown chart, marking the
    water level before pumping starts, so the drawdown and SAD bars have
    a datum to be read against.
  • Plain-language definitions of s and r under the
    distance-drawdown chart, and of NPL above the details table.
  • The map pop-up now shows the well's aquifer number.
  • Aquifer numbers that are not formally delineated are now marked.
    GWELLS assigns some wells to an aquifer number the provincial aquifer
    layer has no mapped polygon for — Aquifer 1143 is one. Those now read
    "1143 (not delineated)" in the details table, the map pop-up, the CSV,
    the PDF, and the KML, so it is clear the number is not a mapped
    aquifer. The wells are still included and still analysed; a blank
    Aquifer ID still means GWELLS assigns the well to no aquifer at all.
    The check is made against the aquifer layer on every run rather than
    against a fixed list, so it keeps up as more aquifers are delineated.

Changed

  • Aquifers are now identified by number first, with the material in
    brackets — "Aquifer 199 (Sand and Gravel)" — in the aquifer picker,
    the results summary, and the PDF, since that is how aquifers are
    usually referred to.
  • Up to five nearby aquifers are suggested instead of three, for
    areas where several small aquifers sit close together.
  • SAD bars on the distance-drawdown chart are now colour-coded.
    Orange means the well has headroom left; red means predicted
    drawdown has passed that well's Safe Available Drawdown
    . A red bar
    points upward from the well — that is not a fault, it is the tool
    showing an over-impacted well. A caption under the chart explains it.
  • The manual-entry material option is now just "Unconsolidated"
    rather than "Unconsolidated (sand and gravel)", which wrongly implied
    every unconsolidated aquifer is sand and gravel.
  • The impact chart caption now reads "sorted by magnitude of impact"
    and no longer describes the threshold line as red — the line is drawn
    dark on purpose, so it stays distinct from the red at-risk bars.
  • Well tag numbers no longer get clipped at the top-right of the
    distance-drawdown chart.
  • Well tag numbers on the distance-drawdown chart now alternate
    above and below their point,
    so wells at similar distances from
    the pumping well stop printing on top of each other. When even that
    isn't enough, a new "Show well tag numbers on the chart" tickbox
    turns them off — hovering a point still names the well, and the PDF
    captures the chart as you left it.
  • The Impact % chart now keeps a WTN on every bar. It grows taller
    as the buffer gets busier instead of squeezing the bars until labels
    silently dropped out. Past roughly 85 wells there is genuinely no
    room left, and the caption now says so rather than leaving you to
    spot the gaps.

Removed

  • The "Max drawdown" summary tile, from both the results page and
    the PDF. It was easily misread as the drawdown at the pumping well
    when it was actually the largest drawdown at any nearby well.
    Per-well drawdown is unchanged in the table, charts, and exports.

v0.5.3

Choose a tag to compare

@MoezLabiadh MoezLabiadh released this 22 Jun 15:27

Added

  • An "internal use only" notice now appears in the footer of every
    page: the tool is for internal use and must not be shared outside the
    organization. This notice shows in the tool only — it is deliberately
    left off exported reports, maps, and KML files, which may form part of
    a licence file.

Changed

  • The results-interpretation disclaimer now names a Qualified
    Professional
    alongside the regional hydrogeologist: results must be
    interpreted by, or in consultation with, a regional hydrogeologist or
    a Qualified Professional with expertise in hydrogeology. The updated
    wording appears in the tool and on every export (PDF, interactive map,
    KML).

  • The hints under the pumping-parameter fields were tidied up —
    clearer, shorter wording under the pumping-rate, duration, and
    buffer-radius fields.

Fixed

  • In Lat / Lon input mode, clicking Place without entering both
    values now shows a red "Enter both longitude and latitude." message
    right next to the button, instead of appearing to do nothing. (The
    message was previously shown below the map, where it was easy to
    miss.)

v0.5.2

Choose a tag to compare

@MoezLabiadh MoezLabiadh released this 16 Jun 20:15

Added

  • The "Well tag number" input mode now links to the BC Groundwater
    Wells and Aquifers map
    (apps.nrs.gov.bc.ca/gwells). If you don't
    have a well tag number handy, you can find one by location on that
    map; the link opens in a new tab.

  • A Clear button on the setup page resets all inputs for a fresh
    analysis without refreshing the page.

Changed

  • The maps are larger on bigger monitors — both the setup and
    results maps now grow with the window while still fitting smaller
    laptop screens.

  • A short note under the pumping-duration field explains that the
    90-day default applies to all of BC.

  • The page header now uses the official BC Government wordmark,
    which sits flush in the dark-blue band instead of appearing as a
    white panel.

  • Storativity (S) now reads as a plain decimal (e.g. 0.00003)
    in the results-page input parameters and the PDF export, instead of
    scientific notation (3e-05). Transmissivity displays the same way.

  • When a results table is empty, the message is now a clearly
    highlighted notice instead of a faint line of text
    — and the
    table's Export CSV button is hidden when there's nothing to
    export
    . This covers both "no wells were flagged at risk" and "no
    wells were found in the buffer". The buffer-empty message also
    suggests increasing the buffer radius and re-running.

Fixed

  • The distance-drawdown chart no longer flips upside down when you
    press Autoscale after zooming in. The inverted axis (drawdown growing
    downward) now stays put, and "Reset axes" returns to it reliably.

  • Refreshing the Results page no longer re-runs the analysis or
    discards your edits.
    Previously, pressing F5 (or restoring the tab)
    silently re-queried the BC Geographic Warehouse, wiped any per-well
    values you had overridden in the details table, and recorded the run
    a second time in the usage statistics. The page now reuses the cached
    result when the inputs haven't changed, so your overrides survive a
    refresh.

  • The Run Analysis button is now greyed out until you place a pumping
    point
    , instead of letting you click it and then showing a "Place a
    pumping point first" message. Once a point is set (by map click,
    lat/lon, or well tag number), the button enables and any earlier
    message clears — so there's no need to scroll back up to check whether
    a point was placed.

v0.5.1

Choose a tag to compare

@MoezLabiadh MoezLabiadh released this 01 Jun 21:45

Changed

  • The documentation site now opens in light mode by default.
    The light/dark toggle in the sidebar still works and still remembers your choice per browser.

Fixed

  • The footer's "What's new" panel no longer shows an empty
    "Unreleased" heading above the current release notes.
  • First launch on a fresh install no longer shows a
    connection-refused page.
    run.bat now waits for the local server
    to be ready before opening your browser, instead of opening it
    after a fixed 4-second delay. On a cold first launch the server
    can take 10–15 seconds to start (Python and Dash have to load); the
    browser now opens at the moment the page is actually available, so
    there is no error page to refresh past. Subsequent launches are
    unchanged — the wait is essentially zero once everything is warm.

v0.5.0

Choose a tag to compare

@MoezLabiadh MoezLabiadh released this 25 May 21:27

First broadly-installable release. Phase 5 (visual identity, map
overlays, KML/PDF/HTML exports, logging and disclaimers) and Phase 6
(documentation site, auto-update on launch, version footer with
changelog modal) shipped. Distributed through GitHub Releases — end
users download setup.bat from the latest-release URL and the
installer pulls the matching tool zip. A pre-release security audit
closed out the open Dependabot advisories.

Pre-release for internal testing by the GIS team; a non-pre-release
follows for end users once internal sign-off is in.

Security

  • A pre-release dependency-and-code audit was completed; nine
    advisories were either resolved or formally reviewed. Five were
    fixed by refreshing transitive dependencies (idna, urllib3)
    and the development-only test runner (pytest). Four affect
    components that the tool depends on indirectly (Flask, Werkzeug)
    and are not exploitable on a localhost-only single-user tool; they
    will clear automatically when the tool migrates to the next major
    Dash release.
  • The signed-in BCGW username is no longer written to the general
    application log file when a session starts. It remains in the
    structured usage log used for monitoring and troubleshooting, so
    traceability is unchanged.

Phase 6 — Online documentation

Added

  • An online documentation site is now available, with a
    step-by-step User Guide covering installation, BCGW account
    help, running an analysis, reading the results, exporting
    them, troubleshooting, and the methods and assumptions behind
    the calculations:
    https://bcgov.github.io/groundwater-drawdown-tool/
  • A "Documentation" link in the footer of every page opens
    that site.
  • The documentation site supports a light/dark theme toggle
    (defaults to dark; your choice is remembered per browser).
  • When the tool starts, it now checks for a new release on GitHub
    and updates itself in place
    if one is available. The check is
    silent when nothing has changed; if an update is applied you see a
    short "An update is available…" line and the dependency refresh.
    Pass --no-update to run.bat to skip the check on a slow
    network. Update failures are logged to logs\auto-update.log and
    never block the app from starting.
  • The footer on every page now shows the running version and the
    date it was installed
    — for example, "Version 0.5.0 — last
    updated 2026-05-25"
    . Clicking the version opens a "What's new"
    panel
    with the most recent release notes, so you can see at a
    glance what changed (and whether a colleague with a different
    install is on the same version as you).

Phase 5d — Logging, sign-in messaging, and UI polish

Added

  • The tool now keeps a daily log file in the logs\ folder
    next to the tool (gwdrawdown.log). A new file starts each day
    and the last 30 days are kept, so if something goes wrong there
    is a record to look back on.
  • Usage logging. Each time an analysis is run, a small summary
    record (run parameters and headline results — no passwords) is
    written to a central GeoBC log location, along with sign-in and
    error events. This helps the team monitor the tool's health,
    understand how it is used, and troubleshoot issues. If the
    central location can't be reached (for example, off the
    government network), logging quietly switches off — it never
    blocks or slows the tool.
  • The sign-in screen now shows a "BCGW account help guide" link
    when sign-in fails, pointing at the documentation page that
    covers the common causes (locked or expired account, expired
    password, network or VPN) and the right next step for each.
  • A short note on the sign-in screen confirming that your
    password is never stored
    — it is held only in memory for the
    session and discarded when you sign out.
  • A second "â†� Back to Setup" button at the foot of the results
    page, so you don't have to scroll back to the top to start a new
    analysis.

Changed

  • The page header now shows the official British Columbia logo
    in place of the typographic "British Columbia / Government of
    B.C." text.
  • Friendlier sign-in error messages. A failed sign-in now
    explains the problem in plain language — wrong username or
    password, locked account, expired password, or a network /
    connection problem — instead of showing the raw database error.
    The technical error code is still shown, in small print, in
    case you need to quote it to support.
  • Reworded the sign-in screen subtitle to "Connect to your BC
    Geographic Warehouse (BCGW) account to use the tool."
  • Minor visual polish: the footer no longer repeats the signed-in
    user name (it is already shown in the header) and its
    disclaimer is centred; the "Impact % per well" chart caption is
    smaller so it sits below the section heading rather than
    competing with it.

Phase 5b — Map layers and overlays

Added

  • Basemap switcher on both the setup and results maps. A
    layers control in the top-right corner switches between
    OpenStreetMap (the default), a topographic basemap, and
    satellite imagery.
  • Context overlays you can toggle on either map:
    • Aquifers — BC's mapped aquifer polygons, shown by default
      on the setup map. Appears once you are zoomed in to roughly
      regional scale.
    • All BC Wells — every registered well in the province, on
      the setup map. Appears only when zoomed in close, so it
      doesn't swamp the view.
    • Water Management Districts and Water Management
      Precincts
      — the administrative boundaries, each with a name
      label that tracks the part of the boundary you're looking at
      and follows you as you pan and zoom.
  • A small legend in the bottom-right corner of the map
    explains the aquifer and well symbology. It appears only while
    those layers are switched on.
  • The setup map shows a crosshair cursor while you are in
    "Map click" mode — a clearer cue that the map is waiting for a
    click to place the pumping point.

Changed

  • Entering a latitude / longitude or looking up a well tag number
    now recentres and zooms the map to that point automatically,
    so you see it in context without panning there yourself.

Phase 5c — Exports

Added

  • Download KML button on the results page. Exports the
    pumping well and every nearby well as a KML file you can open
    directly in Google Earth. Each well is colour-coded by its
    status (at-risk, OK, and so on) and sized by its predicted
    impact — the same scheme as the results-page map — and carries
    its full result row (distance, drawdown, SAD, impact, and the
    rest), so you can inspect any well by clicking it in Google
    Earth.
  • Download PDF report button on the results page. Produces a
    print-ready summary of the whole analysis, one section per
    page: page 1 — input parameters, a row of summary cards, and a
    method-and-assumptions note; the two result charts, one per
    page; then the at-risk wells table; then the full per-well
    details table. Every page carries a screening-tool disclaimer
    banner
    and a footer with the run timestamp, a unique run ID, the tool
    version, and your username — suitable for attaching to a
    licence assessment file. Wells outside the Cooper-Jacob
    validity range are tinted light purple in the per-well table,
    matching the on-screen view.
  • Download interactive map (HTML) button on the results
    page. Produces a self-contained HTML file that opens in any
    browser as an interactive Leaflet map — the pumping well, its
    buffer, and every well with a click-through popup. A handy way
    to share the result without the full tool.
  • All three exports reflect any per-well overrides you have
    applied, and the PDF charts are captured from exactly what you
    see on screen.

Changed

  • The per-well CSV export gains an "Outside Validity" Yes/No
    column, so the Cooper-Jacob validity advisory (shown as a
    purple row tint on screen) survives the export to a format
    that can't carry cell colour.

Phase 4d — Aquifer selection fallback + manual entry

Added

  • Nearby aquifers are now offered on the setup page alongside
    the aquifer the well directly overlaps. The tool searches a
    1000 m radius and lists the three closest aquifers, each
    labelled with its distance (e.g. "Aquifer 123 — 47 m away") and
    tagged "(nearby — not directly overlapping)". The aquifer the
    well sits inside is tagged "directly overlapping" and
    pre-selected, but you can pick a nearby one instead — useful
    when a well sits inside one aquifer (e.g. bedrock) but just
    outside the boundary of the aquifer it should really be
    associated with (e.g. an unconsolidated aquifer 50 m away).
  • Manual-entry mode for remote areas the Province hasn't
    mapped. A "No mapped aquifer at this location — enter materials
    manually" option appears at the bottom of the picker in the same
    fallback list. Choosing it reveals an aquifer-material dropdown
    (Unconsolidated or Bedrock) and requires you to enter T and S
    values directly. The same-aquifer filter is disabled in this
    mode (there's no polygon to filter against), and the results
    page shows an orange banner above the run summary so reviewers
    can see at a glance the run was based on user-supplied
    materials and T/S rather than mapped data.
  • If no aquifers are found within 1000 m and none contain the
    point, the picker shows just the manual-entry option with a
    note explaining nothing nearby was found, so the workflow is
    never blocked by missing aquifer coverage.

Phase 5a.3 — Distribution via GitHub Releases

Changed

  • The tool now ships through GitHub Releases instea...
Read more