Skip to content

Releases: pozitronik/CloudMailRu

v23022026

Choose a tag to compare

@pozitronik pozitronik released this 23 Feb 14:56

Added

  • VK ID authorization support.

Changes

  • Chores
  • Minor bugfixes

Full Changelog: v21022026...v23022026

v21022026

v21022026 Pre-release
Pre-release

Choose a tag to compare

@pozitronik pozitronik released this 20 Feb 22:45

Added:

  • VK ID authorization support.

Full Changelog: v19022026...v21022026

v19022026

Choose a tag to compare

@pozitronik pozitronik released this 19 Feb 15:03

New Features

  • Directory listing cache β€” disk-based TTL cache for directory listings, reducing API calls on repeated folder navigations. Configurable TTL and max size via new Cache tab in settings.
  • File content cache β€” disk-based cache for downloaded files, keyed by content hash. Unchanged files are served from local cache instead of re-downloading. Configurable TTL and max size independently from directory cache.

Bug Fixes

  • Dialog centering on multi-monitor setups β€” plugin dialogs (settings, password prompts, etc.) now correctly center relative to the Total Commander window on secondary monitors with different DPI scaling. Previously, forms were shifted proportionally to the DPI
    difference between primary and secondary monitors.
  • Dialog position after cross-monitor drag β€” fixed forms jumping back to their initial monitor position when Windows fires a DPI change event during cross-display transitions.

Full Changelog: v13022026...v19022026

v13022026

Choose a tag to compare

@pozitronik pozitronik released this 13 Feb 18:21
  • Changed: extracted shared metadata sync lifecycle into TBaseRemoteMetadataSyncManager using Template Method + Adapter pattern, eliminating code duplication between description and timestamp sync managers.
  • Changed: unified timestamp settings into a single TimestampMode enum (Disabled / CloudTime / FullSync), replacing 4 overlapping boolean options. Settings dialog simplified accordingly.
  • Added: metadata file visibility and download settings -- descript.ion and .cloud_timestamps files can now be shown in file listings and copied to local disk. Controlled per-file-type via new options in account settings.
  • Added: self-contained integration test infrastructure -- tests auto-start/stop the mock server, create accounts, and set up public shares from a single TuchaPath setting. No manual server management required.
  • Fixed: timestamp metadata stored local time instead of UTC, causing synchronization errors on DST transitions and timezone changes.
  • Fixed: downloaded files now write back actual cloud modification time to metadata, enabling conflict detection on subsequent downloads.
  • Fixed: metadata file naming logic and consistency across description and timestamp subsystems.
  • Fixed: dialog controls positions and anchors.

Full Changelog: v13022026...v13022026

v1022026

Choose a tag to compare

@pozitronik pozitronik released this 10 Feb 13:57
  • Added: file version history tab in file properties dialog. View file versions, restore a previous version as a copy, or rollback to it. Paid accounts show hash for each version; free accounts show date/size only. Controlled by a new "Show file history" global setting. Closes #251
  • Added: stale-mark connection invalidation after settings dialog closes - settings are now applied immediately without requiring plugin reconnect.
  • Fixed: missing timestamp metadata cleanup when a downloaded file was deleted as part of a move operation.
  • Fixed: dialog forms positioning and DPI scaling - forms no longer shift after appearing on high-DPI displays.
  • Fixed: forms controls anchors and sizes across all dialog forms.

Full Changelog: v09022026...v10022026

v09022026

Choose a tag to compare

@pozitronik pozitronik released this 09 Feb 11:00
  • Changed: moved file splitting settings from global to per-account with 2GB validation for unpaid accounts. Thus simplifies workflow, makes it clear for the user.
  • Fixed #322

Full Changelog: v07022026...v09022026

v07022026

Choose a tag to compare

@pozitronik pozitronik released this 07 Feb 19:32

Changes

  • Cross-server file transfer: Copy/move files between accounts on different servers via memory stream. Previously, cross-account operations between different servers failed silently because server-side hash dedup and weblink cloning don't work across server boundaries. Now files are downloaded from source and uploaded to destination through an in-memory stream - no temp files, clean progress reporting.
  • Encryption logic finally implemented (#5) as it mentioned to be: clean and explicit way.
  • Download Links feature removed entirely. Mail.ru API returns time-limited URLs that expire quickly (410 Gone / 403 Forbidden), making permanent direct download links impossible.

Full Changelog: v06022026...v07022026

v06022026

Choose a tag to compare

@pozitronik pozitronik released this 06 Feb 10:39

New features

  • File timestamp preservation (issue #222) - plugin now stores and restores original file modification times on upload/download via metadata files (.cloud_timestamps) in each cloud directory.
  • OpenSSL 3.x support - new SSL backend via IndySecOpenSSL library with TLS 1.3 support.
  • Account test buttons - "Test account" and "Test share" buttons in account settings to verify credentials and public share URLs before saving.
  • Self-hosted server support improvements - arbitrary logins without @ are now accepted.

Fixes

  • Authentication error details are now surfaced on login failure instead of being discarded (previously AuthorizationError stayed empty).
  • Form control sizes and positions corrected across multiple dialogs.

Full Changelog: v05022026...v06022026

v05022026

Choose a tag to compare

@pozitronik pozitronik released this 05 Feb 10:40

New Features

  • Custom Server Support: tucha self-hosted implementation
  • Full i18n support via .lng files with TranslationManager (English and Russian translations included)
  • Hash File Format: block comments and inline comments after closing quote (Closes #315)
  • Debugging: LOG_LEVEL_HTTP (64) bitmask for HTTP request/response tracing

Bug Fixes

  • Fixed: possible memory leak in CreateRemoveDirSkippedPath when called twice for the same thread
  • Fixed: normalize shard/endpoint URLs with IncludeSlash before path concatenation
  • Fixed: assume http:// scheme for server URLs entered without protocol prefix
  • Fixed: ServerProfileManager reads from wrong config file, custom server endpoints never resolved
  • Fixed: store server profiles in the global INI file, not the accounts INI

Code Quality

  • Extended test coverage across multiple modules (ConnectionManager, CloudHTTP, FileStreamExecutor, CloudFileDownloader, CloudFileUploader, TCHandler, PluginSettingsManager, OpenSSL, CipherProfile)
  • Removed redundant nil checks
  • Added IfEmpty coalesce helper to StringHelper

Full Changelog: v03022026...v05022026

v03022026

v03022026 Pre-release
Pre-release

Choose a tag to compare

@pozitronik pozitronik released this 02 Feb 20:14

Bugfixes

Full Changelog: v02022026...v03022026