This is an automated email from the ASF dual-hosted git repository.

vy pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/logging-log4j-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 17e4c07c1 Remove the `transform` folder – it will be moved to the 
`logging-log4j-transform` repository
17e4c07c1 is described below

commit 17e4c07c1b1d6964e48850095000a88cab4f196d
Author: Volkan Yazıcı <[email protected]>
AuthorDate: Wed Dec 20 15:39:27 2023 +0100

    Remove the `transform` folder – it will be moved to the 
`logging-log4j-transform` repository
---
 transform/0.x/index.html | 1156 ----------------------------------------------
 transform/index.html     |   10 -
 transform/latest         |    1 -
 3 files changed, 1167 deletions(-)

diff --git a/transform/0.x/index.html b/transform/0.x/index.html
deleted file mode 100644
index bfefee578..000000000
--- a/transform/0.x/index.html
+++ /dev/null
@@ -1,1156 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-<meta charset="UTF-8">
-<meta http-equiv="X-UA-Compatible" content="IE=edge">
-<meta name="viewport" content="width=device-width, initial-scale=1.0">
-<meta name="generator" content="Asciidoctor 2.0.18">
-<title>Log4j Transform</title>
-<link rel="stylesheet" 
href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700";>
-<style>
-/*! Asciidoctor default stylesheet | MIT License | https://asciidoctor.org */
-/* Uncomment the following line when using as a custom stylesheet */
-/* @import 
"https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700";;
 */
-html{font-family:sans-serif;-webkit-text-size-adjust:100%}
-a{background:none}
-a:focus{outline:thin dotted}
-a:active,a:hover{outline:0}
-h1{font-size:2em;margin:.67em 0}
-b,strong{font-weight:bold}
-abbr{font-size:.9em}
-abbr[title]{cursor:help;border-bottom:1px dotted #dddddf;text-decoration:none}
-dfn{font-style:italic}
-hr{height:0}
-mark{background:#ff0;color:#000}
-code,kbd,pre,samp{font-family:monospace;font-size:1em}
-pre{white-space:pre-wrap}
-q{quotes:"\201C" "\201D" "\2018" "\2019"}
-small{font-size:80%}
-sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
-sup{top:-.5em}
-sub{bottom:-.25em}
-img{border:0}
-svg:not(:root){overflow:hidden}
-figure{margin:0}
-audio,video{display:inline-block}
-audio:not([controls]){display:none;height:0}
-fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}
-legend{border:0;padding:0}
-button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}
-button,input{line-height:normal}
-button,select{text-transform:none}
-button,html 
input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}
-button[disabled],html input[disabled]{cursor:default}
-input[type=checkbox],input[type=radio]{padding:0}
-button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}
-textarea{overflow:auto;vertical-align:top}
-table{border-collapse:collapse;border-spacing:0}
-*,::before,::after{box-sizing:border-box}
-html,body{font-size:100%}
-body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto 
Serif","DejaVu 
Serif",serif;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-wrap:anywhere;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}
-a:hover{cursor:pointer}
-img,object,embed{max-width:100%;height:auto}
-object,embed{height:100%}
-img{-ms-interpolation-mode:bicubic}
-.left{float:left!important}
-.right{float:right!important}
-.text-left{text-align:left!important}
-.text-right{text-align:right!important}
-.text-center{text-align:center!important}
-.text-justify{text-align:justify!important}
-.hide{display:none}
-img,object,svg{display:inline-block;vertical-align:middle}
-textarea{height:auto;min-height:50px}
-select{width:100%}
-.subheader,.admonitionblock 
td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}
-div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0}
-a{color:#2156a5;text-decoration:underline;line-height:inherit}
-a:hover,a:focus{color:#1d4b8f}
-a img{border:0}
-p{line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}
-p aside{font-size:.875em;line-height:1.35;font-style:italic}
-h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:"Open 
Sans","DejaVu 
Sans",sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}
-h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title 
small,h4 small,h5 small,h6 small{font-size:60%;color:#e99b8f;line-height:0}
-h1{font-size:2.125em}
-h2{font-size:1.6875em}
-h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em}
-h4,h5{font-size:1.125em}
-h6{font-size:1em}
-hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 
1.1875em}
-em,i{font-style:italic;line-height:inherit}
-strong,b{font-weight:bold;line-height:inherit}
-small{font-size:60%;line-height:inherit}
-code{font-family:"Droid Sans Mono","DejaVu Sans 
Mono",monospace;font-weight:400;color:rgba(0,0,0,.9)}
-ul,ol,dl{line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}
-ul,ol{margin-left:1.5em}
-ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0}
-ul.circle{list-style-type:circle}
-ul.disc{list-style-type:disc}
-ul.square{list-style-type:square}
-ul.circle ul:not([class]),ul.disc ul:not([class]),ul.square 
ul:not([class]){list-style:inherit}
-ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0}
-dl dt{margin-bottom:.3125em;font-weight:bold}
-dl dd{margin-bottom:1.25em}
-blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px 
solid #ddd}
-blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}
-@media screen and 
(min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2}
-h1{font-size:2.75em}
-h2{font-size:2.3125em}
-h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em}
-h4{font-size:1.4375em}}
-table{background:#fff;margin-bottom:1.25em;border:1px solid 
#dedede;word-wrap:normal}
-table thead,table tfoot{background:#f7f8f7}
-table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr 
td{padding:.5em .625em 
.625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}
-table tr th,table tr td{padding:.5625em 
.625em;font-size:inherit;color:rgba(0,0,0,.8)}
-table tr.even,table tr.alt{background:#f8f8f7}
-table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot 
tr td{line-height:1.6}
-h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em}
-h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title 
strong,h4 strong,h5 strong,h6 strong{font-weight:400}
-.center{margin-left:auto;margin-right:auto}
-.stretch{width:100%}
-.clearfix::before,.clearfix::after,.float-group::before,.float-group::after{content:"
 ";display:table}
-.clearfix::after,.float-group::after{clear:both}
-:not(pre).nobreak{word-wrap:normal}
-:not(pre).nowrap{white-space:nowrap}
-:not(pre).pre-wrap{white-space:pre-wrap}
-:not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em
 
.5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed}
-pre{color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans 
Mono",monospace;line-height:1.45;text-rendering:optimizeSpeed}
-pre code,pre pre{color:inherit;font-size:inherit;line-height:inherit}
-pre>code{display:block}
-pre.nowrap,pre.nowrap pre{white-space:pre;word-wrap:normal}
-em em{font-style:normal}
-strong strong{font-weight:400}
-.keyseq{color:rgba(51,51,51,.8)}
-kbd{font-family:"Droid Sans Mono","DejaVu Sans 
Mono",monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px
 solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 
.1em #fff;margin:0 .15em;padding:.2em 
.5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}
-.keyseq kbd:first-child{margin-left:0}
-.keyseq kbd:last-child{margin-right:0}
-.menuseq,.menuref{color:#000}
-.menuseq b:not(.caret),.menuref{font-weight:inherit}
-.menuseq{word-spacing:-.02em}
-.menuseq b.caret{font-size:1.25em;line-height:.8}
-.menuseq i.caret{font-weight:bold;text-align:center;width:.45em}
-b.button::before,b.button::after{position:relative;top:-1px;font-weight:400}
-b.button::before{content:"[";padding:0 3px 0 2px}
-b.button::after{content:"]";padding:0 2px 0 3px}
-p a>code:hover{color:rgba(0,0,0,.9)}
-#header,#content,#footnotes,#footer{width:100%;margin:0 
auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}
-#header::before,#header::after,#content::before,#content::after,#footnotes::before,#footnotes::after,#footer::before,#footer::after{content:"
 ";display:table}
-#header::after,#content::after,#footnotes::after,#footer::after{clear:both}
-#content{margin-top:1.25em}
-#content::before{content:none}
-#header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}
-#header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}
-#header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px 
solid #dddddf;padding-bottom:8px}
-#header .details{border-bottom:1px solid 
#dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row
 wrap}
-#header .details span:first-child{margin-left:-.125em}
-#header .details span.email a{color:rgba(0,0,0,.85)}
-#header .details br{display:none}
-#header .details br+span::before{content:"\00a0\2013\00a0"}
-#header .details 
br+span.author::before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)}
-#header .details br+span#revremark::before{content:"\00a0|\00a0"}
-#header #revnumber{text-transform:capitalize}
-#header #revnumber::after{content:"\00a0"}
-#content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px 
solid 
#dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}
-#toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}
-#toc>ul{margin-left:.125em}
-#toc ul.sectlevel0>li>a{font-style:italic}
-#toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}
-#toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none}
-#toc li{line-height:1.3334;margin-top:.3334em}
-#toc a{text-decoration:none}
-#toc a:active{text-decoration:underline}
-#toctitle{color:#7a2518;font-size:1.2em}
-@media screen and (min-width:768px){#toctitle{font-size:1.375em}
-body.toc2{padding-left:15em;padding-right:0}
-#toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px
 solid 
#e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em
 1em;height:100%;overflow:auto}
-#toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}
-#toc.toc2>ul{font-size:.9em;margin-bottom:0}
-#toc.toc2 ul ul{margin-left:0;padding-left:1em}
-#toc.toc2 ul.sectlevel0 
ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}
-body.toc2.toc-right{padding-left:0;padding-right:15em}
-body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid 
#e7e7e9;left:auto;right:0}}
-@media screen and 
(min-width:1280px){body.toc2{padding-left:20em;padding-right:0}
-#toc.toc2{width:20em}
-#toc.toc2 #toctitle{font-size:1.375em}
-#toc.toc2>ul{font-size:.95em}
-#toc.toc2 ul ul{padding-left:1.25em}
-body.toc2.toc-right{padding-left:0;padding-right:20em}}
-#content #toc{border:1px solid 
#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}
-#content #toc>:first-child{margin-top:0}
-#content #toc>:last-child{margin-bottom:0}
-#footer{max-width:none;background:rgba(0,0,0,.8);padding:1.25em}
-#footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}
-#content{margin-bottom:.625em}
-.sect1{padding-bottom:.625em}
-@media screen and (min-width:768px){#content{margin-bottom:1.25em}
-.sect1{padding-bottom:1.25em}}
-.sect1:last-child{padding-bottom:0}
-.sect1+.sect1{border-top:1px solid #e7e7e9}
-#content 
h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}
-#content 
h1>a.anchor::before,h2>a.anchor::before,h3>a.anchor::before,#toctitle>a.anchor::before,.sidebarblock>.content>.title>a.anchor::before,h4>a.anchor::before,h5>a.anchor::before,h6>a.anchor::before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em}
-#content h1:hover>a.anchor,#content 
h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible}
-#content 
h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#ba3925;text-decoration:none}
-#content 
h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221}
-details,.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em}
-details{margin-left:1.25rem}
-details>summary{cursor:pointer;display:block;position:relative;line-height:1.6;margin-bottom:.625rem;outline:none;-webkit-tap-highlight-color:transparent}
-details>summary::-webkit-details-marker{display:none}
-details>summary::before{content:"";border:solid 
transparent;border-left:solid;border-width:.3em 0 .3em 
.5em;position:absolute;top:.5em;left:-1.25rem;transform:translateX(15%)}
-details[open]>summary::before{border:solid 
transparent;border-top:solid;border-width:.5em .3em 0;transform:translateY(15%)}
-details>summary::after{content:"";width:1.25rem;height:1em;position:absolute;top:.3em;left:-1.25rem}
-.admonitionblock 
td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto
 Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}
-table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}
-.paragraph.lead>p,#preamble>.sectionbody>[class=paragraph]:first-of-type 
p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}
-.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}
-.admonitionblock>table td.icon{text-align:center;width:80px}
-.admonitionblock>table td.icon img{max-width:none}
-.admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open 
Sans","DejaVu Sans",sans-serif;text-transform:uppercase}
-.admonitionblock>table 
td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid 
#dddddf;color:rgba(0,0,0,.6);word-wrap:anywhere}
-.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}
-.exampleblock>.content{border:1px solid 
#e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}
-.exampleblock>.content>:first-child{margin-top:0}
-.exampleblock>.content>:last-child{margin-bottom:0}
-.sidebarblock{border:1px solid 
#dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}
-.sidebarblock>:first-child{margin-top:0}
-.sidebarblock>:last-child{margin-bottom:0}
-.sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}
-.exampleblock>.content>:last-child>:last-child,.exampleblock>.content 
.olist>ol>li:last-child>:last-child,.exampleblock>.content 
.ulist>ul>li:last-child>:last-child,.exampleblock>.content 
.qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content
 .olist>ol>li:last-child>:last-child,.sidebarblock>.content 
.ulist>ul>li:last-child>:last-child,.sidebarblock>.content 
.qlist>ol>li:last-child>:last-child{margin-bottom:0}
-.literalblock 
pre,.listingblock>.content>pre{border-radius:4px;overflow-x:auto;padding:1em;font-size:.8125em}
-@media screen and (min-width:768px){.literalblock 
pre,.listingblock>.content>pre{font-size:.90625em}}
-@media screen and (min-width:1280px){.literalblock 
pre,.listingblock>.content>pre{font-size:1em}}
-.literalblock 
pre,.listingblock>.content>pre:not(.highlight),.listingblock>.content>pre[class=highlight],.listingblock>.content>pre[class^="highlight
 "]{background:#f7f7f8}
-.literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}
-.listingblock>.content{position:relative}
-.listingblock 
code[data-lang]::before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}
-.listingblock:hover code[data-lang]::before{display:block}
-.listingblock.terminal pre 
.command::before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}
-.listingblock.terminal pre .command:not([data-prompt])::before{content:"$"}
-.listingblock pre.highlightjs{padding:0}
-.listingblock pre.highlightjs>code{padding:1em;border-radius:4px}
-.listingblock pre.prettyprint{border-width:0}
-.prettyprint{background:#f7f7f8}
-pre.prettyprint .linenums{line-height:1.45;margin-left:2em}
-pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}
-pre.prettyprint li code[data-lang]::before{opacity:1}
-pre.prettyprint li:not(:first-child) code[data-lang]::before{display:none}
-table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}
-table.linenotable 
td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}
-table.linenotable td.code{padding-left:.75em}
-table.linenotable td.linenos,pre.pygments .linenos{border-right:1px 
solid;opacity:.35;padding-right:.5em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
-pre.pygments span.linenos{display:inline-block;margin-right:.75em}
-.quoteblock{margin:0 1em 1.25em 1.5em;display:table}
-.quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}
-.quoteblock blockquote,.quoteblock 
p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}
-.quoteblock blockquote{margin:0;padding:0;border:0}
-.quoteblock 
blockquote::before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0
 1px 2px rgba(0,0,0,.1)}
-.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}
-.quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}
-.verseblock{margin:0 1em 1.25em}
-.verseblock pre{font-family:"Open Sans","DejaVu 
Sans",sans-serif;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}
-.verseblock pre strong{font-weight:400}
-.verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}
-.quoteblock .attribution,.verseblock 
.attribution{font-size:.9375em;line-height:1.45;font-style:italic}
-.quoteblock .attribution br,.verseblock .attribution br{display:none}
-.quoteblock .attribution cite,.verseblock .attribution 
cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}
-.quoteblock.abstract blockquote::before,.quoteblock.excerpt 
blockquote::before,.quoteblock .quoteblock blockquote::before{display:none}
-.quoteblock.abstract blockquote,.quoteblock.abstract p,.quoteblock.excerpt 
blockquote,.quoteblock.excerpt p,.quoteblock .quoteblock blockquote,.quoteblock 
.quoteblock p{line-height:1.6;word-spacing:0}
-.quoteblock.abstract{margin:0 1em 1.25em;display:block}
-.quoteblock.abstract>.title{margin:0 0 
.375em;font-size:1.15em;text-align:center}
-.quoteblock.excerpt>blockquote,.quoteblock .quoteblock{padding:0 0 .25em 
1em;border-left:.25em solid #dddddf}
-.quoteblock.excerpt,.quoteblock .quoteblock{margin-left:0}
-.quoteblock.excerpt blockquote,.quoteblock.excerpt p,.quoteblock .quoteblock 
blockquote,.quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}
-.quoteblock.excerpt .attribution,.quoteblock .quoteblock 
.attribution{color:inherit;font-size:.85rem;text-align:left;margin-right:0}
-p.tableblock:last-child{margin-bottom:0}
-td.tableblock>.content{margin-bottom:1.25em;word-wrap:anywhere}
-td.tableblock>.content>:last-child{margin-bottom:-1.25em}
-table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede}
-table.grid-all>*>tr>*{border-width:1px}
-table.grid-cols>*>tr>*{border-width:0 1px}
-table.grid-rows>*>tr>*{border-width:1px 0}
-table.frame-all{border-width:1px}
-table.frame-ends{border-width:1px 0}
-table.frame-sides{border-width:0 1px}
-table.frame-none>colgroup+*>:first-child>*,table.frame-sides>colgroup+*>:first-child>*{border-top-width:0}
-table.frame-none>:last-child>:last-child>*,table.frame-sides>:last-child>:last-child>*{border-bottom-width:0}
-table.frame-none>*>tr>:first-child,table.frame-ends>*>tr>:first-child{border-left-width:0}
-table.frame-none>*>tr>:last-child,table.frame-ends>*>tr>:last-child{border-right-width:0}
-table.stripes-all>*>tr,table.stripes-odd>*>tr:nth-of-type(odd),table.stripes-even>*>tr:nth-of-type(even),table.stripes-hover>*>tr:hover{background:#f8f8f7}
-th.halign-left,td.halign-left{text-align:left}
-th.halign-right,td.halign-right{text-align:right}
-th.halign-center,td.halign-center{text-align:center}
-th.valign-top,td.valign-top{vertical-align:top}
-th.valign-bottom,td.valign-bottom{vertical-align:bottom}
-th.valign-middle,td.valign-middle{vertical-align:middle}
-table thead th,table tfoot th{font-weight:bold}
-tbody tr th{background:#f7f8f7}
-tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th 
p{color:rgba(0,0,0,.8);font-weight:bold}
-p.tableblock>code:only-child{background:none;padding:0}
-p.tableblock{font-size:1em}
-ol{margin-left:1.75em}
-ul li ol{margin-left:1.5em}
-dl dd{margin-left:1.125em}
-dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0}
-li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist 
.ulist{margin-bottom:.625em}
-ul.checklist,ul.none,ol.none,ul.no-bullet,ol.no-bullet,ol.unnumbered,ul.unstyled,ol.unstyled{list-style-type:none}
-ul.no-bullet,ol.no-bullet,ol.unnumbered{margin-left:.625em}
-ul.unstyled,ol.unstyled{margin-left:0}
-li>p:empty:only-child::before{content:"";display:inline-block}
-ul.checklist>li>p:first-child{margin-left:-1em}
-ul.checklist>li>p:first-child>.fa-square-o:first-child,ul.checklist>li>p:first-child>.fa-check-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}
-ul.checklist>li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}
-ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em 
-1.25em}
-ul.inline>li{margin-left:1.25em}
-.unstyled dl dt{font-weight:400;font-style:normal}
-ol.arabic{list-style-type:decimal}
-ol.decimal{list-style-type:decimal-leading-zero}
-ol.loweralpha{list-style-type:lower-alpha}
-ol.upperalpha{list-style-type:upper-alpha}
-ol.lowerroman{list-style-type:lower-roman}
-ol.upperroman{list-style-type:upper-roman}
-ol.lowergreek{list-style-type:lower-greek}
-.hdlist>table,.colist>table{border:0;background:none}
-.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none}
-td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em}
-td.hdlist1{font-weight:bold;padding-bottom:1.25em}
-td.hdlist2{word-wrap:anywhere}
-.literalblock+.colist,.listingblock+.colist{margin-top:-.5em}
-.colist td:not([class]):first-child{padding:.4em .75em 
0;line-height:1;vertical-align:top}
-.colist td:not([class]):first-child img{max-width:none}
-.colist td:not([class]):last-child{padding:.25em 0}
-.thumb,.th{line-height:0;display:inline-block;border:4px solid 
#fff;box-shadow:0 0 0 1px #ddd}
-.imageblock.left{margin:.25em .625em 1.25em 0}
-.imageblock.right{margin:.25em 0 1.25em .625em}
-.imageblock>.title{margin-bottom:0}
-.imageblock.thumb,.imageblock.th{border-width:6px}
-.imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em}
-.image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}
-.image.left{margin-right:.625em}
-.image.right{margin-left:.625em}
-a.image{text-decoration:none;display:inline-block}
-a.image object{pointer-events:none}
-sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super}
-sup.footnote a,sup.footnoteref a{text-decoration:none}
-sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline}
-#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}
-#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 
.75em;border-width:1px 0 0}
-#footnotes .footnote{padding:0 .375em 0 
.225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}
-#footnotes .footnote 
a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em}
-#footnotes .footnote:last-of-type{margin-bottom:0}
-#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}
-div.unbreakable{page-break-inside:avoid}
-.big{font-size:larger}
-.small{font-size:smaller}
-.underline{text-decoration:underline}
-.overline{text-decoration:overline}
-.line-through{text-decoration:line-through}
-.aqua{color:#00bfbf}
-.aqua-background{background:#00fafa}
-.black{color:#000}
-.black-background{background:#000}
-.blue{color:#0000bf}
-.blue-background{background:#0000fa}
-.fuchsia{color:#bf00bf}
-.fuchsia-background{background:#fa00fa}
-.gray{color:#606060}
-.gray-background{background:#7d7d7d}
-.green{color:#006000}
-.green-background{background:#007d00}
-.lime{color:#00bf00}
-.lime-background{background:#00fa00}
-.maroon{color:#600000}
-.maroon-background{background:#7d0000}
-.navy{color:#000060}
-.navy-background{background:#00007d}
-.olive{color:#606000}
-.olive-background{background:#7d7d00}
-.purple{color:#600060}
-.purple-background{background:#7d007d}
-.red{color:#bf0000}
-.red-background{background:#fa0000}
-.silver{color:#909090}
-.silver-background{background:#bcbcbc}
-.teal{color:#006060}
-.teal-background{background:#007d7d}
-.white{color:#bfbfbf}
-.white-background{background:#fafafa}
-.yellow{color:#bfbf00}
-.yellow-background{background:#fafa00}
-span.icon>.fa{cursor:default}
-a span.icon>.fa{cursor:inherit}
-.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 
1px 2px rgba(0,0,0,.5);cursor:default}
-.admonitionblock td.icon .icon-note::before{content:"\f05a";color:#19407c}
-.admonitionblock td.icon .icon-tip::before{content:"\f0eb";text-shadow:1px 1px 
2px rgba(155,155,0,.8);color:#111}
-.admonitionblock td.icon .icon-warning::before{content:"\f071";color:#bf6900}
-.admonitionblock td.icon .icon-caution::before{content:"\f06d";color:#bf3400}
-.admonitionblock td.icon .icon-important::before{content:"\f06a";color:#bf0000}
-.conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:50%;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open
 Sans","DejaVu Sans",sans-serif;font-style:normal;font-weight:bold}
-.conum[data-value] *{color:#fff!important}
-.conum[data-value]+b{display:none}
-.conum[data-value]::after{content:attr(data-value)}
-pre .conum[data-value]{position:relative;top:-.125em}
-b.conum *{color:inherit!important}
-.conum:not([data-value]):empty{display:none}
-dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility}
-h1,h2,p,td.content,span.alt,summary{letter-spacing:-.01em}
-p strong,td.content strong,div.footnote strong{letter-spacing:-.005em}
-p,blockquote,dt,td.content,span.alt,summary{font-size:1.0625rem}
-p{margin-bottom:1.25rem}
-.sidebarblock p,.sidebarblock dt,.sidebarblock 
td.content,p.tableblock{font-size:1em}
-.exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 
1px 4px #e0e0dc}
-.print-only{display:none!important}
-@page{margin:1.25cm .75cm}
-@media print{*{box-shadow:none!important;text-shadow:none!important}
-html{font-size:80%}
-a{color:inherit!important;text-decoration:underline!important}
-a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important}
-a[href^="http:"]:not(.bare)::after,a[href^="https:"]:not(.bare)::after{content:"("
 attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}
-abbr[title]{border-bottom:1px dotted}
-abbr[title]::after{content:" (" attr(title) ")"}
-pre,blockquote,tr,img,object,svg{page-break-inside:avoid}
-thead{display:table-header-group}
-svg{max-width:100%}
-p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3}
-h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid}
-#header,#content,#footnotes,#footer{max-width:none}
-#toc,.sidebarblock,.exampleblock>.content{background:none!important}
-#toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}
-body.book #header{text-align:center}
-body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}
-body.book #header 
.details{border:0!important;display:block;padding:0!important}
-body.book #header .details span:first-child{margin-left:0!important}
-body.book #header .details br{display:block}
-body.book #header .details br+span::before{content:none!important}
-body.book 
#toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}
-body.book #toc,body.book #preamble,body.book h1.sect0,body.book 
.sect1>h2{page-break-before:always}
-.listingblock code[data-lang]::before{display:block}
-#footer{padding:0 .9375em}
-.hide-on-print{display:none!important}
-.print-only{display:block!important}
-.hide-for-print{display:none!important}
-.show-for-print{display:inherit!important}}
-@media amzn-kf8,print{#header>h1:first-child{margin-top:1.25rem}
-.sect1{padding:0!important}
-.sect1+.sect1{border:0}
-#footer{background:none}
-#footer-text{color:rgba(0,0,0,.6);font-size:.9em}}
-@media amzn-kf8{#header,#content,#footnotes,#footer{padding:0}}
-</style>
-<link rel="stylesheet" 
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css";>
-<style>
-/*! Stylesheet for CodeRay to loosely match GitHub themes | MIT License */
-pre.CodeRay{background:#f7f7f8}
-.CodeRay .line-numbers{border-right:1px solid;opacity:.35;padding:0 .5em 0 
0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
-.CodeRay span.line-numbers{display:inline-block;margin-right:.75em}
-.CodeRay .line-numbers strong{color:#000}
-table.CodeRay{border-collapse:separate;border:0;margin-bottom:0;background:none}
-table.CodeRay td{vertical-align:top;line-height:inherit}
-table.CodeRay td.line-numbers{text-align:right}
-table.CodeRay td.code{padding:0 0 0 .75em}
-.CodeRay .debug{color:#fff!important;background:navy!important}
-.CodeRay .annotation{color:#007}
-.CodeRay .attribute-name{color:navy}
-.CodeRay .attribute-value{color:#700}
-.CodeRay .binary{color:#509}
-.CodeRay .comment{color:#998;font-style:italic}
-.CodeRay .char{color:#04d}
-.CodeRay .char .content{color:#04d}
-.CodeRay .char .delimiter{color:#039}
-.CodeRay .class{color:#458;font-weight:bold}
-.CodeRay .complex{color:#a08}
-.CodeRay .constant,.CodeRay .predefined-constant{color:teal}
-.CodeRay .color{color:#099}
-.CodeRay .class-variable{color:#369}
-.CodeRay .decorator{color:#b0b}
-.CodeRay .definition{color:#099}
-.CodeRay .delimiter{color:#000}
-.CodeRay .doc{color:#970}
-.CodeRay .doctype{color:#34b}
-.CodeRay .doc-string{color:#d42}
-.CodeRay .escape{color:#666}
-.CodeRay .entity{color:#800}
-.CodeRay .error{color:#808}
-.CodeRay .exception{color:inherit}
-.CodeRay .filename{color:#099}
-.CodeRay .function{color:#900;font-weight:bold}
-.CodeRay .global-variable{color:teal}
-.CodeRay .hex{color:#058}
-.CodeRay .integer,.CodeRay .float{color:#099}
-.CodeRay .include{color:#555}
-.CodeRay .inline{color:#000}
-.CodeRay .inline .inline{background:#ccc}
-.CodeRay .inline .inline .inline{background:#bbb}
-.CodeRay .inline .inline-delimiter{color:#d14}
-.CodeRay .inline-delimiter{color:#d14}
-.CodeRay .important{color:#555;font-weight:bold}
-.CodeRay .interpreted{color:#b2b}
-.CodeRay .instance-variable{color:teal}
-.CodeRay .label{color:#970}
-.CodeRay .local-variable{color:#963}
-.CodeRay .octal{color:#40e}
-.CodeRay .predefined{color:#369}
-.CodeRay .preprocessor{color:#579}
-.CodeRay .pseudo-class{color:#555}
-.CodeRay .directive{font-weight:bold}
-.CodeRay .type{font-weight:bold}
-.CodeRay .predefined-type{color:inherit}
-.CodeRay .reserved,.CodeRay .keyword{color:#000;font-weight:bold}
-.CodeRay .key{color:#808}
-.CodeRay .key .delimiter{color:#606}
-.CodeRay .key .char{color:#80f}
-.CodeRay .value{color:#088}
-.CodeRay .regexp .delimiter{color:#808}
-.CodeRay .regexp .content{color:#808}
-.CodeRay .regexp .modifier{color:#808}
-.CodeRay .regexp .char{color:#d14}
-.CodeRay .regexp .function{color:#404;font-weight:bold}
-.CodeRay .string{color:#d20}
-.CodeRay .string .string .string{background:#ffd0d0}
-.CodeRay .string .content{color:#d14}
-.CodeRay .string .char{color:#d14}
-.CodeRay .string .delimiter{color:#d14}
-.CodeRay .shell{color:#d14}
-.CodeRay .shell .delimiter{color:#d14}
-.CodeRay .symbol{color:#990073}
-.CodeRay .symbol .content{color:#a60}
-.CodeRay .symbol .delimiter{color:#630}
-.CodeRay .tag{color:teal}
-.CodeRay .tag-special{color:#d70}
-.CodeRay .variable{color:#036}
-.CodeRay .insert{background:#afa}
-.CodeRay .delete{background:#faa}
-.CodeRay .change{color:#aaf;background:#007}
-.CodeRay .head{color:#f8f;background:#505}
-.CodeRay .insert .insert{color:#080}
-.CodeRay .delete .delete{color:#800}
-.CodeRay .change .change{color:#66f}
-.CodeRay .head .head{color:#f4f}
-</style>
-</head>
-<body class="article toc2 toc-left">
-<div id="header">
-<h1>Log4j Transform</h1>
-<div id="toc" class="toc2">
-<div id="toctitle">Table of Contents</div>
-<ul class="sectlevel1">
-<li><a href="#log4j-transform-maven-plugin">Log4j Transform Maven Plugin</a>
-<ul class="sectlevel2">
-<li><a href="#log4j-transform-maven-plugin-why">Why do we need it</a></li>
-<li><a href="#log4j-transform-maven-plugin-how">How it works</a></li>
-<li><a href="#log4j-transform-maven-plugin-goals">Goals</a></li>
-<li><a href="#log4j-transform-maven-plugin-usage">Usage</a></li>
-</ul>
-</li>
-<li><a href="#maven-shade-plugin-extensions">Maven Shade Plugin Extensions</a>
-<ul class="sectlevel2">
-<li><a href="#log4j-plugin-cache-transformer">Log4j Plugin Cache 
Transformer</a></li>
-</ul>
-</li>
-<li><a href="#development">Development</a></li>
-<li><a href="#distribution">Distribution</a></li>
-<li><a href="#support">Support</a></li>
-<li><a href="#security">Security</a></li>
-<li><a href="#release-notes">Release Notes</a>
-<ul class="sectlevel2">
-<li><a href="#release-notes-0-x-x">0.x.x</a></li>
-<li><a href="#release-notes-0-1-0">0.1.0</a></li>
-</ul>
-</li>
-<li><a href="#release-instructions">Release instructions</a></li>
-<li><a href="#license">License</a></li>
-</ul>
-</div>
-</div>
-<div id="content">
-<div id="preamble">
-<div class="sectionbody">
-<div class="paragraph">
-<p>Log4j Transform contains tools for binary postprocessing of projects that 
use <a href="https://logging.apache.org/log4j/2.x/";>the Apache Log4j2 
API</a>.</p>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="log4j-transform-maven-plugin">Log4j Transform Maven Plugin</h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>The Transform Plugin is used to postprocess the compiled classes of your 
project and replace all Log4j 2.x API calls with <a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/LogBuilder.html";><code>LogBuilder</code></a>
 calls with a statically precomputed location.
-This allows you to use location information in your logs without incurring in 
the <strong>expensive</strong> runtime calls usually used to acquire it.</p>
-</div>
-<div class="sect2">
-<h3 id="log4j-transform-maven-plugin-why">Why do we need it</h3>
-<div class="paragraph">
-<p>Finding the location of a logging call is a very expensive operation (a 
couple of microseconds).</p>
-</div>
-<div class="paragraph">
-<p>Running <a 
href="../log4j-transform-perf/src/main/java/org/apache/logging/log4j/transform/perf/LocationBenchmark.java"><code>LocationBenchmark</code></a>
 on a Ryzen 7 2700U laptop with Java 17 gives the following results:</p>
-</div>
-<table class="tableblock frame-all grid-all stretch">
-<colgroup>
-<col style="width: 14.2857%;">
-<col style="width: 14.2857%;">
-<col style="width: 14.2857%;">
-<col style="width: 14.2857%;">
-<col style="width: 14.2857%;">
-<col style="width: 14.2857%;">
-<col style="width: 14.2858%;">
-</colgroup>
-<thead>
-<tr>
-<th class="tableblock halign-left valign-top">Logging interface</th>
-<th class="tableblock halign-left valign-top">Sync/async logger</th>
-<th class="tableblock halign-left valign-top">No. threads</th>
-<th class="tableblock halign-left valign-top">Precomputed location</th>
-<th class="tableblock halign-left valign-top">Score</th>
-<th class="tableblock halign-left valign-top">Error</th>
-<th class="tableblock halign-left valign-top">Units</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/LogBuilder.html";><code>LogBuilder</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">sync</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">yes</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">202343,624</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±719,875</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/LogBuilder.html";><code>LogBuilder</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">sync</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">no</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">68449,813</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±5086,148</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/Logger.html";><code>Logger</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">sync</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">yes</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">202579,793</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±547,961</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/Logger.html";><code>Logger</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">sync</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">no</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">100105,246</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±13748,554</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/Logger.html";><code>Logger</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">async</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">yes</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">726877,012</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±38214,575</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/Logger.html";><code>Logger</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">async</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">no</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">440245,135</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±4849,946</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>The figures show a performance bump of around 5 µs per logging statement 
when
-<a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/Logger.html";><code>Logger</code></a>
-is used and a bump of around 9 µs per logging statement when
-<a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/LogBuilder.html";><code>LogBuilder</code></a>
-is used.</p>
-</div>
-<div class="paragraph">
-<p>By comparison, <strong>disabling</strong> location information on the same 
machine gives:</p>
-</div>
-<table class="tableblock frame-all grid-all stretch">
-<colgroup>
-<col style="width: 14.2857%;">
-<col style="width: 14.2857%;">
-<col style="width: 14.2857%;">
-<col style="width: 14.2857%;">
-<col style="width: 14.2857%;">
-<col style="width: 14.2857%;">
-<col style="width: 14.2858%;">
-</colgroup>
-<thead>
-<tr>
-<th class="tableblock halign-left valign-top">Logging interface</th>
-<th class="tableblock halign-left valign-top">Sync/async logger</th>
-<th class="tableblock halign-left valign-top">No. threads</th>
-<th class="tableblock halign-left valign-top">Precomputed location</th>
-<th class="tableblock halign-left valign-top">Score</th>
-<th class="tableblock halign-left valign-top">Error</th>
-<th class="tableblock halign-left valign-top">Units</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/LogBuilder.html";><code>LogBuilder</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">sync</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">yes</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">234666,556</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±19759,779</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/LogBuilder.html";><code>LogBuilder</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">sync</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">no</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">212562,315</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±3631,670</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/Logger.html";><code>Logger</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">sync</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">yes</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">210751,730</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±1508,148</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/Logger.html";><code>Logger</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">sync</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">no</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">220837,404</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±13248,184</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/Logger.html";><code>Logger</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">async</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">yes</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">743467,533</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±38046,044</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a 
href="https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/Logger.html";><code>Logger</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">async</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">no</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">776778,635</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">±38878,794</p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock">ops/s</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect2">
-<h3 id="log4j-transform-maven-plugin-how">How it works</h3>
-<div class="paragraph">
-<p>The working principle is very simple: every call to the Log4j 2.x API 
like</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="java"><span 
class="directive">public</span> <span class="type">void</span> helloLog() {
-    logger.info(MarkerManager.getMarker(<span class="string"><span 
class="delimiter">&quot;</span><span class="content">NET</span><span 
class="delimiter">&quot;</span></span>), <span class="string"><span 
class="delimiter">&quot;</span><span class="content">Sending {} bytes of 
data.</span><span class="delimiter">&quot;</span></span>, <span 
class="integer">1000</span>);
-}</code></pre>
-</div>
-</div>
-<div class="paragraph">
-<p>is rewritten at a bytecode level into an equivalent <code>LogBuilder</code> 
call:</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="java"><span 
class="directive">private</span> <span class="directive">static</span> <span 
class="directive">final</span> <span 
class="predefined-type">StackTraceElement</span><span class="type">[]</span> 
locations = {
-        <span class="keyword">new</span> <span 
class="predefined-type">StackTraceElement</span>(<span class="string"><span 
class="delimiter">&quot;</span><span 
class="content">org.apache.logging.log4j.HelloWorld</span><span 
class="delimiter">&quot;</span></span>, <span class="string"><span 
class="delimiter">&quot;</span><span 
class="content">HelloWorld.java</span><span 
class="delimiter">&quot;</span></span>, <span class="string"><span 
class="delimiter">&quot;</span><span class="content"> [...]
-};
-
-<span class="directive">public</span> <span class="type">void</span> 
helloLog() {
-    logger.atInfo()
-          .withLocation(locations[<span class="integer">0</span>])
-          .withMarker(MarkerManager.getMarker(<span class="string"><span 
class="delimiter">&quot;</span><span class="content">NET</span><span 
class="delimiter">&quot;</span></span>))
-          .log(<span class="string"><span class="delimiter">&quot;</span><span 
class="content">Sending {} bytes of data.</span><span 
class="delimiter">&quot;</span></span>, <span class="integer">1000</span>);
-}</code></pre>
-</div>
-</div>
-<div class="paragraph">
-<p>In the current implementation locations are stored in classes whose name 
ends in <code>$$Log4j2$$Cache</code>, so they can not accidentally be used by 
XML/JSON serializers.</p>
-</div>
-</div>
-<div class="sect2">
-<h3 id="log4j-transform-maven-plugin-goals">Goals</h3>
-<div class="paragraph">
-<p>This plugin consists of a single goal:</p>
-</div>
-<div class="dlist">
-<dl>
-<dt class="hdlist1"><a 
href="#log4j-transform-maven-plugin-process-classes"><code>log4j-transform:process-classes</code></a></dt>
-<dd>
-<p>is bound to the process-classes phase and weaves your classes to include 
precomputed location information.</p>
-</dd>
-</dl>
-</div>
-<div class="sect3">
-<h4 
id="log4j-transform-maven-plugin-process-classes"><code>log4j-transform:process-classes</code></h4>
-<div class="dlist">
-<dl>
-<dt class="hdlist1">Full name</dt>
-<dd>
-<p><code>org.apache.logging.log4j:log4j-transform-maven-plugin:0.1.0:process-classes</code></p>
-</dd>
-<dt class="hdlist1">Description</dt>
-<dd>
-<p>Generates static location information of Log4j 2.x API calls in the project 
classes.
-The resulting bytecode will not rely on runtime resolution of the location 
information.</p>
-</dd>
-<dt class="hdlist1">Attributes</dt>
-<dd>
-<div class="ulist">
-<ul>
-<li>
-<p>Requires a Maven project to be executed</p>
-</li>
-<li>
-<p>Requires dependency resolution of artifacts in scope: 
<code>&lt;code&gt;compile&lt;/code&gt;</code></p>
-</li>
-<li>
-<p>The goal is thread-safe and supports parallel builds</p>
-</li>
-<li>
-<p>Binds by default to the <a 
href="http://maven.apache.org/ref/current/maven-core/lifecycles.html";>lifecycle 
phase</a>: <code>process-classes</code>.</p>
-</li>
-</ul>
-</div>
-</dd>
-</dl>
-</div>
-<div class="sect4">
-<h5 
id="log4j-transform-maven-plugin-process-classes-required-parameters">Required 
Parameters</h5>
-<table class="tableblock frame-all grid-all stretch">
-<colgroup>
-<col style="width: 18.75%;">
-<col style="width: 18.75%;">
-<col style="width: 62.5%;">
-</colgroup>
-<thead>
-<tr>
-<th class="tableblock halign-left valign-top">Name</th>
-<th class="tableblock halign-left valign-top">Type</th>
-<th class="tableblock halign-left valign-top">Description</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>&lt;sourceDirectory&gt;</code></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>File</code></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">The 
directory containing classes to be processed.
-It defaults to <code>${project.build.outputDirectory}</code>.</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>&lt;sourceDirectory&gt;</code></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>File</code></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">The 
directory where woven classes will be written.
-It defaults to <code>${project.build.outputDirectory}</code>.</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect4">
-<h5 
id="log4j-transform-maven-plugin-process-classes-optional-parameters">Optional 
Parameters</h5>
-<table class="tableblock frame-all grid-all stretch">
-<colgroup>
-<col style="width: 18.75%;">
-<col style="width: 18.75%;">
-<col style="width: 62.5%;">
-</colgroup>
-<thead>
-<tr>
-<th class="tableblock halign-left valign-top">Name</th>
-<th class="tableblock halign-left valign-top">Type</th>
-<th class="tableblock halign-left valign-top">Description</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>&lt;includes&gt;</code></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>List&lt;String&gt;</code></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Files to 
include. If empty all class files will be processed.</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>&lt;excludes&gt;</code></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>List&lt;String&gt;</code></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Files to 
exclude.</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>&lt;staleMillis&gt;</code></p></td>
-<td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>int</code></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Sets the 
granularity in milliseconds of the last modification date for testing if a 
class file needs weaving.
-It defaults to <code>0</code> and can be configured using the 
<code>lastModGranularityMs</code> property.</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="log4j-transform-maven-plugin-usage">Usage</h3>
-<div class="paragraph">
-<p>To use the plugin you need to declare a dependency on <a 
href="https://central.sonatype.com/artifact/org.apache.logging.log4j/log4j-api/2.20.0";><code>log4j-api</code></a>
 version 2.20.0 or newer.</p>
-</div>
-<div class="paragraph">
-<p>Add the following configuration to your POM file:</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="xml"><span 
class="tag">&lt;plugin&gt;</span>
-  <span class="tag">&lt;groupId&gt;</span>org.apache.logging.log4j<span 
class="tag">&lt;/groupId&gt;</span>
-  <span class="tag">&lt;artifactId&gt;</span>log4j-transform-maven-plugin<span 
class="tag">&lt;/artifactId&gt;</span>
-  <span class="tag">&lt;version&gt;</span>0.1.0<span 
class="tag">&lt;/version&gt;</span>
-  <span class="tag">&lt;executions&gt;</span>
-    <span class="tag">&lt;execution&gt;</span>
-      <span class="tag">&lt;goals&gt;</span>
-        <span class="tag">&lt;goal&gt;</span>process-classes<span 
class="tag">&lt;/goal&gt;</span>
-      <span class="tag">&lt;/goals&gt;</span>
-    <span class="tag">&lt;/execution&gt;</span>
-  <span class="tag">&lt;/executions&gt;</span>
-<span class="tag">&lt;/plugin&gt;</span></code></pre>
-</div>
-</div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="maven-shade-plugin-extensions">Maven Shade Plugin Extensions</h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>This project contains a collection of <a 
href="https://maven.apache.org/plugins/maven-shade-plugin/examples/resource-transformers.html";>resource
 transformer</a>s for the Apache Maven Shade Plugin that allows you to use 
additional Log4j 2.x Core component modules.</p>
-</div>
-<div class="sect2">
-<h3 id="log4j-plugin-cache-transformer">Log4j Plugin Cache Transformer</h3>
-<div class="paragraph">
-<p>A
-<a 
href="https://maven.apache.org/plugins/maven-shade-plugin/examples/resource-transformers.html";>resource
 transformer</a>
-for the
-<a 
href="https://maven.apache.org/plugins/maven-shade-plugin/index.html";>Apache 
Maven Shade Plugin</a>
-that merges <code>Log4j2Plugins.dat</code> plugin caches from all the jars 
containing Log4j 2.x Core components.</p>
-</div>
-<div class="paragraph">
-<p>This transformer was formerly available at
-<a 
href="https://github.com/edwgiz/maven-shaded-log4j-transformer";>edwgiz/maven-shaded-log4j-transformer</a>
-and was donated to the Apache Software Foundation by its author.</p>
-</div>
-<div class="sect3">
-<h4 id="log4j-plugin-cache-transformer-usage">Usage</h4>
-<div class="paragraph">
-<p>This resource transformer is usually used together with the 
<code>ManifestResourceTransformer</code> and 
<code>ServicesResourceTransformer</code> to integrate Log4j 2.x libraries in a 
shaded JAR.</p>
-</div>
-<div class="paragraph">
-<p>A typical configuration is:</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="xml"><span 
class="tag">&lt;plugin&gt;</span>
-  <span class="tag">&lt;groupId&gt;</span>org.apache.maven.plugins<span 
class="tag">&lt;/groupId&gt;</span>
-  <span class="tag">&lt;artifactId&gt;</span>maven-shade-plugin<span 
class="tag">&lt;/artifactId&gt;</span>
-  <span class="tag">&lt;version&gt;</span>3.4.1<span 
class="tag">&lt;/version&gt;</span>
-  <span class="tag">&lt;dependencies&gt;</span>
-    <span class="tag">&lt;dependency&gt;</span>
-      <span class="tag">&lt;groupId&gt;</span>org.apache.logging.log4j<span 
class="tag">&lt;/groupId&gt;</span>
-      <span 
class="tag">&lt;artifactId&gt;</span>log4j-transform-maven-shade-plugin-extensions<span
 class="tag">&lt;/artifactId&gt;</span>
-      <span class="tag">&lt;version&gt;</span>0.1.0<span 
class="tag">&lt;/version&gt;</span>
-    <span class="tag">&lt;/dependency&gt;</span>
-  <span class="tag">&lt;/dependencies&gt;</span>
-  <span class="tag">&lt;executions&gt;</span>
-    <span class="tag">&lt;execution&gt;</span>
-      <span class="tag">&lt;id&gt;</span>shade-jar-with-dependencies<span 
class="tag">&lt;/id&gt;</span>
-      <span class="tag">&lt;phase&gt;</span>package<span 
class="tag">&lt;/phase&gt;</span>
-      <span class="tag">&lt;goals&gt;</span>
-        <span class="tag">&lt;goal&gt;</span>shade<span 
class="tag">&lt;/goal&gt;</span>
-      <span class="tag">&lt;/goals&gt;</span>
-      <span class="tag">&lt;configuration&gt;</span>
-        <span class="tag">&lt;transformers&gt;</span>
-          <span class="tag">&lt;transformer</span> <span 
class="attribute-name">implementation</span>=<span class="string"><span 
class="delimiter">&quot;</span><span 
class="content">org.apache.logging.log4j.maven.plugins.shade.transformer.Log4j2PluginCacheFileTransformer</span><span
 class="delimiter">&quot;</span></span><span class="tag">/&gt;</span>
-          <span class="tag">&lt;transformer</span> <span 
class="attribute-name">implementation</span>=<span class="string"><span 
class="delimiter">&quot;</span><span 
class="content">org.apache.maven.plugins.shade.resource.ServicesResourceTransformer</span><span
 class="delimiter">&quot;</span></span><span class="tag">/&gt;</span>
-          <span class="tag">&lt;transformer</span> <span 
class="attribute-name">implementation</span>=<span class="string"><span 
class="delimiter">&quot;</span><span 
class="content">org.apache.maven.plugins.shade.resource.ManifestResourceTransformer</span><span
 class="delimiter">&quot;</span></span><span class="tag">&gt;</span>
-            <span class="tag">&lt;manifestEntries&gt;</span>
-              <span class="tag">&lt;Multi-Release&gt;</span>true<span 
class="tag">&lt;/Multi-Release&gt;</span>
-            <span class="tag">&lt;/manifestEntries&gt;</span>
-          <span class="tag">&lt;/transformer&gt;</span>
-        <span class="tag">&lt;/transformers&gt;</span>
-      <span class="tag">&lt;/configuration&gt;</span>
-    <span class="tag">&lt;/execution&gt;</span>
-  <span class="tag">&lt;/executions&gt;</span>
-<span class="tag">&lt;/plugin&gt;</span></code></pre>
-</div>
-</div>
-</div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="development">Development</h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Log4j Transform uses <a 
href="https://github.com/apache/logging-log4j-transform";>GitHub</a> for source 
code management.</p>
-</div>
-<div class="paragraph">
-<p>The project requires a Java compiler matching the <code>[17,18)</code> 
range and targets Java <code>8</code>.</p>
-</div>
-<div class="paragraph">
-<p>You can build and verify sources using:</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="bash">./mvnw 
verify</code></pre>
-</div>
-</div>
-<div class="paragraph">
-<p>You can build and view the website as follows:</p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="bash">./mvnw -N site
-python -m http.server -d target/site</code></pre>
-</div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="distribution">Distribution</h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>In accordance with the Apache Software Foundation&#8217;s release <a 
href="https://infra.apache.org/release-distribution.html";>distribution 
policy</a> and <a 
href="https://infra.apache.org/release-publishing.html";>creation process</a>, 
project artifacts are <em>officially</em> accessible from the following 
locations:</p>
-</div>
-<div class="ulist">
-<ul>
-<li>
-<p>ASF <a 
href="https://repository.apache.org/content/repositories/releases";>Release</a> 
and <a 
href="https://repository.apache.org/content/repositories/snapshots";>snapshot</a>
 repositories (mirrored to <a href="https://central.sonatype.dev/";>the Maven 
Central Repository</a>)</p>
-</li>
-<li>
-<p>ASF <a 
href="https://downloads.apache.org/logging/log4j-transform";>Distribution 
directory</a></p>
-</li>
-</ul>
-</div>
-<div class="paragraph">
-<p>See <a href="#release-instructions">the release instructions</a> for 
details.</p>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="support">Support</h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Please keep in mind that this project is intended for internal usage only.
-You can use GitHub Issues for feature requests and bug reports – not questions!
-See <a href="https://logging.apache.org/log4j/2.x/support.html";>the Log4j 
support policy</a> for details.</p>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="security">Security</h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>If you have encountered an unlisted security vulnerability or other 
unexpected behaviour that has security impact, please report them privately to 
<a href="mailto:[email protected]";>the Log4j security mailing 
list</a>.
-See <a href="https://logging.apache.org/log4j/2.x/security.html";>the Log4j 
Security page</a> for further details.</p>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="release-notes">Release Notes</h2>
-<div class="sectionbody">
-<div class="sect2">
-<h3 id="release-notes-0-x-x">0.x.x</h3>
-<div class="paragraph">
-<p>This is the second release of the project.</p>
-</div>
-<div class="sect3">
-<h4 id="_added">Added</h4>
-<div class="ulist">
-<ul>
-<li>
-<p>Started publishing <a href="https://logging.apache.org/log4j/transform";>the 
project website</a></p>
-</li>
-</ul>
-</div>
-</div>
-<div class="sect3">
-<h4 id="_changed">Changed</h4>
-<div class="ulist">
-<ul>
-<li>
-<p>Migrated to <code>logging-parent</code> 10.1.1 and adopted its CI and 
<code>pom.xml</code> infrastructure</p>
-</li>
-<li>
-<p>Update <code>org.ow2.asm:asm-bom</code> to version <code>9.6</code></p>
-</li>
-</ul>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="release-notes-0-1-0">0.1.0</h3>
-<div class="dlist">
-<dl>
-<dt class="hdlist1">Release date</dt>
-<dd>
-<p>2023-05-05</p>
-</dd>
-</dl>
-</div>
-<div class="paragraph">
-<p>This is the first release of the project.</p>
-</div>
-<div class="sect3">
-<h4 id="_added_2">Added</h4>
-<div class="ulist">
-<ul>
-<li>
-<p>Added <code>log4j-transform-maven-plugin</code> bytecode transformation 
tool to provide location information without reflection (<a 
href="https://issues.apache.org/jira/browse/LOG4J2-3638";>LOG4J2-3638</a>)</p>
-</li>
-<li>
-<p>Added <code>log4j-transform-maven-shade-plugin-extensions</code> resource 
transformer for the Maven Shade Plugin to merge <code>Log4j2Plugins.dat</code> 
plugin caches (<a 
href="https://issues.apache.org/jira/browse/LOG4J2-673";>LOG4J2-673</a>)</p>
-</li>
-</ul>
-</div>
-</div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="release-instructions">Release instructions</h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Log4j Transform employs the CI/CD foundation provided by the <a 
href="https://logging.apache.org/logging-parent";><code>logging-parent</code></a>.
-You can simply use its release instructions.</p>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="license">License</h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license agreements.
-See <code>NOTICE.txt</code> distributed with this work for additional 
information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0 (the 
"License"); you may not use this file except in compliance with the License.
-You may obtain a copy of the License at <a 
href="https://www.apache.org/licenses/LICENSE-2.0"; 
class="bare">https://www.apache.org/licenses/LICENSE-2.0</a>.</p>
-</div>
-<div class="paragraph">
-<p>Unless required by applicable law or agreed to in writing, software 
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and 
limitations under the License.</p>
-</div>
-</div>
-</div>
-</div>
-<div id="footer">
-<div id="footer-text">
-Last updated 2023-10-02 20:17:49 +0200
-</div>
-</div>
-</body>
-</html>
\ No newline at end of file
diff --git a/transform/index.html b/transform/index.html
deleted file mode 100644
index badcae279..000000000
--- a/transform/index.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <title>Apache Log4j Transform</title>
-    <meta http-equiv="refresh" content="0; url=latest"/>
-</head>
-<body>
-<p>You will be redirected to the <a href="latest">latest</a> version of the 
website.</p>
-</body>
-</html>
diff --git a/transform/latest b/transform/latest
deleted file mode 120000
index a57fabbee..000000000
--- a/transform/latest
+++ /dev/null
@@ -1 +0,0 @@
-0.x
\ No newline at end of file

Reply via email to