Skip to content

Replace timml and ttim with timflow#187

Closed
deltamarnix wants to merge 28 commits into
masterfrom
timflow
Closed

Replace timml and ttim with timflow#187
deltamarnix wants to merge 28 commits into
masterfrom
timflow

Conversation

@deltamarnix

Copy link
Copy Markdown
Contributor

timflow works with from timflow import steady as timml

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR replaces direct TimML/TTim backend references with the new timflow package, while updating user-facing documentation and plugin UI text to reflect the new backend name.

Changes:

  • Replaces timml/ttim dependencies and imports with timflow steady/transient imports.
  • Updates backend version reporting and install dialog/version display for timflow.
  • Refreshes README/docs/plugin text and lockfile entries for the backend rename.

Reviewed changes

Copilot reviewed 17 out of 18 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
scripts/write_backend_versions.py Writes timflow and gistim versions.
README.md Updates backend description and install instructions.
pyproject.toml Replaces TimML/TTim dependencies with timflow.
plugin/qgistim/widgets/tim_widget.py Renames install button text.
plugin/qgistim/widgets/install_dialog.py Updates install dialog labels and version rows.
plugin/qgistim/README.txt Updates plugin readme backend description.
plugin/qgistim/core/server_handler.py Updates backend module docstring.
plugin/qgistim/core/formatting.py Generates scripts using timflow steady/transient imports.
plugin/qgistim/core/elements/aquifer.py Replaces no-op return with pass.
pixi.toml Replaces TimML/TTim pixi dependencies with timflow.
pixi.lock Updates resolved dependencies for timflow.
gistim/compute.py Uses timflow steady/transient modules for computation.
gistim/__main__.py Removes old TimML PyInstaller import workaround.
docs/tutorial_Rijsenhout.qmd Updates tutorial wording for timflow.
docs/install.qmd Updates install instructions for timflow server.
docs/index.qmd Updates documentation landing page backend description.
docs/developer.qmd Updates developer PyInstaller/backend install notes.
.vscode/launch.json Adds a VS Code debug launch configuration.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .vscode/launch.json Outdated
Comment thread plugin/qgistim/widgets/install_dialog.py Outdated
Comment thread docs/developer.qmd Outdated
deltamarnix and others added 3 commits May 28, 2026 16:09
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Path in %APPDATA% was spelled wrongly

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 17 out of 18 changed files in this pull request and generated 4 comments.

Comment thread pyproject.toml
maintainers = [{ name = "Huite Bootsma", email = "huite.bootsma@deltares.nl" }]
requires-python = ">=3.11"
dependencies = ['pandas', 'timml>=6.3.0', 'ttim>=0.8.0', 'xarray', 'numpy']
dependencies = ['pandas', 'timflow>=0.2.0', 'xarray', 'numpy']

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not entirely right: timflow only import and uses lmfit for curve fitting. We don't do any curve fitting in the qgis plugin, so we can ignore lmfit. We might want to consider including the timflow[parallel] dependencies (currenlty only tqdm), to allow multi-threaded computation of the output grid, for quicker plotting of results.

Comment thread pixi.toml
pandas = "*"
timml = ">=6.3.0"
ttim = ">=0.8.0"
timflow = ">=0.2.0"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here, this is not entirely right: timflow only import and uses lmfit for curve fitting. We don't do any curve fitting in the qgis plugin, so we can ignore lmfit. We might want to consider including the timflow[parallel] dependencies (currenlty only tqdm), to allow multi-threaded computation of the output grid, for quicker plotting of results.

Comment thread plugin/qgistim/widgets/install_dialog.py Outdated
Comment on lines +150 to 151
for package in ["timflow", "gistim"]:
self.version_widgets[package][1].setText(versions.get(package))
@JoerivanEngelen JoerivanEngelen mentioned this pull request Jun 11, 2026
5 tasks

@JoerivanEngelen JoerivanEngelen left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I adapted this into a state where I think we are completely migrated now. Changes from my side:

  • merge master into branch
  • Do not call deprecated timflow elements anymore, but use the new ones with clearer names
  • Rename objects in the plugin to these names as well
  • Renamed buttons in the widget to the new names as well.
  • Update metadata (incl version number)
  • Rename every mention of timml and ttim in the code base to steady and transient
  • Rename every mention of "timml" and "ttim" in strings in the code base to "steady-state" and "transient". These strings will also show in the geopackage names created by the plugin.
  • Update documentation

Because I've updated the names of elements and temporal regimes (timml -> steady), this means geopackages created by the previous version of QGIS-Tim do not work anymore. I don't think that is a major issue, as models are quite quick to set up. However, we could consider creating an update script or something.

Update: I see I can't ask you for a review. I'll close this PR and open a separate one then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants