Compare commits

...
2 Commits
Author SHA1 Message Date
bruno 6257adb46b fix: CI security — bandit B112 sur search_shared_notes (nosec, continue délibéré)
CI / lint (push) Successful in 3m9s
CI / security (push) Successful in 1m56s
CI / test (push) Successful in 5m13s
CI / build (push) Successful in 1m47s
CI / e2e (push) Successful in 18m17s
2026-10-14 13:43:26 -04:00
bruno 31a0ab5b70 fix: config Clés API & MCP — wrap des champs de création au lieu du débordement desktop
CI / lint (push) Successful in 3m10s
CI / security (push) Failing after 1m51s
CI / test (push) Successful in 5m12s
CI / build (push) Successful in 1m48s
CI / e2e (push) Successful in 18m15s
2026-10-14 12:09:08 -04:00
11 changed files with 48 additions and 15 deletions
+31 -1
View File
@@ -6,7 +6,7 @@ Format basé sur [Keep a Changelog](https://keepachangelog.com/fr/1.1.0/),
et [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
> **En cours de développement** : les changements à venir sont listés dans la section
> [Unreleased](#unreleased). La dernière version livrée est **2.68.0**.
> [Unreleased](#unreleased). La dernière version livrée est **2.68.2**.
---
@@ -14,6 +14,36 @@ et [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
---
## [2.68.2] — 2026-10-14
### Corrigé
- **CI security — bandit bloquant sur B112** : `backend/services/search.py`
(`search_shared_notes` : un partage illisible était ignoré via
`except Exception: continue`) déclenchait `B112:try_except_continue`, le job
`security` sortait en rouge. Le `continue` est **délibéré** (un partage
inaccessible ne doit pas faire échouer la recherche) — `# nosec B112` posé
sur la ligne, comme les `# nosec B110` existants (`watcher.py`, `B105`,
`B324`). Bandit re-vérifié localement : 0 issue ; l'étape reste bloquante
(garde-fou `test_bandit_and_pip_audit_stay_blocking` intact).
---
## [2.68.1] — 2026-10-14
### Corrigé
- **UI configuration — boîtes d'édition « Clés API & MCP »** : la rangée de
création de clé (nom / expiration / portée / vaults / bouton) débordait de la
section sur desktop — `flex-wrap: wrap` n'était appliqué qu'en mobile
(≤768px). Le `flex-wrap` est désormais global sur `.config-add-row`, les
champs passent en `flex: 1 1 140px` (avec `width: auto !important` pour
neutraliser les largeurs inline 180/140/150/200px) et le bouton en
`flex: 1 1 auto` : les composants passent à la ligne au lieu de déborder.
Vérifié aux viewports 1600 / 1100 / 900 px (overflow horizontal : 0).
---
## [2.68.0] — 2026-10-14
### Ajouté
+3 -3
View File
@@ -4,7 +4,7 @@
**Porte d'entrée web ultra-léger pour vos vaults Obsidian** — Accédez, naviguez et recherchez dans toutes vos notes Obsidian depuis n'importe quel appareil via une interface web moderne et responsive.
[![Version](https://img.shields.io/badge/Version-2.68.0-blue.svg)]()
[![Version](https://img.shields.io/badge/Version-2.68.2-blue.svg)]()
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Docker](https://img.shields.io/badge/Docker-Ready-blue.svg)](https://www.docker.com/)
[![Python](https://img.shields.io/badge/Python-3.11+-green.svg)](https://www.python.org/)
@@ -977,8 +977,8 @@ Ce projet est sous licence **MIT** — voir le fichier [LICENSE](LICENSE) pour l
## 📝 Changelog
Consultez le [CHANGELOG.md](./CHANGELOG.md) pour l'historique complet de toutes les versions (v1.0.0 → v2.68.0).
Consultez le [CHANGELOG.md](./CHANGELOG.md) pour l'historique complet de toutes les versions (v1.0.0 → v2.68.2).
---
*Projet : ObsiGate | Version : 2.68.0 | Dernière mise à jour : Septembre 2026*
*Projet : ObsiGate | Version : 2.68.2 | Dernière mise à jour : Septembre 2026*
+3 -3
View File
@@ -2,7 +2,7 @@
**Ultra-light web gateway for your Obsidian vaults** — Access, browse, and search all your Obsidian notes from any device via a modern, responsive web interface.
[![Version](https://img.shields.io/badge/Version-2.68.0-blue.svg)]()
[![Version](https://img.shields.io/badge/Version-2.68.2-blue.svg)]()
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Docker](https://img.shields.io/badge/Docker-Ready-blue.svg)](https://www.docker.com/)
[![Python](https://img.shields.io/badge/Python-3.11+-green.svg)](https://www.python.org/)
@@ -1152,8 +1152,8 @@ This project is licensed under the **MIT License** - see the [LICENSE](LICENSE)
## 📝 Changelog
See [CHANGELOG.md](./CHANGELOG.md) for the complete version history (v1.0.0 → v2.68.0).
See [CHANGELOG.md](./CHANGELOG.md) for the complete version history (v1.0.0 → v2.68.2).
---
*Project: ObsiGate | Version: 2.68.0 | Last updated: September 2026*
*Project: ObsiGate | Version: 2.68.2 | Last updated: September 2026*
+1 -1
View File
@@ -1 +1 @@
2.68.0
2.68.2
+1 -1
View File
@@ -80,7 +80,7 @@ def _shared_results(username: str, q: str, vault: str) -> list[dict[str, Any]]:
if not fp.exists() or fp.suffix.lower() != ".md":
continue
raw = fp.read_text(encoding="utf-8", errors="replace")
except Exception:
except Exception: # nosec B112 — partage illisible : ignoré, on continue
continue
title = fp.stem
occurrences = raw.lower().count(q_lower)
+1 -1
View File
@@ -2626,7 +2626,7 @@ dependencies = [
[[package]]
name = "obsigate-desktop"
version = "2.68.0"
version = "2.68.2"
dependencies = [
"chrono",
"env_logger",
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "obsigate-desktop"
version = "2.68.0"
version = "2.68.2"
description = "ObsiGate Desktop — Porte d'entrée native pour vos vaults Obsidian"
authors = ["Bruno Charest"]
edition = "2021"
+1 -1
View File
@@ -1,7 +1,7 @@
{
"$schema": "https://raw.githubusercontent.com/nicedoc/obsigate/main/desktop/tauri.conf.schema.json",
"productName": "ObsiGate",
"version": "2.68.0",
"version": "2.68.2",
"identifier": "com.obsigate.desktop",
"build": {
"frontendDist": "../frontend",
+1 -1
View File
@@ -1,6 +1,6 @@
# ObsiGate — Roadmap
> **Version :** 2.68.0 | **Dernière mise à jour :** 2026-10-14
> **Version :** 2.68.2 | **Dernière mise à jour :** 2026-10-14
> **Ce fichier ne contient que le travail à venir** (🔵 En cours + ⚪ Backlog) et un index compact
> vers les fonctionnalités livrées.
> - **Méthode de livraison à appliquer pour toute tâche : [DELIVERY_WORKFLOW.md](./DELIVERY_WORKFLOW.md)**
+4 -1
View File
@@ -8294,7 +8294,10 @@ body.popup-mode .content-area {
.webhook-url { color: var(--accent); overflow: hidden; text-overflow: ellipsis; flex: 1; }
.webhook-events { color: var(--text-muted); font-size: 0.7rem; }
.webhook-delete { background: none; border: none; color: var(--text-error); cursor: pointer; font-size: 1rem; padding: 2px 6px; }
.config-add-row { display: flex; gap: 8px; margin-top: 8px; }
.config-add-row { display: flex; gap: 8px; margin-top: 8px; flex-wrap: wrap; }
.config-add-row .config-input,
.config-add-row .config-select { flex: 1 1 140px; width: auto !important; min-width: 0; }
.config-add-row .config-btn-add { flex: 1 1 auto; }
/* ── API/MCP tokens UI (#107) ── */
.token-item {
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "obsigate",
"version": "2.68.0",
"version": "2.68.2",
"description": "**Porte d'entrée web ultra-léger pour vos vaults Obsidian** — Accédez, naviguez et recherchez dans toutes vos notes Obsidian depuis n'importe quel appareil via une interface web moderne et responsive.",
"main": "patch.js",
"directories": {