Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tar: restore directory permissions while extracting. #72078

Merged
merged 13 commits into from
Aug 12, 2022

Conversation

tmds
Copy link
Member

@tmds tmds commented Jul 13, 2022

Fixes #71140.

@eerhardt @carlossanlop @dotnet/area-system-io ptal.

@ghost ghost added the community-contribution Indicates that the PR has been added by a community member label Jul 13, 2022
@ghost
Copy link

ghost commented Jul 13, 2022

Tagging subscribers to this area: @dotnet/area-system-io
See info in area-owners.md if you want to be subscribed.

Issue Details

Fixes #71140.

@eerhardt @carlossanlop @dotnet/area-system-io ptal.

Author: tmds
Assignees: -
Labels:

area-System.IO

Milestone: -

@carlossanlop carlossanlop added this to the 7.0.0 milestone Jul 13, 2022
@carlossanlop
Copy link
Member

/azp run runtime-extra-platforms

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@tmds
Copy link
Member Author

tmds commented Jul 13, 2022

@carlossanlop this includes the tests mentioned in #71647 (comment).

I've created the issue for Tar and Zip, this PR only handles Tar.

Copy link
Member

@eerhardt eerhardt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this looks fine. It would be good to get sign-off from @carlossanlop.

@carlossanlop
Copy link
Member

I applied the build failure fix, but then I ran the Windows tests and noticed they are failing with these errors:

    Discovering: System.Formats.Tar.Tests (method display = ClassAndMethod, method display options = None)
    Discovered:  System.Formats.Tar.Tests (found 476 test cases)
    Starting:    System.Formats.Tar.Tests (parallel test collections = on, max threads = 12)
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(format: V7, createTarget: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(204,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(TarEntryFo
  rmat format, Boolean createTarget)
             at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
          D:\runtime\src\libraries\System.Private.CoreLib\src\System\Reflection\MethodInvoker.cs(64,0): at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_Async(format: V7, createTarget: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(220,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(223,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(224,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_Async(format: V7, createTarget: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(220,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(223,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(224,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(format: V7, createTarget: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(204,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(TarEntryFo
  rmat format, Boolean createTarget)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(format: Ustar, createTarget: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(204,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(TarEntryFo
  rmat format, Boolean createTarget)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_Async(format: Ustar, createTarget: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(220,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(223,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(224,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(format: Ustar, createTarget: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(204,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(TarEntryFo
  rmat format, Boolean createTarget)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_Async(format: Ustar, createTarget: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(220,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(223,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(224,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(format: Pax, createTarget: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(204,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(TarEntryFo
  rmat format, Boolean createTarget)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_Async(format: Pax, createTarget: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(220,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(223,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(224,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(format: Pax, createTarget: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(204,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(TarEntryFo
  rmat format, Boolean createTarget)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_Async(format: Pax, createTarget: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(220,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(223,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(224,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(format: Gnu, createTarget: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(204,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(TarEntryFo
  rmat format, Boolean createTarget)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_Async(format: Gnu, createTarget: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(220,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(223,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(224,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(format: Gnu, createTarget: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(204,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(TarEntryFo
  rmat format, Boolean createTarget)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_SymbolicLink(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_Async(format: Gnu, createTarget: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(220,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(223,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(224,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_SymbolicLink_
  Async(TarEntryFormat format, Boolean createTarget)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(format: V7, withContents: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(155,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(TarEntryForma
  t format, Boolean withContents)
             at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
          D:\runtime\src\libraries\System.Private.CoreLib\src\System\Reflection\MethodInvoker.cs(64,0): at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(format: V7, withContents: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(155,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(TarEntryForma
  t format, Boolean withContents)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_Directory(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(format: Ustar, withContents: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(155,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(TarEntryForma
  t format, Boolean withContents)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_Directory(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(format: Ustar, withContents: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(155,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(TarEntryForma
  t format, Boolean withContents)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_Directory(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(format: Pax, withContents: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(155,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(TarEntryForma
  t format, Boolean withContents)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_Directory(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarFile_CreateFromDirectoryAsync_File_Tests.VerifyIncludeBaseDirectory_Async(includeBaseDirectory: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarTestsBase.cs(405,0): at System.Formats.Tar.Tests.TarTestsBase.AssertEntryModeFromFileSystemEquals(TarEntry entry, UnixFileMode fileMode)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarFile\TarFile.CreateFromDirectoryAsync.File.Tests.cs(130,0): at System.Formats.Tar.Tests.TarFile_CreateFromDirectoryAsync_File_Tests.Verif
  yIncludeBaseDirectory_Async(Boolean includeBaseDirectory)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(format: Pax, withContents: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(155,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(TarEntryForma
  t format, Boolean withContents)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_Directory(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(format: Gnu, withContents: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(155,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(TarEntryForma
  t format, Boolean withContents)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_Directory(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarFile_CreateFromDirectory_File_Tests.VerifyIncludeBaseDirectory(includeBaseDirectory: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarTestsBase.cs(405,0): at System.Formats.Tar.Tests.TarTestsBase.AssertEntryModeFromFileSystemEquals(TarEntry entry, UnixFileMode fileMode)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarFile\TarFile.CreateFromDirectory.File.Tests.cs(108,0): at System.Formats.Tar.Tests.TarFile_CreateFromDirectory_File_Tests.VerifyIncludeBa
  seDirectory(Boolean includeBaseDirectory)
             at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
          D:\runtime\src\libraries\System.Private.CoreLib\src\System\Reflection\MethodInvoker.cs(64,0): at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(format: Gnu, withContents: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(155,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_Directory(TarEntryForma
  t format, Boolean withContents)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_Directory(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarFile_CreateFromDirectoryAsync_File_Tests.VerifyIncludeBaseDirectory_Async(includeBaseDirectory: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarTestsBase.cs(405,0): at System.Formats.Tar.Tests.TarTestsBase.AssertEntryModeFromFileSystemEquals(TarEntry entry, UnixFileMode fileMode)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarFile\TarFile.CreateFromDirectoryAsync.File.Tests.cs(123,0): at System.Formats.Tar.Tests.TarFile_CreateFromDirectoryAsync_File_Tests.Verif
  yIncludeBaseDirectory_Async(Boolean includeBaseDirectory)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(format: V7) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(117,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(120,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(121,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarFile_CreateFromDirectory_File_Tests.VerifyIncludeBaseDirectory(includeBaseDirectory: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarTestsBase.cs(405,0): at System.Formats.Tar.Tests.TarTestsBase.AssertEntryModeFromFileSystemEquals(TarEntry entry, UnixFileMode fileMode)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarFile\TarFile.CreateFromDirectory.File.Tests.cs(101,0): at System.Formats.Tar.Tests.TarFile_CreateFromDirectory_File_Tests.VerifyIncludeBa
  seDirectory(Boolean includeBaseDirectory)
             at InvokeStub_TarFile_CreateFromDirectory_File_Tests.VerifyIncludeBaseDirectory(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(format: Ustar) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(117,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(120,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(121,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_File(format: V7) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(109,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_File(TarEntryFormat for
  mat)
             at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
          D:\runtime\src\libraries\System.Private.CoreLib\src\System\Reflection\MethodInvoker.cs(64,0): at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(format: Pax) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(117,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(120,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(121,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_File(format: Ustar) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(109,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_File(TarEntryFormat for
  mat)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_File(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_File(format: Pax) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(109,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_File(TarEntryFormat for
  mat)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_File(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(format: Gnu) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(117,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(120,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(121,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_File_Async(Ta
  rEntryFormat format)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_File(format: Gnu) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntry.File.Tests.cs(109,0): at System.Formats.Tar.Tests.TarWriter_WriteEntry_File_Tests.Add_File(TarEntryFormat for
  mat)
             at InvokeStub_TarWriter_WriteEntry_File_Tests.Add_File(Object, Object, IntPtr*)
             at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Async(format: V7, withContents: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(167,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(170,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(171,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Async(format: V7, withContents: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(167,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(170,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(171,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Async(format: Ustar, withContents: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(167,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(170,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(171,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Async(format: Ustar, withContents: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(167,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(170,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(171,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Async(format: Pax, withContents: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(167,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(170,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(171,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Async(format: Pax, withContents: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(167,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(170,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(171,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Async(format: Gnu, withContents: False) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(167,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(170,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(171,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          --- End of stack trace from previous location ---
      System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Async(format: Gnu, withContents: True) [FAIL]
        Assert.Equal() Failure
        Expected: OtherExecute | OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Actual:   OtherRead | GroupExecute | GroupRead | UserExecute | UserWrite | UserRead
        Stack Trace:
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.File.Base.Windows.cs(16,0): at System.Formats.Tar.Tests.TarWriter_File_Base.VerifyPlatformSpecificMetadata(String filePa
  th, TarEntry entry)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(167,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(170,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          D:\runtime\src\libraries\System.Formats.Tar\tests\TarWriter\TarWriter.WriteEntryAsync.File.Tests.cs(171,0): at System.Formats.Tar.Tests.TarWriter_WriteEntryAsync_File_Tests.Add_Directory_Asy
  nc(TarEntryFormat format, Boolean withContents)
          --- End of stack trace from previous location ---
    Finished:    System.Formats.Tar.Tests
  === TEST EXECUTION SUMMARY ===
     System.Formats.Tar.Tests  Total: 755, Errors: 0, Failed: 44, Skipped: 0, Time: 0.736s
  ----- end 2022-08-08 11:50:38.30 ----- exit code 1 ----------------------------------------------------------

@tmds
Copy link
Member Author

tmds commented Aug 8, 2022

I applied the #72078 (comment), but then I ran the Windows tests and noticed they are failing with these errors:

There was a typo in the DefaultWindowsMode. It should be fixed now.

@carlossanlop
Copy link
Member

/azp run runtime-extra-platforms

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Member

@carlossanlop carlossanlop left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tmds I left a few more comments and also ran a runtime extra platforms job.

@carlossanlop
Copy link
Member

/azp run runtime-extra-platforms

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Member

@carlossanlop carlossanlop left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. I'll merge it assuming the extra platforms CI legs don't show anything weird.

@carlossanlop
Copy link
Member

Lots of unrelated failures, nothing on tar. Merging :shipit:

Thank you @tmds for your help!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-System.Formats.Tar community-contribution Indicates that the PR has been added by a community member
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Zip and Tar don't (re)store directory permissions
4 participants