Rat (Release Audit Tool) resultsThe following document contains the results of Rat (Release Audit Tool). ***************************************************** Summary ------- Generated at: 2024-03-01T15:01:29+02:00 Notes: 5 Binaries: 392 Archives: 0 Standards: 738 Apache Licensed: 678 Generated Documents: 0 JavaDocs are generated, thus a license header is optional. Generated files do not require license headers. 60 Unknown Licenses ***************************************************** Files with unapproved licenses: .zarro-defaults README.md src/.idea/.idea.log4net/.idea/misc.xml src/.idea/.idea.log4net/.idea/.name src/.idea/.idea.log4net/.idea/workspace.xml src/.idea/.idea.log4net/.idea/indexLayout.xml src/.idea/.idea.log4net/.idea/projectSettingsUpdater.xml src/.idea/.idea.log4net/.idea/codeStyles/codeStyleConfig.xml src/.idea/.idea.log4net/.idea/vcs.xml src/integration-testing/log4net-673/Program.cs src/integration-testing/log4net-673/log4net-673.csproj src/integration-testing/log4net-673/bin/Debug/net6.0/log4net.config src/integration-testing/log4net-673/log4net.config src/integration-testing/log4net-611-main/Program.cs src/integration-testing/log4net-611-main/bin/Debug/net6.0/log4net.config src/integration-testing/log4net-611-main/bin/Debug/net462/log4net.config src/integration-testing/log4net-611-main/log4net-611-main.csproj src/integration-testing/log4net-611-main/log4net.config src/integration-testing/log4net-681/Program.cs src/integration-testing/log4net-681/bin/Debug/net6.0/log4net.config src/integration-testing/log4net-681/bin/Debug/net6.0/log4net.xml src/integration-testing/log4net-681/log4net-681.csproj src/integration-testing/log4net-681/log4net.config src/integration-testing/log4net-611-lib/DerivedAppender.cs src/integration-testing/log4net-611-lib/log4net-611-lib.csproj src/integration-testing/log4net-672/Program.cs src/integration-testing/log4net-672/bin/Debug/net6.0/log4net.config src/integration-testing/log4net-672/bin/Debug/net6.0/log4net.xml src/integration-testing/log4net-672/log4net-672.csproj src/integration-testing/log4net-672/log4net.config src/Directory.Build.props src/MonoForFramework.targets src/log4net.Tests/Signing.cs src/log4net.Tests/bin/Debug/netcoreapp3.1/log4net.xml src/log4net.Tests/bin/Debug/netcoreapp2.1/log4net.xml src/log4net.Tests/bin/Debug/netcoreapp1.0/log4net.xml src/log4net.Tests/bin/Debug/net462/log4net.xml src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_41d3d834_4320f4da.log.1 src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_41d3d834_4320f4da.log src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_41d3d834_4320f4da.log.2 src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_default.log src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/log4net.xml src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log.1 src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log.2 src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_default.log src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log.3 src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/log4net.xml src/log4net.Tests/bin/CrossPlatform/netcoreapp1.0/log4net.xml src/log4net.Tests/bin/CrossPlatform/net462/log4net.xml src/log4net.Tests/NUnitTestRunnerInitializer.cs src/log4net.Tests/log4net.Tests.csproj src/log4net/log4net.csproj src/log4net/Core/FixFlags.cs doc/RELEASING.md doc/sign-log4net-libraries.sh doc/BUILDING.md doc/CONTRIBUTING.md doc/ReleaseInstructions-legacy.txt appveyer.yml ***************************************************** ***************************************************** Files with Apache License headers will be marked AL Binary files (which do not require any license headers) will be marked B Compressed archives will be marked A Notices, licenses etc. will be marked N AL install-dotnet-core-sdk-1.1.ps1 AL Jenkinsfile AL local-tasks/prefix-build-artifacts.js AL local-tasks/hash-build-artifacts.js AL local-tasks/build-site.js B local-tasks/update-version-info.ts AL local-tasks/prepare-build-artifacts.js AL local-tasks/zip.js !????? .zarro-defaults N STATUS.txt AL log4net.shfbproj AL extensions/nant.build AL extensions/nant.config AL extensions/net/nant.build AL extensions/net/1.0/log4net.Ext.Trace/nant.build AL extensions/net/1.0/log4net.Ext.Trace/cs/nant.build AL extensions/net/1.0/log4net.Ext.Trace/cs/src/TraceLogManager.cs AL extensions/net/1.0/log4net.Ext.Trace/cs/src/ITraceLog.cs AL extensions/net/1.0/log4net.Ext.Trace/cs/src/log4net.Ext.Trace.csproj AL extensions/net/1.0/log4net.Ext.Trace/cs/src/AssemblyInfo.cs AL extensions/net/1.0/log4net.Ext.Trace/cs/src/TraceLogImpl.cs AL extensions/net/1.0/log4net.Ext.Trace/cs/nant.config AL extensions/net/1.0/log4net.Ext.Trace/nant.config AL extensions/net/1.0/log4net.Ext.EventID/nant.build AL extensions/net/1.0/log4net.Ext.EventID/cs/nant.build AL extensions/net/1.0/log4net.Ext.EventID/cs/src/AssemblyInfo.cs AL extensions/net/1.0/log4net.Ext.EventID/cs/src/EventIDLogManager.cs AL extensions/net/1.0/log4net.Ext.EventID/cs/src/IEventIDLog.cs AL extensions/net/1.0/log4net.Ext.EventID/cs/src/log4net.Ext.EventID.csproj AL extensions/net/1.0/log4net.Ext.EventID/cs/src/EventIDLogImpl.cs AL extensions/net/1.0/log4net.Ext.EventID/cs/nant.config AL extensions/net/1.0/log4net.Ext.EventID/nant.config AL extensions/net/1.0/nant.build AL extensions/net/1.0/log4net.Ext.MarshalByRef/nant.build AL extensions/net/1.0/log4net.Ext.MarshalByRef/cs/nant.build AL extensions/net/1.0/log4net.Ext.MarshalByRef/cs/src/AssemblyInfo.cs AL extensions/net/1.0/log4net.Ext.MarshalByRef/cs/src/log4net.Ext.MarshalByRef.csproj AL extensions/net/1.0/log4net.Ext.MarshalByRef/cs/src/MarshalByRefLogImpl.cs AL extensions/net/1.0/log4net.Ext.MarshalByRef/cs/src/MarshalByRefLogManager.cs AL extensions/net/1.0/log4net.Ext.MarshalByRef/cs/nant.config AL extensions/net/1.0/log4net.Ext.MarshalByRef/nant.config AL extensions/net/1.0/nant.config AL extensions/net/1.0/cs-extensions.sln AL extensions/net/nant.config B build-tools/nuget.exe AL log4net.build B package-icon.png AL build.cmd N NOTICE AL log4net.include !????? README.md AL build-with-docker-for-windows.bat AL .asf.yaml N LICENSE AL examples/netcf/nant.build AL examples/netcf/1.0/Tutorials/ConsoleApp/nant.build AL examples/netcf/1.0/Tutorials/ConsoleApp/vb/nant.build AL examples/netcf/1.0/Tutorials/ConsoleApp/vb/src/ConsoleApp.vbdproj AL examples/netcf/1.0/Tutorials/ConsoleApp/vb/src/AssemblyInfo.vb B examples/netcf/1.0/Tutorials/ConsoleApp/vb/src/ConsoleApp.exe.config AL examples/netcf/1.0/Tutorials/ConsoleApp/vb/src/EntryPoint.vb AL examples/netcf/1.0/Tutorials/ConsoleApp/vb/src/LoggingExample.vb AL examples/netcf/1.0/Tutorials/ConsoleApp/vb/nant.config AL examples/netcf/1.0/Tutorials/ConsoleApp/cs/nant.build AL examples/netcf/1.0/Tutorials/ConsoleApp/cs/src/ConsoleApp.csdproj AL examples/netcf/1.0/Tutorials/ConsoleApp/cs/src/AssemblyInfo.cs AL examples/netcf/1.0/Tutorials/ConsoleApp/cs/src/EntryPoint.cs B examples/netcf/1.0/Tutorials/ConsoleApp/cs/src/ConsoleApp.exe.config AL examples/netcf/1.0/Tutorials/ConsoleApp/cs/src/LoggingExample.cs AL examples/netcf/1.0/Tutorials/ConsoleApp/cs/nant.config AL examples/netcf/1.0/Tutorials/ConsoleApp/nant.config AL examples/netcf/1.0/Tutorials/nant.build AL examples/netcf/1.0/Tutorials/nant.config AL examples/netcf/1.0/vb-examples.sln AL examples/netcf/1.0/nant.build AL examples/netcf/1.0/cs-examples.sln AL examples/netcf/1.0/nant.config AL examples/netcf/nant.config AL examples/nant.build AL examples/mono/nant.build AL examples/mono/1.0/Tutorials/ConsoleApp/nant.build AL examples/mono/1.0/Tutorials/ConsoleApp/cs/nant.build AL examples/mono/1.0/Tutorials/ConsoleApp/cs/src/AssemblyInfo.cs AL examples/mono/1.0/Tutorials/ConsoleApp/cs/src/App.config AL examples/mono/1.0/Tutorials/ConsoleApp/cs/src/LoggingExample.cs AL examples/mono/1.0/Tutorials/ConsoleApp/cs/nant.config AL examples/mono/1.0/Tutorials/ConsoleApp/nant.config AL examples/mono/1.0/Tutorials/nant.build AL examples/mono/1.0/Tutorials/nant.config AL examples/mono/1.0/nant.build AL examples/mono/1.0/Performance/NotLogging/nant.build AL examples/mono/1.0/Performance/NotLogging/cs/nant.build AL examples/mono/1.0/Performance/NotLogging/cs/src/AssemblyInfo.cs AL examples/mono/1.0/Performance/NotLogging/cs/src/NotLogging.cs AL examples/mono/1.0/Performance/NotLogging/cs/nant.config AL examples/mono/1.0/Performance/NotLogging/nant.config AL examples/mono/1.0/Performance/nant.build AL examples/mono/1.0/Performance/nant.config AL examples/mono/1.0/Repository/SharedModule/nant.build AL examples/mono/1.0/Repository/SharedModule/cs/nant.build AL examples/mono/1.0/Repository/SharedModule/cs/src/AssemblyInfo.cs AL examples/mono/1.0/Repository/SharedModule/cs/src/Math.cs AL examples/mono/1.0/Repository/SharedModule/cs/nant.config AL examples/mono/1.0/Repository/SharedModule/nant.config AL examples/mono/1.0/Repository/SimpleModule/nant.build AL examples/mono/1.0/Repository/SimpleModule/cs/nant.build B examples/mono/1.0/Repository/SimpleModule/cs/src/SimpleModule.dll.log4net AL examples/mono/1.0/Repository/SimpleModule/cs/src/AssemblyInfo.cs AL examples/mono/1.0/Repository/SimpleModule/cs/src/Math.cs AL examples/mono/1.0/Repository/SimpleModule/cs/nant.config AL examples/mono/1.0/Repository/SimpleModule/nant.config AL examples/mono/1.0/Repository/nant.build AL examples/mono/1.0/Repository/SimpleApp/nant.build AL examples/mono/1.0/Repository/SimpleApp/cs/nant.build AL examples/mono/1.0/Repository/SimpleApp/cs/src/AssemblyInfo.cs AL examples/mono/1.0/Repository/SimpleApp/cs/src/EntryPoint.cs AL examples/mono/1.0/Repository/SimpleApp/cs/src/App.config B examples/mono/1.0/Repository/SimpleApp/cs/src/SimpleApp.exe.log4net AL examples/mono/1.0/Repository/SimpleApp/cs/nant.config AL examples/mono/1.0/Repository/SimpleApp/nant.config AL examples/mono/1.0/Repository/nant.config AL examples/mono/1.0/nant.config AL examples/mono/nant.config AL examples/sscli/nant.build AL examples/sscli/1.0/Tutorials/ConsoleApp/nant.build AL examples/sscli/1.0/Tutorials/ConsoleApp/js/nant.build AL examples/sscli/1.0/Tutorials/ConsoleApp/js/src/App.config AL examples/sscli/1.0/Tutorials/ConsoleApp/js/src/LoggingExample.js AL examples/sscli/1.0/Tutorials/ConsoleApp/js/src/AssemblyInfo.js AL examples/sscli/1.0/Tutorials/ConsoleApp/js/nant.config AL examples/sscli/1.0/Tutorials/ConsoleApp/nant.config AL examples/sscli/1.0/Tutorials/nant.build AL examples/sscli/1.0/Tutorials/nant.config AL examples/sscli/1.0/nant.build AL examples/sscli/1.0/Repository/SharedModule/nant.build AL examples/sscli/1.0/Repository/SharedModule/cs/nant.build AL examples/sscli/1.0/Repository/SharedModule/cs/src/AssemblyInfo.cs AL examples/sscli/1.0/Repository/SharedModule/cs/src/Math.cs AL examples/sscli/1.0/Repository/SharedModule/cs/nant.config AL examples/sscli/1.0/Repository/SharedModule/nant.config AL examples/sscli/1.0/Repository/SimpleModule/nant.build AL examples/sscli/1.0/Repository/SimpleModule/cs/nant.build B examples/sscli/1.0/Repository/SimpleModule/cs/src/SimpleModule.dll.log4net AL examples/sscli/1.0/Repository/SimpleModule/cs/src/AssemblyInfo.cs AL examples/sscli/1.0/Repository/SimpleModule/cs/src/Math.cs AL examples/sscli/1.0/Repository/SimpleModule/cs/nant.config AL examples/sscli/1.0/Repository/SimpleModule/nant.config AL examples/sscli/1.0/Repository/nant.build AL examples/sscli/1.0/Repository/SimpleApp/nant.build AL examples/sscli/1.0/Repository/SimpleApp/cs/nant.build AL examples/sscli/1.0/Repository/SimpleApp/cs/src/AssemblyInfo.cs AL examples/sscli/1.0/Repository/SimpleApp/cs/src/EntryPoint.cs AL examples/sscli/1.0/Repository/SimpleApp/cs/src/App.config B examples/sscli/1.0/Repository/SimpleApp/cs/src/SimpleApp.exe.log4net AL examples/sscli/1.0/Repository/SimpleApp/cs/nant.config AL examples/sscli/1.0/Repository/SimpleApp/nant.config AL examples/sscli/1.0/Repository/nant.config AL examples/sscli/1.0/nant.config AL examples/sscli/nant.config AL examples/nant.config AL examples/net/2.0/Tutorials/ConsoleApp/nant.build AL examples/net/2.0/Tutorials/ConsoleApp/vb/nant.build AL examples/net/2.0/Tutorials/ConsoleApp/vb/src/ConsoleApp.vbproj AL examples/net/2.0/Tutorials/ConsoleApp/vb/src/AssemblyInfo.vb AL examples/net/2.0/Tutorials/ConsoleApp/vb/src/App.config AL examples/net/2.0/Tutorials/ConsoleApp/vb/src/LoggingExample.vb AL examples/net/2.0/Tutorials/ConsoleApp/vb/nant.config AL examples/net/2.0/Tutorials/ConsoleApp/cs/nant.build AL examples/net/2.0/Tutorials/ConsoleApp/cs/src/AssemblyInfo.cs AL examples/net/2.0/Tutorials/ConsoleApp/cs/src/App.config AL examples/net/2.0/Tutorials/ConsoleApp/cs/src/ConsoleApp.csproj AL examples/net/2.0/Tutorials/ConsoleApp/cs/src/LoggingExample.cs AL examples/net/2.0/Tutorials/ConsoleApp/cs/nant.config AL examples/net/2.0/Tutorials/ConsoleApp/nant.config AL examples/net/2.0/Tutorials/nant.build AL examples/net/2.0/Tutorials/WebApp/nant.build N examples/net/2.0/Tutorials/WebApp/readme.txt AL examples/net/2.0/Tutorials/WebApp/vb/nant.build B examples/net/2.0/Tutorials/WebApp/vb/src/SimpleModule.dll.log4net AL examples/net/2.0/Tutorials/WebApp/vb/src/AssemblyInfo.vb AL examples/net/2.0/Tutorials/WebApp/vb/src/Global.asax.resx B examples/net/2.0/Tutorials/WebApp/vb/src/WebApp.dll.log4net AL examples/net/2.0/Tutorials/WebApp/vb/src/Global.asax AL examples/net/2.0/Tutorials/WebApp/vb/src/WebForm1.aspx.resx AL examples/net/2.0/Tutorials/WebApp/vb/src/WebForm1.aspx.vb AL examples/net/2.0/Tutorials/WebApp/vb/src/WebForm1.aspx AL examples/net/2.0/Tutorials/WebApp/vb/src/WebApp.vbproj AL examples/net/2.0/Tutorials/WebApp/vb/src/WebApp.vbproj.webinfo AL examples/net/2.0/Tutorials/WebApp/vb/src/Global.asax.vb AL examples/net/2.0/Tutorials/WebApp/vb/src/AssemblyVersionInfo.vb AL examples/net/2.0/Tutorials/WebApp/vb/src/WebApp.vsdisco AL examples/net/2.0/Tutorials/WebApp/vb/src/Web.config AL examples/net/2.0/Tutorials/WebApp/vb/nant.config AL examples/net/2.0/Tutorials/WebApp/cs/nant.build B examples/net/2.0/Tutorials/WebApp/cs/src/SimpleModule.dll.log4net AL examples/net/2.0/Tutorials/WebApp/cs/src/WebForm1.aspx.cs AL examples/net/2.0/Tutorials/WebApp/cs/src/Global.asax.resx AL examples/net/2.0/Tutorials/WebApp/cs/src/WebApp.csproj.webinfo AL examples/net/2.0/Tutorials/WebApp/cs/src/AssemblyInfo.cs B examples/net/2.0/Tutorials/WebApp/cs/src/WebApp.dll.log4net AL examples/net/2.0/Tutorials/WebApp/cs/src/Global.asax.cs AL examples/net/2.0/Tutorials/WebApp/cs/src/Global.asax AL examples/net/2.0/Tutorials/WebApp/cs/src/AssemblyVersionInfo.cs AL examples/net/2.0/Tutorials/WebApp/cs/src/WebForm1.aspx.resx AL examples/net/2.0/Tutorials/WebApp/cs/src/WebForm1.aspx AL examples/net/2.0/Tutorials/WebApp/cs/src/WebApp.csproj AL examples/net/2.0/Tutorials/WebApp/cs/src/WebApp.vsdisco AL examples/net/2.0/Tutorials/WebApp/cs/src/Web.config AL examples/net/2.0/Tutorials/WebApp/cs/nant.config AL examples/net/2.0/Tutorials/WebApp/nant.config AL examples/net/2.0/Tutorials/nant.config AL examples/net/2.0/Appenders/SampleAppendersApp/nant.build AL examples/net/2.0/Appenders/SampleAppendersApp/cs/nant.build AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/Appender/SimpleSmtpAppender.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/Appender/PatternFileAppender.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/Appender/MsmqAppender.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/Appender/MessageObjectExpanderAppender.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/Appender/PatternLayoutAdoNetAppender.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/Appender/AsyncAppender.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/Appender/PatternLayoutAdoNetAppenderParameter.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/Appender/FastDbAppender.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/Appender/FireEventAppender.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/Appender/MessageBoxAppender.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/AssemblyInfo.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/App.config AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/SampleAppendersApp.csproj AL examples/net/2.0/Appenders/SampleAppendersApp/cs/src/LoggingExample.cs AL examples/net/2.0/Appenders/SampleAppendersApp/cs/nant.config AL examples/net/2.0/Appenders/SampleAppendersApp/nant.config AL examples/net/2.0/Appenders/WmiAppender/nant.build AL examples/net/2.0/Appenders/WmiAppender/cs/nant.build AL examples/net/2.0/Appenders/WmiAppender/cs/src/AssemblyInfo.cs AL examples/net/2.0/Appenders/WmiAppender/cs/src/WmiLoggingEvent.cs AL examples/net/2.0/Appenders/WmiAppender/cs/src/WmiLayout.cs AL examples/net/2.0/Appenders/WmiAppender/cs/src/IWmiBoundEvent.cs AL examples/net/2.0/Appenders/WmiAppender/cs/src/WmiAppender.csproj AL examples/net/2.0/Appenders/WmiAppender/cs/src/WmiInstaller.cs AL examples/net/2.0/Appenders/WmiAppender/cs/src/WmiAppender.cs AL examples/net/2.0/Appenders/WmiAppender/cs/nant.config AL examples/net/2.0/Appenders/WmiAppender/nant.config AL examples/net/2.0/Appenders/nant.build AL examples/net/2.0/Appenders/nant.config AL examples/net/2.0/Extensibility/EventIDLogApp/nant.build AL examples/net/2.0/Extensibility/EventIDLogApp/cs/nant.build AL examples/net/2.0/Extensibility/EventIDLogApp/cs/src/AssemblyInfo.cs AL examples/net/2.0/Extensibility/EventIDLogApp/cs/src/EventIDLogApp.cs AL examples/net/2.0/Extensibility/EventIDLogApp/cs/src/App.config AL examples/net/2.0/Extensibility/EventIDLogApp/cs/src/EventIDLogApp.csproj AL examples/net/2.0/Extensibility/EventIDLogApp/cs/nant.config AL examples/net/2.0/Extensibility/EventIDLogApp/nant.config AL examples/net/2.0/Extensibility/nant.build AL examples/net/2.0/Extensibility/TraceLogApp/nant.build AL examples/net/2.0/Extensibility/TraceLogApp/cs/nant.build AL examples/net/2.0/Extensibility/TraceLogApp/cs/src/AssemblyInfo.cs AL examples/net/2.0/Extensibility/TraceLogApp/cs/src/TraceLogApp.cs AL examples/net/2.0/Extensibility/TraceLogApp/cs/src/TraceLogApp.csproj B examples/net/2.0/Extensibility/TraceLogApp/cs/src/TraceLogApp.exe.log4net AL examples/net/2.0/Extensibility/TraceLogApp/cs/nant.config AL examples/net/2.0/Extensibility/TraceLogApp/nant.config AL examples/net/2.0/Extensibility/nant.config AL examples/net/2.0/vb-examples.sln AL examples/net/2.0/nant.build AL examples/net/2.0/Performance/NotLogging/nant.build AL examples/net/2.0/Performance/NotLogging/vb/nant.build AL examples/net/2.0/Performance/NotLogging/vb/src/AssemblyInfo.vb AL examples/net/2.0/Performance/NotLogging/vb/src/NotLogging.vbproj AL examples/net/2.0/Performance/NotLogging/vb/src/NotLogging.vb AL examples/net/2.0/Performance/NotLogging/vb/nant.config AL examples/net/2.0/Performance/NotLogging/cs/nant.build AL examples/net/2.0/Performance/NotLogging/cs/src/AssemblyInfo.cs AL examples/net/2.0/Performance/NotLogging/cs/src/NotLogging.csproj AL examples/net/2.0/Performance/NotLogging/cs/src/NotLogging.cs AL examples/net/2.0/Performance/NotLogging/cs/nant.config AL examples/net/2.0/Performance/NotLogging/nant.config AL examples/net/2.0/Performance/nant.build AL examples/net/2.0/Performance/nant.config AL examples/net/2.0/Remoting/nant.build AL examples/net/2.0/Remoting/RemotingServer/nant.build AL examples/net/2.0/Remoting/RemotingServer/cs/nant.build AL examples/net/2.0/Remoting/RemotingServer/cs/src/RemotingServer.cs AL examples/net/2.0/Remoting/RemotingServer/cs/src/AssemblyInfo.cs AL examples/net/2.0/Remoting/RemotingServer/cs/src/RemotingServer.csproj AL examples/net/2.0/Remoting/RemotingServer/cs/src/App.config AL examples/net/2.0/Remoting/RemotingServer/cs/nant.config AL examples/net/2.0/Remoting/RemotingServer/nant.config AL examples/net/2.0/Remoting/RemotingClient/nant.build AL examples/net/2.0/Remoting/RemotingClient/cs/nant.build AL examples/net/2.0/Remoting/RemotingClient/cs/src/RemotingClient.csproj AL examples/net/2.0/Remoting/RemotingClient/cs/src/AssemblyInfo.cs AL examples/net/2.0/Remoting/RemotingClient/cs/src/RemotingClient.cs AL examples/net/2.0/Remoting/RemotingClient/cs/src/App.config AL examples/net/2.0/Remoting/RemotingClient/cs/nant.config AL examples/net/2.0/Remoting/RemotingClient/nant.config AL examples/net/2.0/Remoting/nant.config AL examples/net/2.0/Layouts/SampleLayoutsApp/nant.build AL examples/net/2.0/Layouts/SampleLayoutsApp/cs/nant.build AL examples/net/2.0/Layouts/SampleLayoutsApp/cs/src/Layout/LevelPatternLayout.cs AL examples/net/2.0/Layouts/SampleLayoutsApp/cs/src/Layout/ForwardingLayout.cs AL examples/net/2.0/Layouts/SampleLayoutsApp/cs/src/Layout/LineWrappingLayout.cs AL examples/net/2.0/Layouts/SampleLayoutsApp/cs/src/Layout/LevelConversionPattern.cs AL examples/net/2.0/Layouts/SampleLayoutsApp/cs/src/AssemblyInfo.cs AL examples/net/2.0/Layouts/SampleLayoutsApp/cs/src/App.config AL examples/net/2.0/Layouts/SampleLayoutsApp/cs/src/SampleLayoutsApp.csproj AL examples/net/2.0/Layouts/SampleLayoutsApp/cs/src/LoggingExample.cs AL examples/net/2.0/Layouts/SampleLayoutsApp/cs/nant.config AL examples/net/2.0/Layouts/SampleLayoutsApp/nant.config AL examples/net/2.0/Layouts/nant.build AL examples/net/2.0/Layouts/nant.config AL examples/net/2.0/cs-examples.sln AL examples/net/2.0/Repository/SharedModule/nant.build AL examples/net/2.0/Repository/SharedModule/vb/nant.build AL examples/net/2.0/Repository/SharedModule/vb/src/Math.vb AL examples/net/2.0/Repository/SharedModule/vb/src/AssemblyInfo.vb AL examples/net/2.0/Repository/SharedModule/vb/src/SharedModule.vbproj AL examples/net/2.0/Repository/SharedModule/vb/nant.config AL examples/net/2.0/Repository/SharedModule/cs/nant.build AL examples/net/2.0/Repository/SharedModule/cs/src/AssemblyInfo.cs AL examples/net/2.0/Repository/SharedModule/cs/src/Math.cs AL examples/net/2.0/Repository/SharedModule/cs/src/SharedModule.csproj AL examples/net/2.0/Repository/SharedModule/cs/nant.config AL examples/net/2.0/Repository/SharedModule/nant.config AL examples/net/2.0/Repository/SimpleModule/nant.build AL examples/net/2.0/Repository/SimpleModule/vb/nant.build AL examples/net/2.0/Repository/SimpleModule/vb/src/Math.vb B examples/net/2.0/Repository/SimpleModule/vb/src/SimpleModule.dll.log4net AL examples/net/2.0/Repository/SimpleModule/vb/src/AssemblyInfo.vb AL examples/net/2.0/Repository/SimpleModule/vb/src/SimpleModule.vbproj AL examples/net/2.0/Repository/SimpleModule/vb/nant.config AL examples/net/2.0/Repository/SimpleModule/cs/nant.build B examples/net/2.0/Repository/SimpleModule/cs/src/SimpleModule.dll.log4net AL examples/net/2.0/Repository/SimpleModule/cs/src/AssemblyInfo.cs AL examples/net/2.0/Repository/SimpleModule/cs/src/Math.cs AL examples/net/2.0/Repository/SimpleModule/cs/src/SimpleModule.csproj AL examples/net/2.0/Repository/SimpleModule/cs/nant.config AL examples/net/2.0/Repository/SimpleModule/nant.config AL examples/net/2.0/Repository/nant.build AL examples/net/2.0/Repository/SimpleApp/nant.build AL examples/net/2.0/Repository/SimpleApp/vb/nant.build AL examples/net/2.0/Repository/SimpleApp/vb/src/SimpleApp.vbproj AL examples/net/2.0/Repository/SimpleApp/vb/src/AssemblyInfo.vb AL examples/net/2.0/Repository/SimpleApp/vb/src/App.config AL examples/net/2.0/Repository/SimpleApp/vb/src/EntryPoint.vb B examples/net/2.0/Repository/SimpleApp/vb/src/SimpleApp.exe.log4net AL examples/net/2.0/Repository/SimpleApp/vb/nant.config AL examples/net/2.0/Repository/SimpleApp/cs/nant.build AL examples/net/2.0/Repository/SimpleApp/cs/src/AssemblyInfo.cs AL examples/net/2.0/Repository/SimpleApp/cs/src/EntryPoint.cs AL examples/net/2.0/Repository/SimpleApp/cs/src/App.config AL examples/net/2.0/Repository/SimpleApp/cs/src/SimpleApp.csproj B examples/net/2.0/Repository/SimpleApp/cs/src/SimpleApp.exe.log4net AL examples/net/2.0/Repository/SimpleApp/cs/nant.config AL examples/net/2.0/Repository/SimpleApp/nant.config AL examples/net/2.0/Repository/nant.config AL examples/net/2.0/nant.config AL examples/net/nant.build AL examples/net/1.1/Tutorials/ConsoleApp/nant.build AL examples/net/1.1/Tutorials/ConsoleApp/cpp/nant.build AL examples/net/1.1/Tutorials/ConsoleApp/cpp/src/ConsoleApp.vcproj AL examples/net/1.1/Tutorials/ConsoleApp/cpp/src/AssemblyInfo.cpp AL examples/net/1.1/Tutorials/ConsoleApp/cpp/src/ConsoleApp.cpp AL examples/net/1.1/Tutorials/ConsoleApp/cpp/src/App.config AL examples/net/1.1/Tutorials/ConsoleApp/cpp/nant.config AL examples/net/1.1/Tutorials/ConsoleApp/js/nant.build AL examples/net/1.1/Tutorials/ConsoleApp/js/src/App.config AL examples/net/1.1/Tutorials/ConsoleApp/js/src/LoggingExample.js AL examples/net/1.1/Tutorials/ConsoleApp/js/src/AssemblyInfo.js AL examples/net/1.1/Tutorials/ConsoleApp/js/nant.config AL examples/net/1.1/Tutorials/ConsoleApp/nant.config AL examples/net/1.1/Tutorials/nant.build AL examples/net/1.1/Tutorials/nant.config AL examples/net/1.1/nant.build AL examples/net/1.1/cpp-examples.sln AL examples/net/1.1/Repository/SharedModule/nant.build AL examples/net/1.1/Repository/SharedModule/js/nant.build AL examples/net/1.1/Repository/SharedModule/js/src/Math.js AL examples/net/1.1/Repository/SharedModule/js/src/AssemblyInfo.js AL examples/net/1.1/Repository/SharedModule/js/nant.config AL examples/net/1.1/Repository/SharedModule/nant.config AL examples/net/1.1/Repository/SimpleModule/nant.build AL examples/net/1.1/Repository/SimpleModule/js/nant.build B examples/net/1.1/Repository/SimpleModule/js/src/SimpleModule.dll.log4net AL examples/net/1.1/Repository/SimpleModule/js/src/Math.js AL examples/net/1.1/Repository/SimpleModule/js/src/AssemblyInfo.js AL examples/net/1.1/Repository/SimpleModule/js/nant.config AL examples/net/1.1/Repository/SimpleModule/nant.config AL examples/net/1.1/Repository/nant.build AL examples/net/1.1/Repository/SimpleApp/nant.build AL examples/net/1.1/Repository/SimpleApp/js/nant.build AL examples/net/1.1/Repository/SimpleApp/js/src/App.config B examples/net/1.1/Repository/SimpleApp/js/src/SimpleApp.exe.log4net AL examples/net/1.1/Repository/SimpleApp/js/src/EntryPoint.js AL examples/net/1.1/Repository/SimpleApp/js/src/AssemblyInfo.js AL examples/net/1.1/Repository/SimpleApp/js/nant.config AL examples/net/1.1/Repository/SimpleApp/nant.config AL examples/net/1.1/Repository/nant.config AL examples/net/1.1/nant.config AL examples/net/nant.config !????? src/.idea/.idea.log4net/.idea/misc.xml !????? src/.idea/.idea.log4net/.idea/.name !????? src/.idea/.idea.log4net/.idea/workspace.xml !????? src/.idea/.idea.log4net/.idea/indexLayout.xml !????? src/.idea/.idea.log4net/.idea/projectSettingsUpdater.xml !????? src/.idea/.idea.log4net/.idea/codeStyles/codeStyleConfig.xml !????? src/.idea/.idea.log4net/.idea/vcs.xml AL src/site/xdoc/history.xml AL src/site/xdoc/download_log4net.xml AL src/site/xdoc/release/howto/chainsaw.xml AL src/site/xdoc/release/howto/index.xml AL src/site/xdoc/release/config-examples.xml AL src/site/xdoc/release/security-reports.xml AL src/site/xdoc/release/framework-support.xml AL src/site/xdoc/release/example-apps.xml AL src/site/xdoc/release/release-notes.xml AL src/site/xdoc/release/building.xml AL src/site/xdoc/release/features.xml AL src/site/xdoc/release/manual/internals.xml AL src/site/xdoc/release/manual/repositories.xml AL src/site/xdoc/release/manual/plugins.xml AL src/site/xdoc/release/manual/configuration.xml AL src/site/xdoc/release/manual/contexts.xml AL src/site/xdoc/release/manual/introduction.xml AL src/site/xdoc/release/faq.xml AL src/site/xdoc/index.xml AL src/site/site.xml AL src/site/apt/roadmap.apt AL src/site/site.vm !????? src/integration-testing/log4net-673/Program.cs !????? src/integration-testing/log4net-673/log4net-673.csproj B src/integration-testing/log4net-673/bin/Debug/net6.0/runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll B src/integration-testing/log4net-673/bin/Debug/net6.0/log4net-673 B src/integration-testing/log4net-673/bin/Debug/net6.0/log4net-673.pdb B src/integration-testing/log4net-673/bin/Debug/net6.0/log4net.dll B src/integration-testing/log4net-673/bin/Debug/net6.0/System.Configuration.ConfigurationManager.dll B src/integration-testing/log4net-673/bin/Debug/net6.0/log4net-673.dll !????? src/integration-testing/log4net-673/bin/Debug/net6.0/log4net.config B src/integration-testing/log4net-673/bin/Debug/net6.0/System.Security.Cryptography.ProtectedData.dll B src/integration-testing/log4net-673/bin/Debug/net6.0/System.Security.Permissions.dll !????? src/integration-testing/log4net-673/log4net.config !????? src/integration-testing/log4net-611-main/Program.cs B src/integration-testing/log4net-611-main/bin/Debug/net6.0/runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll B src/integration-testing/log4net-611-main/bin/Debug/net6.0/log4net.dll B src/integration-testing/log4net-611-main/bin/Debug/net6.0/log4net-611-main.dll B src/integration-testing/log4net-611-main/bin/Debug/net6.0/System.Configuration.ConfigurationManager.dll B src/integration-testing/log4net-611-main/bin/Debug/net6.0/log4net-611-lib.dll B src/integration-testing/log4net-611-main/bin/Debug/net6.0/log4net-611-main B src/integration-testing/log4net-611-main/bin/Debug/net6.0/log4net-611-main.pdb B src/integration-testing/log4net-611-main/bin/Debug/net6.0/log4net-611-lib.pdb !????? src/integration-testing/log4net-611-main/bin/Debug/net6.0/log4net.config B src/integration-testing/log4net-611-main/bin/Debug/net6.0/System.Security.Cryptography.ProtectedData.dll B src/integration-testing/log4net-611-main/bin/Debug/net6.0/System.Security.Permissions.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Threading.Tasks.Parallel.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Runtime.Serialization.Json.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Linq.Parallel.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/log4net-611-main.exe B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Security.Cryptography.Algorithms.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Threading.Overlapped.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.ValueTuple.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.ComponentModel.Primitives.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Net.Ping.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Linq.Expressions.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Xml.XDocument.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Text.Encoding.Extensions.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.AppContext.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Security.Cryptography.Primitives.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Runtime.Serialization.Primitives.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/log4net.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Security.Cryptography.Encoding.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Xml.XPath.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.ComponentModel.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Threading.Timer.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Resources.ResourceManager.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.IO.FileSystem.Primitives.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Runtime.Extensions.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Collections.NonGeneric.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Runtime.CompilerServices.VisualC.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Net.NetworkInformation.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.IO.IsolatedStorage.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Security.SecureString.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Collections.Concurrent.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.IO.Compression.ZipFile.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Resources.Writer.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Runtime.InteropServices.RuntimeInformation.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Diagnostics.Tools.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Net.Primitives.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Diagnostics.Debug.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Security.Principal.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.IO.FileSystem.DriveInfo.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/log4net-611-lib.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Net.WebSockets.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Diagnostics.Contracts.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.ObjectModel.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Runtime.Serialization.Xml.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Collections.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Threading.Tasks.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Text.Encoding.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/log4net-611-main.pdb B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Runtime.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.IO.MemoryMappedFiles.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.IO.UnmanagedMemoryStream.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.IO.FileSystem.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Runtime.Handles.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Diagnostics.Process.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Runtime.InteropServices.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Xml.XmlSerializer.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/log4net-611-main.exe.config B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Net.Security.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Drawing.Primitives.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Net.Sockets.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Linq.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Net.WebHeaderCollection.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Diagnostics.Tracing.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Diagnostics.TraceSource.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/log4net-611-lib.pdb B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Security.Cryptography.X509Certificates.dll !????? src/integration-testing/log4net-611-main/bin/Debug/net462/log4net.config B src/integration-testing/log4net-611-main/bin/Debug/net462/System.IO.FileSystem.Watcher.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Data.Common.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Runtime.Serialization.Formatters.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Globalization.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Diagnostics.StackTrace.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Diagnostics.TextWriterTraceListener.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Reflection.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Reflection.Primitives.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Threading.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Globalization.Calendars.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Dynamic.Runtime.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.ComponentModel.EventBasedAsync.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Xml.XPath.XDocument.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Console.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.IO.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Linq.Queryable.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.IO.Compression.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/netstandard.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Security.Claims.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Net.Requests.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Threading.Thread.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Collections.Specialized.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Security.Cryptography.Csp.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Resources.Reader.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Xml.XmlDocument.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Threading.ThreadPool.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Diagnostics.FileVersionInfo.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Text.RegularExpressions.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Reflection.Extensions.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Net.NameResolution.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.ComponentModel.TypeConverter.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Runtime.Numerics.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Xml.ReaderWriter.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Net.Http.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.IO.Pipes.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/Microsoft.Win32.Primitives.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Globalization.Extensions.dll B src/integration-testing/log4net-611-main/bin/Debug/net462/System.Net.WebSockets.Client.dll !????? src/integration-testing/log4net-611-main/log4net-611-main.csproj !????? src/integration-testing/log4net-611-main/log4net.config !????? src/integration-testing/log4net-681/Program.cs B src/integration-testing/log4net-681/bin/Debug/net6.0/runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll B src/integration-testing/log4net-681/bin/Debug/net6.0/log4net-681.pdb B src/integration-testing/log4net-681/bin/Debug/net6.0/log4net.dll B src/integration-testing/log4net-681/bin/Debug/net6.0/log4net.pdb B src/integration-testing/log4net-681/bin/Debug/net6.0/System.Configuration.ConfigurationManager.dll B src/integration-testing/log4net-681/bin/Debug/net6.0/log4net-681 B src/integration-testing/log4net-681/bin/Debug/net6.0/log4net-681.dll !????? src/integration-testing/log4net-681/bin/Debug/net6.0/log4net.config B src/integration-testing/log4net-681/bin/Debug/net6.0/System.Security.Cryptography.ProtectedData.dll B src/integration-testing/log4net-681/bin/Debug/net6.0/System.Security.Permissions.dll !????? src/integration-testing/log4net-681/bin/Debug/net6.0/log4net.xml !????? src/integration-testing/log4net-681/log4net-681.csproj !????? src/integration-testing/log4net-681/log4net.config !????? src/integration-testing/log4net-611-lib/DerivedAppender.cs B src/integration-testing/log4net-611-lib/bin/Debug/netstandard2.0/log4net-611-lib.dll B src/integration-testing/log4net-611-lib/bin/Debug/netstandard2.0/log4net-611-lib.pdb !????? src/integration-testing/log4net-611-lib/log4net-611-lib.csproj !????? src/integration-testing/log4net-672/Program.cs B src/integration-testing/log4net-672/bin/Debug/net6.0/runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll B src/integration-testing/log4net-672/bin/Debug/net6.0/log4net-672.dll B src/integration-testing/log4net-672/bin/Debug/net6.0/log4net.dll B src/integration-testing/log4net-672/bin/Debug/net6.0/log4net.pdb B src/integration-testing/log4net-672/bin/Debug/net6.0/System.Configuration.ConfigurationManager.dll B src/integration-testing/log4net-672/bin/Debug/net6.0/PeanutButter.Utils.dll B src/integration-testing/log4net-672/bin/Debug/net6.0/PeanutButter.DuckTyping.dll B src/integration-testing/log4net-672/bin/Debug/net6.0/log4net-672.pdb B src/integration-testing/log4net-672/bin/Debug/net6.0/PeanutButter.EasyArgs.dll !????? src/integration-testing/log4net-672/bin/Debug/net6.0/log4net.config B src/integration-testing/log4net-672/bin/Debug/net6.0/System.Security.Cryptography.ProtectedData.dll B src/integration-testing/log4net-672/bin/Debug/net6.0/System.Security.Permissions.dll B src/integration-testing/log4net-672/bin/Debug/net6.0/log4net-672 !????? src/integration-testing/log4net-672/bin/Debug/net6.0/log4net.xml !????? src/integration-testing/log4net-672/log4net-672.csproj !????? src/integration-testing/log4net-672/log4net.config AL src/changes/changes.xml !????? src/Directory.Build.props !????? src/MonoForFramework.targets AL src/log4net.sln !????? src/log4net.Tests/Signing.cs AL src/log4net.Tests/Utils.cs AL src/log4net.Tests/Appender/RemotingAppenderTest.cs AL src/log4net.Tests/Appender/MemoryAppenderTest.cs AL src/log4net.Tests/Appender/SmtpPickupDirAppenderTest.cs AL src/log4net.Tests/Appender/TraceAppenderTest.cs AL src/log4net.Tests/Appender/RollingFileAppenderTest.cs AL src/log4net.Tests/Appender/EventLogAppenderTest.cs AL src/log4net.Tests/Appender/AppenderCollectionTest.cs AL src/log4net.Tests/Appender/DebugAppenderTest.cs AL src/log4net.Tests/Appender/EventRaisingAppender.cs AL src/log4net.Tests/Appender/AdoNetAppenderTest.cs AL src/log4net.Tests/Appender/RecursiveLoggingTest.cs AL src/log4net.Tests/Appender/AdoNet/Log4NetConnection.cs AL src/log4net.Tests/Appender/AdoNet/Log4NetTransaction.cs AL src/log4net.Tests/Appender/AdoNet/Log4NetParameter.cs AL src/log4net.Tests/Appender/AdoNet/Log4NetParameterCollection.cs AL src/log4net.Tests/Appender/AdoNet/Log4NetCommand.cs AL src/log4net.Tests/Appender/CountingAppender.cs AL src/log4net.Tests/Appender/BufferingAppenderTest.cs AL src/log4net.Tests/Appender/StringAppender.cs B src/log4net.Tests/bin/Debug/netcoreapp3.1/runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/NUnit3.TestAdapter.pdb B src/log4net.Tests/bin/Debug/netcoreapp3.1/nunit.engine.api.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/NuGet.Frameworks.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ko/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ko/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/de/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/de/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/de/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/NExpect.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ja/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ja/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/it/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/it/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/it/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/log4net.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/testcentric.engine.metadata.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/log4net.pdb B src/log4net.Tests/bin/Debug/netcoreapp3.1/System.Configuration.ConfigurationManager.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/tr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/tr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/fr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/fr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/Microsoft.TestPlatform.CommunicationUtilities.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/Microsoft.TestPlatform.CrossPlatEngine.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ru/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/ru/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/pl/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/pl/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.Common.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/Microsoft.TestPlatform.Utilities.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/nunit.engine.core.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/System.Security.Cryptography.ProtectedData.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/System.Security.Permissions.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/NUnit3.TestAdapter.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/testhost.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/nunit.engine.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/es/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/es/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/es/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/cs/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/cs/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/Microsoft.VisualStudio.CodeCoverage.Shim.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/Newtonsoft.Json.dll B src/log4net.Tests/bin/Debug/netcoreapp3.1/log4net.Tests.pdb B src/log4net.Tests/bin/Debug/netcoreapp3.1/log4net.Tests.dll !????? src/log4net.Tests/bin/Debug/netcoreapp3.1/log4net.xml B src/log4net.Tests/bin/Debug/netcoreapp3.1/nunit.framework.dll B src/log4net.Tests/bin/Debug/netcoreapp2.1/NUnit3.TestAdapter.pdb B src/log4net.Tests/bin/Debug/netcoreapp2.1/nunit.engine.api.dll B src/log4net.Tests/bin/Debug/netcoreapp2.1/log4net.dll B src/log4net.Tests/bin/Debug/netcoreapp2.1/log4net.pdb B src/log4net.Tests/bin/Debug/netcoreapp2.1/nunit.engine.core.dll B src/log4net.Tests/bin/Debug/netcoreapp2.1/NUnit3.TestAdapter.dll B src/log4net.Tests/bin/Debug/netcoreapp2.1/nunit.engine.dll B src/log4net.Tests/bin/Debug/netcoreapp2.1/log4net.Tests.pdb B src/log4net.Tests/bin/Debug/netcoreapp2.1/log4net.Tests.dll !????? src/log4net.Tests/bin/Debug/netcoreapp2.1/log4net.xml B src/log4net.Tests/bin/Debug/netcoreapp1.0/NUnit3.TestAdapter.pdb B src/log4net.Tests/bin/Debug/netcoreapp1.0/nunit.engine.api.dll B src/log4net.Tests/bin/Debug/netcoreapp1.0/log4net.dll B src/log4net.Tests/bin/Debug/netcoreapp1.0/log4net.pdb B src/log4net.Tests/bin/Debug/netcoreapp1.0/NUnit3.TestAdapter.dll B src/log4net.Tests/bin/Debug/netcoreapp1.0/nunit.engine.dll B src/log4net.Tests/bin/Debug/netcoreapp1.0/log4net.Tests.pdb B src/log4net.Tests/bin/Debug/netcoreapp1.0/log4net.Tests.dll !????? src/log4net.Tests/bin/Debug/netcoreapp1.0/log4net.xml B src/log4net.Tests/bin/Debug/net462/NExpect.dll B src/log4net.Tests/bin/Debug/net462/log4net.dll B src/log4net.Tests/bin/Debug/net462/log4net.pdb B src/log4net.Tests/bin/Debug/net462/log4net.Tests.pdb B src/log4net.Tests/bin/Debug/net462/log4net.Tests.dll !????? src/log4net.Tests/bin/Debug/net462/log4net.xml B src/log4net.Tests/bin/Debug/net462/nunit.framework.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/NUnit3.TestAdapter.pdb B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/nunit.engine.api.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/NuGet.Frameworks.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ko/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ko/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/de/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/de/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/de/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ja/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ja/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/it/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/it/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/it/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/log4net.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/log4net.pdb !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_41d3d834_4320f4da.log.1 B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/System.Configuration.ConfigurationManager.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/tr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/tr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/fr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/fr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/Microsoft.TestPlatform.CommunicationUtilities.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/Microsoft.TestPlatform.CrossPlatEngine.dll !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_41d3d834_4320f4da.log B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ru/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/ru/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/pl/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/pl/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.Common.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/Microsoft.TestPlatform.Utilities.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/nunit.engine.core.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/System.Xml.XPath.XmlDocument.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/System.Security.Cryptography.ProtectedData.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/System.Security.Permissions.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/NUnit3.TestAdapter.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/Microsoft.DotNet.InternalAbstractions.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/testhost.dll !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_41d3d834_4320f4da.log.2 B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CommunicationUtilities.resources.dll !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_default.log B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/nunit.engine.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/es/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/es/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/es/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/cs/Microsoft.TestPlatform.CrossPlatEngine.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.Common.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/cs/Microsoft.TestPlatform.CommunicationUtilities.resources.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/Microsoft.VisualStudio.CodeCoverage.Shim.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/Newtonsoft.Json.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/log4net.Tests.pdb B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/log4net.Tests.dll !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/log4net.xml B src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/nunit.framework.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/NUnit3.TestAdapter.pdb B src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/nunit.engine.api.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/log4net.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/log4net.pdb !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log.1 !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log B src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/nunit.engine.core.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/NUnit3.TestAdapter.dll !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log.2 !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_default.log B src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/nunit.engine.dll !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log.3 B src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/log4net.Tests.pdb B src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/log4net.Tests.dll !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/log4net.xml B src/log4net.Tests/bin/CrossPlatform/netcoreapp1.0/NUnit3.TestAdapter.pdb B src/log4net.Tests/bin/CrossPlatform/netcoreapp1.0/nunit.engine.api.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp1.0/log4net.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp1.0/log4net.pdb B src/log4net.Tests/bin/CrossPlatform/netcoreapp1.0/NUnit3.TestAdapter.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp1.0/nunit.engine.dll B src/log4net.Tests/bin/CrossPlatform/netcoreapp1.0/log4net.Tests.pdb B src/log4net.Tests/bin/CrossPlatform/netcoreapp1.0/log4net.Tests.dll !????? src/log4net.Tests/bin/CrossPlatform/netcoreapp1.0/log4net.xml B src/log4net.Tests/bin/CrossPlatform/net462/log4net.dll B src/log4net.Tests/bin/CrossPlatform/net462/log4net.pdb B src/log4net.Tests/bin/CrossPlatform/net462/log4net.Tests.pdb B src/log4net.Tests/bin/CrossPlatform/net462/log4net.Tests.dll !????? src/log4net.Tests/bin/CrossPlatform/net462/log4net.xml B src/log4net.Tests/bin/CrossPlatform/net462/nunit.framework.dll AL src/log4net.Tests/Layout/XmlLayoutTest.cs AL src/log4net.Tests/Layout/DynamicPatternLayoutTest.cs AL src/log4net.Tests/Layout/PatternLayoutTest.cs AL src/log4net.Tests/Hierarchy/XmlHierarchyConfiguratorTest.cs AL src/log4net.Tests/Hierarchy/Logger.cs AL src/log4net.Tests/Hierarchy/Hierarchy.cs AL src/log4net.Tests/Filter/FilterTest.cs AL src/log4net.Tests/AssemblyInfo.cs AL src/log4net.Tests/DateFormatter/AbsoluteTimeDateFormatterTest.cs !????? src/log4net.Tests/NUnitTestRunnerInitializer.cs AL src/log4net.Tests/Context/LogicalThreadContextTest.cs AL src/log4net.Tests/Context/ThreadContextTest.cs AL src/log4net.Tests/Core/ShutdownTest.cs AL src/log4net.Tests/Core/FixingTest.cs AL src/log4net.Tests/Core/EvaluatorTest.cs AL src/log4net.Tests/Core/StringFormatTest.cs !????? src/log4net.Tests/log4net.Tests.csproj AL src/log4net.Tests/LoggerRepository/ConfigurationMessages.cs AL src/log4net.Tests/Util/PatternStringTest.cs AL src/log4net.Tests/Util/PatternConverterTest.cs AL src/log4net.Tests/Util/TransformTest.cs AL src/log4net.Tests/Util/PropertiesDictionaryTest.cs AL src/log4net.Tests/Util/SystemInfoTest.cs AL src/log4net.Tests/Util/LogLogTest.cs AL src/log4net.Tests/Util/RandomStringPatternConverterTest.cs AL src/log4net.Tests/Util/EnvironmentPatternConverterTest.cs AL src/log4net.Tests/Util/CyclicBufferTest.cs AL src/log4net/ThreadContext.cs AL src/log4net/Appender/ColoredConsoleAppender.cs AL src/log4net/Appender/EventLogAppender.cs AL src/log4net/Appender/ManagedColoredConsoleAppender.cs AL src/log4net/Appender/IAppender.cs AL src/log4net/Appender/UdpAppender.cs AL src/log4net/Appender/SmtpPickupDirAppender.cs AL src/log4net/Appender/TextWriterAppender.cs AL src/log4net/Appender/MemoryAppender.cs AL src/log4net/Appender/OutputDebugStringAppender.cs AL src/log4net/Appender/AspNetTraceAppender.cs AL src/log4net/Appender/LocalSyslogAppender.cs AL src/log4net/Appender/BufferingAppenderSkeleton.cs AL src/log4net/Appender/FileAppender.cs AL src/log4net/Appender/AppenderCollection.cs AL src/log4net/Appender/RemotingAppender.cs AL src/log4net/Appender/RollingFileAppender.cs AL src/log4net/Appender/TraceAppender.cs AL src/log4net/Appender/ForwardingAppender.cs AL src/log4net/Appender/RemoteSyslogAppender.cs AL src/log4net/Appender/ConsoleAppender.cs AL src/log4net/Appender/AnsiColorTerminalAppender.cs AL src/log4net/Appender/AppenderSkeleton.cs AL src/log4net/Appender/IFlushable.cs AL src/log4net/Appender/BufferingForwardingAppender.cs AL src/log4net/Appender/NetSendAppender.cs AL src/log4net/Appender/SmtpAppender.cs AL src/log4net/Appender/TelnetAppender.cs AL src/log4net/Appender/IBulkAppender.cs AL src/log4net/Appender/DebugAppender.cs AL src/log4net/Appender/AdoNetAppender.cs AL src/log4net/LogicalThreadContext.cs AL src/log4net/NDC.cs AL src/log4net/NetStandardCompatibilityExtensions.cs AL src/log4net/Layout/SimpleLayout.cs AL src/log4net/Layout/RawUtcTimeStampLayout.cs AL src/log4net/Layout/XmlLayout.cs AL src/log4net/Layout/Pattern/IdentityPatternConverter.cs AL src/log4net/Layout/Pattern/AppDomainPatternConverter.cs AL src/log4net/Layout/Pattern/UtcDatePatternConverter.cs AL src/log4net/Layout/Pattern/ThreadPatternConverter.cs AL src/log4net/Layout/Pattern/AspNetRequestPatternConverter.cs AL src/log4net/Layout/Pattern/AspNetContextPatternConverter.cs AL src/log4net/Layout/Pattern/MethodLocationPatternConverter.cs AL src/log4net/Layout/Pattern/TypeNamePatternConverter.cs AL src/log4net/Layout/Pattern/LineLocationPatternConverter.cs AL src/log4net/Layout/Pattern/StackTracePatternConverter.cs AL src/log4net/Layout/Pattern/PatternLayoutConverter.cs AL src/log4net/Layout/Pattern/FileLocationPatternConverter.cs AL src/log4net/Layout/Pattern/DatePatternConverter.cs AL src/log4net/Layout/Pattern/PropertyPatternConverter.cs AL src/log4net/Layout/Pattern/MessagePatternConverter.cs AL src/log4net/Layout/Pattern/ExceptionPatternConverter.cs AL src/log4net/Layout/Pattern/LevelPatternConverter.cs AL src/log4net/Layout/Pattern/NdcPatternConverter.cs AL src/log4net/Layout/Pattern/AspNetCachePatternConverter.cs AL src/log4net/Layout/Pattern/UserNamePatternConverter.cs AL src/log4net/Layout/Pattern/RelativeTimePatternConverter.cs AL src/log4net/Layout/Pattern/StackTraceDetailPatternConverter.cs AL src/log4net/Layout/Pattern/LoggerPatternConverter.cs AL src/log4net/Layout/Pattern/NamedPatternConverter.cs AL src/log4net/Layout/Pattern/FullLocationPatternConverter.cs AL src/log4net/Layout/Pattern/AspNetSessionPatternConverter.cs AL src/log4net/Layout/Pattern/AspNetPatternConverter.cs AL src/log4net/Layout/RawTimeStampLayout.cs AL src/log4net/Layout/RawLayoutConverter.cs AL src/log4net/Layout/IRawLayout.cs AL src/log4net/Layout/DynamicPatternLayout.cs AL src/log4net/Layout/PatternLayout.cs AL src/log4net/Layout/ILayout.cs AL src/log4net/Layout/RawPropertyLayout.cs AL src/log4net/Layout/XmlLayoutSchemaLog4j.cs AL src/log4net/Layout/ExceptionLayout.cs AL src/log4net/Layout/LayoutSkeleton.cs AL src/log4net/Layout/XmlLayoutBase.cs AL src/log4net/Layout/Layout2RawLayoutAdapter.cs AL src/log4net/MDC.cs AL src/log4net/ILog.cs !????? src/log4net/log4net.csproj AL src/log4net/Filter/IFilter.cs AL src/log4net/Filter/NdcFilter.cs AL src/log4net/Filter/FilterSkeleton.cs AL src/log4net/Filter/LevelMatchFilter.cs AL src/log4net/Filter/MdcFilter.cs AL src/log4net/Filter/StringMatchFilter.cs AL src/log4net/Filter/FilterDecision.cs AL src/log4net/Filter/PropertyFilter.cs AL src/log4net/Filter/LoggerMatchFilter.cs AL src/log4net/Filter/LevelRangeFilter.cs AL src/log4net/Filter/DenyAllFilter.cs AL src/log4net/AssemblyInfo.cs AL src/log4net/ObjectRenderer/RendererMap.cs AL src/log4net/ObjectRenderer/DefaultRenderer.cs AL src/log4net/ObjectRenderer/IObjectRenderer.cs AL src/log4net/DateFormatter/DateTimeDateFormatter.cs AL src/log4net/DateFormatter/AbsoluteTimeDateFormatter.cs AL src/log4net/DateFormatter/SimpleDateFormatter.cs AL src/log4net/DateFormatter/Iso8601DateFormatter.cs AL src/log4net/DateFormatter/IDateFormatter.cs AL src/log4net/Core/ILogger.cs AL src/log4net/Core/SecurityContextProvider.cs AL src/log4net/Core/StackFrameItem.cs AL src/log4net/Core/WrapperMap.cs AL src/log4net/Core/CompactRepositorySelector.cs AL src/log4net/Core/ILoggerWrapper.cs AL src/log4net/Core/LogException.cs AL src/log4net/Core/IAppenderAttachable.cs AL src/log4net/Core/ExceptionEvaluator.cs AL src/log4net/Core/LoggerManager.cs AL src/log4net/Core/IErrorHandler.cs AL src/log4net/Core/LoggingEvent.cs AL src/log4net/Core/DefaultRepositorySelector.cs AL src/log4net/Core/ErrorCode.cs AL src/log4net/Core/LevelMap.cs !????? src/log4net/Core/FixFlags.cs AL src/log4net/Core/LocationInfo.cs AL src/log4net/Core/IFixingRequired.cs AL src/log4net/Core/Level.cs AL src/log4net/Core/LevelCollection.cs AL src/log4net/Core/IRepositorySelector.cs AL src/log4net/Core/IOptionHandler.cs AL src/log4net/Core/LevelEvaluator.cs AL src/log4net/Core/MethodItem.cs AL src/log4net/Core/ITriggeringEventEvaluator.cs AL src/log4net/Core/LoggerWrapperImpl.cs AL src/log4net/Core/SecurityContext.cs AL src/log4net/Core/TimeEvaluator.cs AL src/log4net/Core/LogImpl.cs AL src/log4net/assembly/bin.xml AL src/log4net/Log4netAssemblyInfo.cs AL src/log4net/LogManager.cs AL src/log4net/AssemblyVersionInfo.cs AL src/log4net/GlobalContext.cs AL src/log4net/Util/OptionConverter.cs AL src/log4net/Util/LogLog.cs AL src/log4net/Util/EmptyCollection.cs AL src/log4net/Util/TextWriterAdapter.cs AL src/log4net/Util/ProtectCloseTextWriter.cs AL src/log4net/Util/LogicalThreadContextStacks.cs AL src/log4net/Util/CyclicBuffer.cs AL src/log4net/Util/LogicalThreadContextProperties.cs AL src/log4net/Util/NullDictionaryEnumerator.cs AL src/log4net/Util/EmptyDictionary.cs AL src/log4net/Util/AppenderAttachedImpl.cs AL src/log4net/Util/ILogExtensions.cs AL src/log4net/Util/WindowsSecurityContext.cs AL src/log4net/Util/QuietTextWriter.cs AL src/log4net/Util/PropertyEntry.cs AL src/log4net/Util/TypeConverters/ConversionNotSupportedException.cs AL src/log4net/Util/TypeConverters/TypeConverterAttribute.cs AL src/log4net/Util/TypeConverters/TypeConverter.cs AL src/log4net/Util/TypeConverters/PatternLayoutConverter.cs AL src/log4net/Util/TypeConverters/IConvertFrom.cs AL src/log4net/Util/TypeConverters/BooleanConverter.cs AL src/log4net/Util/TypeConverters/EncodingConverter.cs AL src/log4net/Util/TypeConverters/ConverterRegistry.cs AL src/log4net/Util/TypeConverters/PatternStringConverter.cs AL src/log4net/Util/TypeConverters/IConvertTo.cs AL src/log4net/Util/TypeConverters/IPAddressConverter.cs AL src/log4net/Util/ThreadContextProperties.cs AL src/log4net/Util/ReaderWriterLock.cs AL src/log4net/Util/LevelMapping.cs AL src/log4net/Util/CompositeProperties.cs AL src/log4net/Util/ContextPropertiesBase.cs AL src/log4net/Util/FormattingInfo.cs AL src/log4net/Util/OnlyOnceErrorHandler.cs AL src/log4net/Util/PatternParser.cs AL src/log4net/Util/SystemStringFormat.cs AL src/log4net/Util/PatternStringConverters/IdentityPatternConverter.cs AL src/log4net/Util/PatternStringConverters/AppDomainPatternConverter.cs AL src/log4net/Util/PatternStringConverters/EnvironmentFolderPathPatternConverter.cs AL src/log4net/Util/PatternStringConverters/LiteralPatternConverter.cs AL src/log4net/Util/PatternStringConverters/UtcDatePatternConverter.cs AL src/log4net/Util/PatternStringConverters/EnvironmentPatternConverter.cs AL src/log4net/Util/PatternStringConverters/RandomStringPatternConverter.cs AL src/log4net/Util/PatternStringConverters/AppSettingPatternConverter.cs AL src/log4net/Util/PatternStringConverters/DatePatternConverter.cs AL src/log4net/Util/PatternStringConverters/PropertyPatternConverter.cs AL src/log4net/Util/PatternStringConverters/ProcessIdPatternConverter.cs AL src/log4net/Util/PatternStringConverters/UserNamePatternConverter.cs AL src/log4net/Util/PatternStringConverters/NewLinePatternConverter.cs AL src/log4net/Util/LogicalThreadContextStack.cs AL src/log4net/Util/Transform.cs AL src/log4net/Util/ThreadContextStack.cs AL src/log4net/Util/LevelMappingEntry.cs AL src/log4net/Util/GlobalContextProperties.cs AL src/log4net/Util/SystemInfo.cs AL src/log4net/Util/PropertiesDictionary.cs AL src/log4net/Util/NullSecurityContext.cs AL src/log4net/Util/NativeError.cs AL src/log4net/Util/ThreadContextStacks.cs AL src/log4net/Util/ReusableStringWriter.cs AL src/log4net/Util/CountingQuietTextWriter.cs AL src/log4net/Util/ConverterInfo.cs AL src/log4net/Util/PatternConverter.cs AL src/log4net/Util/ReadOnlyPropertiesDictionary.cs AL src/log4net/Util/PatternString.cs AL src/log4net/Util/NullEnumerator.cs AL src/log4net/Config/DOMConfigurator.cs AL src/log4net/Config/XmlConfiguratorAttribute.cs AL src/log4net/Config/BasicConfigurator.cs AL src/log4net/Config/AliasRepositoryAttribute.cs AL src/log4net/Config/AliasDomainAttribute.cs AL src/log4net/Config/DOMConfiguratorAttribute.cs AL src/log4net/Config/RepositoryAttribute.cs AL src/log4net/Config/ConfiguratorAttribute.cs AL src/log4net/Config/XmlConfigurator.cs AL src/log4net/Config/SecurityContextProviderAttribute.cs AL src/log4net/Config/DomainAttribute.cs AL src/log4net/Config/PluginAttribute.cs AL src/log4net/Config/Log4NetConfigurationSectionHandler.cs AL src/log4net/Repository/ILoggerRepository.cs AL src/log4net/Repository/LoggerRepositorySkeleton.cs AL src/log4net/Repository/ConfigurationChangedEventArgs.cs AL src/log4net/Repository/Hierarchy/RootLogger.cs AL src/log4net/Repository/Hierarchy/ILoggerFactory.cs AL src/log4net/Repository/Hierarchy/XmlHierarchyConfigurator.cs AL src/log4net/Repository/Hierarchy/ProvisionNode.cs AL src/log4net/Repository/Hierarchy/Logger.cs AL src/log4net/Repository/Hierarchy/Hierarchy.cs AL src/log4net/Repository/Hierarchy/LoggerKey.cs AL src/log4net/Repository/Hierarchy/DefaultLoggerFactory.cs AL src/log4net/Repository/IBasicRepositoryConfigurator.cs AL src/log4net/Repository/IXmlRepositoryConfigurator.cs AL src/log4net/Plugin/PluginSkeleton.cs AL src/log4net/Plugin/IPlugin.cs AL src/log4net/Plugin/PluginCollection.cs AL src/log4net/Plugin/PluginMap.cs AL src/log4net/Plugin/RemoteLoggingServerPlugin.cs AL src/log4net/Plugin/IPluginFactory.cs N KEYS AL netstandard/log4net.netstandard.sln AL netstandard/log4net.tests/log4net.tests.xproj AL netstandard/log4net.tests/ExpectedExceptionAttribute.cs AL netstandard/log4net.tests/CompatibilityExtensions.cs AL netstandard/log4net.tests/ApplicationException.cs AL netstandard/log4net/log4net.xproj AL netstandard/log4net/CompatibilityExtensions.cs !????? doc/RELEASING.md !????? doc/sign-log4net-libraries.sh !????? doc/BUILDING.md !????? doc/CONTRIBUTING.md !????? doc/ReleaseInstructions-legacy.txt AL tests/nant.build !????? appveyer.yml AL pom.xml AL install-net-framework-sdk-3.5.ps1 ***************************************************** Printing headers for text files without a valid license header... ===================================================== == File: .zarro-defaults ===================================================== # zarro defaults file: # place one VARIABLE=VALUE per line below # variables here will not override existing environment variables # unless prepended with a bang, ie # !VARIABLE=Value # so this means anything you set in your package.json, eg with # cross-env, will override what's in here unless you've specifically # marked the setting in here as forced with ! # instruct nunit console runner to run in a single process NUNIT_PROCESS=Single # determines how many tests can run in parallel - 1 is fine MAX_CONCURRENCY=1 # specify what to build (prevents accidental build of any other sln) BUILD_INCLUDE=src/log4net.sln ===================================================== == File: README.md ===================================================== Introduction =========== Apache log4net is a sub project of the Apache Logging Services project. Apache log4net graduated from the Apache Incubator in February 2007. Web site: http://logging.apache.org/log4net Documentation ============= For the latest documentation see the log4net web site at: http://logging.apache.org/log4net Contributing ============ log4net development happens on the logging dev mailing list, see https://logging.apache.org/log4net/mail-lists.html. Please join the mailing list and discuss bigger changes before working on them. For bigger changes we must ask you to sign a Contributor License Agreement http://www.apache.org/licenses/#clas. Github pull requests are one way to contribute, The Apache issue tracker is no longer accepting new issues but is available at https://issues.apache.org/jira/browse/LOG4NET for access to previous issues. Developing ========== log4net targets a wide array of .net platforms, including some which are out of support from Microsoft, making it difficult to install relevant SDKs and build for those targets. In particular, older Client Profile .NET Framework targets and dotnet core 1.1 may be installed by using the bundled helper scripts: - [install-net-framework-sdk-3.5.ps1](install-net-framework-sdk-3.5.ps1) - [install-dotnet-core-sdk-1.1.ps1](install-dotnet-core-sdk-1.1.ps1) These scripts download the relevant installers from Microsoft servers, but you run them at your own risk. Please see - [CONTRIBUTING.md](doc/CONTRIBUTING.md) - [BUILDING.md](doc/BUILDING.md) - [RELEASING.md](doc/RELEASING.md) ===================================================== == File: src/.idea/.idea.log4net/.idea/misc.xml ===================================================== <?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="JavaScriptSettings"> <option name="languageLevel" value="ES6" /> </component> </project> ===================================================== == File: src/.idea/.idea.log4net/.idea/.name ===================================================== log4net ===================================================== == File: src/.idea/.idea.log4net/.idea/workspace.xml ===================================================== <?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="AutoGeneratedRunConfigurationManager"> <projectFile>integration-testing/log4net-611-main/log4net-611-main.csproj</projectFile> <projectFile>integration-testing/log4net-672/log4net-672.csproj</projectFile> <projectFile>integration-testing/log4net-673/log4net-673.csproj</projectFile> <projectFile>integration-testing/log4net-681/log4net-681.csproj</projectFile> <projectFile>log4net.Tests/log4net.Tests.csproj</projectFile> </component> <component name="BranchesTreeState"> <expand> <path> <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="LOCAL_ROOT" type="e8cecc67:BranchNodeDescriptor" /> </path> <path> <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="REMOTE_ROOT" type="e8cecc67:BranchNodeDescriptor" /> </path> <path> <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="REMOTE_ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="GROUP_NODE:origin" type="e8cecc67:BranchNodeDescriptor" /> </path> <path> <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="REMOTE_ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="GROUP_NODE:origin" type="e8cecc67:BranchNodeDescriptor" /> <item name="GROUP_NODE:abandoned" type="e8cecc67:BranchNodeDescriptor" /> </path> <path> <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="REMOTE_ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="GROUP_NODE:origin" type="e8cecc67:BranchNodeDescriptor" /> <item name="GROUP_NODE:feature" type="e8cecc67:BranchNodeDescriptor" /> </path> <path> <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="REMOTE_ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="GROUP_NODE:origin" type="e8cecc67:BranchNodeDescriptor" /> <item name="GROUP_NODE:pr" type="e8cecc67:BranchNodeDescriptor" /> </path> <path> <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="REMOTE_ROOT" type="e8cecc67:BranchNodeDescriptor" /> <item name="GROUP_NODE:origin" type="e8cecc67:BranchNodeDescriptor" /> <item name="GROUP_NODE:pr" type="e8cecc67:BranchNodeDescriptor" /> <item name="GROUP_NODE:old" type="e8cecc67:BranchNodeDescriptor" /> </path> <path> ===================================================== == File: src/.idea/.idea.log4net/.idea/indexLayout.xml ===================================================== <?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="UserContentModel"> <attachedFolders /> <explicitIncludes /> <explicitExcludes /> </component> </project> ===================================================== == File: src/.idea/.idea.log4net/.idea/projectSettingsUpdater.xml ===================================================== <?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="RiderProjectSettingsUpdater"> <option name="vcsConfiguration" value="2" /> </component> </project> ===================================================== == File: src/.idea/.idea.log4net/.idea/codeStyles/codeStyleConfig.xml ===================================================== <component name="ProjectCodeStyleConfiguration"> <state> <option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" /> </state> </component> ===================================================== == File: src/.idea/.idea.log4net/.idea/vcs.xml ===================================================== <?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="VcsDirectoryMappings"> <mapping directory="$PROJECT_DIR$/.." vcs="Git" /> </component> </project> ===================================================== == File: src/integration-testing/log4net-673/Program.cs ===================================================== using System; using System.IO; using System.Reflection; using System.Threading; using log4net; using log4net.Config; var appPath = new Uri(Assembly.GetExecutingAssembly().Location).LocalPath; var appFolder = Path.GetDirectoryName(appPath); // force loading the assembly, otherwise the appender type isn't found later if (appFolder is null) { throw new InvalidOperationException("Can't find myself"); } var configFile = Path.Combine(appFolder, "log4net.config"); if (!File.Exists(configFile)) { throw new InvalidOperationException($"log4net.config not found at {configFile}"); } if (Directory.Exists("log")) { Console.WriteLine("Clearing out old logs..."); foreach (var file in Directory.EnumerateFiles("log")) { File.Delete(file); } } var info = new FileInfo(configFile); var logRepo = LogManager.GetRepository(Assembly.GetExecutingAssembly()); XmlConfigurator.ConfigureAndWatch( logRepo, info ); var logger = LogManager.GetLogger(typeof(Program)); Console.WriteLine("logging..."); for (var i = 0; i < 10; i++) { logger.Info($"test log {i}"); logger.Error($"error log {i}"); logger.Warn($"warning log {i}"); } foreach (var file in Directory.EnumerateFiles("log")) { ===================================================== == File: src/integration-testing/log4net-673/log4net-673.csproj ===================================================== <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>net6.0</TargetFramework> <RootNamespace>log4net_673</RootNamespace> <ImplicitUsings>disable</ImplicitUsings> <Nullable>disable</Nullable> </PropertyGroup> <ItemGroup> <PackageReference Include="log4net" Version="2.0.14" /> </ItemGroup> <ItemGroup> <None Update="log4net.config"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </None> </ItemGroup> </Project> ===================================================== == File: src/integration-testing/log4net-673/bin/Debug/net6.0/log4net.config ===================================================== <log4net> <root> <level value="ALL" /> <appender-ref ref="ColoredConsoleAppender" /> <appender-ref ref="RollingLogFileAppender" /> <appender-ref ref="ErrorLogFileAppender" /> <appender-ref ref="WarnLogFileAppender" /> </root> <appender name="ColoredConsoleAppender" type="log4net.Appender.ManagedColoredConsoleAppender"> <mapping> <level value="INFO" /> <forecolor value="White" /> </mapping> <mapping> <level value="WARN" /> <forecolor value="Green" /> </mapping> <mapping> <level value="ERROR" /> <forecolor value="Red" /> </mapping> <mapping> <level value="DEBUG" /> <forecolor value="Yellow" /> </mapping> <layout type="log4net.Layout.PatternLayout"> <conversionpattern value="%date [%thread] %-5level - %message%newline" /> </layout> </appender> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file type="log4net.Util.PatternString" value="log/ALL-Datamigration.log" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <appendToFile value="true" /> <rollingStyle value="Composite" /> <maxSizeRollBackups value="100" /> <maximumFileSize value="30MB" /> <staticLogFileName value="true" /> <preserveLogFileNameExtension value="true"/> <datePattern value="ddMMyyyy" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" /> </layout> </appender> <appender name="ErrorLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file type="log4net.Util.PatternString" value="log/ERROR-Datamigration.log" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <appendToFile value="true" /> ===================================================== == File: src/integration-testing/log4net-673/log4net.config ===================================================== <log4net> <root> <level value="ALL" /> <appender-ref ref="ColoredConsoleAppender" /> <appender-ref ref="RollingLogFileAppender" /> <appender-ref ref="ErrorLogFileAppender" /> <appender-ref ref="WarnLogFileAppender" /> </root> <appender name="ColoredConsoleAppender" type="log4net.Appender.ManagedColoredConsoleAppender"> <mapping> <level value="INFO" /> <forecolor value="White" /> </mapping> <mapping> <level value="WARN" /> <forecolor value="Green" /> </mapping> <mapping> <level value="ERROR" /> <forecolor value="Red" /> </mapping> <mapping> <level value="DEBUG" /> <forecolor value="Yellow" /> </mapping> <layout type="log4net.Layout.PatternLayout"> <conversionpattern value="%date [%thread] %-5level - %message%newline" /> </layout> </appender> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file type="log4net.Util.PatternString" value="log/ALL-Datamigration.log" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <appendToFile value="true" /> <rollingStyle value="Composite" /> <maxSizeRollBackups value="100" /> <maximumFileSize value="30MB" /> <staticLogFileName value="true" /> <preserveLogFileNameExtension value="true"/> <datePattern value="ddMMyyyy" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" /> </layout> </appender> <appender name="ErrorLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file type="log4net.Util.PatternString" value="log/ERROR-Datamigration.log" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <appendToFile value="true" /> ===================================================== == File: src/integration-testing/log4net-611-main/Program.cs ===================================================== using System.Reflection; using log4net; using log4net.Config; using log4net_611_lib; var appPath = new Uri(Assembly.GetExecutingAssembly().Location).LocalPath; var appFolder = Path.GetDirectoryName(appPath); // force loading the assembly, otherwise the appender type isn't found later Assembly.LoadFile("log4net-611-lib.dll"); if (appFolder is null) { throw new InvalidOperationException("Can't find myself"); } Assembly.LoadFile(Path.Combine(appFolder, "log4net-611-lib.dll")); var configFile = Path.Combine(appFolder, "log4net.config"); if (!File.Exists(configFile)) { throw new InvalidOperationException($"log4net.config not found at {configFile}"); } if (Directory.Exists("Logs")) { Console.WriteLine("Clearing out old logs..."); foreach (var file in Directory.EnumerateFiles("Logs")) { File.Delete(file); } } var info = new FileInfo(configFile); var logRepo = LogManager.GetRepository(Assembly.GetExecutingAssembly()); XmlConfigurator.ConfigureAndWatch( logRepo, info ); var logger = LogManager.GetLogger(typeof(Program)); Console.WriteLine("logging..."); for (var i = 0; i < 10; i++) { logger.Info($"test log {i}"); } foreach (var file in Directory.EnumerateFiles("Logs")) { Console.WriteLine($"log file: {file}"); ===================================================== == File: src/integration-testing/log4net-611-main/bin/Debug/net6.0/log4net.config ===================================================== <log4net> <appender name="LogFileAppenderXML" type="log4net_611_lib.DerivedAppender"> <file value="Logs\.xml" /> <datePattern value="yyyy-MM-dd-'Xyz'" /> <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <rollingStyle value="Composite" /> <maxSizeRollBackups value="40" /> <maximumFileSize value="1KB" /> <preserveLogFileNameExtension value="true" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="[file] %property{appender-class-name} %message%newline" /> </layout> <immediateFlush value="true" /> </appender> <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender"> <target value="Console.Out" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="[console] %message%newline" /> </layout> </appender> <root> <level value="ALL"/> <appender-ref ref="LogFileAppenderXML" /> <appender-ref ref="ConsoleAppender" /> </root> </log4net> ===================================================== == File: src/integration-testing/log4net-611-main/bin/Debug/net462/log4net.config ===================================================== <log4net> <appender name="LogFileAppenderXML" type="log4net_611_lib.DerivedAppender"> <file value="Logs\.xml" /> <datePattern value="yyyy-MM-dd-'Xyz'" /> <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <rollingStyle value="Composite" /> <maxSizeRollBackups value="40" /> <maximumFileSize value="1KB" /> <preserveLogFileNameExtension value="true" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="[file] %property{appender-class-name} %message%newline" /> </layout> <immediateFlush value="true" /> </appender> <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender"> <target value="Console.Out" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="[console] %message%newline" /> </layout> </appender> <root> <level value="ALL"/> <appender-ref ref="LogFileAppenderXML" /> <appender-ref ref="ConsoleAppender" /> </root> </log4net> ===================================================== == File: src/integration-testing/log4net-611-main/log4net-611-main.csproj ===================================================== <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFrameworks>net462;net6.0</TargetFrameworks> <RootNamespace>log4net_611_main</RootNamespace> <ImplicitUsings>enable</ImplicitUsings> <Nullable>enable</Nullable> <LangVersion>latest</LangVersion> </PropertyGroup> <ItemGroup> <ProjectReference Include="..\log4net-611-lib\log4net-611-lib.csproj" /> </ItemGroup> <ItemGroup> <None Update="log4net.config"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </None> </ItemGroup> </Project> ===================================================== == File: src/integration-testing/log4net-611-main/log4net.config ===================================================== <log4net> <appender name="LogFileAppenderXML" type="log4net_611_lib.DerivedAppender"> <file value="Logs\.xml" /> <datePattern value="yyyy-MM-dd-'Xyz'" /> <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <rollingStyle value="Composite" /> <maxSizeRollBackups value="40" /> <maximumFileSize value="1KB" /> <preserveLogFileNameExtension value="true" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="[file] %property{appender-class-name} %message%newline" /> </layout> <immediateFlush value="true" /> </appender> <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender"> <target value="Console.Out" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="[console] %message%newline" /> </layout> </appender> <root> <level value="ALL"/> <appender-ref ref="LogFileAppenderXML" /> <appender-ref ref="ConsoleAppender" /> </root> </log4net> ===================================================== == File: src/integration-testing/log4net-681/Program.cs ===================================================== using System.Reflection; using log4net; using log4net.Config; var appPath = new Uri(Assembly.GetExecutingAssembly().Location).LocalPath; var appFolder = Path.GetDirectoryName(appPath); if (appFolder is null) { throw new InvalidOperationException("Can't find myself"); } var configFile = Path.Combine(appFolder, "log4net.config"); if (!File.Exists(configFile)) { throw new InvalidOperationException($"log4net.config not found at {configFile}"); } if (Directory.Exists("Logs")) { Console.WriteLine("Clearing out old logs..."); foreach (var file in Directory.EnumerateFiles("Logs")) { File.Delete(file); } } var info = new FileInfo(configFile); var logRepo = LogManager.GetRepository(Assembly.GetExecutingAssembly()); XmlConfigurator.ConfigureAndWatch( logRepo, info ); var logger = LogManager.GetLogger(typeof(Program)); Console.WriteLine("logging..."); var threads = new List<Thread>(); for (var i = 0; i < 128; i++) { var thread = new Thread(LogABit); thread.Start(); threads.Add(thread); } foreach (var t in threads) { t.Join(); } ===================================================== == File: src/integration-testing/log4net-681/bin/Debug/net6.0/log4net.config ===================================================== <log4net> <appender name="LogFileAppenderXML" type="log4net.Appender.RollingFileAppender"> <file value="Logs\.xml" /> <datePattern value="yyyy-MM-dd-HH-mm-ss'Xyz'" /> <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <rollingStyle value="Composite" /> <maxSizeRollBackups value="40" /> <maximumFileSize value="64" /> <preserveLogFileNameExtension value="true" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="[file] %message%newline" /> </layout> </appender> <root> <level value="ALL"/> <appender-ref ref="LogFileAppenderXML" /> </root> </log4net> ===================================================== == File: src/integration-testing/log4net-681/bin/Debug/net6.0/log4net.xml ===================================================== <?xml version="1.0"?> <doc> <assembly> <name>log4net</name> </assembly> <members> <member name="T:log4net.Appender.AdoNetAppender"> <summary> Appender that logs to a database. </summary> <remarks> <para> <see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a database. The appender can be configured to specify the connection string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property. The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property. For more information on database connection strings for your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>. </para> <para> Records are written into the database either using a prepared statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored procedure. </para> <para> The prepared statement text or the name of the stored procedure must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property. </para> <para> The prepared statement or stored procedure can take a number of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/> method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> type may be subclassed if required to provide database specific functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies the parameter name, database type, size, and how the value should be generated using a <see cref="T:log4net.Layout.ILayout"/>. </para> </remarks> <example> An example of a SQL Server table that could be logged to: <code lang="SQL"> CREATE TABLE [dbo].[Log] ( [ID] [int] IDENTITY (1, 1) NOT NULL , [Date] [datetime] NOT NULL , [Thread] [varchar] (255) NOT NULL , [Level] [varchar] (20) NOT NULL , [Logger] [varchar] (255) NOT NULL , ===================================================== == File: src/integration-testing/log4net-681/log4net-681.csproj ===================================================== <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>net6.0</TargetFramework> <RootNamespace>log4net_681</RootNamespace> <ImplicitUsings>enable</ImplicitUsings> <Nullable>enable</Nullable> </PropertyGroup> <ItemGroup> <ProjectReference Include="..\..\log4net\log4net.csproj" /> </ItemGroup> <ItemGroup> <None Update="log4net.config"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </None> </ItemGroup> </Project> ===================================================== == File: src/integration-testing/log4net-681/log4net.config ===================================================== <log4net> <appender name="LogFileAppenderXML" type="log4net.Appender.RollingFileAppender"> <file value="Logs\.xml" /> <datePattern value="yyyy-MM-dd-HH-mm-ss'Xyz'" /> <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <rollingStyle value="Composite" /> <maxSizeRollBackups value="40" /> <maximumFileSize value="64" /> <preserveLogFileNameExtension value="true" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="[file] %message%newline" /> </layout> </appender> <root> <level value="ALL"/> <appender-ref ref="LogFileAppenderXML" /> </root> </log4net> ===================================================== == File: src/integration-testing/log4net-611-lib/DerivedAppender.cs ===================================================== using log4net.Appender; using log4net.Core; using log4net.Layout; namespace log4net_611_lib; public class DerivedAppender: RollingFileAppender { protected override void Append(LoggingEvent loggingEvent) { loggingEvent.Properties["appender-class-name"] = nameof(DerivedAppender); base.Append(loggingEvent); } } ===================================================== == File: src/integration-testing/log4net-611-lib/log4net-611-lib.csproj ===================================================== <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netstandard2.0</TargetFramework> <RootNamespace>log4net_611_lib</RootNamespace> <ImplicitUsings>disable</ImplicitUsings> <Nullable>disable</Nullable> <LangVersion>latest</LangVersion> </PropertyGroup> <ItemGroup> <PackageReference Include="log4net" Version="2.0.14" /> </ItemGroup> </Project> ===================================================== == File: src/integration-testing/log4net-672/Program.cs ===================================================== using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Reflection; using log4net; using log4net.Config; const int NO_ERROR = 0; const int MISSING_LOGS = 1; const int OVERWRITTEN_LOGS = 2; var appPath = new Uri(Assembly.GetExecutingAssembly().Location).LocalPath; var appFolder = Path.GetDirectoryName(appPath); if (appFolder is null) { throw new InvalidOperationException( $"Can't determine app folder for {appPath}" ); } var logFolder = Path.Combine(appFolder, "Logs"); if (Directory.Exists(logFolder)) { Directory.Delete(logFolder, recursive: true); } var configFile = Path.Combine(appFolder, "log4net.config"); if (!File.Exists(configFile)) { throw new InvalidOperationException($"log4net.config not found at {configFile}"); } var logCount = 10; var identifiers = new List<Guid>(); for (var i = 0; i < 10; i++) { var identifier = Guid.NewGuid(); identifiers.Add(identifier); var logged = LogWith(identifier, logCount); if (logged != logCount) { Die($"Missing logs immediately for '{identifier}' - found {logged}/{logCount}", MISSING_LOGS); } } foreach (var identifier in identifiers) { var logged = CountIdentifierInLogs(identifier); if (logged != logCount) ===================================================== == File: src/integration-testing/log4net-672/bin/Debug/net6.0/log4net.config ===================================================== <log4net> <appender name="LogFileAppenderXML" type="log4net.Appender.RollingFileAppender"> <file value="Logs\.xml" /> <datePattern value="yyyy-MM-dd-'Xyz'" /> <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <rollingStyle value="Composite" /> <maxSizeRollBackups value="40" /> <maximumFileSize value="1KB" /> <preserveLogFileNameExtension value="true" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.XmlLayout"/> <fix value="Partial" /> </appender> <appender name="BufferingForwardingAppender" type="log4net.APpender.BufferingForwardingAppender"> <bufferSize value="100" /> <fix value="Partial" /> <appender-ref ref="ConsoleAppender"/> </appender> <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender"> <target value="Console.Out" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="[console] %message%newline" /> </layout> </appender> <root> <level value="ALL"/> <appender-ref ref="LogFileAppenderXML" /> <appender-ref ref="BufferingForwardingAppender" /> </root> </log4net> ===================================================== == File: src/integration-testing/log4net-672/bin/Debug/net6.0/log4net.xml ===================================================== <?xml version="1.0"?> <doc> <assembly> <name>log4net</name> </assembly> <members> <member name="T:log4net.Appender.AdoNetAppender"> <summary> Appender that logs to a database. </summary> <remarks> <para> <see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a database. The appender can be configured to specify the connection string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property. The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property. For more information on database connection strings for your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>. </para> <para> Records are written into the database either using a prepared statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored procedure. </para> <para> The prepared statement text or the name of the stored procedure must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property. </para> <para> The prepared statement or stored procedure can take a number of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/> method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> type may be subclassed if required to provide database specific functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies the parameter name, database type, size, and how the value should be generated using a <see cref="T:log4net.Layout.ILayout"/>. </para> </remarks> <example> An example of a SQL Server table that could be logged to: <code lang="SQL"> CREATE TABLE [dbo].[Log] ( [ID] [int] IDENTITY (1, 1) NOT NULL , [Date] [datetime] NOT NULL , [Thread] [varchar] (255) NOT NULL , [Level] [varchar] (20) NOT NULL , [Logger] [varchar] (255) NOT NULL , ===================================================== == File: src/integration-testing/log4net-672/log4net-672.csproj ===================================================== <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>net6.0</TargetFramework> <RootNamespace>log4net_672</RootNamespace> <ImplicitUsings>disable</ImplicitUsings> <Nullable>enable</Nullable> <LangVersion>preview</LangVersion> <DefineConstants>NETSTANDARD</DefineConstants> </PropertyGroup> <ItemGroup> <ProjectReference Include="..\..\log4net\log4net.csproj" /> </ItemGroup> <ItemGroup> <None Update="log4net.config"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </None> </ItemGroup> <ItemGroup> <PackageReference Include="PeanutButter.EasyArgs" Version="2.0.63" /> </ItemGroup> </Project> ===================================================== == File: src/integration-testing/log4net-672/log4net.config ===================================================== <log4net> <appender name="LogFileAppenderXML" type="log4net.Appender.RollingFileAppender"> <file value="Logs\.xml" /> <datePattern value="yyyy-MM-dd-'Xyz'" /> <appendToFile value="true" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <rollingStyle value="Composite" /> <maxSizeRollBackups value="40" /> <maximumFileSize value="1KB" /> <preserveLogFileNameExtension value="true" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.XmlLayout"/> <fix value="Partial" /> </appender> <appender name="BufferingForwardingAppender" type="log4net.APpender.BufferingForwardingAppender"> <bufferSize value="100" /> <fix value="Partial" /> <appender-ref ref="ConsoleAppender"/> </appender> <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender"> <target value="Console.Out" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="[console] %message%newline" /> </layout> </appender> <root> <level value="ALL"/> <appender-ref ref="LogFileAppenderXML" /> <appender-ref ref="BufferingForwardingAppender" /> </root> </log4net> ===================================================== == File: src/Directory.Build.props ===================================================== <Project> <PropertyGroup> <UseSharedCompilation>true</UseSharedCompilation> </PropertyGroup> </Project> ===================================================== == File: src/MonoForFramework.targets ===================================================== <Project> <PropertyGroup Condition="$(TargetFramework.StartsWith('net4')) and '$(OS)' == 'Unix'"> <!-- When compiling .NET SDK 2.0 projects targeting .NET 4.x on Mono using 'dotnet build' you --> <!-- have to teach MSBuild where the Mono copy of the reference asssemblies is --> <!-- Look in the standard install locations --> <BaseFrameworkPathOverrideForMono Condition="'$(BaseFrameworkPathOverrideForMono)' == '' AND EXISTS('/Library/Frameworks/Mono.framework/Versions/Current/lib/mono')">/Library/Frameworks/Mono.framework/Versions/Current/lib/mono</BaseFrameworkPathOverrideForMono> <BaseFrameworkPathOverrideForMono Condition="'$(BaseFrameworkPathOverrideForMono)' == '' AND EXISTS('/usr/lib/mono')">/usr/lib/mono</BaseFrameworkPathOverrideForMono> <BaseFrameworkPathOverrideForMono Condition="'$(BaseFrameworkPathOverrideForMono)' == '' AND EXISTS('/usr/local/lib/mono')">/usr/local/lib/mono</BaseFrameworkPathOverrideForMono> <!-- If we found Mono reference assemblies, then use them --> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net20'">$(BaseFrameworkPathOverrideForMono)/2.0-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net35'">$(BaseFrameworkPathOverrideForMono)/3.5-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net40'">$(BaseFrameworkPathOverrideForMono)/4.0-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net45'">$(BaseFrameworkPathOverrideForMono)/4.5-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net451'">$(BaseFrameworkPathOverrideForMono)/4.5.1-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net452'">$(BaseFrameworkPathOverrideForMono)/4.5.2-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net46'">$(BaseFrameworkPathOverrideForMono)/4.6-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net461'">$(BaseFrameworkPathOverrideForMono)/4.6.1-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net462'">$(BaseFrameworkPathOverrideForMono)/4.6.2-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net47'">$(BaseFrameworkPathOverrideForMono)/4.7-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net471'">$(BaseFrameworkPathOverrideForMono)/4.7.1-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net472'">$(BaseFrameworkPathOverrideForMono)/4.7.2-api</FrameworkPathOverride> <FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net48'">$(BaseFrameworkPathOverrideForMono)/4.8-api</FrameworkPathOverride> <EnableFrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != ''">true</EnableFrameworkPathOverride> <!-- Add the Facades directory. Not sure how else to do this. Necessary at least for .NET 4.5 --> <AssemblySearchPaths Condition="'$(BaseFrameworkPathOverrideForMono)' != ''">$(FrameworkPathOverride)/Facades;$(AssemblySearchPaths)</AssemblySearchPaths> </PropertyGroup> </Project> ===================================================== == File: src/log4net.Tests/Signing.cs ===================================================== using log4net.Repository; using NUnit.Framework; using NExpect; using static NExpect.Expectations; namespace log4net.Tests { [TestFixture] public class Signing { [Test] public void AssemblyShouldBeSigned() { // Arrange var asm = typeof(LoggerRepositorySkeleton).Assembly; // Act var result = asm.GetName().GetPublicKey(); // Assert Expect(result) .Not.To.Be.Empty(); } } } ===================================================== == File: src/log4net.Tests/bin/Debug/netcoreapp3.1/log4net.xml ===================================================== <?xml version="1.0"?> <doc> <assembly> <name>log4net</name> </assembly> <members> <member name="T:log4net.Appender.AdoNetAppender"> <summary> Appender that logs to a database. </summary> <remarks> <para> <see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a database. The appender can be configured to specify the connection string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property. The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property. For more information on database connection strings for your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>. </para> <para> Records are written into the database either using a prepared statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored procedure. </para> <para> The prepared statement text or the name of the stored procedure must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property. </para> <para> The prepared statement or stored procedure can take a number of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/> method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> type may be subclassed if required to provide database specific functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies the parameter name, database type, size, and how the value should be generated using a <see cref="T:log4net.Layout.ILayout"/>. </para> </remarks> <example> An example of a SQL Server table that could be logged to: <code lang="SQL"> CREATE TABLE [dbo].[Log] ( [ID] [int] IDENTITY (1, 1) NOT NULL , [Date] [datetime] NOT NULL , [Thread] [varchar] (255) NOT NULL , [Level] [varchar] (20) NOT NULL , [Logger] [varchar] (255) NOT NULL , ===================================================== == File: src/log4net.Tests/bin/Debug/netcoreapp2.1/log4net.xml ===================================================== <?xml version="1.0"?> <doc> <assembly> <name>log4net</name> </assembly> <members> <member name="T:log4net.Appender.AdoNetAppender"> <summary> Appender that logs to a database. </summary> <remarks> <para> <see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a database. The appender can be configured to specify the connection string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property. The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property. For more information on database connection strings for your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>. </para> <para> Records are written into the database either using a prepared statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored procedure. </para> <para> The prepared statement text or the name of the stored procedure must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property. </para> <para> The prepared statement or stored procedure can take a number of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/> method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> type may be subclassed if required to provide database specific functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies the parameter name, database type, size, and how the value should be generated using a <see cref="T:log4net.Layout.ILayout"/>. </para> </remarks> <example> An example of a SQL Server table that could be logged to: <code lang="SQL"> CREATE TABLE [dbo].[Log] ( [ID] [int] IDENTITY (1, 1) NOT NULL , [Date] [datetime] NOT NULL , [Thread] [varchar] (255) NOT NULL , [Level] [varchar] (20) NOT NULL , [Logger] [varchar] (255) NOT NULL , ===================================================== == File: src/log4net.Tests/bin/Debug/netcoreapp1.0/log4net.xml ===================================================== <?xml version="1.0"?> <doc> <assembly> <name>log4net</name> </assembly> <members> <member name="T:log4net.Appender.AdoNetAppender"> <summary> Appender that logs to a database. </summary> <remarks> <para> <see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a database. The appender can be configured to specify the connection string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property. The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property. For more information on database connection strings for your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>. </para> <para> Records are written into the database either using a prepared statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored procedure. </para> <para> The prepared statement text or the name of the stored procedure must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property. </para> <para> The prepared statement or stored procedure can take a number of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/> method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> type may be subclassed if required to provide database specific functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies the parameter name, database type, size, and how the value should be generated using a <see cref="T:log4net.Layout.ILayout"/>. </para> </remarks> <example> An example of a SQL Server table that could be logged to: <code lang="SQL"> CREATE TABLE [dbo].[Log] ( [ID] [int] IDENTITY (1, 1) NOT NULL , [Date] [datetime] NOT NULL , [Thread] [varchar] (255) NOT NULL , [Level] [varchar] (20) NOT NULL , [Logger] [varchar] (255) NOT NULL , ===================================================== == File: src/log4net.Tests/bin/Debug/net462/log4net.xml ===================================================== <?xml version="1.0"?> <doc> <assembly> <name>log4net</name> </assembly> <members> <member name="T:log4net.Appender.AdoNetAppender"> <summary> Appender that logs to a database. </summary> <remarks> <para> <see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a database. The appender can be configured to specify the connection string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property. The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property. For more information on database connection strings for your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>. </para> <para> Records are written into the database either using a prepared statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored procedure. </para> <para> The prepared statement text or the name of the stored procedure must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property. </para> <para> The prepared statement or stored procedure can take a number of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/> method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> type may be subclassed if required to provide database specific functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies the parameter name, database type, size, and how the value should be generated using a <see cref="T:log4net.Layout.ILayout"/>. </para> </remarks> <example> An example of a SQL Server table that could be logged to: <code lang="SQL"> CREATE TABLE [dbo].[Log] ( [ID] [int] IDENTITY (1, 1) NOT NULL , [Date] [datetime] NOT NULL , [Thread] [varchar] (255) NOT NULL , [Level] [varchar] (20) NOT NULL , [Logger] [varchar] (255) NOT NULL , ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_41d3d834_4320f4da.log.1 ===================================================== 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_41d3d834_4320f4da.log ===================================================== ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_41d3d834_4320f4da.log.2 ===================================================== 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/test_default.log ===================================================== ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp3.1/log4net.xml ===================================================== <?xml version="1.0"?> <doc> <assembly> <name>log4net</name> </assembly> <members> <member name="T:log4net.Appender.AdoNetAppender"> <summary> Appender that logs to a database. </summary> <remarks> <para> <see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a database. The appender can be configured to specify the connection string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property. The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property. For more information on database connection strings for your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>. </para> <para> Records are written into the database either using a prepared statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored procedure. </para> <para> The prepared statement text or the name of the stored procedure must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property. </para> <para> The prepared statement or stored procedure can take a number of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/> method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> type may be subclassed if required to provide database specific functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies the parameter name, database type, size, and how the value should be generated using a <see cref="T:log4net.Layout.ILayout"/>. </para> </remarks> <example> An example of a SQL Server table that could be logged to: <code lang="SQL"> CREATE TABLE [dbo].[Log] ( [ID] [int] IDENTITY (1, 1) NOT NULL , [Date] [datetime] NOT NULL , [Thread] [varchar] (255) NOT NULL , [Level] [varchar] (20) NOT NULL , [Logger] [varchar] (255) NOT NULL , ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log.1 ===================================================== 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log ===================================================== 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log.2 ===================================================== 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_default.log ===================================================== ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/test_41d3d834_4320f4da.log.3 ===================================================== 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp2.1/log4net.xml ===================================================== <?xml version="1.0"?> <doc> <assembly> <name>log4net</name> </assembly> <members> <member name="T:log4net.Appender.AdoNetAppender"> <summary> Appender that logs to a database. </summary> <remarks> <para> <see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a database. The appender can be configured to specify the connection string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property. The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property. For more information on database connection strings for your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>. </para> <para> Records are written into the database either using a prepared statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored procedure. </para> <para> The prepared statement text or the name of the stored procedure must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property. </para> <para> The prepared statement or stored procedure can take a number of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/> method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> type may be subclassed if required to provide database specific functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies the parameter name, database type, size, and how the value should be generated using a <see cref="T:log4net.Layout.ILayout"/>. </para> </remarks> <example> An example of a SQL Server table that could be logged to: <code lang="SQL"> CREATE TABLE [dbo].[Log] ( [ID] [int] IDENTITY (1, 1) NOT NULL , [Date] [datetime] NOT NULL , [Thread] [varchar] (255) NOT NULL , [Level] [varchar] (20) NOT NULL , [Logger] [varchar] (255) NOT NULL , ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/netcoreapp1.0/log4net.xml ===================================================== <?xml version="1.0"?> <doc> <assembly> <name>log4net</name> </assembly> <members> <member name="T:log4net.Appender.AdoNetAppender"> <summary> Appender that logs to a database. </summary> <remarks> <para> <see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a database. The appender can be configured to specify the connection string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property. The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property. For more information on database connection strings for your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>. </para> <para> Records are written into the database either using a prepared statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored procedure. </para> <para> The prepared statement text or the name of the stored procedure must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property. </para> <para> The prepared statement or stored procedure can take a number of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/> method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> type may be subclassed if required to provide database specific functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies the parameter name, database type, size, and how the value should be generated using a <see cref="T:log4net.Layout.ILayout"/>. </para> </remarks> <example> An example of a SQL Server table that could be logged to: <code lang="SQL"> CREATE TABLE [dbo].[Log] ( [ID] [int] IDENTITY (1, 1) NOT NULL , [Date] [datetime] NOT NULL , [Thread] [varchar] (255) NOT NULL , [Level] [varchar] (20) NOT NULL , [Logger] [varchar] (255) NOT NULL , ===================================================== == File: src/log4net.Tests/bin/CrossPlatform/net462/log4net.xml ===================================================== <?xml version="1.0"?> <doc> <assembly> <name>log4net</name> </assembly> <members> <member name="T:log4net.Appender.AdoNetAppender"> <summary> Appender that logs to a database. </summary> <remarks> <para> <see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a database. The appender can be configured to specify the connection string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property. The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property. For more information on database connection strings for your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>. </para> <para> Records are written into the database either using a prepared statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored procedure. </para> <para> The prepared statement text or the name of the stored procedure must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property. </para> <para> The prepared statement or stored procedure can take a number of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/> method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> type may be subclassed if required to provide database specific functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies the parameter name, database type, size, and how the value should be generated using a <see cref="T:log4net.Layout.ILayout"/>. </para> </remarks> <example> An example of a SQL Server table that could be logged to: <code lang="SQL"> CREATE TABLE [dbo].[Log] ( [ID] [int] IDENTITY (1, 1) NOT NULL , [Date] [datetime] NOT NULL , [Thread] [varchar] (255) NOT NULL , [Level] [varchar] (20) NOT NULL , [Logger] [varchar] (255) NOT NULL , ===================================================== == File: src/log4net.Tests/NUnitTestRunnerInitializer.cs ===================================================== namespace log4net.Tests { using System.IO; using NUnit.Framework; [SetUpFixture] public class NUnitTestRunnerInitializer { [OneTimeSetUp] public void RunBeforeAnyTests() { Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory); } } } ===================================================== == File: src/log4net.Tests/log4net.Tests.csproj ===================================================== <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFrameworks>net462;net7.0</TargetFrameworks> <NoWarn>NETSDK1138;CS1701</NoWarn> <ProjectType>Local</ProjectType> <DefaultClientScript>JScript</DefaultClientScript> <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout> <DefaultTargetSchema>IE50</DefaultTargetSchema> <DelaySign>false</DelaySign> <OutputType>Library</OutputType> <PublishUrl>publish\</PublishUrl> <Install>true</Install> <InstallFrom>Disk</InstallFrom> <UpdateEnabled>false</UpdateEnabled> <UpdateMode>Foreground</UpdateMode> <UpdateInterval>7</UpdateInterval> <UpdateIntervalUnits>Days</UpdateIntervalUnits> <UpdatePeriodically>false</UpdatePeriodically> <UpdateRequired>false</UpdateRequired> <MapFileExtensions>true</MapFileExtensions> <ApplicationRevision>0</ApplicationRevision> <ApplicationVersion>1.0.0.%2a</ApplicationVersion> <IsWebBootstrapper>false</IsWebBootstrapper> <UseApplicationTrust>false</UseApplicationTrust> <BootstrapperEnabled>true</BootstrapperEnabled> <GenerateAssemblyInfo>false</GenerateAssemblyInfo> <AssemblyOriginatorKeyFile>..\..\log4net.snk</AssemblyOriginatorKeyFile> <OutputPath>bin\$(Configuration)</OutputPath> <Configurations>Debug;Release</Configurations> <Platforms>AnyCPU</Platforms> <Deterministic>true</Deterministic> <!-- suppress analyzer mismatch warning --> <NoWarn>CS8032</NoWarn> </PropertyGroup> <PropertyGroup> <BaseAddress>285212672</BaseAddress> <FileAlignment>4096</FileAlignment> <RegisterForComInterop>false</RegisterForComInterop> <RemoveIntegerChecks>false</RemoveIntegerChecks> </PropertyGroup> <PropertyGroup Condition="'$(TargetFramework)'=='net462'"> <DefineConstants>$(DefineConstants);NET_2_0;NET_4_0;NET_4_5</DefineConstants> </PropertyGroup> <PropertyGroup Condition="'$(TargetFramework)'=='netcoreapp1.0'"> <DefineConstants>$(DefineConstants);NETSTANDARD;NETSTANDARD1_3</DefineConstants> </PropertyGroup> <PropertyGroup Condition="'$(TargetFramework)'=='netcoreapp2.1'"> <DefineConstants>$(DefineConstants);NETSTANDARD;NETSTANDARD2_0</DefineConstants> </PropertyGroup> <PropertyGroup Condition="'$(TargetFramework)'=='netcoreapp3.1'"> ===================================================== == File: src/log4net/log4net.csproj ===================================================== <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <PackageId>log4net</PackageId> <Version>2.0.16</Version> <Title>Apache log4net</Title> <Product>Apache log4net</Product> <Description> log4net is a tool to help the programmer output log statements to a variety of output targets. In case of problems with an application, it is helpful to enable logging so that the problem can be located. With log4net it is possible to enable logging at runtime without modifying the application binary. The log4net package is designed so that log statements can remain in shipped code without incurring a high performance cost. It follows that the speed of logging (or rather not logging) is crucial. At the same time, log output can be so voluminous that it quickly becomes overwhelming. One of the distinctive features of log4net is the notion of hierarchical loggers. Using these loggers it is possible to selectively control which log statements are output at arbitrary granularity. log4net is designed with two distinct goals in mind: speed and flexibility </Description> <Authors>The Apache Software Foundation</Authors> <Owners>Apache Logging Project, Jiří Činčura</Owners> <PackageLicenseExpression>Apache-2.0</PackageLicenseExpression> <PackageProjectUrl>https://logging.apache.org/log4net/</PackageProjectUrl> <PackageIcon>package-icon.png</PackageIcon> <Copyright>Copyright 2004-2024 The Apache Software Foundation</Copyright> <PackageTags>logging log tracing logfiles</PackageTags> <RepositoryType>git</RepositoryType> <RepositoryUrl>https://github.com/apache/logging-log4net</RepositoryUrl> <GeneratePackageOnBuild>false</GeneratePackageOnBuild> <Platforms>AnyCPU</Platforms> <TargetFrameworks>net20;net35;net40;net40-client;net45;netstandard1.3;netstandard2.0</TargetFrameworks> <Configurations>Debug;Release</Configurations> <LangVersion>latest</LangVersion> <RootNamespace>log4net</RootNamespace> <AssemblyName>log4net</AssemblyName> <ProjectType>Local</ProjectType> <DefaultClientScript>JScript</DefaultClientScript> <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout> <DefaultTargetSchema>IE50</DefaultTargetSchema> <DelaySign>false</DelaySign> <OutputType>Library</OutputType> <PublishUrl>publish\</PublishUrl> <Install>true</Install> <InstallFrom>Disk</InstallFrom> <UpdateEnabled>false</UpdateEnabled> <UpdateMode>Foreground</UpdateMode> <UpdateInterval>7</UpdateInterval> <UpdateIntervalUnits>Days</UpdateIntervalUnits> ===================================================== == File: src/log4net/Core/FixFlags.cs ===================================================== using System; namespace log4net.Core { /// <summary> /// Flags passed to the <see cref="LoggingEvent.Fix"/> property /// </summary> /// <remarks> /// <para> /// Flags passed to the <see cref="LoggingEvent.Fix"/> property /// </para> /// </remarks> /// <author>Nicko Cadell</author> [Flags] public enum FixFlags { /// <summary> /// Fix the MDC /// </summary> [Obsolete("Replaced by composite Properties")] Mdc = 0x01, /// <summary> /// Fix the NDC /// </summary> Ndc = 0x02, /// <summary> /// Fix the rendered message /// </summary> Message = 0x04, /// <summary> /// Fix the thread name /// </summary> ThreadName = 0x08, /// <summary> /// Fix the callers location information /// </summary> /// <remarks> /// CAUTION: Very slow to generate /// </remarks> LocationInfo = 0x10, /// <summary> /// Fix the callers windows user name /// </summary> /// <remarks> /// CAUTION: Slow to generate ===================================================== == File: doc/RELEASING.md ===================================================== Log4Net Release procedure --- This serves to document the release procedure for log4net, which is probably more of interest to maintainers than anyone else, but I've found that there are enough moving parts and time between releases to make the process more difficult than it needs to be. Some parts are automated and others can be in the future. Assuming the code is in a place where a release can be made, for the imagined release version 2.0.123: 1. Update the documentation under `src/site` - minimally, this means at least: - `src/site/xdoc/release/release-notes.xml` - copy an existing release section & think about: - what does this release change? - bug fixes? - enhancements - don't forget to mention contributors - people who reported issues - people who created pull requests - people who suggested code that was implemented - `src/site/xdoc/download_log4net.xml` - you should be able to search & replace on the prior version for the new one you're about to create 2. Update the log4net.csproj file with this new version 3. Build release artifacts with `npm run release` - if this doesn't work, you may need to `npm ci` first! - currently, this _must_ happen on a windows machine because of older .net framework requirements which cannot be met on a Linux machine (or at least, I haven't figured out how - in particular CF) - TODO: the following are still manual and need to be built into the `release` script: - log4net.build: update package.version property - log4net.shfbproj: update HtmlHelpName - pom.xml: update version 4. Sign release artifacts (zips & nupkg) under `build/artifacts` - eg `gpg --argmor --output log4net-2.0.123.nupkg.asc --detach-sig log4net-2.0.123.nupkg` - there is an accompanying `sign-log4net-libraries.sh` which you could invoke if you cd into the `build/artifacts` folder - I build on Windows and sign on Linux as my build machine belongs to my company and I don't want to store keys there. Always protect your keys fervently! 5. Clone out the log4net doc repo (https://github.com/apache/logging-log4net-site) - check out the `asf-staging` branch - create a folder which includes the version, eg `log4net-2.0.123` 6. Copy the contents of `target/site` from this repo into the folder created in (5) - remember to either update or link in sdk docs from a prior release 7. Update the symlinks in the base of the docs repo, ie: - 2.0.x -> 2.0.123 - 2.x -> 2.0.123 ===================================================== == File: doc/sign-log4net-libraries.sh ===================================================== #!/bin/bash # see https://infra.apache.org/release-signing#openpgp-ascii-detach-sig DID_SOMETHING=0 for f in *log4net*.nupkg *log4net*.zip; do DID_SOMETHING=1 echo "signing: $f" gpg --armor --output $f.asc --detach-sig $f done if test "$DID_SOMETHING" = "0"; then echo "No log4net artifacts found - are you sure you're in the right directory?" exit 2 fi ===================================================== == File: doc/BUILDING.md ===================================================== ## Building log4net Log4net provides support for a wide array of targets, including - older .net 2 and 3.5 (including client profiles) - more modern net40/net45 - netstandard1.3/2.0 As such, it does require a relatively full .net environment on Windows to build. Options: - build locally. Suggested environment: - Pre-requisites: - Visual Studio 2019 Build Tools - include desktop targets at least - include dotnet core targets or download and install the latest dotnet sdk (you will need at least v2.1) - note that build is possible with VS2022 build tools, but I had to install VS2019 build tools _as well_ to get msbuild to recognise the legacy net35-profile target - Ensure you have .NET Framework 3.5 SP1 installed - on Win10+, this can only be installed via Add/Remove Windows Components - on other platforms, see https://dotnet.microsoft.com/download/dotnet-framework/net35-sp1 - Building against .net 2/3.5, especially Client Profile, is not supported on Mono - Log4Net supports some older, out-of-support .net SDKs, particularly dotnet core 1.1 and .net framework client profiles for 3.5 and 4.0. There are helper powershell scripts in the root of this repository to assist with obtaining and installing these SDKs from Microsoft servers. Please see: - [install-dotnet-core-sdk-1.1.ps1](install-dotnet-core-sdk-1.1.ps1) - [install-net-framework-sdk-3.5.ps1](install-net-framework-sdk-3.5.ps1) - Binaries can be built with a Visual Studio or Rider installation - Binaries, packages and a release zip can be built via commandline - Ensure that you have a reasonably modern NodeJS installed (at least version 8+) - `npm ci` - `npm run build` - optionally `npm test` to run all tests - optionally `npm run release` to generate release artifacts - build via docker for windows, using the `build-with-docker-for-windows.bat` script - build via the vs2019 Windows AppVeyer image. There is an appveyer.yml file included which (should) build if you set up AppVeyer to track your fork. AppVeyer is free for open-source projects. (TODO: should have a link to the official AppVeyer build) ## Updating the site Log4Net uses Maven to build the site. Source artifacts can be found under `src/site`. Building the site can be accomplished with `npm run build-site`. You should have maven installed: - Windows: get it from Scoop - OSX: get it from Homebrew ===================================================== == File: doc/CONTRIBUTING.md ===================================================== Contributing to Apache log4net ====================== You have found a bug or you have an idea for a cool new feature? Contributing code is a great way to give something back to the open source community. Before you dig right into the code there are a few guidelines that we need contributors to follow so that we can have a chance of keeping on top of things. Getting Started --------------- + Make sure you have a [JIRA account](https://issues.apache.org/jira/). + Make sure you have a [GitHub account](https://github.com/signup/free). + If you're planning to implement a new feature it makes sense to discuss your changes on the [dev list](https://logging.apache.org/log4net/mail-lists.html) first. This way you can make sure you're not wasting your time on something that isn't considered to be in Apache log4net's scope. + Submit a ticket for your issue, assuming one does not already exist. + Clearly describe the issue including steps to reproduce when it is a bug. + Make sure you fill in the earliest version that you know has the issue. + Fork the repository on GitHub. Making Changes -------------- + Create a topic branch from where you want to base your work (this is usually the master/trunk branch). + Make commits of logical units. + Respect the original code style: + Create minimal diffs - disable on save actions like reformat source code or organize imports. If you feel the source code should be reformatted create a separate PR for this change. + Check for unnecessary whitespace with git diff --check before committing. + Make sure your commit messages are in the proper format. Your commit message should contain the key of the JIRA issue. + Make sure you have added the necessary tests for your changes. + Run all the tests with `nant` inside the `tests` directory to assure nothing else was accidentally broken. Making Trivial Changes ---------------------- For changes of a trivial nature to comments and documentation, it is not always necessary to create a new ticket in JIRA. In this case, it is appropriate to start the first line of a commit with '(doc)' instead of a ticket number. Submitting Changes ------------------ + Sign the [Contributor License Agreement][cla] if you haven't already. + Push your changes to a topic branch in your fork of the repository. + Submit a pull request to the repository in the apache organization. + Update your JIRA ticket and include a link to the pull request in the ticket. Additional Resources -------------------- + [Apache log4net JIRA project page](https://issues.apache.org/jira/browse/LOG4NET) + [Contributor License Agreement][cla] + [General GitHub documentation](https://help.github.com/) ===================================================== == File: doc/ReleaseInstructions-legacy.txt ===================================================== THIS DOCUMENT NEEDS TO BE ADAPTED NOW WE'VE MOVED TO GIT This document is a work in progress and was created in parallel to the release of Apache log4net 1.2.11 and adapted for 2.0.6. Prereqs ======= * make sure you have all the required software around. For the 2.0.6 release this meant - you may need a couple of Windows or Linux boxes in order to be able to build all target frameworks. - Things you need o a Subversion command line client o NAnt 0.92 or better http://nant.sourceforge.net/ Make sure to unblock the ZIP before you extract it. o Some recent version of a Java runtime environment (Java5 at minimum) o Apache Maven 3.x http://maven.apache.org/ You may want to set some environment variables like Path (to include Maven's and NAnt's bin directories), M2_HOME and JAVA_HOME to make things easier. o .NET Framework 3.5SP1 and SDK 2.0 As of October 2011 this is available from <http://msdn.microsoft.com/en-us/netframework/> o .NET Framework and SDK 4.0 As of October 2011 this is available from <http://msdn.microsoft.com/en-us/netframework/> o .NET Core Developer Kit available from https://www.microsoft.com/net/core o Mono available from http://www.mono-project.com/download/ Unfortunately NAnt 0.92 has issues with Mono that is too recent, I used a Ubuntu 14.04 installation and installed NAnt and Mono via the Ubuntu Debian packages. It comes with Mono 3.2.8. o Sandcastle Help File Builder with its Dependencies ===================================================== == File: appveyer.yml ===================================================== version: 1.0.{build} image: Visual Studio 2019 build_script: - cmd: >- npm ci npm test npm run release artifacts: - path: build/artifacts/* |