diff mbox series

[2/2] LICENSES: Remove the use of deprecated LGPL SPDX tags

Message ID 20230505130533.3580545-3-andrew.cooper3@citrix.com (mailing list archive)
State Superseded
Headers show
Series LICENSES improvements/corrections | expand

Commit Message

Andrew Cooper May 5, 2023, 1:05 p.m. UTC
The SPDX forms without an explicit -only or -or-later suffix are deprecated
and should not be used.  The recent changes to libacpi are the only examples
in tree, so fix them all up.

For GPL, we have many examples using deprecated tags.  For now, just identify
them as such recommend that no new instances get added.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Jan Beulich <JBeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Wei Liu <wl@xen.org>
CC: Julien Grall <julien@xen.org>

Unsure whether this should get some Fixes: tags or not.  Note also that
Jenny's "[PATCH v4 2/2] acpi: Add TPM2 interface definition." wants its SPDX
tag correcting as per this patch.
---
 LICENSES/GPL-2.0                    | 12 ++++++------
 LICENSES/LGPL-2.0                   |  8 ++++----
 LICENSES/LGPL-2.1                   |  8 ++++----
 tools/libacpi/Makefile              |  2 +-
 tools/libacpi/acpi2_0.h             |  2 +-
 tools/libacpi/build.c               |  2 +-
 tools/libacpi/dsdt.asl              |  2 +-
 tools/libacpi/dsdt_acpi_info.asl    |  2 +-
 tools/libacpi/libacpi.h             |  2 +-
 tools/libacpi/mk_dsdt.c             |  2 +-
 tools/libacpi/ssdt_laptop_slate.asl |  2 +-
 tools/libacpi/ssdt_pm.asl           |  2 +-
 tools/libacpi/ssdt_s3.asl           |  2 +-
 tools/libacpi/ssdt_s4.asl           |  2 +-
 tools/libacpi/ssdt_tpm.asl          |  2 +-
 tools/libacpi/static_tables.c       |  2 +-
 16 files changed, 27 insertions(+), 27 deletions(-)

Comments

Jan Beulich May 5, 2023, 1:13 p.m. UTC | #1
On 05.05.2023 15:05, Andrew Cooper wrote:
> The SPDX forms without an explicit -only or -or-later suffix are deprecated
> and should not be used.

I guess this wants a reference to where this is specified. In particular ...

> --- a/LICENSES/LGPL-2.1
> +++ b/LICENSES/LGPL-2.1
> @@ -1,5 +1,5 @@
> -Valid-License-Identifier: LGPL-2.1
> -Valid-License-Identifier: LGPL-2.1+
> +Valid-License-Identifier: LGPL-2.1-only
> +Valid-License-Identifier: LGPL-2.1-or-later
>  
>  SPDX-URL: https://spdx.org/licenses/LGPL-2.1.html

... I can't spot anything like this under e.g. this URL.

Also is there a reason you add Deprecated-Identifier: only to GPL-2.0?
Enumerating them would seem reasonable to me, not just for completeness,
but also in case we end up importing a file with a deprecated tag.

Jan
Andrew Cooper May 5, 2023, 1:22 p.m. UTC | #2
On 05/05/2023 2:13 pm, Jan Beulich wrote:
> On 05.05.2023 15:05, Andrew Cooper wrote:
>> The SPDX forms without an explicit -only or -or-later suffix are deprecated
>> and should not be used.
> I guess this wants a reference to where this is specified. In particular ...
>
>> --- a/LICENSES/LGPL-2.1
>> +++ b/LICENSES/LGPL-2.1
>> @@ -1,5 +1,5 @@
>> -Valid-License-Identifier: LGPL-2.1
>> -Valid-License-Identifier: LGPL-2.1+
>> +Valid-License-Identifier: LGPL-2.1-only
>> +Valid-License-Identifier: LGPL-2.1-or-later
>>  
>>  SPDX-URL: https://spdx.org/licenses/LGPL-2.1.html
> ... I can't spot anything like this under e.g. this URL.

Hmm yeah, it is irritating.  The statement is at
https://spdx.org/licenses/ but only by virtue of two tables, the second
of which is the list of deprecated identifiers.

I'll put a paragraph about this in the commit message.

> Also is there a reason you add Deprecated-Identifier: only to GPL-2.0?
> Enumerating them would seem reasonable to me, not just for completeness,
> but also in case we end up importing a file with a deprecated tag.

We have problematic uses of GPL in tree, where we don't for LGPL.

I'm considering a gitlab pass which will reject patches with use an
identifier not in the permitted list, and reject in introduction of new
uses of the deprecated ones.    For this, the deprecated-but-tolerated
tags need calling out in some machine-readable way, but I don't think
it's helpful to express the tolerating of a tag we don't have any
violations of.

~Andrew
Jan Beulich May 5, 2023, 1:31 p.m. UTC | #3
On 05.05.2023 15:22, Andrew Cooper wrote:
> On 05/05/2023 2:13 pm, Jan Beulich wrote:
>> On 05.05.2023 15:05, Andrew Cooper wrote:
>>> The SPDX forms without an explicit -only or -or-later suffix are deprecated
>>> and should not be used.
>> I guess this wants a reference to where this is specified. In particular ...
>>
>>> --- a/LICENSES/LGPL-2.1
>>> +++ b/LICENSES/LGPL-2.1
>>> @@ -1,5 +1,5 @@
>>> -Valid-License-Identifier: LGPL-2.1
>>> -Valid-License-Identifier: LGPL-2.1+
>>> +Valid-License-Identifier: LGPL-2.1-only
>>> +Valid-License-Identifier: LGPL-2.1-or-later
>>>  
>>>  SPDX-URL: https://spdx.org/licenses/LGPL-2.1.html
>> ... I can't spot anything like this under e.g. this URL.
> 
> Hmm yeah, it is irritating.  The statement is at
> https://spdx.org/licenses/ but only by virtue of two tables, the second
> of which is the list of deprecated identifiers.
> 
> I'll put a paragraph about this in the commit message.
> 
>> Also is there a reason you add Deprecated-Identifier: only to GPL-2.0?
>> Enumerating them would seem reasonable to me, not just for completeness,
>> but also in case we end up importing a file with a deprecated tag.
> 
> We have problematic uses of GPL in tree, where we don't for LGPL.
> 
> I'm considering a gitlab pass which will reject patches with use an
> identifier not in the permitted list, and reject in introduction of new
> uses of the deprecated ones.    For this, the deprecated-but-tolerated
> tags need calling out in some machine-readable way, but I don't think
> it's helpful to express the tolerating of a tag we don't have any
> violations of.

Hmm, okay. With the expanded commit message
Acked-by: Jan Beulich <jbeulich@suse.com>

Jan
Andrew Cooper May 5, 2023, 1:36 p.m. UTC | #4
On 05/05/2023 2:31 pm, Jan Beulich wrote:
> On 05.05.2023 15:22, Andrew Cooper wrote:
>> On 05/05/2023 2:13 pm, Jan Beulich wrote:
>>> On 05.05.2023 15:05, Andrew Cooper wrote:
>>>> The SPDX forms without an explicit -only or -or-later suffix are deprecated
>>>> and should not be used.
>>> I guess this wants a reference to where this is specified. In particular ...
>>>
>>>> --- a/LICENSES/LGPL-2.1
>>>> +++ b/LICENSES/LGPL-2.1
>>>> @@ -1,5 +1,5 @@
>>>> -Valid-License-Identifier: LGPL-2.1
>>>> -Valid-License-Identifier: LGPL-2.1+
>>>> +Valid-License-Identifier: LGPL-2.1-only
>>>> +Valid-License-Identifier: LGPL-2.1-or-later
>>>>  
>>>>  SPDX-URL: https://spdx.org/licenses/LGPL-2.1.html
>>> ... I can't spot anything like this under e.g. this URL.
>> Hmm yeah, it is irritating.  The statement is at
>> https://spdx.org/licenses/ but only by virtue of two tables, the second
>> of which is the list of deprecated identifiers.
>>
>> I'll put a paragraph about this in the commit message.
>>
>>> Also is there a reason you add Deprecated-Identifier: only to GPL-2.0?
>>> Enumerating them would seem reasonable to me, not just for completeness,
>>> but also in case we end up importing a file with a deprecated tag.
>> We have problematic uses of GPL in tree, where we don't for LGPL.
>>
>> I'm considering a gitlab pass which will reject patches with use an
>> identifier not in the permitted list, and reject in introduction of new
>> uses of the deprecated ones.    For this, the deprecated-but-tolerated
>> tags need calling out in some machine-readable way, but I don't think
>> it's helpful to express the tolerating of a tag we don't have any
>> violations of.
> Hmm, okay. With the expanded commit message
> Acked-by: Jan Beulich <jbeulich@suse.com>

Thanks.  FAOD, here's the full commit message with adjustment:

LICENSES: Remove the use of deprecated LGPL SPDX tags

The SPDX forms without an explicit -only or -or-later suffix are deprecated
and should not be used.

Somewhat unhelpfully at the time of writing, this only appears to be
indicated
by the separation of the two tables at https://spdx.org/licenses/
   
The recent changes to libacpi are the only examples of deprecated LGPL
tags in
tree, so fix them all up.

For GPL, we have many examples using deprecated tags.  For now, just
identify
them as such and recommend that no new instances get added.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Anthony PERARD May 5, 2023, 3:30 p.m. UTC | #5
On Fri, May 05, 2023 at 02:05:33PM +0100, Andrew Cooper wrote:
> ---
>  LICENSES/GPL-2.0                    | 12 ++++++------
>  LICENSES/LGPL-2.0                   |  8 ++++----
>  LICENSES/LGPL-2.1                   |  8 ++++----
> 
> diff --git a/LICENSES/GPL-2.0 b/LICENSES/GPL-2.0
> index 0022a7c17788..dcd969aa85b5 100644
> --- a/LICENSES/GPL-2.0
> +++ b/LICENSES/GPL-2.0
> @@ -1,8 +1,9 @@
> -Valid-License-Identifier: GPL-2.0
>  Valid-License-Identifier: GPL-2.0-only
> -Valid-License-Identifier: GPL-2.0+
>  Valid-License-Identifier: GPL-2.0-or-later
>  
> +Deprecated-Identifier: GPL-2.0
> +Deprecated-Identifier: GPL-2.0+
> +
>  SPDX-URL: https://spdx.org/licenses/GPL-2.0.html

You probably want to update the URLs as well, this one point to a page
with a deprecated notice. New url is:
    https://spdx.org/licenses/GPL-2.0-only.html

Same remark for the other licences file changed.

Also, maybe they want to be renamed as well, to match the identifier,
I'm not sure.

Cheers,
Andrew Cooper May 5, 2023, 3:52 p.m. UTC | #6
On 05/05/2023 4:30 pm, Anthony PERARD wrote:
> On Fri, May 05, 2023 at 02:05:33PM +0100, Andrew Cooper wrote:
>> ---
>>  LICENSES/GPL-2.0                    | 12 ++++++------
>>  LICENSES/LGPL-2.0                   |  8 ++++----
>>  LICENSES/LGPL-2.1                   |  8 ++++----
>>
>> diff --git a/LICENSES/GPL-2.0 b/LICENSES/GPL-2.0
>> index 0022a7c17788..dcd969aa85b5 100644
>> --- a/LICENSES/GPL-2.0
>> +++ b/LICENSES/GPL-2.0
>> @@ -1,8 +1,9 @@
>> -Valid-License-Identifier: GPL-2.0
>>  Valid-License-Identifier: GPL-2.0-only
>> -Valid-License-Identifier: GPL-2.0+
>>  Valid-License-Identifier: GPL-2.0-or-later
>>  
>> +Deprecated-Identifier: GPL-2.0
>> +Deprecated-Identifier: GPL-2.0+
>> +
>>  SPDX-URL: https://spdx.org/licenses/GPL-2.0.html
> You probably want to update the URLs as well, this one point to a page
> with a deprecated notice. New url is:
>     https://spdx.org/licenses/GPL-2.0-only.html
>
> Same remark for the other licences file changed.
>
> Also, maybe they want to be renamed as well, to match the identifier,
> I'm not sure.

Hmm, all good points.  I'll update the URLs because that's easy.

For the files however, the GPL ones already discuss both the "only" or
"or-later" forms, so the filename already doesn't match the SDPX tag
specifically.  I think I'll leave them as-are.

~Andrew
diff mbox series

Patch

diff --git a/LICENSES/GPL-2.0 b/LICENSES/GPL-2.0
index 0022a7c17788..dcd969aa85b5 100644
--- a/LICENSES/GPL-2.0
+++ b/LICENSES/GPL-2.0
@@ -1,8 +1,9 @@ 
-Valid-License-Identifier: GPL-2.0
 Valid-License-Identifier: GPL-2.0-only
-Valid-License-Identifier: GPL-2.0+
 Valid-License-Identifier: GPL-2.0-or-later
 
+Deprecated-Identifier: GPL-2.0
+Deprecated-Identifier: GPL-2.0+
+
 SPDX-URL: https://spdx.org/licenses/GPL-2.0.html
 
 Usage-Guide:
@@ -13,13 +14,12 @@  Usage-Guide:
 
   For 'GNU General Public License (GPL) version 2 only' use:
     SPDX-License-Identifier: GPL-2.0-only
-  or (now deprecated)
-    SPDX-License-Identifier: GPL-2.0
   For 'GNU General Public License (GPL) version 2 or any later version' use:
-    SPDX-License-Identifier: GPL-2.0+
-  or
     SPDX-License-Identifier: GPL-2.0-or-later
 
+  The deprecated tags should not be used for any new additions.  Where
+  possible, their existing uses should be phased out.
+
 License-Text:
 
 		    GNU GENERAL PUBLIC LICENSE
diff --git a/LICENSES/LGPL-2.0 b/LICENSES/LGPL-2.0
index 2fa16d72eabf..c960ba3ce3b8 100644
--- a/LICENSES/LGPL-2.0
+++ b/LICENSES/LGPL-2.0
@@ -1,5 +1,5 @@ 
-Valid-License-Identifier: LGPL-2.0
-Valid-License-Identifier: LGPL-2.0+
+Valid-License-Identifier: LGPL-2.0-only
+Valid-License-Identifier: LGPL-2.0-or-later
 
 SPDX-URL: https://spdx.org/licenses/LGPL-2.0.html
 
@@ -10,11 +10,11 @@  Usage-Guide:
   guidelines in the licensing rules documentation.
 
   For 'GNU Library General Public License (LGPL) version 2.0 only' use:
-    SPDX-License-Identifier: LGPL-2.0
+    SPDX-License-Identifier: LGPL-2.0-only
 
   For 'GNU Library General Public License (LGPL) version 2.0 or any later
   version' use:
-    SPDX-License-Identifier: LGPL-2.0+
+    SPDX-License-Identifier: LGPL-2.0-or-later
 
 License-Text:
 
diff --git a/LICENSES/LGPL-2.1 b/LICENSES/LGPL-2.1
index b366c7e49199..4553664b76bf 100644
--- a/LICENSES/LGPL-2.1
+++ b/LICENSES/LGPL-2.1
@@ -1,5 +1,5 @@ 
-Valid-License-Identifier: LGPL-2.1
-Valid-License-Identifier: LGPL-2.1+
+Valid-License-Identifier: LGPL-2.1-only
+Valid-License-Identifier: LGPL-2.1-or-later
 
 SPDX-URL: https://spdx.org/licenses/LGPL-2.1.html
 
@@ -10,11 +10,11 @@  Usage-Guide:
   guidelines in the licensing rules documentation.
 
   For 'GNU Lesser General Public License (LGPL) version 2.1 only' use:
-    SPDX-License-Identifier: LGPL-2.1
+    SPDX-License-Identifier: LGPL-2.1-only
 
   For 'GNU Lesser General Public License (LGPL) version 2.1 or any later
   version' use:
-    SPDX-License-Identifier: LGPL-2.1+
+    SPDX-License-Identifier: LGPL-2.1-or-later
 
 License-Text:
 
diff --git a/tools/libacpi/Makefile b/tools/libacpi/Makefile
index aa9c520cbe85..bcfcd852f92f 100644
--- a/tools/libacpi/Makefile
+++ b/tools/libacpi/Makefile
@@ -1,4 +1,4 @@ 
-# SPDX-License-Identifier: LGPL-2.1
+# SPDX-License-Identifier: LGPL-2.1-only
 #
 # Copyright (c) 2004, Intel Corporation.
 
diff --git a/tools/libacpi/acpi2_0.h b/tools/libacpi/acpi2_0.h
index 212f5ab64182..e00b29854be0 100644
--- a/tools/libacpi/acpi2_0.h
+++ b/tools/libacpi/acpi2_0.h
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 /*
  * Copyright (c) 2004, Intel Corporation.
  */
diff --git a/tools/libacpi/build.c b/tools/libacpi/build.c
index 830d37c61f03..3142e0ac84c0 100644
--- a/tools/libacpi/build.c
+++ b/tools/libacpi/build.c
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 /*
  * Copyright (c) 2004, Intel Corporation.
  * Copyright (c) 2006, Keir Fraser, XenSource Inc.
diff --git a/tools/libacpi/dsdt.asl b/tools/libacpi/dsdt.asl
index c6691b56a986..32b42f85ae9f 100644
--- a/tools/libacpi/dsdt.asl
+++ b/tools/libacpi/dsdt.asl
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 /******************************************************************************
  * DSDT for Xen with Qemu device model
  *
diff --git a/tools/libacpi/dsdt_acpi_info.asl b/tools/libacpi/dsdt_acpi_info.asl
index c6e82f1fe6a7..6e114fa23404 100644
--- a/tools/libacpi/dsdt_acpi_info.asl
+++ b/tools/libacpi/dsdt_acpi_info.asl
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 
     Scope (\_SB)
     {
diff --git a/tools/libacpi/libacpi.h b/tools/libacpi/libacpi.h
index acf012e35578..7ae28525f604 100644
--- a/tools/libacpi/libacpi.h
+++ b/tools/libacpi/libacpi.h
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 /******************************************************************************
  * libacpi.h
  * 
diff --git a/tools/libacpi/mk_dsdt.c b/tools/libacpi/mk_dsdt.c
index c74b270c0c5d..34f6753f6193 100644
--- a/tools/libacpi/mk_dsdt.c
+++ b/tools/libacpi/mk_dsdt.c
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 
 #include <stdio.h>
 #include <stdarg.h>
diff --git a/tools/libacpi/ssdt_laptop_slate.asl b/tools/libacpi/ssdt_laptop_slate.asl
index 494f2d048d0a..69fd504c19fc 100644
--- a/tools/libacpi/ssdt_laptop_slate.asl
+++ b/tools/libacpi/ssdt_laptop_slate.asl
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 /*
  * ssdt_conv.asl
  *
diff --git a/tools/libacpi/ssdt_pm.asl b/tools/libacpi/ssdt_pm.asl
index e577e85c072b..db578d10ac3e 100644
--- a/tools/libacpi/ssdt_pm.asl
+++ b/tools/libacpi/ssdt_pm.asl
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 /*
  * ssdt_pm.asl
  *
diff --git a/tools/libacpi/ssdt_s3.asl b/tools/libacpi/ssdt_s3.asl
index 8f3177ec5adc..f6e9636f4759 100644
--- a/tools/libacpi/ssdt_s3.asl
+++ b/tools/libacpi/ssdt_s3.asl
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 /*
  * ssdt_s3.asl
  *
diff --git a/tools/libacpi/ssdt_s4.asl b/tools/libacpi/ssdt_s4.asl
index 979318eca1f5..8014f5fc9014 100644
--- a/tools/libacpi/ssdt_s4.asl
+++ b/tools/libacpi/ssdt_s4.asl
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 /*
  * ssdt_s4.asl
  *
diff --git a/tools/libacpi/ssdt_tpm.asl b/tools/libacpi/ssdt_tpm.asl
index 6c3267218f3b..944658d25177 100644
--- a/tools/libacpi/ssdt_tpm.asl
+++ b/tools/libacpi/ssdt_tpm.asl
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 /*
  * ssdt_tpm.asl
  *
diff --git a/tools/libacpi/static_tables.c b/tools/libacpi/static_tables.c
index 631fb911413b..715f46fee05c 100644
--- a/tools/libacpi/static_tables.c
+++ b/tools/libacpi/static_tables.c
@@ -1,4 +1,4 @@ 
-/* SPDX-License-Identifier: LGPL-2.1 */
+/* SPDX-License-Identifier: LGPL-2.1-only */
 /*
  * Copyright (c) 2004, Intel Corporation.
  * Copyright (c) 2006, Keir Fraser, XenSource Inc.