From fd2b959d04d5001605829d6705ed4a7fe0be0660 Mon Sep 17 00:00:00 2001
From: Erik Jaegervall <erik.jaegervall@se.bosch.com>
Date: Wed, 13 Sep 2023 16:05:58 +0200
Subject: [PATCH] Changing to SPDX style and add checker

Signed-off-by: Erik Jaegervall <erik.jaegervall@se.bosch.com>
---
 .flake8                                       |  2 +
 .github/actions/verify-headers/action.yml     | 17 +++++++++
 .../actions/verify-headers/verify-headers.py  | 38 +++++++++++++++++++
 .github/workflows/check-header.yml            | 28 ++++++++++++++
 CONTRIBUTING.md                               | 20 +++++++---
 overlays/extensions/dual_wiper_systems.vspec  |  9 +++--
 overlays/profiles/motorbike.vspec             |  9 +++--
 spec/ADAS/ADAS.vspec                          |  9 +++--
 spec/Body/Body.vspec                          |  9 +++--
 spec/Body/BrakeLights.vspec                   |  9 +++--
 spec/Body/ExteriorMirrors.vspec               |  9 +++--
 spec/Body/SignalingLights.vspec               |  9 +++--
 spec/Body/StaticLights.vspec                  |  9 +++--
 spec/Body/WiperSystem.vspec                   |  9 +++--
 spec/Cabin/Cabin.vspec                        |  9 +++--
 spec/Cabin/HVAC.vspec                         |  9 +++--
 spec/Cabin/Infotainment.vspec                 |  9 +++--
 spec/Cabin/InteriorLights.vspec               |  9 +++--
 spec/Cabin/Occupant.vspec                     | 10 +++--
 spec/Cabin/SingleConfigurableLight.vspec      | 10 +++--
 spec/Cabin/SingleDoor.vspec                   | 10 +++--
 spec/Cabin/SingleHVACStation.vspec            |  9 +++--
 spec/Cabin/SingleSeat.vspec                   |  9 +++--
 spec/Chassis/Chassis.vspec                    |  9 +++--
 spec/Chassis/Wheel.vspec                      |  9 +++--
 spec/Driver/Driver.vspec                      |  9 +++--
 spec/Identifier/Identifier.vspec              |  9 +++--
 spec/OBD/OBD.vspec                            | 10 +++--
 spec/Powertrain/CombustionEngine.vspec        |  9 +++--
 spec/Powertrain/ElectricMotor.vspec           |  9 +++--
 spec/Powertrain/FuelSystem.vspec              |  9 +++--
 spec/Powertrain/Powertrain.vspec              |  9 +++--
 spec/Powertrain/TractionBattery.vspec         |  9 +++--
 spec/Powertrain/Transmission.vspec            |  9 +++--
 spec/Vehicle/Battery.vspec                    |  9 +++--
 spec/Vehicle/Connectivity.vspec               | 10 +++--
 spec/Vehicle/Exterior.vspec                   |  9 +++--
 spec/Vehicle/Service.vspec                    |  9 +++--
 spec/Vehicle/Vehicle.vspec                    |  9 +++--
 spec/VehicleSignalSpecification.vspec         |  7 +++-
 spec/include/ItemHeatingCooling.vspec         |  8 ++--
 spec/include/LockableMovableItem.vspec        | 11 +++---
 spec/include/MovableItem.vspec                | 10 ++---
 spec/include/PowerOptimize.vspec              |  9 +++--
 44 files changed, 334 insertions(+), 127 deletions(-)
 create mode 100644 .flake8
 create mode 100644 .github/actions/verify-headers/action.yml
 create mode 100755 .github/actions/verify-headers/verify-headers.py
 create mode 100755 .github/workflows/check-header.yml

diff --git a/.flake8 b/.flake8
new file mode 100644
index 000000000..dcc8dcee3
--- /dev/null
+++ b/.flake8
@@ -0,0 +1,2 @@
+[flake8]
+max_line_length = 120
diff --git a/.github/actions/verify-headers/action.yml b/.github/actions/verify-headers/action.yml
new file mode 100644
index 000000000..477ffeed3
--- /dev/null
+++ b/.github/actions/verify-headers/action.yml
@@ -0,0 +1,17 @@
+name: verify-headers
+description: Verify that files affected by a PR include expected header
+
+branding:
+  icon: zap
+  color: gray-dark
+
+inputs:
+  files:
+    description: >
+      A comma-separated list of all files to check.
+    default: ''
+runs:
+  using: "composite"
+  steps:
+    - run: $GITHUB_ACTION_PATH/verify-headers.py
+      shell: bash
diff --git a/.github/actions/verify-headers/verify-headers.py b/.github/actions/verify-headers/verify-headers.py
new file mode 100755
index 000000000..9c7b7de4c
--- /dev/null
+++ b/.github/actions/verify-headers/verify-headers.py
@@ -0,0 +1,38 @@
+#!/usr/bin/python3
+# Copyright (c) 2023 Contributors to COVESA
+#
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
+
+import os
+
+
+def string_exists(file_path, search_string) -> bool:
+    with open(file_path, 'r') as file:
+        content = file.read()
+        if search_string in content:
+            return True
+    return False
+
+
+if __name__ == '__main__':
+
+    files = os.getenv('files')
+    files = files.split(',')
+    for file in files:
+        file = os.path.abspath(file)
+        if os.path.isfile(file):
+            ext = os.path.splitext(file)[1]
+            if ext in [".vspec", ".py"]:
+                if not string_exists(file, "Contributors to COVESA"):
+                    print(f"No contribution statement found in {file}")
+                    raise Exception("Check the output, some files have not the right contribution statement!")
+                if not string_exists(file, "SPDX-License-Identifier: MPL-2.0"):
+                    print(f"Incorrect license statement found in {file}")
+                    raise Exception("Check the output, some files have not the right SPDX statement!")
+
+                print(f"Check succeeded for {file}")
+    raise SystemExit(0)
diff --git a/.github/workflows/check-header.yml b/.github/workflows/check-header.yml
new file mode 100755
index 000000000..c20d71943
--- /dev/null
+++ b/.github/workflows/check-header.yml
@@ -0,0 +1,28 @@
+name: check-header
+
+on:
+  pull_request
+
+concurrency:
+      group: ${{ github.ref }}-${{ github.workflow }}
+      cancel-in-progress: true
+
+jobs:
+  check-headers:
+    runs-on: ubuntu-latest
+
+    steps:
+
+    - name: Checkout code
+      uses: actions/checkout@v3
+      with:
+        # required to grab the history of the PR
+        fetch-depth: 0
+
+    - name: Get changed files
+      run: |
+        echo "files=$(git diff --name-only ${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }} | tr '\n' ',')" >> $GITHUB_ENV
+
+    - uses: ./.github/actions/verify-headers
+      with:
+        files: "${{ env.files }}"
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 0d3a01f7e..061f1a309 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -63,15 +63,25 @@ By supplying this sign-off line, you indicate your acceptance of the COVESA Cert
 
 If using git command line you can add a sign-off by using the `-s` argument when creating a commit.
 
-Each file shall have copyright statement of this form, inspired by the [Eclipse generic copyright header](https://www.eclipse.org/projects/handbook/#ip-copyright-headers)
+For certain files it is requested that a copyright and license statement is added as file header.
+This currently applies to the following file types:
+
+* VSS source files (`*.vspec`)
+* Python files (vss-tools, `*.py`)
+
+Those files shall have copyright statement of this form, inspired by the [Eclipse generic copyright header](https://www.eclipse.org/projects/handbook/#ip-copyright-headers).
+Copyright/License-statement may also be added to other files if considered relevant.
 
 ```
-# Copyright (c) XXXX Contributors to COVESA
+# Copyright (c) {year} Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
-```
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
+```
 Where XXXX is the year the file was originally created, no need to update or append new years or a range of years later.
 
 ### VSS Signals shall be generic
diff --git a/overlays/extensions/dual_wiper_systems.vspec b/overlays/extensions/dual_wiper_systems.vspec
index d310a74e6..b7b148f76 100644
--- a/overlays/extensions/dual_wiper_systems.vspec
+++ b/overlays/extensions/dual_wiper_systems.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2022 Contributors to COVESA
+# Copyright (c) 2022 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 # Overlay to extend wiper system to support multiple instances
 # Dependencies to other overlays: None
diff --git a/overlays/profiles/motorbike.vspec b/overlays/profiles/motorbike.vspec
index f45f108ff..3743853d0 100644
--- a/overlays/profiles/motorbike.vspec
+++ b/overlays/profiles/motorbike.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2022 Contributors to COVESA
+# Copyright (c) 2022 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 # This file contains adoptions to the main spec concering motorbikes.
 # It mainly addresses istantiation issues (e.g. wheels) and
diff --git a/spec/ADAS/ADAS.vspec b/spec/ADAS/ADAS.vspec
index f20cca3cc..b7f38793f 100644
--- a/spec/ADAS/ADAS.vspec
+++ b/spec/ADAS/ADAS.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # All Advanced Driver Assist System signals
diff --git a/spec/Body/Body.vspec b/spec/Body/Body.vspec
index 1d7e2f502..0b1981517 100644
--- a/spec/Body/Body.vspec
+++ b/spec/Body/Body.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # All body signals and attributes.
diff --git a/spec/Body/BrakeLights.vspec b/spec/Body/BrakeLights.vspec
index 212ce2146..b2943b527 100644
--- a/spec/Body/BrakeLights.vspec
+++ b/spec/Body/BrakeLights.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2022 Contributors to COVESA
+# Copyright (c) 2022 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 IsActive:
   datatype: string
diff --git a/spec/Body/ExteriorMirrors.vspec b/spec/Body/ExteriorMirrors.vspec
index 828e5eeb0..4dc198804 100644
--- a/spec/Body/ExteriorMirrors.vspec
+++ b/spec/Body/ExteriorMirrors.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # All exterior mirrors
diff --git a/spec/Body/SignalingLights.vspec b/spec/Body/SignalingLights.vspec
index 4067e9630..d8b39e602 100644
--- a/spec/Body/SignalingLights.vspec
+++ b/spec/Body/SignalingLights.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2022 Contributors to COVESA
+# Copyright (c) 2022 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 IsSignaling:
   datatype: boolean
diff --git a/spec/Body/StaticLights.vspec b/spec/Body/StaticLights.vspec
index 25d77f8bb..05a1b0962 100644
--- a/spec/Body/StaticLights.vspec
+++ b/spec/Body/StaticLights.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2022 Contributors to COVESA
+# Copyright (c) 2022 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 IsOn:
   datatype: boolean
diff --git a/spec/Body/WiperSystem.vspec b/spec/Body/WiperSystem.vspec
index a3f7d8067..7127da53c 100644
--- a/spec/Body/WiperSystem.vspec
+++ b/spec/Body/WiperSystem.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2022 Contributors to COVESA
+# Copyright (c) 2022 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 # This file describes signals for a wiper system interface, allowing movement for one or more wipers
 # to be controlled in great detail.
diff --git a/spec/Cabin/Cabin.vspec b/spec/Cabin/Cabin.vspec
index 910c28c5d..102bad528 100644
--- a/spec/Cabin/Cabin.vspec
+++ b/spec/Cabin/Cabin.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # All in-cabin originated signals and attributes
diff --git a/spec/Cabin/HVAC.vspec b/spec/Cabin/HVAC.vspec
index 6d76d4d0f..eed5c7df5 100644
--- a/spec/Cabin/HVAC.vspec
+++ b/spec/Cabin/HVAC.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # All HVAC-originated signals
diff --git a/spec/Cabin/Infotainment.vspec b/spec/Cabin/Infotainment.vspec
index 3cae19dab..4dcbb3006 100644
--- a/spec/Cabin/Infotainment.vspec
+++ b/spec/Cabin/Infotainment.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # In-Vehicle Infotainment Signals
diff --git a/spec/Cabin/InteriorLights.vspec b/spec/Cabin/InteriorLights.vspec
index e00718670..af0acdbb3 100644
--- a/spec/Cabin/InteriorLights.vspec
+++ b/spec/Cabin/InteriorLights.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # All interior lights and sensors
diff --git a/spec/Cabin/Occupant.vspec b/spec/Cabin/Occupant.vspec
index 2a9e9866c..1a496354f 100644
--- a/spec/Cabin/Occupant.vspec
+++ b/spec/Cabin/Occupant.vspec
@@ -1,7 +1,11 @@
-## Copyright (c) 2020 Contributors to COVESA
+# Copyright (c) 2020 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
+
 #
 # Occupant data
 #
diff --git a/spec/Cabin/SingleConfigurableLight.vspec b/spec/Cabin/SingleConfigurableLight.vspec
index dad1f6636..a2ad7b145 100644
--- a/spec/Cabin/SingleConfigurableLight.vspec
+++ b/spec/Cabin/SingleConfigurableLight.vspec
@@ -1,7 +1,11 @@
-## Copyright (c) 2023 Contributors to COVESA
+# Copyright (c) 2023 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
+
 
 #
 # Generic specification for a light whose color and brightness can be configured.
diff --git a/spec/Cabin/SingleDoor.vspec b/spec/Cabin/SingleDoor.vspec
index ac294fafe..97288b939 100644
--- a/spec/Cabin/SingleDoor.vspec
+++ b/spec/Cabin/SingleDoor.vspec
@@ -1,7 +1,11 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2023 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
+
 
 #
 # Definition of a single door. Start position for Door is Closed.
diff --git a/spec/Cabin/SingleHVACStation.vspec b/spec/Cabin/SingleHVACStation.vspec
index 99dd09158..7ee627a78 100644
--- a/spec/Cabin/SingleHVACStation.vspec
+++ b/spec/Cabin/SingleHVACStation.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # A single HVAC station in the vehicle.
diff --git a/spec/Cabin/SingleSeat.vspec b/spec/Cabin/SingleSeat.vspec
index 34e006a87..bac9e5f9b 100644
--- a/spec/Cabin/SingleSeat.vspec
+++ b/spec/Cabin/SingleSeat.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Seat signals
diff --git a/spec/Chassis/Chassis.vspec b/spec/Chassis/Chassis.vspec
index a96c964f3..f7c8825cd 100644
--- a/spec/Chassis/Chassis.vspec
+++ b/spec/Chassis/Chassis.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Chassis signals and attributes
diff --git a/spec/Chassis/Wheel.vspec b/spec/Chassis/Wheel.vspec
index 9e02dc3be..a04f79099 100644
--- a/spec/Chassis/Wheel.vspec
+++ b/spec/Chassis/Wheel.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Brake
diff --git a/spec/Driver/Driver.vspec b/spec/Driver/Driver.vspec
index 7d1791f84..bcef7fcc8 100644
--- a/spec/Driver/Driver.vspec
+++ b/spec/Driver/Driver.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2020 Contributors to COVESA
+# Copyright (c) 2020 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Driver data
diff --git a/spec/Identifier/Identifier.vspec b/spec/Identifier/Identifier.vspec
index a54058f5d..73e1e5c9f 100644
--- a/spec/Identifier/Identifier.vspec
+++ b/spec/Identifier/Identifier.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2020 Contributors to COVESA
+# Copyright (c) 2020 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Identifier
diff --git a/spec/OBD/OBD.vspec b/spec/OBD/OBD.vspec
index b2c254701..849d01117 100644
--- a/spec/OBD/OBD.vspec
+++ b/spec/OBD/OBD.vspec
@@ -1,8 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
-
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # On-Board Diagnostic (OBD) Signals
diff --git a/spec/Powertrain/CombustionEngine.vspec b/spec/Powertrain/CombustionEngine.vspec
index e8f7f8abf..c018accfd 100644
--- a/spec/Powertrain/CombustionEngine.vspec
+++ b/spec/Powertrain/CombustionEngine.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # ENGINE SPECIFICATION FILE
diff --git a/spec/Powertrain/ElectricMotor.vspec b/spec/Powertrain/ElectricMotor.vspec
index c5fed2eef..9d0e4523b 100644
--- a/spec/Powertrain/ElectricMotor.vspec
+++ b/spec/Powertrain/ElectricMotor.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # EV Motor signals and attributes
diff --git a/spec/Powertrain/FuelSystem.vspec b/spec/Powertrain/FuelSystem.vspec
index d1661fa86..ee345a3fb 100644
--- a/spec/Powertrain/FuelSystem.vspec
+++ b/spec/Powertrain/FuelSystem.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Fuel system for ICE / hybrids
diff --git a/spec/Powertrain/Powertrain.vspec b/spec/Powertrain/Powertrain.vspec
index 0746ae34c..8f8f6688a 100644
--- a/spec/Powertrain/Powertrain.vspec
+++ b/spec/Powertrain/Powertrain.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 AccumulatedBrakingEnergy:
   datatype: float
diff --git a/spec/Powertrain/TractionBattery.vspec b/spec/Powertrain/TractionBattery.vspec
index da2b71e7b..084b4e525 100644
--- a/spec/Powertrain/TractionBattery.vspec
+++ b/spec/Powertrain/TractionBattery.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Signals and attributes related to the traction battery in vehicles with electrical powertrain.
diff --git a/spec/Powertrain/Transmission.vspec b/spec/Powertrain/Transmission.vspec
index 7f0eabc07..ae59b2b1d 100644
--- a/spec/Powertrain/Transmission.vspec
+++ b/spec/Powertrain/Transmission.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # TRANSMISSION SPECIFICATION FILE
diff --git a/spec/Vehicle/Battery.vspec b/spec/Vehicle/Battery.vspec
index a26b89851..2dbc12f18 100644
--- a/spec/Vehicle/Battery.vspec
+++ b/spec/Vehicle/Battery.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2022 Contributors to COVESA
+# Copyright (c) 2022 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Signals and attributes related to the low voltage battery in Vehicles
diff --git a/spec/Vehicle/Connectivity.vspec b/spec/Vehicle/Connectivity.vspec
index 003153170..ef99d60fb 100644
--- a/spec/Vehicle/Connectivity.vspec
+++ b/spec/Vehicle/Connectivity.vspec
@@ -1,7 +1,11 @@
-## Copyright (c) 2022 Contributors to COVESA
+# Copyright (c) 2022 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
+
 #
 # Connectivity data
 #
diff --git a/spec/Vehicle/Exterior.vspec b/spec/Vehicle/Exterior.vspec
index 73282c31b..6e811550b 100644
--- a/spec/Vehicle/Exterior.vspec
+++ b/spec/Vehicle/Exterior.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2022 Contributors to COVESA
+# Copyright (c) 2022 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 AirTemperature:
   datatype: float
diff --git a/spec/Vehicle/Service.vspec b/spec/Vehicle/Service.vspec
index 2812e3497..652c6c9ab 100644
--- a/spec/Vehicle/Service.vspec
+++ b/spec/Vehicle/Service.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2021 Contributors to COVESA
+# Copyright (c) 2021 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Service data
diff --git a/spec/Vehicle/Vehicle.vspec b/spec/Vehicle/Vehicle.vspec
index 67b722529..5af54f708 100644
--- a/spec/Vehicle/Vehicle.vspec
+++ b/spec/Vehicle/Vehicle.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2016 Contributors to COVESA
+# Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Highlevel vehicle signals and attributes.
diff --git a/spec/VehicleSignalSpecification.vspec b/spec/VehicleSignalSpecification.vspec
index e1bd49df7..c24fc95ba 100644
--- a/spec/VehicleSignalSpecification.vspec
+++ b/spec/VehicleSignalSpecification.vspec
@@ -1,7 +1,10 @@
 # Copyright (c) 2016 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Root Vehicle Signal Specification file
diff --git a/spec/include/ItemHeatingCooling.vspec b/spec/include/ItemHeatingCooling.vspec
index be67f9f96..a394101d7 100644
--- a/spec/include/ItemHeatingCooling.vspec
+++ b/spec/include/ItemHeatingCooling.vspec
@@ -1,8 +1,10 @@
+# Copyright (c) 2023 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
 #
-
+# SPDX-License-Identifier: MPL-2.0
 
 HeatingCooling:
   datatype: int8
diff --git a/spec/include/LockableMovableItem.vspec b/spec/include/LockableMovableItem.vspec
index 1f189369a..484dd7017 100644
--- a/spec/include/LockableMovableItem.vspec
+++ b/spec/include/LockableMovableItem.vspec
@@ -1,11 +1,10 @@
+# Copyright (c) 2016 Contributors to COVESA
 #
-# (C) 2023 Robert Bosch GmbH
-# (C) 2018 Volvo Cars
-# (C) 2016 Jaguar Land Rover
-#
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
 #
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Add-on to MovableItems that also are lockable
diff --git a/spec/include/MovableItem.vspec b/spec/include/MovableItem.vspec
index 3ee09f5b9..555fd7589 100644
--- a/spec/include/MovableItem.vspec
+++ b/spec/include/MovableItem.vspec
@@ -1,10 +1,10 @@
+# Copyright (c) 2016 Contributors to COVESA
 #
-# (C) 2018 Volvo Cars
-# (C) 2016 Jaguar Land Rover
-#
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
 #
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Generic signals to control movable items such as door, sunroof, window, blind, etc.
diff --git a/spec/include/PowerOptimize.vspec b/spec/include/PowerOptimize.vspec
index acfac48d9..eec63ec9c 100644
--- a/spec/include/PowerOptimize.vspec
+++ b/spec/include/PowerOptimize.vspec
@@ -1,7 +1,10 @@
-## Copyright (c) 2023 Contributors to COVESA
+# Copyright (c) 2023 Contributors to COVESA
 #
-# All files and artifacts in this repository are licensed under the
-# provisions of the license provided by the LICENSE file in this repository.
+# This program and the accompanying materials are made available under the
+# terms of the Mozilla Public License 2.0 which is available at
+# https://www.mozilla.org/en-US/MPL/2.0/
+#
+# SPDX-License-Identifier: MPL-2.0
 
 #
 # Architectural Concept