diff --git a/.github/workflows/ci-linux.yml b/.github/workflows/ci-linux.yml
index 27f8183..4217a68 100644
--- a/.github/workflows/ci-linux.yml
+++ b/.github/workflows/ci-linux.yml
@@ -99,8 +99,12 @@ jobs:
- name: Headers checks
run: |
- cd galette-core/galette/plugins/plugin-oauth2
- ../../vendor/bin/docheader check lib ./*.php
+ cd galette-core
+ ./bin/console galette:headers:check \
+ --project-name="Galette OAuth2 plugin" \
+ --start-year="2021" \
+ --project-url="https://galette-community.github.io/plugin-oauth2/" \
+ --directory="galette/plugins/plugin-oauth2"
unit-tests:
runs-on: ubuntu-latest
diff --git a/_config.inc.php b/_config.inc.php
index fca5019..5fd0dac 100644
--- a/_config.inc.php
+++ b/_config.inc.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/_define.php b/_define.php
index 2bc0052..5eb3744 100644
--- a/_define.php
+++ b/_define.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/_dependencies.php b/_dependencies.php
index a71bc10..7c993a4 100644
--- a/_dependencies.php
+++ b/_dependencies.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/_routes.php b/_routes.php
index 892f16a..0588975 100644
--- a/_routes.php
+++ b/_routes.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/bin/release b/bin/release
index 46aa390..473d4e7 100755
--- a/bin/release
+++ b/bin/release
@@ -1,5 +1,11 @@
#!/usr/bin/python
+/**
+ * This file is part of Galette OAuth2 plugin (https://galette-community.github.io/plugin-oauth2/).
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
+ */
+
import os, sys, argparse, re, git, http.client, subprocess
import urlgrabber.progress, tarfile, shutil, gitdb, time, fnmatch
from datetime import datetime
diff --git a/bin/twig-cache b/bin/twig-cache
index 73c9a6e..1de93e7 100755
--- a/bin/twig-cache
+++ b/bin/twig-cache
@@ -1,6 +1,12 @@
#!/bin/php
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Authorization/UserAuthorizationException.php b/lib/GaletteOAuth2/Authorization/UserAuthorizationException.php
index a9747a1..3013b2f 100644
--- a/lib/GaletteOAuth2/Authorization/UserAuthorizationException.php
+++ b/lib/GaletteOAuth2/Authorization/UserAuthorizationException.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Authorization/UserHelper.php b/lib/GaletteOAuth2/Authorization/UserHelper.php
index fabca6c..2de504a 100644
--- a/lib/GaletteOAuth2/Authorization/UserHelper.php
+++ b/lib/GaletteOAuth2/Authorization/UserHelper.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Controllers/ApiController.php b/lib/GaletteOAuth2/Controllers/ApiController.php
index 2ec73f0..6ce0afc 100755
--- a/lib/GaletteOAuth2/Controllers/ApiController.php
+++ b/lib/GaletteOAuth2/Controllers/ApiController.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Controllers/AuthorizationController.php b/lib/GaletteOAuth2/Controllers/AuthorizationController.php
index 075fcb9..b381aaa 100755
--- a/lib/GaletteOAuth2/Controllers/AuthorizationController.php
+++ b/lib/GaletteOAuth2/Controllers/AuthorizationController.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Controllers/LoginController.php b/lib/GaletteOAuth2/Controllers/LoginController.php
index 39adeca..bfb0002 100755
--- a/lib/GaletteOAuth2/Controllers/LoginController.php
+++ b/lib/GaletteOAuth2/Controllers/LoginController.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Entities/AccessTokenEntity.php b/lib/GaletteOAuth2/Entities/AccessTokenEntity.php
index 2b5f310..8b87dbd 100755
--- a/lib/GaletteOAuth2/Entities/AccessTokenEntity.php
+++ b/lib/GaletteOAuth2/Entities/AccessTokenEntity.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Entities/AuthCodeEntity.php b/lib/GaletteOAuth2/Entities/AuthCodeEntity.php
index 234748d..b0544b1 100755
--- a/lib/GaletteOAuth2/Entities/AuthCodeEntity.php
+++ b/lib/GaletteOAuth2/Entities/AuthCodeEntity.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Entities/ClientEntity.php b/lib/GaletteOAuth2/Entities/ClientEntity.php
index 936f70a..44e8756 100755
--- a/lib/GaletteOAuth2/Entities/ClientEntity.php
+++ b/lib/GaletteOAuth2/Entities/ClientEntity.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Entities/RefreshTokenEntity.php b/lib/GaletteOAuth2/Entities/RefreshTokenEntity.php
index 722460f..93a175a 100755
--- a/lib/GaletteOAuth2/Entities/RefreshTokenEntity.php
+++ b/lib/GaletteOAuth2/Entities/RefreshTokenEntity.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Entities/ScopeEntity.php b/lib/GaletteOAuth2/Entities/ScopeEntity.php
index b2bcdad..4570daa 100755
--- a/lib/GaletteOAuth2/Entities/ScopeEntity.php
+++ b/lib/GaletteOAuth2/Entities/ScopeEntity.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Entities/UserEntity.php b/lib/GaletteOAuth2/Entities/UserEntity.php
index f66044e..4ddbc39 100755
--- a/lib/GaletteOAuth2/Entities/UserEntity.php
+++ b/lib/GaletteOAuth2/Entities/UserEntity.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Middleware/Authentication.php b/lib/GaletteOAuth2/Middleware/Authentication.php
index e70b231..748586b 100755
--- a/lib/GaletteOAuth2/Middleware/Authentication.php
+++ b/lib/GaletteOAuth2/Middleware/Authentication.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/PluginGaletteOauth2.php b/lib/GaletteOAuth2/PluginGaletteOauth2.php
index 2e8d9df..217c990 100644
--- a/lib/GaletteOAuth2/PluginGaletteOauth2.php
+++ b/lib/GaletteOAuth2/PluginGaletteOauth2.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Repositories/AccessTokenRepository.php b/lib/GaletteOAuth2/Repositories/AccessTokenRepository.php
index 705b036..bf96680 100755
--- a/lib/GaletteOAuth2/Repositories/AccessTokenRepository.php
+++ b/lib/GaletteOAuth2/Repositories/AccessTokenRepository.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Repositories/AuthCodeRepository.php b/lib/GaletteOAuth2/Repositories/AuthCodeRepository.php
index 8d13ebb..c4a41df 100755
--- a/lib/GaletteOAuth2/Repositories/AuthCodeRepository.php
+++ b/lib/GaletteOAuth2/Repositories/AuthCodeRepository.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Repositories/ClientRepository.php b/lib/GaletteOAuth2/Repositories/ClientRepository.php
index 1084f6e..2f83b0a 100755
--- a/lib/GaletteOAuth2/Repositories/ClientRepository.php
+++ b/lib/GaletteOAuth2/Repositories/ClientRepository.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Repositories/RefreshTokenRepository.php b/lib/GaletteOAuth2/Repositories/RefreshTokenRepository.php
index d876dd7..1fefe81 100755
--- a/lib/GaletteOAuth2/Repositories/RefreshTokenRepository.php
+++ b/lib/GaletteOAuth2/Repositories/RefreshTokenRepository.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Repositories/ScopeRepository.php b/lib/GaletteOAuth2/Repositories/ScopeRepository.php
index 6f84aca..20cf0e6 100755
--- a/lib/GaletteOAuth2/Repositories/ScopeRepository.php
+++ b/lib/GaletteOAuth2/Repositories/ScopeRepository.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Repositories/UserRepository.php b/lib/GaletteOAuth2/Repositories/UserRepository.php
index f3a48b3..7d87321 100755
--- a/lib/GaletteOAuth2/Repositories/UserRepository.php
+++ b/lib/GaletteOAuth2/Repositories/UserRepository.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Tools/Config.php b/lib/GaletteOAuth2/Tools/Config.php
index 5d41749..ecefdd2 100644
--- a/lib/GaletteOAuth2/Tools/Config.php
+++ b/lib/GaletteOAuth2/Tools/Config.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/lib/GaletteOAuth2/Tools/Debug.php b/lib/GaletteOAuth2/Tools/Debug.php
index 50a99b2..88854ed 100644
--- a/lib/GaletteOAuth2/Tools/Debug.php
+++ b/lib/GaletteOAuth2/Tools/Debug.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
declare(strict_types=1);
diff --git a/templates/default/oauth2_authorize.html.twig b/templates/default/oauth2_authorize.html.twig
index ee0d9fc..cab0d0a 100755
--- a/templates/default/oauth2_authorize.html.twig
+++ b/templates/default/oauth2_authorize.html.twig
@@ -1,3 +1,9 @@
+{#
+ # This file is part of Galette OAuth2 plugin (https://galette-community.github.io/plugin-oauth2/).
+ # SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ # SPDX-License-Identifier: GPL-3.0-or-later
+ #}
+
{% extends "public_page.html.twig" %}
{% set ext_auth = true %}
diff --git a/templates/default/oauth2_error.html.twig b/templates/default/oauth2_error.html.twig
index 97292ce..b139923 100644
--- a/templates/default/oauth2_error.html.twig
+++ b/templates/default/oauth2_error.html.twig
@@ -1,23 +1,9 @@
{#
-/**
- * Copyright © 2021-2026 The Galette Team
- *
- * This file is part of Galette OAuth2 plugin (https://galette-community.github.io/plugin-oauth2/).
- *
- * Galette is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * Galette is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with Galette OAuth2 plugin. If not, see .
- */
-#}
+ # This file is part of Galette OAuth2 plugin (https://galette-community.github.io/plugin-oauth2/).
+ # SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ # SPDX-License-Identifier: GPL-3.0-or-later
+ #}
+
{% extends "public_page.html.twig" %}
{% set ext_auth = true %}
diff --git a/templates/default/oauth2_login.html.twig b/templates/default/oauth2_login.html.twig
index 861726a..7654615 100644
--- a/templates/default/oauth2_login.html.twig
+++ b/templates/default/oauth2_login.html.twig
@@ -1,3 +1,9 @@
+{#
+ # This file is part of Galette OAuth2 plugin (https://galette-community.github.io/plugin-oauth2/).
+ # SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ # SPDX-License-Identifier: GPL-3.0-or-later
+ #}
+
{% extends "pages/index.html.twig" %}
{% set ext_auth = true %}
diff --git a/tests/GaletteOAuth2/Authorization/tests/units/UserHelper.php b/tests/GaletteOAuth2/Authorization/tests/units/UserHelper.php
index 5bcc0c9..d3e5192 100644
--- a/tests/GaletteOAuth2/Authorization/tests/units/UserHelper.php
+++ b/tests/GaletteOAuth2/Authorization/tests/units/UserHelper.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
namespace GaletteOauth2\Authorization\tests\units;
diff --git a/tests/GaletteOAuth2/Controllers/tests/units/LoginController.php b/tests/GaletteOAuth2/Controllers/tests/units/LoginController.php
index 86c7611..c293e67 100644
--- a/tests/GaletteOAuth2/Controllers/tests/units/LoginController.php
+++ b/tests/GaletteOAuth2/Controllers/tests/units/LoginController.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
namespace GaletteOAuth2\Controllers\tests\units;
diff --git a/tests/GaletteOAuth2/GaletteOAuth2.php b/tests/GaletteOAuth2/GaletteOAuth2.php
index 145c195..5111ebe 100644
--- a/tests/GaletteOAuth2/GaletteOAuth2.php
+++ b/tests/GaletteOAuth2/GaletteOAuth2.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
namespace GaletteOAuth2;
diff --git a/tests/GaletteOAuth2/Repositories/tests/units/ClientRepository.php b/tests/GaletteOAuth2/Repositories/tests/units/ClientRepository.php
index 0832d81..2a40cdd 100644
--- a/tests/GaletteOAuth2/Repositories/tests/units/ClientRepository.php
+++ b/tests/GaletteOAuth2/Repositories/tests/units/ClientRepository.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
namespace GaletteOAuth2\Repositories\tests\units;
diff --git a/tests/TestsBootstrap.php b/tests/TestsBootstrap.php
index 30662fc..1f5aad7 100644
--- a/tests/TestsBootstrap.php
+++ b/tests/TestsBootstrap.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
/**
diff --git a/tests/e2e/specs/oauth2-flow.spec.ts b/tests/e2e/specs/oauth2-flow.spec.ts
index 01dd246..9360237 100644
--- a/tests/e2e/specs/oauth2-flow.spec.ts
+++ b/tests/e2e/specs/oauth2-flow.spec.ts
@@ -1,22 +1,7 @@
-/*!
- * Copyright © 2021-2026 The Galette Team
- *
+/**
* This file is part of Galette OAuth2 plugin (https://galette-community.github.io/plugin-oauth2/).
- *
- * Galette is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * Galette is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with Galette OAuth2 plugin. If not, see .
- *
- * @author Johan Cwiklinski
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
import { test as base, expect } from '@playwright/test';
diff --git a/tests/router.php b/tests/router.php
index 8838755..cdc8e1e 100644
--- a/tests/router.php
+++ b/tests/router.php
@@ -1,22 +1,9 @@
.
+ * SPDX-FileCopyrightText: Copyright © 2021-2026 The Galette Team
+ * SPDX-License-Identifier: GPL-3.0-or-later
*/
/**