Τι Νέο Υπάρχει
Τι Νέο Υπάρχει
Πιο αναλυτικές πληροφορίες σχετικά με τις αλλαγές σε κάθε έκδοση μπορείτε να βρείτε στα GitHub Releases.
v2.0.2
- 🔒 Ενίσχυση ασφαλείας: Διορθώθηκαν αρκετά ευρήματα στατικής ανάλυσης — τα κλειδιά cache της δεξαμενής άμεσης αυθεντικοποίησης χρησιμοποιούν πλέον HMAC (αντί για απλό SHA-256), προστέθηκε ρητός έλεγχος περιορισμού για την εξυπηρέτηση στατικών αρχείων, HTML-escaping του κειμένου κατάστασης σύνδεσης στο SSE Tester, μια λίστα επιτρεπόμενων σχημάτων URL για τους συνδέσμους αποτελεσμάτων αναζήτησης του ιστότοπου τεκμηρίωσης, και δικαιώματα ελάχιστου προνομίου στο workflow CI.
- 📦 Ενημερώσεις εξαρτήσεων: Αναβαθμίστηκαν όλες οι εξαρτήσεις Go, συμπεριλαμβανομένου του
gin-gonic/ginστην v1.12.0 και τουlib/pqστην v1.12.3 (απαιτεί πλέον Go 1.25). - 🌐 3 νέες γλώσσες: Ο ιστότοπος τεκμηρίωσης είναι πλέον διαθέσιμος στα Πολωνικά, Ουκρανικά και Ελληνικά — 10 γλώσσες συνολικά.
v2.0.1
- 🔒 Διόρθωση ασφαλείας: Αναβαθμίστηκε η μεταβατική εξάρτηση HTTP/3
quic-goστην έκδοση v0.59.1, κλείνοντας μια ευπάθεια επέκτασης QPACK trailer που θα μπορούσε να επιτρέψει σε έναν κακόβουλο peer να εξαντλήσει τη μνήμη στον server ή στον client. - 🎨 Βελτιώσεις στον ιστότοπο τεκμηρίωσης: Νέος εναλλάκτης θέματος light/dark/auto και εναλλάκτης γλώσσας μόνο με εικονίδιο, εικονίδια-συνδέσμους GitHub/Support στη γραμμή πλοήγησης, διόρθωση διπλά κωδικοποιημένων δομημένων δεδομένων JSON-LD, και επέκταση του
llms.txt.
v2.0.0
- 🔒 Ασφαλείς προεπιλογές (breaking): Το
DB_SSLMODEέχει πλέον προεπιλογήrequire, τοALLOWED_ORIGINSδεν έχει πλέον προεπιλογή*, και τοJWT_SECRETπρέπει να είναι τουλάχιστον 32 bytes. Οι υπάρχουσες εγκαταστάσεις πρέπει να ελέγξουν τη ρύθμισή τους πριν από την αναβάθμιση. - 🧹 Καθαρισμός παλαιού κώδικα: Αφαιρέθηκαν οι διαδρομές ανακατεύθυνσης
/api/…και/sse/…και το ξεπερασμένο JSON-RPC aliaslogin. Χρησιμοποιήστε απευθείας τα/{prefix}/:database/…καιget_jwt. - 🛡️ Αυστηρότερη πιστοποίηση & χειρισμός σφαλμάτων: Νέο όριο ρυθμού συνδέσεων ανά IP (
LOGIN_RATE_LIMIT_PER_IP) κλείνει ένα κενό ασφαλείας απέναντι σε credential spraying, και τα σφάλματα εργαλείων MCP δεν διαρρέουν πλέον το ανεπεξέργαστο κείμενο σφάλματος της PostgreSQL από προεπιλογή (μπορείτε να το ενεργοποιήσετε ξανά με τοMCP_SQL_ERROR_DETAIL). - ⚙️ Ρυθμιζόμενα όρια συνδέσεων: Το ανώτατο όριο του connection pool για άμεση πιστοποίηση είναι πλέον ρυθμιζόμενο μέσω του
DIRECT_POOL_LIMIT. - 🔑 Υποστήριξη εξωτερικού IdP (BYO JWT): Οι νέες ρυθμίσεις
JWT_ISSUER,JWT_AUDIENCE, καιJWT_LEEWAYσυνδέουν τα εκδοθέντα tokens με συγκεκριμένο εκδότη/audience και ρυθμίζουν την ανοχή απόκλισης ρολογιού. - 🧰 Νέα εργαλεία: Ένα αυτόνομο JWT Getter (
/tools/get-jwt) και SSE Tester (/tools/test-sse) προστίθενται στο Explorer για ταχεία χειροκίνητη δοκιμή. - 🐛 Διορθώσεις αξιοπιστίας: Διορθώθηκε ένα κολλημένο shutdown SSE και ένα σφάλμα ανάκτησης νεκρής σύνδεσης που μπορούσε να αφήσει τον server ανίκανο να επανασυνδεθεί στην PostgreSQL.
- 🧪 Ενίσχυση CI: Προστέθηκαν τα
golangci-lint, ο Go race detector, και τοgovulncheckσε κάθε build, μαζί με διευρυμένη κάλυψη δοκιμών. - 📦 Διαδικασία έκδοσης: Προστέθηκε το
CHANGELOG.mdκαι το release workflow χωρίστηκε σεmake release-local(build & επαλήθευση) καιmake release(tag, δημοσίευση, ενημέρωση του Homebrew tap).
v1.3.0
- 🌐 PgArachne Explorer – μοντέρνο PWA: Πλήρης οπτική & λειτουργική ανανέωση – θέμα dark/light (αυτόματο), responsive διάταξη καρτών, επισήμανση σύνταξης JSON, κουμπί αντιγραφής στο clipboard, καλύτερη εμπειρία χρήστη πιστοποίησης (καρτέλες κωδικού/token), υποστήριξη εγκατάστασης PWA (manifest, εικονίδια, service worker), κοινοποιήσιμοι σύνδεσμοι μέσω της παραμέτρου
?url=…. - 🛠️ Υποστήριξη Model Context Protocol (MCP): Νέο endpoint
/{prefix}/{db}/mcpμε τυπικές μεθόδουςresources/list,resources/read,prompts/list,prompts/get– πλήρως υποστηριζόμενο από συναρτήσεις PostgreSQL και επαναχρησιμοποιώντας την υπάρχουσα πιστοποίηση & εναλλαγή ρόλων. - 🔧 Ρυθμιζόμενο πρόθεμα API: Η προεπιλογή άλλαξε σε
/db/{database}/jsonrpcκαι/db/{database}/sse, με τις παλαιές διαδρομές/api/…και/sse/…να διατηρούνται ως ανακατευθύνσεις 307 για συμβατότητα με το παρελθόν. Ελέγχεται μέσω της μεταβλητής περιβάλλοντοςAPI_PREFIX. - 🛡️ Προστασία idempotency: Προαιρετικό πεδίο
idempotencyKeyστα αιτήματα JSON-RPC – αυτόματη ανίχνευση διπλότυπων (HTTP 409 + κωδικός σφάλματος σε σύγκρουση) χρησιμοποιώντας τοpgarachne.save_idempotency_key(). - 📚 Βελτιώσεις τεκμηρίωσης: Νέα ενότητα /tools/ με κάρτες (Explorer + επικείμενο macOS Toolbar), νέα σελίδα «Architectural Decisions», SECURITY.md με οδηγίες αναφοράς ευπαθειών, καλύτερη τυπογραφία σε όλες τις γλώσσες μέσω του TypoLima, βελτιωμένη υποστήριξη σελίδας 404 για το GitHub Pages.
- 📝 Μετονομασία μεθόδου σύνδεσης: Η μέθοδος JSON-RPC
loginμετονομάστηκε σεget_jwt(το παλιό όνομα διατηρείται ως ξεπερασμένο alias με προειδοποίηση στα logs). - 📊 Καθαρισμός καταγραφής: Κατά την καταγραφή σε αρχείο, η κονσόλα εμφανίζει μόνο ελάχιστες πληροφορίες εκκίνησης → καθαρότερη έξοδος σε περιβάλλοντα παραγωγής/docker.
v1.2.0
- 🛡️ Ασφάλεια: Η επαλήθευση του access token πραγματοποιείται πλέον πριν από τη δημιουργία σύνδεσης με τη βάση δεδομένων. Βελτιωμένη προστασία έναντι IP spoofing (προστέθηκε η ρύθμιση
TRUSTED_PROXIES) και απόκρυψη εσωτερικών σφαλμάτων βάσης δεδομένων από τους τελικούς χρήστες. - 📊 Απομονωμένες μετρήσεις: Το endpoint Prometheus
/metricsμετακινήθηκε από το δημόσιο API στη δική του ασφαλή θύρα (διαθέσιμο εξ ορισμού μόνο στο127.0.0.1:9090). - 📦 Νέα επιλογή εγκατάστασης: Το έργο διαθέτει πλέον επίσημο Homebrew tap για macOS και Linux. Τα builds είναι υπογεγραμμένα και δημιουργούνται μέσω του GoReleaser.
- 📚 Ανασχεδιασμένη τεκμηρίωση: Εντελώς νέα εμφάνιση βασισμένη στο framework Hugo. Προστέθηκε αστραπιαία αναζήτηση πλήρους κειμένου, δυνατότητα αντιγραφής κώδικα, και παραδείγματα ανάπτυξης σε παραγωγικό περιβάλλον (Nginx hardening, BYO JWT).
- ⚙️ Βελτιωμένη διαχείριση daemon: Προστέθηκε υποστήριξη για προσαρμοσμένη ρύθμιση διαδρομής
PID_FILE.
v1.1.0
- 🔌 Ενοποιημένο API: Όλες οι κλήσεις γίνονται μέσω
POST /api/<db>(η καλούμενη μέθοδος καθορίζεται στο σώμα JSON-RPC). - ⚡ Ειδοποιήσεις σε πραγματικό χρόνο: Νέο endpoint
GET /sse/<db>?channels=...για ακρόαση συμβάντων βάσης δεδομένων με υποστήριξη πολλών καναλιών. - 📈 Παρατηρησιμότητα: Λεπτομερείς μετρήσεις Prometheus για HTTP, auth, JSON-RPC, και SSE.
- 🏋️ Σημαντικές βελτιώσεις σταθερότητας: Προστασία έναντι αργών clients, αυστηρά timeouts, και αυτόματος καθαρισμός συνδέσεων.