Skip to content

feat: SSH tunnel URL import, connection groups, and environment color indicator#138

Merged
datlechin merged 2 commits intomainfrom
feat/ssh-tunnel-url-import
Mar 2, 2026
Merged

feat: SSH tunnel URL import, connection groups, and environment color indicator#138
datlechin merged 2 commits intomainfrom
feat/ssh-tunnel-url-import

Conversation

@datlechin
Copy link
Owner

Summary

  • SSH tunnel URL import: Support importing database connections from SSH tunnel URLs (mysql+ssh://, postgresql+ssh://, mariadb+ssh://) in the connection form's "Import from URL" dialog
  • Connection groups: Organize connections into collapsible folders with colored headers on the Welcome screen. Groups can be created, renamed, recolored, and deleted via right-click context menu or the folder icon button
  • Environment color toolbar tint: When a connection has a color assigned, the window toolbar subtly tints with that color for at-a-glance environment identification (e.g., red tint for production)
  • Telegram release notifications: CI/CD pipeline sends release notifications to Telegram on successful builds

Test plan

  • Import a mysql+ssh://user@host:22/dbuser:pass@dbhost/dbname URL and verify all fields populate correctly
  • Import a postgresql+ssh:// URL and verify SSH tunnel + database fields
  • Create a connection group, drag connections into it, verify collapse/expand persistence
  • Rename and change color of a group via right-click menu
  • Delete a group and verify connections move to Ungrouped
  • Set a connection color (e.g., red) and verify toolbar tint is visible after connecting
  • Verify no toolbar tint when connection color is "None"
  • Verify existing tests pass (GroupStorageTests, ConnectionURLParserTests)

@chatgpt-codex-connector
Copy link

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

- Decode percent-encoded credentials in SSH tunnel URL parser
- Handle IPv6 bracket notation ([::1]:port) in host-port parsing
- Fix moveUngroupedConnections to preserve grouped connection order
- Add duplicate-name guard to renameGroup
- Persist group collapse state to UserDefaults
- Fix selectedGroup to use cached allGroups instead of re-reading storage
- Fix Telegram heredoc leading whitespace in CI workflow
- Deduplicate NewGroupSheet by reusing CreateGroupSheet
- Add tests for percent-encoded SSH URLs, IPv6 hosts, and rename-duplicate
@datlechin datlechin merged commit 5835764 into main Mar 2, 2026
1 check passed
@datlechin datlechin deleted the feat/ssh-tunnel-url-import branch March 2, 2026 06:00
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.

1 participant