Files

Frends.Files.Move / 3.0.0

Summary

Moves files matching a pattern between directories, and can authenticate separately against a network share at either end. A move is a handover rather than a copy, so the source stops existing.

Typical use — claiming work from a shared drop directory, where moving the file is what stops another run picking it up

Details

Frends version
5.7 and newer
Agent
Crossplatform
Target framework
net8.0
3.0.02026-09-10
Changed
  • Upgraded the task to .NET 8.
  • Breaking Standardize pattern matching logic between tasks.
  • Clarified relative input matching rules: patterns are evaluated relative to SourceDirectory, separators are normalized to /, matching is case-insensitive, glob mode supports * and **, and <regex> enables regex evaluation against the relative path and file name.
2.0.02025-10-14
Fixed
  • Fixed issue with impersonation when moving files between remote places.
  • Fixed issue with PreserveDirectoryStructure when regex patterns were used.
Changed
  • Added options to handle errors
  • Add Success and Error parameters to Result object
  • Upgrade target framework to net8.0
    Breaking
    • Moved parameters related to impersonation to new Connection tab
    • Renamed input Directory to SourceDirectory
1.4.02025-08-12
Changed
  • Refactor ExecuteAction to run synchronously for impersonated calls.
1.3.02025-03-19
Changed
  • Update packages: Microsoft.Extensions.FileSystemGlobbing 7.0.0 -> 9.0.3 System.ComponentModel.Annotations 4.7.0 -> 5.0.0 System.DirectoryServices 7.0.0 -> 8.0.0 coverlet.collector 3.1.0 -> 6.0.4 Microsoft.NET.Test.Sdk 16.6.1 -> 17.13.0 MSTest.TestAdapter 2.2.7 -> 3.8.3 MSTest.TestFramework 2.2.8 -> 3.8.3 nunit 3.12.0 -> 4.3.2 NUnit3TestAdapter 3.17.0 -> 5.0.0
1.2.02025-03-13
Fixed
  • Fixed bug where regex patterns were not handled correctly in file matching.
1.1.02024-11-1
Fixed
  • Fixed issue with Task not working with impersonation by removing the source file in the main method.
1.0.02023-02-14
Added
  • Initial implementation
An unhandled error has occurred. Reload 🗙