The support forum

Release 75

Apr 14, 2016

First things first:

SMART diagnostics and Diskovery

The original plan was to ship SMART diagnostics [1] with this release, but Microsoft released W10 Insider Preview that changed the way system tray works and through that they effectively broke the app [2].  This forced the release to be pushed forward, so the SMART module didn't get in.

The good news is that the SMART code itself is actually done and working. Moreover, it is now also wrapped into an app of its own, which is currently in the late stages of beta and which you are of course are more than welcome to join :)

It's called Diskovery and here's its homepage -


Apr 14, 2016

UI enhancements

1.  New general mechanism for accessing advanced features

Several existing configuration windows got equipped with "More" buttons at the bottom left corner. Clicking on it expands the dialog vertically and injects more advanced (or less commonly used) options, e.g.:

This is currently employed in "Preferences", "Network Logon", "Filters" and "How To Send (Email Alert)" dialogs.

2.  Support for size- and time-based filtering

Previously it was possible to include/exclude items in the source location based on their names and attributes:

With R75 it's now possible to filter items based on their timestamps and to filter files on their sizes:

This basically enables rules like "files under 5 KB", "between 10 KB and 10 MB", "created before 2016/04/15" or "modified between [now - 2 days] and [now]". You get the idea.

3.  Support for advanced Network Logon options

When connecting to remote shares, two more options are now accessible through the UI - whether to login unconditionally and whether to tear down existing connection if there's one in place:

These has been around since the beta, but they were configurable through a manual INI edit only.

4.  Support for copying log snippets

Right-click on a log entry to copy either a line or an entire block:

with some nuances -

5.  A quieter UI

a)  The UI will no longer issue a warning if a backup job finished with an error during the previous application run.

b)  The UI can now be told not to register (and complain about) backup runs that were missed while the app wasn't running.

This is done with the following line in the backup's settings.ini:

    conf.missed_run.register_on_launch    0

c)  Added an option for suppressing systray alerts triggered by a missed run. This is done with the following setting:

    conf.missed_run.alert.ui   0

d)  Added an option of a grace period during which missed runs will not be registered as backup failures. For example, if you plug your external drive once a day but at a different time, then by setting a grace period on your hourly backup job to 24 hours you will force the app to raise an issue only if there were no backups for 24 hours.

This is controlled by the following setting:

    conf.missed_run.grace_period       24 hours

whereby "24 hours" can obviously be another time interval that makes sense. E.g. "1 day", "3 weeks", "5 minutes", etc.

e)  Any issues with app's own internal files are no longer logged as errors.

5.b  Desktop edge snapping

Holding Ctrl down when moving the window will now cause it to snap to the desktop edges.

Apr 14, 2016

Functional enhancements

6.  Support for VSS with WS2012+ network shares

What it says on the tin - the shadow copying can now be used when source location sits on a remote share IF the peer is running Windows Server 2012 or newer.

* The WS2012 requirement stems from this -

7.  Support for copying encrypted files as raw blobs

The app now has an option of copying NTFS-encrypted files as encrypted blobs. This option is Off by default because there are caveats.

a)  You must remember that NTFS encryption uses keys that are linked to your local user account. You lose the account, you won't be able to decrypt the files. In particular meaning that you can't back up an NTFS-encrypted file to a USB key, take it to another computer and open it there. No key = no access, and the key is buried deep down in the guts
of NTFS control blocks of your local drive, encrypted with a master key derived from your account password.

b)  Backing up onto anything but NTFS will not work.

c)  Reading/writing encrypted files in raw works through so-called EFS API, which happens to be slower than reading/writing them in plaintext via regular file system API.

In order to enable raw copying of encrypted files, use the following setting:

    conf.copying.use_raw_enc_copier   1

and the app will copy all files with "Encrypted" attributes through EFS API.

8.  An option for running the app on lower priority

Third option from the top in the Preferences, in the advanced mode:

This is useful on both very busy and weak computers. Works really well to alleviate effects of a running backup on machine's responsiveness.

Apr 14, 2016

9.  Improved email notifications

a)  The UI around email alerts has been reworked to separate alert-specific settings from general email delivery options. Post-backup and missed-run alerts are now configured separately.

This rework also paves the way for adding SMART alerts once the SMART module is merged into the app.

b)   Email delivery got a CC option.

One thing to keep in mind that all copies are delivered through the SMTP session established for the To recipient. Meaning that you'd need to use authenticated SMTP delivery if you want to combine "@gmail" for To and "@hotmail" for CC.

c)  It's now possible to specify TLS/SSL domain in the server certificate for secure connections. This is useful for the cases when domain name in the certificate is different from the server's domain in its MX record.
Full details are here:

d)  The FROM field in the SMTP envelope now defaults to the From from the alert configuration rather than to ""

e)  It is now possible to send an alert on job cancellation. This is controlled by the following INI setting:

    conf.alerts.post_backup.on_cancel    1

Apr 14, 2016

10.  New async module to handle app's configuration files

The app now has a dedicated module that handles all INI file writing.

This may not sound like much, but it's a very important thing to get right. The INI files need to be written out reliably and in a way that allows recovering from partial or incomplete file updates, for example due to the sudden power-off, bluescreens and such.

Previously, Bvckup 2 used conventional three-step update process that involved two copies of an INI file and a temporary "lock" file. This however was still prone to corruption in some cases, so as of R75 the app uses a simpler (read - dumber) approach.

It still writes two copies of each INI file, and it still renames an existing copy to a ".prev" file if there's one, but it now uses so-called write-through copying and moving functions. These effectively tell Windows to bypass file system caches and make sure to write things onto the physical media before reporting an OK.

However these functions take time, so they cannot be used directly from the UI or the engine code. Doing so will cause the app to stutter. As such there's now a small dedicated module which is tasked exclusively with writing config file to the disk, asynchronously.

11.  Smaller, less verbose backup logs

The app now logs less per-file information both on the first run (when creating backup copies) and on the subsequent runs (when updating).

Apr 14, 2016

Assorted changes

⦁    Speeded up copying of file attributes
⦁    Speeded up copying of empty files
⦁    The $Archive is re-scanned if the trim period is changed
⦁    Revised how “created” timestamp support is tested
⦁    Internal swap files are now compressed by default
⦁    “Export settings” option is now visible in service mode

Apr 14, 2016

Resolved issues

⦁    Fixed an issue with the systray icon in W10 Preview builds

⦁    Fixed an issue with post-backup commands on failed runs
      (reported privately)

⦁    Fixed an issue with the archival of modified files
      (reported privately)

⦁    Fixed an issue with the “elapsed” environment variable

⦁    Worked around several issues with WebDAV locations
      (assorted sources)

⦁    Planning module can now handle 1M+ files **per folder**
      (reported privately)

Apr 20, 2016

Release 75.3 is out.

There were two interim releases as well, so you might be on one of them (75.1 or 75.2). Cumulative changes are as follows:

⦁    Resolved an issue with loading of backup jobs that contain
      non-ASCII symbols in any of their text fields

⦁    Resolved an issue with window position getting sometimes
      reset on launch

⦁    Resolved an issue with parsing "local path" mount points

⦁    Resolved a wheel-scrolling issue with high-precision mice

⦁    Resolved issues around opening and minimizing of the UI
      when Windows Explorer is not running

Kudos to those who reported these. You know who you are :)

Bamit :

Apr 25, 2016

Update75.3 - Resolved a wheel-scrolling issue with high-precision mice

Thanks Alex!!!  Just updated my BvckUp and my mouse works perfectly now.

For years I had always thought the option of scrolling only worked after selecting a backup job first. For me It was always a tiny annoyance but now it works without having to do  that.  

Just had to say thanks again for your dedication to making great software even better.

Alex Pankratov :

Apr 26, 2016

Well, I got a new mouse and it wasn't scrolling, so I had no choice but to fix it :)

Seriously though, this was a case of wrong documentation on Microsoft's end. They have an example on how one is supposed to handle scrolling events and it's simply wrong for high-precision scroll wheels.

Apr 26, 2016

Release 75.4 is out.

⦁    Resolved an issue with over-the-network shadow copying - this has to do with using shadow copying when the source is a network share.

⦁    Added a UI option for resetting the list of file exclusions - it's now possible to reset the list of manual exclusion/inclusion rules (as seen in Backup What part of the backup configuration) to the built-in default.

In particular this makes it possible to populate this list when using the "start with the blank list" option.

May 09, 2016

Release 75.5 is out.

⦁    Cosmetic fix for an error message logged during destination scan
⦁    A workaround for a file system testing issue with certain NAS devices

Updating is optional. Direct download link:

May 18, 2016

Release 75.6 is out.

⦁    Fixed Network Login dialog allowing for an empty username
⦁    Fixed an issue with the "Export configuration" menu option
⦁    Fixed an issue around the out-of-disk-space condition
⦁    Fixed an issue with a network drive resuscitation code

⦁    Destination snapshot can now be discarded based on its age

This is related to the "Detecting changes" preference in settings of a backup job. When using destination snapshot you may now set the app to drop it once it reaches certain age and force re-scan of destination.

This behavior is controlled by "conf.scanning.max_snapshot_age" line in backup's settings.ini, which can be set to "5 min", "6 hours", "7 days", "8 weeks", etc.

As per usual - make sure to exit the app before editing the INI or your changes will be ignored and lost.

⦁    Env. variables can now be used in source/destination paths

As it says on a tin, the Backup From can now be set to "%LocalAppData%\Xyz" and it will be expanded into a full path when the job runs.

The caveat is that the app will NOT monitor these sort of location for availability, so it can't be used with device tracking and network share monitoring.

Use with care.


The update is trickling out.
To update right away use:

Froggie :

May 18, 2016

Morning, Alex!  The file, "timestamp-test.tmp," started showing up in some of my protected folders following the upgrade to R75.6 and the enabling of the following feature...

Destination snapshot can now be discarded based on its age

Which of the above 2-items might be responsible for this and... why?

Froggie :

May 18, 2016

I have since "allowed" the above file WRITE but would love to know the reason for the need.

Froggie :

May 18, 2016

...and the added file (temporary, I think) is only being added to some of my BVCKUP2 monitored folders but not all.

Froggie :

May 18, 2016

...skip that last comment, it's probably being added to all but only two of them have protected access.

Alex Pankratov :

May 18, 2016

Froggie, this file is used during active file system testing, the purpose of which is to determine effective timestamp resolution, attribute support and few other operational parameters.

Bvckup 2 had this functionality since day one of its pre-beta. It's just that in 75.5 the name of this temporary file was changed, that's probably why you noticed it.

The app caches the results of these tests, so you should not see this happening more than once per job (unless you re-run it with Ctrl-Go, which will flush this and other cached info).

Froggie :

May 18, 2016

Thank you, sir... that "gels" with my observations.

May 23, 2016

Release 75.8 is out.

⦁    Resolved an issue with network share monitoring.

This is related to an issue when the app would stop trying to access remote shares *using configured credentials* while in the "Waiting for the network location..." state. This in turn was happening if the app was launched almost immediately after the reboot, when Windows Networking wasn't fully initialized and Windows was returning all sorts of odd errors when the app tried accessing the share. Long story short - this is now resolved. Kudos to Richard for pain, suffering, logs and testing.

⦁    Fixed an issue with backup jobs getting disabled after waking
up computer from sleep.

Just as it says on a tin - in certain cases waking up computer would caused backups get disabled. This was due to a change made in one of the earlier 75 releases.

⦁    Fixed "elapsed time" env. varable being set to an invalid value.

Code that set up the "elapsed_time" variable for the post-backup command and email alerts wasn't any good. Reworked now and it should be showing right things in right spots. Kudos to Mark for spotting this.

Jun 08, 2016

Release 75.9 is out.

⦁    Changes to the security attributes (Owner, Group, DACL) are now monitored for if the backup job is set to copy them.

Previously, if a job was set to also copy Owner, Group or DACL information, it would do that only when file (or folder) was updating for some other reason. That is, it wasn't detecting changes to the security attributes, but it would gladly copy them when it had a chance.

As of this release the app will now also query and compare security descriptors and then spit out respective "update" steps as needed.

Note that it's also possible to clone SACL, but
(a) this requires a manual edit of a backup INI file, because
(b) accessing a SACL, even for reading, requires special privileges. The app *will* request them as needed, but if they aren't available, there'll be lots of interesting errors. Hence the extra hoops to jump through.

⦁    Resolved the "~.swp file is in use" issue during the scan phase.

In case when a destination snapshot file gets corrupted (due to improper PC shutdown for example), the app would previously log a cryptic error as per above. Resolved now.

vwillems :

Jun 12, 2016

Getting lots of GetFileSecurity() failed with 998. Is this the result of the first modification? How can I revert to previous situation?

Alex Pankratov :

Jun 13, 2016

@vwillems - I'll send you an email in a second. I need to know the details.

Jun 21, 2016

Release 75.10 is out.

⦁    Resolved an issue with copying of security information (directly related to vwillems' post above)

⦁    Added an option for *not* monitoring security information changes, but still copying it when a file is updated for some other reason.

⦁    Resolved an issue with file system information caching - previously, the app could "forget" that the system supported file IDs and it would then disable moved file detection by their _file system ID_.

⦁    Added support for detecting ±1 hour shift in timestamps with FAT volumes and around the daylight saving time switches. As of this release a file is deemed unchanged if there's a FAT involved on either side of the backup job and if both "created" and "modified" timestamps are off by exactly one hour between the source and backup copies.

⦁    Update checks and license activation are now done over SSL, whereby previously it was done over plain HTTP.

Technically, HTTP was absolutely fine, because Bvckup 2 will *always* check that all updates it ever downloads bear the digital signature of Pipemetrics before doing anything else with them. For the license activation, the activation request included a copy of system ID hash, but it's ultimately a random piece of information that carries very little information on its own.

As of this release, the app will first try HTTPS and will fall back to HTTP if needed. It is also possible to force update checks to use HTTP or HTTPS only. If you'd like to do this - ask and I will explain how.

License activation will now always try HTTPS first and fallback to HTTP. This can't be changed and the plan is to remove HTTP support for this operation altogether in future releases.

Jun 24, 2016

Release 75.11 is out.

⦁    Resolved an issue whereby the app may crash if the backup engine takes over 30 seconds to initialize (which typically takes 1-2 seconds max). The impact of this issue is rather limited as it requires a combination of a very busy or overloaded machine and launching Bvckup 2 after a reboot.

Internally, this had to do with the UI initiating a check for updates (if configured) and incorrectly assuming that the version information was already provided by the engine. The fix was to suppress all update checks until the engine is fully initialized and sync'ed up with the UI.

srappaport :

Jun 24, 2016

I just wanted to say that I wish all devs made release notes / changelogs like you do, Alex.  Thank you.

Alex Pankratov :

Jun 24, 2016


New topic

Made by IO Bureau in Switzerland

Blog / RSS
Follow Twitter
Miscellanea Press kit
Company Imprint

Legal Terms