• v1.2.0 b9f9c47c59

    NoBaSe 1.2.0
    All checks were successful
    Intégration continue / ci (push) Successful in 38s
    nobase/tests 338 vérification(s) réussie(s), 0 échec(s) ; NON EXÉCUTÉ : mobile : navigateur headless inutilisable sur cet hôte : ERREUR (environnement de test) : bibliothèques système manquantes pour chrome-headless-shell : libatk-
    Publication d'une version / release (push) Successful in 44s
    Stable

    jlequen released this 2026-10-09 20:22:54 +00:00 | 39 commits to main since this release

    Nouveau

    • Bilan de santé sur le tableau de bord : un voyant et, pour chaque point à traiter
      (sauvegarde, mise à jour, scan, HTTPS, double authentification, indexation, attaques), une
      phrase « Que faire ? » et un bouton vers la bonne page. Chacun ne voit que ce que ses rôles
      permettent (GET /api/health).
    • Assistant de premier démarrage (nom du site, langues, double authentification, première
      sauvegarde) et visite guidée, relançables depuis le menu du compte.
    • Aide « ? » sur chaque page et guide utilisateur pour débutant, lisible dans le back-office.
    • Tests automatiques avant chaque publication : installation, refus d'accès par rôle, mise à
      jour signée de bout en bout (et refus des paquets altérés), affichage mobile (make test).

    Modifié

    • Mises à jour : une carte claire (« à jour », « disponible — Installer », « installée —
      tout fonctionne ? ») ; les détails techniques et options avancées sont repliés. « Installer »
      enchaîne téléchargement, vérification et installation quand rien ne demande de décision.
    • Sécurité, Réglages système, Sauvegardes : résumé en tête de page et langage courant ;
      détails techniques repliés, aucun réglage retiré.

    Fichier Taille SHA-256
    nobase-1.2.0.zip 0.96 Mo 151b227b0dab3c406b1b4195076f4413cb995313c93e1fc5516c4acbbcbeb154
    nobase-update-1.2.0.zip 0.78 Mo 8a2445a02306c93bb051c501dde350868e1517bb9e1124a5375f8027c3d78c7f
    • nobase-1.2.0.zip : paquet d'installation public, sans jeton (créez le vôtre : php app/cli/install.php --new-token, ou voir INSTALLATION.txt).
    • nobase-update-1.2.0.zip : paquet de mise à jour signé (Ed25519 + ECDSA P-256), installé depuis le back-office (Mises à jour) ou par le canal latest.json de la branche updates.
    • Signé par la clé cccd09dc81ef2c61 — empreinte SHA-256 cccd09dc81ef2c6173538eaf923ea4463eee78491c4a48cf622645e2658ff875 (comparez avec www/app/update-keys.json).
    • Construit et signé automatiquement par la forge (exécution n° 26, commit b9f9c47c5924).
    Downloads
  • v1.1.2 a182c340be

    NoBaSe 1.1.2
    All checks were successful
    Intégration continue / ci (push) Successful in 23s
    Publication d'une version / release (push) Successful in 24s
    Stable

    jlequen released this 2026-10-09 19:29:45 +00:00 | 50 commits to main since this release

    Corrigé

    • Back-office sur mobile : les pastilles longues (ex. mode « Avec validation » de la page
      Mises à jour) passaient sur une seule ligne et faisaient déborder la page horizontalement ;
      elles reviennent désormais à la ligne sur les petits écrans.
    • Page Mises à jour : l'identifiant d'une clé de confiance était collé à sa date.

    Fichier Taille SHA-256
    nobase-1.1.2.zip 0.88 Mo 1fb6b414da31ad1a9143108b5d2f4ad7b3bfda9bd9e81e570d0c6a9c6f16e46d
    nobase-update-1.1.2.zip 0.71 Mo 3c6503eaad8b969ed2044a3b9afffcce26552ba992f0491e5ae669e405f8b453
    • nobase-1.1.2.zip : paquet d'installation public, sans jeton (créez le vôtre : php app/cli/install.php --new-token, ou voir INSTALLATION.txt).
    • nobase-update-1.1.2.zip : paquet de mise à jour signé (Ed25519 + ECDSA P-256), installé depuis le back-office (Mises à jour) ou par le canal latest.json de la branche updates.
    • Signé par la clé cccd09dc81ef2c61 — empreinte SHA-256 cccd09dc81ef2c6173538eaf923ea4463eee78491c4a48cf622645e2658ff875 (comparez avec www/app/update-keys.json).
    • Construit et signé automatiquement par la forge (exécution n° 22, commit a182c340be79).
    Downloads
  • v1.1.1 04c17c746c

    NoBaSe 1.1.1
    All checks were successful
    Intégration continue / ci (push) Successful in 17s
    Publication d'une version / release (push) Successful in 23s
    Stable

    jlequen released this 2026-10-09 19:12:09 +00:00 | 51 commits to main since this release

    Corrigé

    • Une installation réussie restait « à valider » et bloquait toute nouvelle mise à jour tant
      que l'administrateur n'avait pas cliqué sur « Valider », qui exigeait la double
      authentification. « Valider » ne demande plus que le droit updates (l'action supprime
      seulement la copie de secours de l'ancienne version), et le téléchargement d'une nouvelle
      version du canal valide d'office l'installation précédente.

    Fichier Taille SHA-256
    nobase-1.1.1.zip 0.88 Mo 664cc8d112987d44914bb2e90cef09a45008e7900eedb93ccf025dadfa3f2ace
    nobase-update-1.1.1.zip 0.71 Mo f8e3e431848d660f957df44d633d601658860463ae9608a3dff133ea918a43ce
    • nobase-1.1.1.zip : paquet d'installation public, sans jeton (créez le vôtre : php app/cli/install.php --new-token, ou voir INSTALLATION.txt).
    • nobase-update-1.1.1.zip : paquet de mise à jour signé (Ed25519 + ECDSA P-256), installé depuis le back-office (Mises à jour) ou par le canal latest.json de la branche updates.
    • Signé par la clé cccd09dc81ef2c61 — empreinte SHA-256 cccd09dc81ef2c6173538eaf923ea4463eee78491c4a48cf622645e2658ff875 (comparez avec www/app/update-keys.json).
    • Construit et signé automatiquement par la forge (exécution n° 20, commit 04c17c746c40).
    Downloads
  • v1.1.0 f7b9e981c6

    NoBaSe 1.1.0
    All checks were successful
    Intégration continue / ci (push) Successful in 18s
    Publication d'une version / release (push) Successful in 27s
    Stable

    jlequen released this 2026-10-09 19:08:02 +00:00 | 52 commits to main since this release

    Français

    • Plus aucun réglage par fichier : nouvelle page Réglages système. Adresse publique, hôtes
      autorisés, HTTPS imposé, non-indexation et accès au site imposés, canal, mode et heures de
      mise à jour, clés révoquées, import de thèmes, reverse proxy (proxys de confiance, en-têtes,
      en-tête d'IP d'un CDN), durées de session, cache des pages, services push supplémentaires,
      restauration d'archives étrangères et tailles maximales se règlent dans le back-office
      (data/system.json), avec valeurs par défaut et aide (français et anglais).
    • Protection maximale : nouveau droit system (rôle Administrateur), double authentification
      activée et confirmation d'identité exigées, journal d'audit avant → après, alerte immédiate
      « Réglages système modifiés » (e-mail et push). Refus de toute valeur qui couperait l'accès :
      hôte de la page absent des hôtes autorisés, HTTPS imposé depuis une page en HTTP, adresse
      publique non https:// ou hôte non autorisé, proxy trop large, canal invalide.
    • app/config.local.php et les variables CMS_* deviennent des surcharges de secours
      facultatives (elles priment et s'affichent en lecture seule, avec leur source ; bouton
      « Reprendre la valeur imposée ici »). Procédure de secours documentée : déposer
      config.local.php ou supprimer data/system.json par FTP.
    • Migration automatique au premier démarrage : les valeurs reconnues de
      app/config.local.php (et l'adresse confirmée à l'installation) sont reprises dans
      data/system.json, le mode de mise à jour dans le réglage du back-office, sans aucun secret ;
      un bandeau (Réglages système et tableau de bord) indique que le fichier peut être supprimé et
      ce qu'il impose encore. Un config.local.php invalide est ignoré au lieu de bloquer le site
      ou une mise à jour.
    • Installation guidée : les hôtes autorisés sont demandés avec l'adresse publique et enregistrés
      dans data/system.json — plus aucun fichier de configuration à créer.
    • data/system.json est sauvegardé mais jamais repris d'une archive restaurée (réglages propres
      au serveur).

    English

    • No more file-based settings: new System settings page. Public address, allowed hosts,
      enforced HTTPS, enforced no-indexing and site access, update channel, mode and hours, revoked
      keys, theme import, reverse proxy (trusted proxies, headers, CDN IP header), session lifetimes,
      page cache, extra push services, foreign archive restoration and size limits are set in the
      back office (data/system.json), with defaults and help (French and English).
    • Maximum protection: new system permission (Administrator role), two-factor
      authentication and identity confirmation required, before → after audit log, immediate
      “System settings changed” alert (e-mail and push). Any value that would lock you out is
      refused.
    • app/config.local.php and CMS_* variables become optional rescue overrides (they take
      precedence and are shown read-only with their source).
    • Automatic migration on first start: recognised values of app/config.local.php are copied
      to data/system.json (no secrets); a banner says the file can be deleted and lists what it
      still enforces. An invalid config.local.php is ignored instead of breaking the site or an
      update.
    • Guided installation asks for the allowed hosts and stores them in data/system.json.
    • data/system.json is backed up but never taken from a restored archive.

    Fichier Taille SHA-256
    nobase-1.1.0.zip 0.88 Mo 0839cd63bb9189a7053fb5177d52db35016e3bd2c5dfe2d86eb1bc3f29c4eada
    nobase-update-1.1.0.zip 0.71 Mo ce949337a12afb81b6928f4ea4d2bf833412f067f8f56f3df1b7218b27e0b07a
    • nobase-1.1.0.zip : paquet d'installation public, sans jeton (créez le vôtre : php app/cli/install.php --new-token, ou voir INSTALLATION.txt).
    • nobase-update-1.1.0.zip : paquet de mise à jour signé (Ed25519 + ECDSA P-256), installé depuis le back-office (Mises à jour) ou par le canal latest.json de la branche updates.
    • Signé par la clé cccd09dc81ef2c61 — empreinte SHA-256 cccd09dc81ef2c6173538eaf923ea4463eee78491c4a48cf622645e2658ff875 (comparez avec www/app/update-keys.json).
    • Construit et signé automatiquement par la forge (exécution n° 18, commit f7b9e981c632).
    Downloads
  • v1.0.5 f6030cf7f4

    NoBaSe 1.0.5
    All checks were successful
    Intégration continue / ci (push) Successful in 17s
    Publication d'une version / release (push) Successful in 23s
    Stable

    jlequen released this 2026-10-09 18:39:46 +00:00 | 53 commits to main since this release

    Divers

    • Version de contrôle de la validation par l'administrateur sans double authentification
      (aucun changement fonctionnel).

    Fichier Taille SHA-256
    nobase-1.0.5.zip 0.85 Mo 97a0423007959c0d5f13b12484fee84cb87c5d2f496ce5494b8ded0a26b75ebf
    nobase-update-1.0.5.zip 0.68 Mo c4b8085e58bda3dca4878c24b7f496f700c4988c844e2483a0db7824fde0fb86
    • nobase-1.0.5.zip : paquet d'installation public, sans jeton (créez le vôtre : php app/cli/install.php --new-token, ou voir INSTALLATION.txt).
    • nobase-update-1.0.5.zip : paquet de mise à jour signé (Ed25519 + ECDSA P-256), installé depuis le back-office (Mises à jour) ou par le canal latest.json de la branche updates.
    • Signé par la clé cccd09dc81ef2c61 — empreinte SHA-256 cccd09dc81ef2c6173538eaf923ea4463eee78491c4a48cf622645e2658ff875 (comparez avec www/app/update-keys.json).
    • Construit et signé automatiquement par la forge (exécution n° 16, commit f6030cf7f42d).
    Downloads
  • v1.0.4 a375d7577d

    NoBaSe 1.0.4
    All checks were successful
    Intégration continue / ci (push) Successful in 20s
    Publication d'une version / release (push) Successful in 23s
    Stable

    jlequen released this 2026-10-09 18:38:06 +00:00 | 54 commits to main since this release

    Modifié

    • Mode « validation par l'administrateur » : télécharger et installer une version du canal
      de confiance, signée, entièrement vérifiée et plus récente que la version installée ne
      demande plus que le droit updates (sans double authentification) : la signature est la
      garantie. La 2FA reste exigée pour un paquet téléversé, un retour en arrière, une version
      forcée et les réglages des mises à jour.

    Fichier Taille SHA-256
    nobase-1.0.4.zip 0.85 Mo 9478b66a1629c39d5feec9a59c155291280ab196ee6b7b92364a668949b9a99d
    nobase-update-1.0.4.zip 0.68 Mo 6e252f25b68340380fa0687c7c70c19e975d8fc506e7633635447fbc5d9b298b
    • nobase-1.0.4.zip : paquet d'installation public, sans jeton (créez le vôtre : php app/cli/install.php --new-token, ou voir INSTALLATION.txt).
    • nobase-update-1.0.4.zip : paquet de mise à jour signé (Ed25519 + ECDSA P-256), installé depuis le back-office (Mises à jour) ou par le canal latest.json de la branche updates.
    • Signé par la clé cccd09dc81ef2c61 — empreinte SHA-256 cccd09dc81ef2c6173538eaf923ea4463eee78491c4a48cf622645e2658ff875 (comparez avec www/app/update-keys.json).
    • Construit et signé automatiquement par la forge (exécution n° 14, commit a375d7577d4e).
    Downloads
  • v1.0.3 49b5b8b74a

    NoBaSe 1.0.3
    All checks were successful
    Intégration continue / ci (push) Successful in 17s
    Publication d'une version / release (push) Successful in 22s
    Stable

    jlequen released this 2026-10-09 18:36:18 +00:00 | 55 commits to main since this release

    Divers

    • Version de contrôle du mécanisme de mise à jour (aucun changement fonctionnel) : permet de
      vérifier de bout en bout la détection, la vérification, la validation et l'installation.

    Fichier Taille SHA-256
    nobase-1.0.3.zip 0.85 Mo b3132d2717e9099b80414c13d4da936fc875b39b4515f94aabf3617a8edbde6b
    nobase-update-1.0.3.zip 0.68 Mo ee8090e146ed35f10a2091c3b585740c85a5dc986813530ada2b7c43e4feb508
    • nobase-1.0.3.zip : paquet d'installation public, sans jeton (créez le vôtre : php app/cli/install.php --new-token, ou voir INSTALLATION.txt).
    • nobase-update-1.0.3.zip : paquet de mise à jour signé (Ed25519 + ECDSA P-256), installé depuis le back-office (Mises à jour) ou par le canal latest.json de la branche updates.
    • Signé par la clé cccd09dc81ef2c61 — empreinte SHA-256 cccd09dc81ef2c6173538eaf923ea4463eee78491c4a48cf622645e2658ff875 (comparez avec www/app/update-keys.json).
    • Construit et signé automatiquement par la forge (exécution n° 12, commit 49b5b8b74a0f).
    Downloads
  • v1.0.2 515290ce6b

    NoBaSe 1.0.2
    All checks were successful
    Intégration continue / ci (push) Successful in 23s
    Publication d'une version / release (push) Successful in 25s
    Stable

    jlequen released this 2026-10-09 18:32:37 +00:00 | 56 commits to main since this release

    Corrigé

    • Page Mises à jour : « Vérifier » (consultation du canal, sans téléchargement ni installation)
      n'exige plus la double authentification ni la confirmation d'identité ; seul le droit
      updates est requis. Installation, retour arrière et réglages restent protégés par la 2FA.

    Fichier Taille SHA-256
    nobase-1.0.2.zip 0.85 Mo 1f1baee32def6dcbc5efd9610326d6b990118136632e22ac6f52dfd7063e385b
    nobase-update-1.0.2.zip 0.68 Mo ab8faafcdcc2c3662c9818ef3f400c25de83ba9f4b9c644ebc7c834cb3ad60cf
    • nobase-1.0.2.zip : paquet d'installation public, sans jeton (créez le vôtre : php app/cli/install.php --new-token, ou voir INSTALLATION.txt).
    • nobase-update-1.0.2.zip : paquet de mise à jour signé (Ed25519 + ECDSA P-256), installé depuis le back-office (Mises à jour) ou par le canal latest.json de la branche updates.
    • Signé par la clé cccd09dc81ef2c61 — empreinte SHA-256 cccd09dc81ef2c6173538eaf923ea4463eee78491c4a48cf622645e2658ff875 (comparez avec www/app/update-keys.json).
    • Construit et signé automatiquement par la forge (exécution n° 10, commit 515290ce6b49).
    Downloads
  • v1.0.1 a8d4a45dd2

    NoBaSe 1.0.1
    All checks were successful
    Intégration continue / ci (push) Successful in 17s
    Publication d'une version / release (push) Successful in 28s
    Stable

    jlequen released this 2026-10-09 17:28:36 +00:00 | 57 commits to main since this release

    Français

    • Mises à jour automatiques. Nouveau réglage du serveur 'update_auto' (CMS_UPDATE_AUTO) à
      quatre valeurs, qui prime sur le back-office (affiché alors en lecture seule) :
      approve (par défaut : chaque nouvelle version est détectée, téléchargée et entièrement
      vérifiée automatiquement, puis une alerte demande de la valider ; installation d'un clic avec
      double authentification ; rappel au bout de 7 jours), security (correctifs de sécurité
      installés automatiquement), all (toute nouvelle version de même version majeure installée
      automatiquement dès sa sortie, sans connexion au back-office) et off.
    • Jamais de version majeure automatique (alerte « intervention requise »), jamais de retour
      arrière, rien si la version installée est inconnue ; aller directement à la dernière version
      compatible (ou par étapes selon min_from) ; une version en échec (retour automatique) n'est
      plus retentée sans action manuelle (« Réessayer automatiquement »).
    • Heures creuses facultatives ('update_hours' => [3, 6], CMS_UPDATE_HOURS), avec repli après
      48 h d'attente ; canal consulté environ toutes les heures dès qu'un mode automatique est actif.
    • Page Mises à jour : mode actif et sa source, prochaine vérification, dernière opération
      automatique, versions en attente et pourquoi.
    • Les sites en 1.0.0 doivent installer cette version une première fois pour bénéficier de ces modes.

    English

    • Automatic updates. New server setting 'update_auto' (CMS_UPDATE_AUTO) with four values,
      which overrides the back office (then shown read-only): approve (default: each new version
      is detected, downloaded and fully verified automatically, then an alert asks for approval;
      one-click installation with two-factor authentication; reminder after 7 days), security
      (security fixes installed automatically), all (any new version with the same major version
      installed automatically as soon as it is released, without logging in) and off.
    • Never an automatic major version (“action required” alert), never a downgrade, nothing if the
      installed version is unknown; straight to the latest compatible version (or in steps according
      to min_from); a failed version (automatic rollback) is not retried without manual action
      (“Retry automatically”).
    • Optional off-peak hours ('update_hours' => [3, 6], CMS_UPDATE_HOURS), with a fallback after
      48 h of waiting; the channel is checked about every hour when an automatic mode is active.
    • Updates page: active mode and its source, next check, last automatic operation, pending versions
      and why.
    • Websites on 1.0.0 must install this version once to benefit from these modes.

    Fichier Taille SHA-256
    nobase-1.0.1.zip 0.85 Mo 88353876338eecc1a077cbed6820f7502287b67a3468e2d811c49458509c1022
    nobase-update-1.0.1.zip 0.68 Mo a52832242ea0dff90b2ea78ec83fa376d7b3008fceef76c9410cf46309b8611f
    • nobase-1.0.1.zip : paquet d'installation public, sans jeton (créez le vôtre : php app/cli/install.php --new-token, ou voir INSTALLATION.txt).
    • nobase-update-1.0.1.zip : paquet de mise à jour signé (Ed25519 + ECDSA P-256), installé depuis le back-office (Mises à jour) ou par le canal latest.json de la branche updates.
    • Signé par la clé cccd09dc81ef2c61 — empreinte SHA-256 cccd09dc81ef2c6173538eaf923ea4463eee78491c4a48cf622645e2658ff875 (comparez avec www/app/update-keys.json).
    • Construit et signé automatiquement par la forge (exécution n° 8, commit a8d4a45dd275).
    Downloads
  • v1.0.0 c284c4405c

    NoBaSe 1.0.0
    All checks were successful
    Intégration continue / ci (push) Successful in 17s
    Publication d'une version / release (push) Successful in 26s
    Stable

    jlequen released this 2026-10-09 17:06:13 +00:00 | 58 commits to main since this release

    Français

    • Première version publique de NoBaSe : CMS PHP à fichiers plats, back-office Svelte,
      installation guidée /install, sauvegardes et restauration, mises à jour signées
      (Ed25519 + ECDSA P-256) depuis le back-office.
    • Publication automatique par la forge : une étiquette vX.Y.Z construit, vérifie, signe et
      publie la version.

    English

    • First public release of NoBaSe: flat-file PHP CMS, Svelte back office, guided installation
      /install, backups and restore, signed updates (Ed25519 + ECDSA P-256) from the back office.
    • Automatic publishing by the forge: a vX.Y.Z tag builds, checks, signs and publishes the release.

    Fichier Taille SHA-256
    nobase-1.0.0.zip 0.83 Mo ae7e89c47fd7ad36b303d3847342f44f144e1abecfe06e92396823c523ac0edc
    nobase-update-1.0.0.zip 0.67 Mo cc142f2deb9948d0d39ffcf6e251ce443b957591e2da154c0fd18081fb48971b
    • nobase-1.0.0.zip : paquet d'installation public, sans jeton (créez le vôtre : php app/cli/install.php --new-token, ou voir INSTALLATION.txt).
    • nobase-update-1.0.0.zip : paquet de mise à jour signé (Ed25519 + ECDSA P-256), installé depuis le back-office (Mises à jour) ou par le canal latest.json de la branche updates.
    • Signé par la clé cccd09dc81ef2c61 — empreinte SHA-256 cccd09dc81ef2c6173538eaf923ea4463eee78491c4a48cf622645e2658ff875 (comparez avec www/app/update-keys.json).
    • Construit et signé automatiquement par la forge (exécution n° 6, commit c284c4405cd9).
    Downloads