Tar: set directory modification times while extracting. (#88231)
authorTom Deseyn <tom.deseyn@gmail.com>
Wed, 5 Jul 2023 14:44:44 +0000 (16:44 +0200)
committerGitHub <noreply@github.com>
Wed, 5 Jul 2023 14:44:44 +0000 (16:44 +0200)
commit5e1608d8795cb7d5fcc331adb96c3f5b8d3641ab
tree9a80091dfe34751767f4f9b43340a03220577619
parent7b91fd42a64732681472afc8d5a52c5bc5eb0c8a
Tar: set directory modification times while extracting. (#88231)

* Tar: set directory modification times while extracting.

* Extend test and change entry write order.

* Get rid of some enumeration allocations.

* test: check DateTime using InRange.

* Extend comment explaining the order of entries.

* Apply suggestions from code review

Co-authored-by: Dan Moseley <danmose@microsoft.com>
* Try including AltDirectorySeparatorChar.

* Revert "Try including AltDirectorySeparatorChar."

This reverts commit 086aac43a897826394156692bd82f79feb3eca9d.

* Try using Directory.SetLastWriteTime instead of File's.

* Tie up some ends.

---------

Co-authored-by: Dan Moseley <danmose@microsoft.com>
src/libraries/System.Formats.Tar/src/System/Formats/Tar/TarEntry.cs
src/libraries/System.Formats.Tar/src/System/Formats/Tar/TarFile.cs
src/libraries/System.Formats.Tar/src/System/Formats/Tar/TarHelpers.cs
src/libraries/System.Formats.Tar/tests/TarFile/TarFile.CreateFromDirectory.File.Tests.cs
src/libraries/System.Formats.Tar/tests/TarFile/TarFile.CreateFromDirectoryAsync.File.Tests.cs
src/libraries/System.Formats.Tar/tests/TarFile/TarFile.ExtractToDirectory.File.Tests.cs
src/libraries/System.Formats.Tar/tests/TarFile/TarFile.ExtractToDirectoryAsync.File.Tests.cs