Hi Jan, On Thu, 12 Sept 2024 at 20:54, Jan Friedrich <freeand...@apache.org> wrote: > How to run the unit tests? > - install docker (if you haven't already) > - https://docs.docker.com/engine/install/ > - in logging/log4net run > - `docker build -t log4net-builder .` > - `docker run -it log4net-builder` > - this will > - install all dependencies in the container > - build src/log4net.sln > - inside the container run > - `dotnet test /logging-log4net/src/log4net.sln` > > [ ] +1, release the artifacts > [ ] -1, don't release, because ...
I verified: * the hashes of the distribution archives, * the signatures on the distribution archives, * I built Log4Net using the Docker script, * I ran the unit tests successfully. +1, release the artifacts Note regarding reproducibility: I rebuilt the Docker image twice, by taking care to purge the caches after each time (docker builder purge). The images were obviously different, but the generated binary files were identical. Comparing the local binaries with those in the binary distribution I have the Diffoscope output below. I am wondering why the image built on Linux and the image built on Windows do have a different time stamp in the header. The timestamp on Linux is reproducible between builds. --- apache-log4net-binaries-3.0.0/netstandard2.0/log4net.dll +++ Release/netstandard2.0/log4net.dll ├── pedump {} │ @@ -1,25 +1,25 @@ │ │ COFF Header: │ Machine: 0x014c │ Sections: 0x0003 │ - Time stamp: 0xfcdb425c │ + Time stamp: 0xb4cea035 │ Pointer to Symbol Table: 0x00000000 │ Symbol Count: 0x00000000 │ Optional Header Size: 0x00e0 │ Characteristics: 0x2022 │ │ PE Header: │ Magic (0x010b): 0x010b │ LMajor (6): 0x30 │ LMinor (0): 0x00 │ Code Size: 0x00043000 │ Initialized Data Size: 0x00002000 │ Uninitialized Data Size: 0x00000000 │ - Entry Point RVA: 0x00044842 │ + Entry Point RVA: 0x00044836 │ Code Base RVA: 0x00002000 │ Data Base RVA: 0x00046000 │ │ │ NT Header: │ Image Base (0x400000): 0x11000000 │ Section Alignment (8192): 0x00002000 │ @@ -29,27 +29,27 @@ │ User Major (0): 0x0000 │ User Minor (0): 0x0000 │ Subsys major (4): 0x0004 │ Subsys minor (0): 0x0000 │ Reserverd: 0x00000000 │ Image Size: 0x0004a000 │ Header Size: 0x00001000 │ - Checksum (0): 0x0004ec1d │ + Checksum (0): 0x0004833b │ Subsystem: 0x0003 │ DLL Flags (0): 0x8560 │ Stack Reserve Size (1M): 0x00100000 │ Stack commit Size (4096): 0x00001000 │ Heap Reserve Size (1M): 0x00100000 │ Heap Commit Size (4096): 0x00001000 │ Loader flags (0x1): 0x00000000 │ Data Directories (16): 0x00000010 │ │ Data directories: │ Export Table: 0x00000000 [0x00000000] │ - Import Table: 0x000447f0 [0x0000004f] │ + Import Table: 0x000447e3 [0x0000004f] │ Resource Table: 0x00046000 [0x000004c0] │ Exception Table: 0x00000000 [0x00000000] │ Certificate Table: 0x00000000 [0x00000000] │ Reloc Table: 0x00048000 [0x0000000c] │ Debug: 0x0004470c [0x00000054] │ Copyright: 0x00000000 [0x00000000] │ Global Ptr: 0x00000000 [0x00000000] │ @@ -57,15 +57,15 @@ │ Load Config Table: 0x00000000 [0x00000000] │ Bound Import: 0x00000000 [0x00000000] │ IAT: 0x00002000 [0x00000008] │ Delay Import Desc: 0x00000000 [0x00000000] │ CLI Header: 0x00002008 [0x00000048] │ │ Name: .text │ - Virtual Size: 0x00042848 │ + Virtual Size: 0x0004283c │ Virtual Address: 0x00002000 │ Raw Data Size: 0x00043000 │ Raw Data Ptr: 0x00001000 │ Reloc Ptr: 0x00000000 │ LineNo Ptr: 0x00000000 │ Reloc Count: 0x0000 │ Line Count: 0x0000 │ @@ -101,22 +101,22 @@ │ Resources at: 0x00000000 [0x00000000] │ Strong Name at: 0x0004468c [0x00000080] │ Code Manager at: 0x00000000 [0x00000000] │ VTableFixups at: 0x00000000 [0x00000000] │ EAT jumps at: 0x00000000 [0x00000000] │ │ Strong name: │ - A0 3E 62 DE 46 49 E0 6D 82 34 82 29 12 86 FA 07 │ - 80 48 B8 39 3A E1 D7 8D CB 46 D8 57 66 9F 72 50 │ - 2B 5C 19 73 DA 90 76 0F 57 C1 D0 EA E6 A9 D9 E4 │ - 12 7E 78 4C F0 93 83 F1 0E 21 1F 17 C1 B9 56 B2 │ - B5 64 C0 AA 50 3F 6E 62 03 07 0D D2 89 FE D4 44 │ - 25 AB A6 B3 7D C2 AE 0F 6B E5 E0 4A 28 62 C8 CD │ - 78 BC 42 7C 6B 71 4A 8A E9 57 B4 96 41 50 46 2B │ - 2E 94 95 FF 92 17 E2 92 65 92 64 C8 3A E9 9B 32 │ + C4 F4 DE 7B DE D3 7D 37 80 17 ED 01 5B 3D A5 3A │ + F8 B3 6B 87 09 64 6E EE D4 E1 ED 31 6F 9C 80 C8 │ + AA BC C1 37 92 46 1F C2 75 B7 31 4B 45 05 72 0C │ + 40 3E 39 00 18 17 A9 49 A9 2B 59 FE 11 68 83 6A │ + E3 4F F1 A4 EA BB EE EE 4A E5 B6 FD 5D CB D5 70 │ + 5C 61 55 11 C9 CC 88 02 D2 6C 5F 1D 4F 42 03 57 │ + 80 CB 87 D5 1D 7F 8F 2F 9F A1 E8 7F 95 DE 49 CC │ + EC 20 8D 46 9D EC 2D 5F DE ED 2C 84 C9 1D 41 B3 │ │ Public key: │ 00 24 00 00 04 80 00 00 94 00 00 00 06 02 00 00 │ 00 24 00 00 52 53 41 31 00 04 00 00 01 00 01 00 │ 29 7D CA C9 08 E2 86 89 36 03 99 02 7B 0E A4 CD │ 85 2F BB 74 E1 ED 95 E6 95 A5 BA 55 CB D1 D0 75 │ EC 20 CD B5 FA 6F C5 93 D3 D5 71 52 7B 20 55 8D