From patchwork Thu Mar 21 10:09:20 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Horman X-Patchwork-Id: 1914362 X-Patchwork-Delegate: horms@verge.net.au Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=2605:bc80:3010::136; helo=smtp3.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=patchwork.ozlabs.org) Received: from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4V0h5m5Z8Fz1yWy for ; Thu, 21 Mar 2024 21:09:48 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id CB38260E4D; Thu, 21 Mar 2024 10:09:46 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YCizkeA7x_I0; Thu, 21 Mar 2024 10:09:44 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.9.56; helo=lists.linuxfoundation.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org 93F09600B5 Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by smtp3.osuosl.org (Postfix) with ESMTPS id 93F09600B5; Thu, 21 Mar 2024 10:09:44 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 7F75BC0077; Thu, 21 Mar 2024 10:09:44 +0000 (UTC) X-Original-To: ovs-dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) by lists.linuxfoundation.org (Postfix) with ESMTP id CE6D8C0037 for ; Thu, 21 Mar 2024 10:09:43 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id CB1BF8210A for ; Thu, 21 Mar 2024 10:09:43 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id CZrx5RaQhOyh for ; Thu, 21 Mar 2024 10:09:42 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2001:4b98:dc4:8::229; helo=relay9-d.mail.gandi.net; envelope-from=horms@ovn.org; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp1.osuosl.org 81178819D2 Authentication-Results: smtp1.osuosl.org; dmarc=none (p=none dis=none) header.from=ovn.org DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 81178819D2 Received: from relay9-d.mail.gandi.net (relay9-d.mail.gandi.net [IPv6:2001:4b98:dc4:8::229]) by smtp1.osuosl.org (Postfix) with ESMTPS id 81178819D2 for ; Thu, 21 Mar 2024 10:09:41 +0000 (UTC) Received: by mail.gandi.net (Postfix) with ESMTPSA id AD983FF802 for ; Thu, 21 Mar 2024 10:09:39 +0000 (UTC) From: Simon Horman Date: Thu, 21 Mar 2024 10:09:20 +0000 MIME-Version: 1.0 Message-Id: <20240321-dei-main-branch-v1-1-d8ef4af142a7@ovn.org> X-B4-Tracking: v=1; b=H4sIAE8H/GUC/x3MMQqAMAxA0auUzAZqrQ5eRRxiEzWDVVoQQXp3i +Mb/n8hS1LJMJoXktya9YwVbWMg7BQ3QeVqcNZ52zmLLIoHacQlUQw7BuqZh8FzGxhqdSVZ9fm P01zKB9ijrc1hAAAA To: ovs-dev@openvswitch.org Cc: X-Mailer: b4 0.12.3 X-GND-Sasl: horms@ovn.org Subject: [ovs-dev] [PATCH] Rename primary development branch as main. X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" Recently OVS adopted a policy of using the inclusive naming word list v1 [1, 2]. In keeping with this policy rename the primary development branch from 'master' to 'main'. This patch does not actually make that change, but rather updates references to the branch in the source tree. It is intended to be applied at (approximately) the same time that the change is made. OVS is currently hosted on GitHub. We can expect the following behaviour after the rename: 1. GitHub pull requests against are renamed branch are automatically re-homed on new branch 2. GitHub Issues do not seem to be affected - at least the test issue I created had no association with a branch 3. URLs accessed via the GitHub web UI are automatically renamed (so long as a new branch called master is not created). 4. Using the git cli command, fetch will fetch the new branch (main), and fetch -p will remove (prune) the old branch (master) [1] df5e5cf ("Documentation: Add section on inclusive language.") [2] https://inclusivenaming.org/word-lists/ Signed-off-by: Simon Horman --- Notes: * Now is the time to raise any concerns regarding this patch. I plan to repost in approximately a week. And implement the change another week after that. * If you have an automation that fetches the master branch then the suggested action is: 1. Before the branch rename occurs: update the automation to pull main an fall back to pulling master if that fails 2. After the rename occurs: Update the automation to only fetch main * The appveyor change is atomic, I'm open to suggestions on this. Also, I am unsure how to test this change. * There are some references to the primary development branch in documentation regarding the kernel datapath. As the Kernel datapath is no longer present in the primary development branch I have posted a patch to remove that documentation. https://mail.openvswitch.org/pipermail/ovs-dev/2024-March/412685.html --- .../internals/committer-responsibilities.rst | 12 +++--- .../internals/contributing/backporting-patches.rst | 12 +++--- Documentation/internals/release-process.rst | 50 +++++++++++----------- Documentation/intro/install/dpdk.rst | 2 +- Documentation/intro/install/fedora.rst | 2 +- Documentation/intro/install/general.rst | 2 +- Documentation/intro/install/rhel.rst | 2 +- Documentation/topics/language-bindings.rst | 2 +- Documentation/tutorials/faucet.rst | 6 +-- Documentation/tutorials/ovs-conntrack.rst | 2 +- NEWS | 4 +- README.rst | 2 +- appveyor.yml | 8 ++-- 13 files changed, 54 insertions(+), 52 deletions(-) diff --git a/Documentation/internals/committer-responsibilities.rst b/Documentation/internals/committer-responsibilities.rst index c35fd708913b..eed2e017678a 100644 --- a/Documentation/internals/committer-responsibilities.rst +++ b/Documentation/internals/committer-responsibilities.rst @@ -73,14 +73,14 @@ If it is someone else's change, then you can ask the original submitter to address it. Regardless, you need to ensure that the problem is fixed in a timely way. The definition of "timely" depends on the severity of the problem. -If a bug is present on master and other branches, fix it on master first, then +If a bug is present on main and other branches, fix it on main first, then backport the fix to other branches. Straightforward backports do not require -additional review (beyond that for the fix on master). +additional review (beyond that for the fix on main). -Feature development should be done only on master. Occasionally it makes sense +Feature development should be done only on main. Occasionally it makes sense to add a feature to the most recent release branch, before the first actual release of that branch. These should be handled in the same way as bug fixes, -that is, first implemented on master and then backported. +that is, first implemented on main and then backported. Keep the authorship of a commit clear by maintaining a correct list of "Signed-off-by:"s. If a confusing situation comes up, as it occasionally does, @@ -99,7 +99,7 @@ Pre-Push Hook ------------- The following script can be helpful because it provides an extra -chance to check for mistakes while pushing to the master branch of OVS +chance to check for mistakes while pushing to the main branch of OVS or OVN. If you would like to use it, install it as ``hooks/pre-push`` in your ``.git`` directory and make sure to mark it as executable with ``chmod +x``. For maximum utility, make sure ``checkpatch.py`` is in @@ -118,7 +118,7 @@ in your ``.git`` directory and make sure to mark it as executable with while read local_ref local_sha1 remote_ref remote_sha1; do case $remote_ref in - refs/heads/master) + refs/heads/main) n=0 while read sha do diff --git a/Documentation/internals/contributing/backporting-patches.rst b/Documentation/internals/contributing/backporting-patches.rst index 0ef7f5beb9b0..050daba23f3e 100644 --- a/Documentation/internals/contributing/backporting-patches.rst +++ b/Documentation/internals/contributing/backporting-patches.rst @@ -43,10 +43,10 @@ within Open vSwitch, but is broadly applied in the following fashion: - Maintainers backport changes from a development branch to release branches. With regards to Open vSwitch user space code and code that does not comprise -the Linux datapath and compat code, the development branch is `master` in the +the Linux datapath and compat code, the development branch is `main` in the Open vSwitch repository. Patches are applied first to this branch, then to the most recent `branch-X.Y`, then earlier `branch-X.Z`, and so on. The most common -kind of patch in this category is a bugfix which affects master and other +kind of patch in this category is a bugfix which affects main and other branches. For Linux datapath code, the primary development branch is in the `net-next`_ @@ -64,15 +64,15 @@ Changes to userspace components ------------------------------- Patches which are fixing bugs should be considered for backporting from -`master` to release branches. Open vSwitch contributors submit their patches -targeted to the `master` branch, using the ``Fixes`` tag described in -:doc:`submitting-patches`. The maintainer first applies the patch to `master`, +`main` to release branches. Open vSwitch contributors submit their patches +targeted to the `main` branch, using the ``Fixes`` tag described in +:doc:`submitting-patches`. The maintainer first applies the patch to `main`, then backports the patch to each older affected tree, as far back as it goes or at least to all currently supported branches. This is usually each branch back to the oldest maintained LTS release branch or the last 4 release branches if the oldest LTS is newer. -If the fix only affects a particular branch and not `master`, contributors +If the fix only affects a particular branch and not `main`, contributors should submit the change with the target branch listed in the subject line of the patch. Contributors should list all versions that the bug affects. The ``git format-patch`` argument ``--subject-prefix`` may be used when posting the diff --git a/Documentation/internals/release-process.rst b/Documentation/internals/release-process.rst index d939c2d3ab8b..f0c745dc6de0 100644 --- a/Documentation/internals/release-process.rst +++ b/Documentation/internals/release-process.rst @@ -34,33 +34,33 @@ or the #openvswitch IRC channel. Release Strategy ---------------- -Open vSwitch feature development takes place on the "master" branch. -Ordinarily, new features are rebased against master and applied directly. For +Open vSwitch feature development takes place on the "main" branch. +Ordinarily, new features are rebased against main and applied directly. For features that take significant development, sometimes it is more appropriate to -merge a separate branch into master; please discuss this on ovs-dev in advance. +merge a separate branch into main; please discuss this on ovs-dev in advance. The process of making a release has the following stages. See `Release Scheduling`_ for the timing of each stage: -1. "Soft freeze" of the master branch. +1. "Soft freeze" of the main branch. During the freeze, we ask committers to refrain from applying patches that add new features unless those patches were already being publicly discussed and reviewed before the freeze began. Bug fixes are welcome at any time. Please propose and discuss exceptions on ovs-dev. -2. Fork a release branch from master, named for the expected release number, +2. Fork a release branch from main, named for the expected release number, e.g. "branch-2.3" for the branch that will yield Open vSwitch 2.3.x. Release branches are intended for testing and stabilization. At this stage and in later stages, they should receive only bug fixes, not new features. Bug fixes applied to release branches should be backports of corresponding - bug fixes to the master branch, except for bugs present only on release + bug fixes to the main branch, except for bugs present only on release branches (which are rare in practice). At this stage, sometimes there can be exceptions to the rule that a release branch receives only bug fixes. Like bug fixes, new features on release - branches should be backports of the corresponding commits on the master + branches should be backports of the corresponding commits on the main branch. Features to be added to release branches should be limited in scope and risk and discussed on ovs-dev before creating the branch. @@ -125,10 +125,10 @@ intermediate branches). Release Numbering ----------------- -The version number on master should normally end in .90. This indicates that +The version number on main should normally end in .90. This indicates that the Open vSwitch version is "almost" the next version to branch. -Forking master into branch-x.y requires two commits to master. The first is +Forking main into branch-x.y requires two commits to main. The first is titled "Prepare for x.y.0" and increments the version number to x.y. This is the initial commit on branch-x.y. The second is titled "Prepare for post-x.y.0 (x.y.90)" and increments the version number to x.y.90. @@ -146,23 +146,23 @@ Release Scheduling Open vSwitch makes releases at the following six-month cadence. All dates are approximate: -+---------------+----------------+--------------------------------------+ -| Time (months) | Dates | Stage | -+---------------+----------------+--------------------------------------+ -| T | Mar 1, Sep 1 | Begin x.y release cycle | -+---------------+----------------+--------------------------------------+ -| T + 4 | Jul 1, Jan 1 | "Soft freeze" master for x.y release | -+---------------+----------------+--------------------------------------+ -| T + 4.5 | Jul 15, Jan 15 | Fork branch-x.y from master | -+---------------+----------------+--------------------------------------+ -| T + 5.5 | Aug 15, Feb 15 | Release version x.y.0 | -+---------------+----------------+--------------------------------------+ ++---------------+----------------+------------------------------------+ +| Time (months) | Dates | Stage | ++---------------+----------------+------------------------------------+ +| T | Mar 1, Sep 1 | Begin x.y release cycle | ++---------------+----------------+------------------------------------+ +| T + 4 | Jul 1, Jan 1 | "Soft freeze" main for x.y release | ++---------------+----------------+------------------------------------+ +| T + 4.5 | Jul 15, Jan 15 | Fork branch-x.y from main | ++---------------+----------------+------------------------------------+ +| T + 5.5 | Aug 15, Feb 15 | Release version x.y.0 | ++---------------+----------------+------------------------------------+ How to Branch ------------- -To branch "master" for the eventual release of OVS version x.y.0, -prepare two patches against master: +To branch "main" for the eventual release of OVS version x.y.0, +prepare two patches against main: 1. "Prepare for x.y.0." following the model of commit 836d1973c56e ("Prepare for 2.11.0."). @@ -172,12 +172,12 @@ prepare two patches against master: Post both patches to ovs-dev. Get them reviewed in the usual way. -Apply both patches to master, and create branch-x.y by pushing only +Apply both patches to main, and create branch-x.y by pushing only the first patch. The following command illustrates how to do both of these at once assuming the local repository HEAD points to the "Prepare for post-x.y.0" commit: - git push origin HEAD:master HEAD^:refs/heads/branch-x.y + git push origin HEAD:main HEAD^:refs/heads/branch-x.y Branching should be announced on ovs-dev. @@ -200,7 +200,7 @@ Follow these steps to release version x.y.z of OVS from branch-x.y. 4. Apply the patches to branch-x.y. -5. If z = 0, apply the first patch (only) to master. +5. If z = 0, apply the first patch (only) to main. 6. Sign a tag vx.y.z "Open vSwitch version x.y.z" and push it to the repo. diff --git a/Documentation/intro/install/dpdk.rst b/Documentation/intro/install/dpdk.rst index c92e598d7ae8..f1646322c7e3 100644 --- a/Documentation/intro/install/dpdk.rst +++ b/Documentation/intro/install/dpdk.rst @@ -174,7 +174,7 @@ Additional information can be found in :doc:`general`. daemon will run as a non-root user. This implies that you must have a working IOMMU. Visit the `RHEL README`__ for additional information. -__ https://github.com/openvswitch/ovs/blob/master/rhel/README.RHEL.rst +__ https://github.com/openvswitch/ovs/blob/main/rhel/README.RHEL.rst Possible issues when enabling AVX512 diff --git a/Documentation/intro/install/fedora.rst b/Documentation/intro/install/fedora.rst index 49fad844c7f7..f8a6bb6b6033 100644 --- a/Documentation/intro/install/fedora.rst +++ b/Documentation/intro/install/fedora.rst @@ -146,7 +146,7 @@ purpose. Refer to the `RHEL README`__ for additional usage and configuration information. -__ https://github.com/openvswitch/ovs/blob/master/rhel/README.RHEL.rst +__ https://github.com/openvswitch/ovs/blob/main/rhel/README.RHEL.rst Reporting Bugs -------------- diff --git a/Documentation/intro/install/general.rst b/Documentation/intro/install/general.rst index 17c154268054..2b3959a14370 100644 --- a/Documentation/intro/install/general.rst +++ b/Documentation/intro/install/general.rst @@ -37,7 +37,7 @@ repository, which you can clone into a directory named "ovs" with:: $ git clone https://github.com/openvswitch/ovs.git -Cloning the repository leaves the "master" branch initially checked +Cloning the repository leaves the "main" branch initially checked out. This is the right branch for general development. If, on the other hand, if you want to build a particular released version, you can check it out by running a command such as the following from the diff --git a/Documentation/intro/install/rhel.rst b/Documentation/intro/install/rhel.rst index f2151d890717..e442fca0c0ed 100644 --- a/Documentation/intro/install/rhel.rst +++ b/Documentation/intro/install/rhel.rst @@ -211,7 +211,7 @@ implemented. Refer to `README.RHEL.rst`__ in the source tree or /usr/share/doc/openvswitch/README.RHEL.rst in the installed openvswitch package for details. -__ https://github.com/openvswitch/ovs/blob/master/rhel/README.RHEL.rst +__ https://github.com/openvswitch/ovs/blob/main/rhel/README.RHEL.rst Reporting Bugs -------------- diff --git a/Documentation/topics/language-bindings.rst b/Documentation/topics/language-bindings.rst index 414f7c73fa38..15958d76da93 100644 --- a/Documentation/topics/language-bindings.rst +++ b/Documentation/topics/language-bindings.rst @@ -49,7 +49,7 @@ required dependencies, run: or install `python3-netaddr` and `python3-pyparsing`. -__ https://github.com/openvswitch/ovs/tree/master/python/ovs +__ https://github.com/openvswitch/ovs/tree/main/python/ovs Third-Party Bindings -------------------- diff --git a/Documentation/tutorials/faucet.rst b/Documentation/tutorials/faucet.rst index 6aa4d39aa8ab..33e4543e4023 100644 --- a/Documentation/tutorials/faucet.rst +++ b/Documentation/tutorials/faucet.rst @@ -27,7 +27,7 @@ OVS Faucet Tutorial This tutorial demonstrates how Open vSwitch works with a general-purpose OpenFlow controller, using the Faucet controller as a simple way to get -started. It was tested with the "master" branch of Open vSwitch and version +started. It was tested with the "main" branch of Open vSwitch and version 1.6.15 of Faucet. It does not use advanced or recently added features in OVS or Faucet, so other versions of both pieces of software are likely to work equally well. @@ -68,7 +68,7 @@ approaches: $ git clone https://github.com/openvswitch/ovs.git $ cd ovs - The default checkout is the master branch. You will need to use the master + The default checkout is the main branch. You will need to use the main branch for this tutorial as it includes some functionality required for this tutorial. @@ -84,7 +84,7 @@ approaches: The default behaviour for some of the commands used in this tutorial changed in Open vSwitch versions 2.9.x and 2.10.x which breaks the - tutorial. We recommend following step 3 and building master from + tutorial. We recommend following step 3 and building main from source or using a system Open vSwitch that is version 2.8.x or older. If it is successful, you will find yourself in a subshell environment, which diff --git a/Documentation/tutorials/ovs-conntrack.rst b/Documentation/tutorials/ovs-conntrack.rst index e8a58c4eb298..6b0b73cd1173 100644 --- a/Documentation/tutorials/ovs-conntrack.rst +++ b/Documentation/tutorials/ovs-conntrack.rst @@ -35,7 +35,7 @@ to match on the TCP segments from connection setup to connection tear down. It will use OVS with the Linux kernel module as the datapath for this tutorial. (The datapath that utilizes the openvswitch kernel module to do the packet processing in the Linux kernel) -It was tested with the "master" branch of Open vSwitch. +It was tested with the "main" branch of Open vSwitch. Definitions ----------- diff --git a/NEWS b/NEWS index c9e4064e67a7..9c3e59455d29 100644 --- a/NEWS +++ b/NEWS @@ -4,7 +4,9 @@ Post-v3.3.0 * Conntrack now supports 'random' flag for selecting ports in a range while natting and 'persistent' flag for selection of the IP address from a range. - + - The primary development branch has been renamed from 'master' to 'main'. + The OVS tree remains hosted on GitHub. + https://github.com/openvswitch/ovs.git v3.3.0 - 16 Feb 2024 -------------------- diff --git a/README.rst b/README.rst index a2c234f4d17c..ca9e386c2069 100644 --- a/README.rst +++ b/README.rst @@ -8,7 +8,7 @@ Open vSwitch .. image:: https://github.com/openvswitch/ovs/workflows/Build%20and%20Test/badge.svg :target: https://github.com/openvswitch/ovs/actions -.. image:: https://ci.appveyor.com/api/projects/status/github/openvswitch/ovs?branch=master&svg=true&retina=true +.. image:: https://ci.appveyor.com/api/projects/status/github/openvswitch/ovs?branch=main&svg=true&retina=true :target: https://ci.appveyor.com/project/blp/ovs/history .. image:: https://api.cirrus-ci.com/github/openvswitch/ovs.svg :target: https://cirrus-ci.com/github/openvswitch/ovs diff --git a/appveyor.yml b/appveyor.yml index 29cc44d6c6f6..65e29eb4e3be 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -2,7 +2,7 @@ version: 1.0.{build} image: Visual Studio 2019 branches: only: - - master + - main configuration: - Debug - Release @@ -23,7 +23,7 @@ install: New-Item -ItemType Directory -Force -Path C:\ovs-build-downloads # Find and download the latest stable OpenSSl 3.0. - $URL = "https://raw.githubusercontent.com/slproweb/opensslhashes/master/win32_openssl_hashes.json" + $URL = "https://raw.githubusercontent.com/slproweb/opensslhashes/main/win32_openssl_hashes.json" $webData = (Invoke-WebRequest -Uri $URL).content | ConvertFrom-Json $source = ($webData.files.PSObject.Properties | Where-Object { $_.Value.basever -match "3.0.*" -and @@ -74,6 +74,6 @@ build_script: c:\OpenvSwitch-$env:CONFIGURATION.msi after_build: -- ps: 7z a C:\ovs-master-$env:CONFIGURATION.zip C:\openvswitch -- ps: Push-AppveyorArtifact C:\ovs-master-$env:CONFIGURATION.zip +- ps: 7z a C:\ovs-main-$env:CONFIGURATION.zip C:\openvswitch +- ps: Push-AppveyorArtifact C:\ovs-main-$env:CONFIGURATION.zip - ps: Push-AppveyorArtifact C:\OpenvSwitch-$env:CONFIGURATION.msi