3 min de lecture

Nouveautés

Des informations plus détaillées sur les changements dans chaque version peuvent être trouvées directement sur GitHub Releases.

v1.3.0

  • 🌐 PgArachne Explorer – PWA moderne: Refonte visuelle et fonctionnelle complète – thème sombre/clair (automatique), mise en page adaptative en cartes, coloration syntaxique JSON, bouton de copie dans le presse-papiers, meilleure UX d’authentification (onglets mot de passe/jeton), prise en charge de l’installation PWA (manifeste, icônes, service worker), liens partageables via le paramètre ?url=….
  • 🛠️ Support du Model Context Protocol (MCP): Nouvel endpoint /{prefix}/{db}/mcp avec les méthodes standards resources/list, resources/read, prompts/list, prompts/get – entièrement soutenu par les fonctions PostgreSQL et réutilisant l’authentification et la commutation de rôles existantes.
  • 🔧 Préfixe d’API configurable: La valeur par défaut a été changée en /db/{database}/jsonrpc et /db/{database}/sse. Les anciens chemins /api/… retournent désormais des redirections permanentes 307. Contrôlé par la nouvelle variable d’environnement API_PREFIX.
  • 🛡️ Protection d’idempotence: Champ optionnel idempotencyKey dans les requêtes JSON-RPC – détection automatique des doublons (HTTP 409 + code d’erreur en cas de collision) via pgarachne.save_idempotency_key().
  • 📚 Améliorations de la documentation: Nouvelle section /tools/ avec des cartes (Explorateur + future barre d’outils macOS), nouvelle page “Architectural Decisions”, SECURITY.md avec instructions pour signaler les vulnérabilités, meilleure typographie dans toutes les langues grâce à TypoLima, prise en charge améliorée de la page 404 pour GitHub Pages.
  • 📝 Renommage de la méthode de connexion: La méthode JSON-RPC login a été renommée en get_jwt (l’ancien nom reste comme alias obsolète avec avertissement dans les journaux).
  • 📊 Nettoyage de la journalisation: Lors de la journalisation dans un fichier, la console n’affiche que des informations minimales de démarrage → sortie plus propre dans les environnements de production/docker.

v1.2.0

  • 🛡️ Sécurité : La validation du token d’accès s’effectue avant d’établir une connexion à la base de données. Protection améliorée contre l’usurpation d’IP (ajout du paramètre TRUSTED_PROXIES) et dissimulation des erreurs internes de la base de données à l’utilisateur final.
  • 📊 Métriques isolées : L’endpoint Prometheus /metrics a été déplacé de l’API publique vers son propre port sécurisé (par défaut, disponible uniquement sur 127.0.0.1:9090).
  • 📦 Nouvelle option d’installation : Le projet dispose désormais d’un tap Homebrew officiel pour macOS et Linux. Les builds sont signés et générés via GoReleaser.
  • 📚 Documentation repensée : Un tout nouveau design basé sur le framework Hugo. Ajout d’une recherche plein texte ultra-rapide, de la copie de code et d’exemples de déploiement en production (Nginx hardening, BYO JWT).
  • ⚙️ Gestion du démon améliorée : Ajout de la prise en charge de la configuration personnalisée du chemin PID_FILE.

v1.1.0

  • 🔌 API unifiée : Appels via POST /api/<db> (la méthode appelée est spécifiée dans le corps JSON-RPC).
  • Notifications en temps réel : Nouvel endpoint GET /sse/<db>?channels=... pour écouter les événements de la base de données avec prise en charge multicanal.
  • 📈 Observabilité : Métriques Prometheus détaillées pour HTTP, auth, JSON-RPC et SSE.
  • 🏋️ Amélioration majeure de la stabilité : Protection contre les clients lents, délais d’attente stricts et nettoyage automatique des connexions.