You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by vy...@apache.org on 2024/04/08 09:55:50 UTC

(logging-parent) branch xml-schema-publication-instructions created (now 4fd21e6)

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

vy pushed a change to branch xml-schema-publication-instructions
in repository https://gitbox.apache.org/repos/asf/logging-parent.git


      at 4fd21e6  Add instructions on XML schema publication

This branch includes the following new commits:

     new cfe25da  Update generated files
     new 4fd21e6  Add instructions on XML schema publication

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



(logging-parent) 02/02: Add instructions on XML schema publication

Posted by vy...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

vy pushed a commit to branch xml-schema-publication-instructions
in repository https://gitbox.apache.org/repos/asf/logging-parent.git

commit 4fd21e6591baf2894bb885199b31b92158dd5c49
Author: Volkan Yazıcı <vo...@yazi.ci>
AuthorDate: Mon Apr 8 11:55:26 2024 +0200

    Add instructions on XML schema publication
---
 src/changelog/.10.x.x/xml_schema_instructions.xml  |  8 +++
 ...ons.adoc => _release-instructions-project.adoc} | 20 +++++--
 src/site/_release-instructions-xml-schema.adoc     | 67 ++++++++++++++++++++++
 src/site/_release-notes/_10.x.x.adoc               |  1 +
 src/site/index.adoc                                |  4 +-
 5 files changed, 93 insertions(+), 7 deletions(-)

diff --git a/src/changelog/.10.x.x/xml_schema_instructions.xml b/src/changelog/.10.x.x/xml_schema_instructions.xml
new file mode 100644
index 0000000..637b3db
--- /dev/null
+++ b/src/changelog/.10.x.x/xml_schema_instructions.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<entry xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xmlns="http://logging.apache.org/log4j/changelog"
+       xsi:schemaLocation="http://logging.apache.org/log4j/changelog https://logging.apache.org/log4j/changelog-0.1.3.xsd"
+       type="added">
+  <issue id="138" link="https://github.com/apache/logging-parent/issues/138"/>
+  <description format="asciidoc">Add instructions on XML schema publication</description>
+</entry>
diff --git a/src/site/_release-instructions.adoc b/src/site/_release-instructions-project.adoc
similarity index 94%
rename from src/site/_release-instructions.adoc
rename to src/site/_release-instructions-project.adoc
index 7bf6f47..4cbbb20 100644
--- a/src/site/_release-instructions.adoc
+++ b/src/site/_release-instructions-project.adoc
@@ -27,16 +27,14 @@ limitations under the License.
 include::_constants.adoc[]
 
 [#release-instructions]
-== Release instructions
+== Project release instructions
 
-[WARNING]
-====
-In the code examples below, assuming the version to be released is `7.8.0`.
-====
+This section explains how to publish a new release of projects extending from the `{project-id}` POM and using its reusable CI workflows.
 
 [WARNING]
 ====
-The website-specific instructions are only applicable to projects which employ the reusable CI workflow with `site-enabled` input set to `true`.
+In the code examples below, assuming that the project and its version to be published are `{project-id}` and `7.8.0`, respectively.
+You need to adapt these values for your project and version accordingly.
 ====
 
 [#stage-release]
@@ -71,6 +69,11 @@ If not, commit necessary fixes, push, and repeat.
 [#stage-release-website]
 === Stage the release website
 
+[NOTE]
+====
+You can skip this step if the project does not have a website.
+====
+
 . Checkout the `asf-staging` branch of {website-github-url}[the website repository]
 . Override the contents of the `{website-folder}7.x` folder using the website uploaded to the https://dist.apache.org/repos/dist/dev/logging/{project-id}[dist.apache.org/repos/dist/**dev**/logging/{project-id}] Subversion repository
 
@@ -215,6 +218,11 @@ svn commit -m 'Remove `{project-id}` version `7.8.0` files released'
 [#publish-release-website]
 === Publish the release website
 
+[NOTE]
+====
+You can skip this step if the project does not have a website.
+====
+
 . Checkout the `asf-site` branch of {website-github-url}[the website repository]
 . Replace the `{website-folder}7.x` folder with the one in `asf-staging` branch
 
diff --git a/src/site/_release-instructions-xml-schema.adoc b/src/site/_release-instructions-xml-schema.adoc
new file mode 100644
index 0000000..8f33afc
--- /dev/null
+++ b/src/site/_release-instructions-xml-schema.adoc
@@ -0,0 +1,67 @@
+////
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file 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
+
+    https://www.apache.org/licenses/LICENSE-2.0
+
+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.
+////
+
+// ██     ██  █████  ██████  ███    ██ ██ ███    ██  ██████  ██
+// ██     ██ ██   ██ ██   ██ ████   ██ ██ ████   ██ ██       ██
+// ██  █  ██ ███████ ██████  ██ ██  ██ ██ ██ ██  ██ ██   ███ ██
+// ██ ███ ██ ██   ██ ██   ██ ██  ██ ██ ██ ██  ██ ██ ██    ██
+//  ███ ███  ██   ██ ██   ██ ██   ████ ██ ██   ████  ██████  ██
+//
+// Below instructions are shared by all Maven-based Apache Logging Services projects.
+// Be extremely cautious while making changes!
+
+include::_constants.adoc[]
+
+[#release-instructions-xml-schema]
+== XML schema release instructions
+
+This section explains how to publish XML schemas (i.e., XSD files) of projects.
+It is crucial to understand certain things while doing an XML schema release:
+
+Projects and XML schemas have different lifecycles::
+A new release of a project does not necessarily mean a new release of its XML schemas.
+XML schemas might have been untouched, or they might contain minor changes while the project itself contains breaking changes, etc.
+Hence, the project version and the XML schema version most of the time differ.
+Check if there are indeed changes to the XML schema.
+If so, set its version accordingly.
+
+XML schemas are generally published earlier than a release::
+Projects containing XML schemas most of the time need to refer to those files in their sources, tests, etc.
+Hence, XML schemas need to be published first so that the project itself can refer to them.
+
+XML schemas are generally published directly to the production (i.e., non-staging) site::
+Once an XML schema is referred using a URL in the sources, the released project artifacts will contain those referrals as is.
+That is, if sources refer to `\https://logging.**staged**.apache.org/xml/ns/foo.xml`, we cannot magically switch them to `\https://logging.apache.org/xml/ns/foo.xml` in the released artifacts.
+Hence, XML schemas are generally published directly to the production site.
+
+The instructions on how to publish XML schemas are shared below:
+
+. Check out the `main` branch of the https://github.com/apache/logging-site/tree/main/xml/ns[`logging-site`] repository
+. Update the contents of the `xml/ns` folder
+.. Adhere to the conventions followed in the existing content there
+.. Make sure that the root elements in the new XSD files contain the correct `version` attribute
+. Commit & push your changes
+. Verify that your changes are visible in https://logging.staged.apache.org/xml/ns[logging.**staged**.apache.org/xml/ns]
++
+[TIP]
+====
+Under the hood, ASF INFRA will compile the Jekyll site, commit & push its changes to the `asf-staging` branch.
+Later on, ASF INFRA will pick up these changes from the `asf-staging` branch and place it into the associated Apache HTTP Server folder.
+====
+. Check out the `asf-site` branch
+. Rebase it from `asf-staging` (i.e., `git rebase origin/asf-staging`) and push it
+. Verify that your changes are visible in https://logging.apache.org/xml/ns[logging.apache.org/xml/ns]
diff --git a/src/site/_release-notes/_10.x.x.adoc b/src/site/_release-notes/_10.x.x.adoc
index 2016def..e2fd0b7 100644
--- a/src/site/_release-notes/_10.x.x.adoc
+++ b/src/site/_release-notes/_10.x.x.adoc
@@ -44,6 +44,7 @@ This minor release contains several small improvements.
 ==== Added
 
 * Add `coverage` profile to generate a test coverage report. (https://github.com/apache/logging-parent/pull/140[140])
+* Add instructions on XML schema publication (https://github.com/apache/logging-parent/issues/138[138])
 
 ==== Changed
 
diff --git a/src/site/index.adoc b/src/site/index.adoc
index 6d59e04..d6555ef 100644
--- a/src/site/index.adoc
+++ b/src/site/index.adoc
@@ -74,7 +74,9 @@ See https://logging.apache.org/log4j/2.x/security.html[the Log4j Security page]
 
 include::_release-notes.adoc[]
 
-include::_release-instructions.adoc[]
+include::_release-instructions-project.adoc[]
+
+include::_release-instructions-xml-schema.adoc[]
 
 [#license]
 == License


(logging-parent) 01/02: Update generated files

Posted by vy...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

vy pushed a commit to branch xml-schema-publication-instructions
in repository https://gitbox.apache.org/repos/asf/logging-parent.git

commit cfe25da507560c281ab2ecfdacf4da3ff8bae8c0
Author: Volkan Yazıcı <vo...@yazi.ci>
AuthorDate: Mon Apr 8 10:08:50 2024 +0200

    Update generated files
---
 src/site/_release-notes/_10.x.x.adoc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/site/_release-notes/_10.x.x.adoc b/src/site/_release-notes/_10.x.x.adoc
index b20bfa4..2016def 100644
--- a/src/site/_release-notes/_10.x.x.adoc
+++ b/src/site/_release-notes/_10.x.x.adoc
@@ -48,6 +48,7 @@ This minor release contains several small improvements.
 ==== Changed
 
 * Replace `process-sbom` script with CycloneDX plugin configuration. (https://github.com/apache/logging-parent/issues/105[105])
+* Support parallel releases by uploading the distribution to `<projectId>/<version>` folders. This is needed for parallel Log4j 2 and 3 releases. (https://github.com/apache/logging-parent/issues/139[139])
 
 ==== Updated