Skip to content

Releases: Azure/azure-storage-azcopy

AzCopy v10.31.0

28 Oct 21:44
edd48be

Choose a tag to compare

Version 10.31.0

New Features

  1. Azure Files NFS -> Azure Files SMB transfers.
    • Transfer from Azure Files NFS to Azure Files SMB. (--from-to=FileNFSFileSMB)
  2. Azure Files SMB -> Azure Files NFS transfers.
    • Transfer from Azure Files SMB to Azure Files NFS. (--from-to=FileSMBFileNFS)
  3. Symlink support for Azure Files NFS shares.
    Introduced support for symbolic links in Azure Files NFS shares.
    Symlinks can be preserved, skipped, or followed based on command-line flags.
    • Preserve symlinks: --preserve-symlinks=true
    • Skip symlinks: default behavior when flags are not provided
    • Follow symlinks: --follow-symlinks=true
  4. Added a --check-version flag to make version checking an opt in feature. (#3173)
  5. --include-root flag now allows customers to preserve root properties when used in conjunction with --preserve-XXXX flags. (#3163)

Dependency updates

  1. Golang 1.24.4 -> 1.24.6 (#3154)

Bug Fixes

  1. Fixed a bug to retry on various network errors. (#3237) (#3252)
  2. Fixed a bug where remove would not work on paths with encoded characters. (#2977)
  3. Fixed a bug where jobs resume would not produce any output for previously failed jobs. (#3103)
  4. Fixed a bug where FileBlob transfers with EntraID on the source would pass the wrong service version. (#3242)
  5. Fixed a bug to retry on WSAETIMEDOUT on Windows. (#3195)
  6. Fixed a bug with the folder creation tracker which caused folder creation calls to happen more often than necessary. (#3151)
  7. Fixed a bug to redact x-ams-credential from logs. (#3206)
  8. Fixed a bug where powershell login would fail with older versions of Az.Accounts. (#3191)
  9. Fixed a bug where symlink direct targets would be handled as a file instead of a symlink. (#3222)

Code Improvements

  1. Refactored traverser related code into its own package. (#3251)
  2. Refactored OAuth token manager access to use a client-based pattern instead of global singleton access. (#3260)
  3. Removed unused code related to credential management. (#3260)
  4. Refactored Lifecycle UI code into the cmd package (#3262).
  5. Error handling code is now injected into JobMgr, or appropriately bubbled upwards instead of using global LCM error handling. (#3262)

Breaking changes

  1. AzCopy no longer checks version by default. (#3173)

AzCopy v10.30.1

08 Sep 23:12
d085617

Choose a tag to compare

Version 10.30.1

Bug Fixes

  1. Fixed --exclude-path flag not available in remove operations.(PR #3165) (GH Issue #3159)
  2. Fixed regression where AzCopy was not honoring concurrency value in copy operations (#3192)
  3. Fixed the incorrect JSON output format of the warning message when there are multiple AzCopy processes running. (PR #3188) (GH Issue #3182)
  4. Fixed latest_version.txt from being wrongly created in users current directory. (PR #3179)(GH Issue #3176)
  5. Fixed AzCopy crashing during sync operation from a nil pointer deref in the destination authentication policy. (PR #3186) (GH Issue #3109) (GH Issue #3156) (GH Issue #3175)

Dependency Updates

  1. Golang 1.24.2 -> 1.24.6 (CVE-2025-47907) (#3154)

AzCopy v10.30.0

06 Aug 21:26
28c6d8b

Choose a tag to compare

Version 10.30.0

Breaking changes

  1. For transfers involving Azure Files (NFS or SMB), AzCopy will not auto create file shares.
  2. AzCopy binaries and latest version information will now be distributed from Github releases instead of the static website. (#3014)

New Features

  1. Azure Files NFS Support via REST.
    Support for transferring data between local Linux systems and Azure Files NFS using REST. To use this feature, please explicitly specify the --from-to flag.

    • Transfer from local Linux to Azure Files NFS. (--from-to=LocalFileNFS)
    • Transfer from Azure Files NFS to local Linux. (--from-to=FileNFSLocal)
    • Transfer between Azure Files NFS shares from. (--from-to=FileNFSFileNFS)
      Note:
      • Azure Files NFS to Azure Files NFS transfers (FileNFSFileNFS) are supported on Windows, Linux, and macOS.
      • Transfers from local to NFS (LocalFileNFS) and NFS to local (FileNFSLocal) are supported only on Linux systems.
  2. Added support to retry on copy source error code and status code for service to service copies. (#3105)

  3. Added support for service to service copies from Azure Files to Blob Storage using EntraID. (#3053)

Bug Fixes

  1. Fixed a bug where when copying a file that has already been deleted with --trailing-dot=Disable resulted in the wrong error instead of a 404. (#3092)

Supportability

  1. Removed the warning message when failing to create a container. This message can be misleading when there is insufficient permissions to create a container and the container already exists. (#3045)
  2. Improved the error message returned when block size is larger than bandwidth limit. (#3051)
  3. Warn user if transfer is going to exceed 10M objects. (#3111)
  4. Warn user if multiple AzCopy processes are running. (#3128)

AzCopy v10.30.0~preview.2

08 Jul 16:10

Choose a tag to compare

Version 10.30.0-preview.2

Dependency updates

  1. Golang 1.24.2 -> 1.24.4 (#3085)

AzCopy v10.30.0-preview.1

12 Jun 11:08
e6e22ed

Choose a tag to compare

Pre-release

New Feature

  1. Azure Files NFS Support via REST API
    Support for transferring data between local Linux systems and Azure Files NFS using REST.
    a. Transfer from local Linux to Azure Files NFS.
    b. Transfer from Azure Files NFS to local Linux.
    c. Transfer between Azure Files NFS shares.

AzCopy v10.29.1

15 May 23:40

Choose a tag to compare

Version 10.29.1

Bug Fixes

  1. Fix the TokenStore getting stuck in a read lock (#3035)

Dependency Updates

  1. golang.org/x/net 0.36.0 -> 0.38.0 (CVE-2025-22872) (#3023)
  2. golang.org/x/crypto 0.35.0 -> 0.36.0 (#3023)
  3. golang.org/x/sync 0.11.0 -> 0.12.0 (#3023)
  4. golang.org/x/sys 0.30.0 -> 0.31.0 (#3023)
  5. golang.org/x/text 0.22.0 -> 0.23.0 (#3023)

Changes:

  • e3241bd updated version
  • 33cc2dd all deps in changelog
  • 3fe13cb added change log
  • 5cb33e1 Bump golang.org/x/net from 0.36.0 to 0.38.0
  • 16f559a Fix the TokenStore getting stuck in a read lock

This list of changes was auto generated.

AzCopy v10.29.0

28 Apr 20:23
73bf86e

Choose a tag to compare

Version 10.29.0:

Breaking changes

  1. TokenStore tokens now use sha256 (#3006)

Bug Fixes

  1. Fixed a regression where certain values were no longer output on dryruns (#2923)
  2. Catch and retry on certain Windows networking errors (e.g. port in use, remote host dropped) (#2916, 2962, 2967)
  3. Fixed an incorrect number of transfers being displayed upon resume (#2961)
  4. Fixed the URL output by AzCopy login to correct some sign in issues (#2973)
  5. Fixed a bug with put-blob-mb where a lower maximum threshold would be used (#2936)
  6. Catch EINTR responses from system calls appropriately (#2942)

v10.28.1

26 Mar 15:18

Choose a tag to compare

Version 10.28.1

Dependency updates

  1. Golang 1.22.7 -> 1.24.0 (#2948)
  2. golang.org/x/oauth2 v0.23.0 -> v0.27.0 (CVE-2025-22868)(#2992)
  3. golang.org/x/net v0.33.0 -> v0.36.0 (CVE-2025-22870)(#2978)
  4. github.com/golang-jwt 5.2.1 -> 5.2.2 (CVE-2025-30204)(#2990)

v10.28.0

27 Jan 19:08
1b3cc0c

Choose a tag to compare

Version 10.28.0

New Features

  1. Added support for trailing dot transfers to destinations that do not support trailing dot files. (#2827)
  2. Added support to fall back to LMT on missing source hash when --compare-hash is set for sync commands. (#2866)
  3. When receiving a ShareSizeLimitReached error on transferring a file, AzCopy will now fail fast and suggest the customer increase file share quota and resume the command. (#2895)
  4. Added support to validate destination container name to fail fast if it is a system container. (#2883)
  5. Added support to allow customers to reauthorize credentials on token expiration. (#2887)
  6. Added support to always create missing destination resources in azcopy sync. (#2894)
  7. When targeting flat namespace accounts in azcopy sync,directory stubs can now be overwritten or overlapped. (#2894)

Bug Fixes

  1. Fixed an issue where AzCopy would not persist tokens when logging in via Device Code by migrating Device Code logic to azidentity Track 2 SDK. (#2361, #2747)
  2. Updated version check to hit updated AzCopy static website URL. The previous URL was taken down due to security requirements. (#2852)
  3. Fixed an issue where jobs clean would be blocked due to trying to clean up its own log file. (#2850)
  4. Fixed an issue where a panic would sometimes be hit due to closing an nil channel. (#2874)
  5. Downgraded go version to 1.22.7 to temporarily resolve reported high memory issue. (#2855)
  6. Fixed an issue where --log-level=NONE would display a log file location. (#2845)
  7. Fixed the log levels of some messages. (#2845)
  8. Corrected the cleanup of files with names ending in / when using --delete-destination-files on azcopy sync. (#2847)
  9. Correctly target objects in copy/sync/delete with names ending in /. (#2847)

Dependency updates

  1. Golang 1.23.1 -> 1.22.7 (#2911)

  2. golang.org/x/crypto v0.28.0 -> v0.31.0 (CVE-2024-45337)(#2890)

  3. golang.org/x/net v0.30.0 -> v0.33.0 (CVE-2024-45338)(#2899)

Documentation

  1. Updated README and in line text help messages to clarify OAuth support as a source AuthN method in Blob <-> File transfers. (#2838)
  2. Added --log-level=DEBUG as a valid option in text help message. (#2845)

v10.27.1

13 Nov 17:23

Choose a tag to compare

Version 10.27.1

Bug Fixes

  1. Reverted a change that resulted in breaking file service transfers and a larger memory footprint. (#2858#2855)

Dependency updates

  1. github.com/golang-jwt/jwt/v4 v4.5.0 -> v4.5.1 (#2861)