Skip to content

Latest commit

 

History

History
296 lines (194 loc) · 12.5 KB

File metadata and controls

296 lines (194 loc) · 12.5 KB

Changelog

All notable changes to this project will be documented in this file.

5.1.1

Fixes

  • Database version picker now offers the major version keys documented by the API (PostgreSQL 17, MySQL 9, MongoDB 8, Redis 7) instead of full point releases.

5.1.0

Migration to @squarecloud/api v5 plus a smoother upload flow and smarter rate-limit handling.

Added

  • Upload: workspace folder picker — open workspace folders are offered first when uploading a new application; "Browse..." still opens the OS dialog for any other folder.
  • Upload: post-upload actions — the success toast now shows the detected runtime (language + version) and offers Open dashboard and Copy ID buttons.
  • Upload: client-side size guard — zips over 100 MB fail fast with a hint to extend squarecloud.ignore, before any bytes are uploaded.
  • Realtime: automatic reconnection — when the server-side connection TTL closes the stream, the extension reconnects after a short backoff (with a [Reconnecting...] marker) instead of silently ending. Stopping the stream yourself never reconnects.
  • Realtime: robust error handling — HTTP refusals from the stream endpoint (connection limit reached, deleted app) now surface a localized message and stop cleanly; streams that die immediately are treated as refusals instead of being reconnected in a loop.
  • Database creation: version picker — the free-text version prompt was replaced with a QuickPick of versions currently accepted per engine (PostgreSQL 17, MySQL 9, MongoDB 8, Redis 7), plus an Other version... escape hatch so the command keeps working when the platform rotates versions.
  • Database creation: copy password — alongside the connection URL (still copied automatically), a Copy password button is offered, since credentials are shown only once at creation.
  • Localised messages for the standardized error codes — plan limits (applications/members/workspaces/load balancers), insufficient memory, upload aborted/too large, domain validation, metrics support, realtime connection cap, snapshot processing/restore in progress, and cluster maintenance — in all three languages.

Changes

  • Migrated to @squarecloud/api v5 (^4.0.1^5.0.0).
  • Unknown error codes now fall back through the SDK's canonical alias table before showing the generic message, so legacy code names still map to friendly messages during the API's naming transition.
  • Background status refreshes rejected with a rate limit are retried once after a 10s backoff instead of waiting for the next poll cycle.
  • Post-action toasts (upload, delete, database created, certificate downloaded) share a single locale-safe action-button helper instead of per-command boilerplate.

Docs

  • README rewritten: full feature walkthroughs (upload vs commit, ignore-rule resolution, realtime limits, snapshot quotas, one-time database credentials), command reference with IDs, rate-limit behaviour, security notes and an expanded troubleshooting section.

Dependencies

  • @squarecloud/api5.0.0.
  • typescript 6.0.3 → 7.0.2.
  • @biomejs/biome → 2.5.3 (config migrated to the new preset field; static resources/ assets excluded from linting).
  • @types/node → 26.1.1, @vscode/vsce → 3.9.2, ovsx → 1.0.2, concurrently → 10.0.3, esbuild → 0.28.1, ignore → 7.0.6.
  • @types/vscode intentionally kept at 1.120 to match engines.vscode — bumping it would raise the minimum supported VSCode version.

5.0.1

Fixes

  • Resolved 6 duplicate translation keys (workspace.created and database.created each existed twice in every locale — the toast string was silently overwriting the column label). Renamed the labels to workspace.createdAt / database.createdAt.
  • Tidied 2 lint warnings flagged by Biome: optional chain in MAIN file existence check, unused parameter property in ConfigFileManager constructor.

5.0.0

Major release: migrated to @squarecloud/api v4 and added first-class support for workspaces, databases, environment variables, realtime streaming, GitHub App linkage, edge analytics, and one-click application upload. The internal architecture was overhauled to a Disposable-based composition root with selective store subscriptions, focus-aware polling, and SDK-error-code-aware toasts.

Added

  • Workspaces view — create, delete, leave, generate invite codes; inline member and shared-app rendering.
  • Databases view — create/start/stop/delete managed databases (MongoDB, MySQL, Redis, Postgres); TLS bundle download split into .pem, .crt and .key.
  • Application: Upload — create a brand new app from any folder, with client-side squarecloud.app/squarecloud.config validation and cancellable progress.
  • Application: Environment variables — full CRUD over application.envs via QuickPick.
  • Application: 24h metrics — CPU/RAM/network time series rendered in a per-app output channel.
  • Application: Realtime stream — Server-Sent Events consumed into an output channel; toggle on/off.
  • Application: Snapshot restore — sorted-newest-first QuickPick over application.snapshots.list() with confirmation.
  • Application: GitHub App link/unlink — repository + branch picker.
  • Application: Edge analytics — errors, edge logs, performance, and selective/full cache purge (website apps only).
  • Service status — palette command + status bar warning when Square Cloud reports degraded health.
  • Status bar item — at-a-glance API key state, online/total apps, and service health; click to refresh.
  • Config file IntelliSense — RUNTIME field — autocomplete + validation against the 15 official aliases, plus quick-fix lightbulbs.

Changes

  • Migrated to @squarecloud/api v4 with parallelised refresh (Promise.allSettled) and shared client instance keyed by API key.
  • API key storage moved to VSCode SecretStorage (OS keychain); legacy auth.json is migrated on first run and deleted.
  • Polling now pauses while the editor is unfocused and resumes on focus, with refresh coalescing.
  • Tree views switched to selective store subscriptions (per slice) instead of a blanket refreshAll.
  • Commands wrapped to centralise error logging and map SquareCloudAPIError.code to localised toasts; removed boilerplate paused gate from every command.
  • start/stop/restart consolidated into a single parameterised builder.
  • Network analytics commands (errors/logs/performance) consolidated into a shared builder.
  • Background auto-refresh polling interval raised from 30s to 60s to reduce API pressure for idle sessions.
  • setTimeout(refreshStatus, 7000) magic numbers replaced by APIManager.scheduleStatusRefresh() with timer tracking + cleanup on dispose.
  • activationEvents reduced from "*" to workspaceContains only — VSCode auto-generates view/language activations.
  • Config file: START length limit raised to 256, SUBDOMAIN to 63, MAIN becomes optional when START is set.
  • Locale comparisons replaced with tagged MessageItem.id across all confirmation dialogs.
  • Output channels centralised via getOutputChannel(bag, key, name) and disposed with the extension.
  • Status updates now produce new Collection/Set references so selective subscribers actually fire.
  • engines.vscode bumped to ^1.120.0.
  • packageManager pinned to pnpm@11.5.0.

Fixes

  • Snapshot restore now lists every snapshot (extracted snapshotId/versionId from the signed URL — previous code stripped them all as "invalid").
  • Database certificate download no longer hangs on "Downloading..." after the file is written (toast moved outside withProgress).
  • Application delete no longer leaves the progress notification spinning waiting for the success toast.
  • Realtime SSE sessions are aborted on extension teardown; no more dead Disposable entries piling up in context.subscriptions on repeated start/stop.
  • Phantom disposeAllRealtimeSessions command removed from the VSCode registry (utility was registered as a command by the barrel scan).
  • setStatus and toggleFavorite no longer mutate state in place — fixes tree views not refreshing on status updates.
  • TypeScript IntelliSense for node: protocol imports restored via explicit types: ["node", "vscode"] after TypeScript 6's default change.

Dependencies

  • @squarecloud/api 3.8.0 → 4.0.1.
  • adm-zip removed in favour of jszip (dropped the local patch).
  • xdg-app-paths removed — replaced with VSCode SecretStorage.
  • mocha, @types/mocha, @vscode/test-electron removed (no test suite shipped).
  • typescript → 6.0.3, @biomejs/biome → 2.4.16, @types/node → 25.9.1, @types/vscode → 1.120.0, concurrently → 10, ovsx → 1.
  • pnpm bumped to 11.5.0 with minimumReleaseAgeExclude: ["@squarecloud/api"] policy.

Removed

  • TODO.md (backlog superseded by this release).
  • contributes.disabled.json (graveyard, never loaded by VSCode).
  • Dead translation keys across all locales (createConfig.*, statusBarItem.*, setWorkspaceApp.*, uploadWorkspace.*, commitWorkspace.*, commit.error, view.noApiKey, and others — 57 keys total).
  • Unused utilities: compareSets, Constant, capitalize (inlined in its single caller).

3.3.0

Added

  • CONTRIBUTING.md with setup, development, lint, build, and contribution guidelines.
  • Locale helper for extension links (pt-br, en, es).

Changes

  • Added João Otávio Stivi as a contributor.
  • Updated CI workflow to use actions/checkout@v6 and actions/setup-node@v6.
  • Moved enable-pre-post-scripts config from .npmrc to pnpm-workspace.yaml.
  • Updated CHANGELOG.md with all missing version entries.
  • Updated API key guidance link to https://squarecloud.app/{locale}/account/security.
  • Added paywall messaging in Applications view with pricing link (https://squarecloud.app/{locale}/pricing).
  • Improved paywall UX in Applications view with clearer copy and CTA labels.
  • Stopped automatic status polling while paywall/no-apps state is active.
  • Replaced deprecated SquareCloudAPI.users usage with SquareCloudAPI.user.
  • Removed temporary API key validation debug logs.

Fixes

  • Fixed extension crash when an account has no plan and/or no applications (No Apps).
  • Fixed Applications tree empty state by differentiating loading from loaded-without-apps.

Dependencies

  • Updated key dependencies and tooling, including typescript, esbuild, @biomejs/biome, @types/node, @types/vscode, and @vscode/vsce.

3.2.11

Changes

  • API key storage migrated away from SecretStorage for improved compatibility.
  • Simplified API key retrieval logic.
  • Updated dependencies.

3.2.10

Changes

  • API key now stored using system-standard paths via xdg-app-paths, replacing keyring.
  • Updated dependencies.

3.2.9

Changes

  • API key storage migrated to system keyring for improved security.

3.2.8

Changes

  • Internal refactoring of API key and constant handling.

3.2.7

Added

  • Extension now published to the Open VSX Registry.

3.2.6

Changes

  • Backups renamed to snapshots.

Fixes

  • Crashes and loading issues.

3.2.5

Fixes

  • Fix committing folders.

3.2.4

Docs

  • Improved README examples.
  • Renamed extension.

3.2.3

Fixes

  • Fix configuration file for Windows users.

3.2.2

Changes

  • Improved MAIN and VERSION parameter handling in the configuration file.
  • Updated extension icon and README.

3.2.1

Changes

  • Updated extension name.

3.2.0

Added

  • Configuration file syntax highlighting & auto completion.

3.1.5

  • Update dependencies.

3.1.4

Fixes

  • Fix restarting the application after a commit.

3.1.3

Fixes

  • Fix application commit.
  • Fix application backup.
  • Duplication of logs output channels.

Tweaks

  • Improve RAM formatting.

3.1.2

Added

  • Now you can choose wheter you want to restart your application after the commit or not.

3.1.0

Added

  • Readded user information view

3.0.0 - Massive revamp

Improvements

  • Everything is more polished, ensuring performance and stability.
  • Now statuses come from status all API endpoint.
  • API key is now stored in VSCode Secrets for your safety.
  • More reliable and fast state and cache management.

Fixes

  • Applications names not showing.
  • Application description error at startup.
  • Unstable API key handling.

2.0.0

Added

  • Applications
    • Upload

1.0.0

Added

  • General
    • User information view
    • Bots & Sites management views
    • Create configuration file
  • Applications
    • Start
    • Stop
    • Restart
    • Delete
    • Commit
    • Logs
    • Statusd