sgcWebSockets 2026.10

· Sürümler
sgcWebSockets 2026.10

sgcWebSockets 2026.10 yayınlandı. Bu sürümde iki ana hat var: sgcHTML, bir iş web uygulamasının ihtiyaç duyduğu ve artık elle yazmanıza gerek kalmayan parçaları kazandı; kriptografi ise tek bir harici kütüphane bile eklemeden kuantum sonrasına geçti.

Web Uygulamaları: Sıkıcı Kısımlar, Halloldu

Oturumlar, giriş ve CSRF. Yeni TsgcHTMLAuth bileşeni ve oturum depoları çerezi korur, giriş ve çıkış isteklerine yanıt verir, boşta kalan oturumları kapatır ve başarısız girişleri sınırlar. CSRF token'ı bir meta etiketinde taşınır, htmx bunu her isteğe kendiliğinden ekler, ve sunucu bunu taşımayan bir post'u reddeder.

FAuth := TsgcHTMLAuth.Create(Self);
FAuth.SessionStore := TsgcHTMLSessionStore_Memory.Create(Self);
FAuth.CookieName := 'app_session';
FEngine.Auth := FAuth;

Rota gibi okunan rotalar. Yol parametreleri, bir metot filtresi ve başlıklara, çerezlere ve gövdeye erişim:

with FRouter.Routes.Add do
begin
  Path := '/customers/{id}/edit';
  Methods := [hrmGet, hrmPost];
  RequireLogin := True;
  RequireRoles := 'admin,sales';
end;

Test edebileceğiniz sayfalar. DispatchDirect, arkasında hiçbir soket olmadan bir isteği yanıtlar ve yeni bir unit, üretilen HTML'i okuyup id, sınıf, etiket veya niteliğe göre öğeleri bulur ve bir sayfayı kaydedilmiş bir kopyayla karşılaştırır; böylece işaretlemedeki istenmeyen bir değişiklik bir müşteri yerine bir test tarafından fark edilir.

Bir uygulama gibi hissettiren navigasyon. Sayfalar tam bir yeniden yükleme olmadan değişir ve kaydırma konumunu ve kullanıcının o an yazmakta olduğunu korur; bir yükleme çubuğu, bağlantı koptuğunda bir iletişim kutusu ve bir istek başarısız olduğunda bir mesaj vardır. Tüm bunlar varsayılan olarak kapalıdır.

Dört Öne Çıkan Özellik

Bunların her birinin sonda bağlantısı verilen kendi yazısı var, o yüzden burada sadece ne olduğunu bulacaksınız:

İki Yoldan Push

Server sent events artık bir WebSocket yerine güncellemeleri taşıyabiliyor, bağlantı kesikken kaçırılanları yeniden oynatabiliyor ve sıradan HTTP sunucusuyla da çalışıyor. Web Push, kapalı olan bir tarayıcıya bile ulaşıyor. Bunlarla birlikte bir bildirim gelen kutusu ve bir tercihler tablosu geliyor, ve bildirim bileşeni belirli bir kullanıcının hangi kanalı alacağına karar veriyor.

AI: Üzerine Hareket Edebileceğiniz Yanıtlar

TsgcAIChat, yeni ChatJSON metodu aracılığıyla OpenAI, Anthropic, Gemini, DeepSeek, Ollama, Grok ve Mistral üzerinde sizin sağladığınız bir şemayı izleyen JSON isteyebiliyor; bu metot yanıtı ayrıştırıyor ve okunamadığında ayrıştırma hatasını ekleyerek bir kez daha soruyor. Sohbet bileşeni artık görüntü de gönderip alıyor, ve BaseUrl artık yalnızca Ollama tarafından değil her sağlayıcı tarafından dikkate alınıyor, böylece bunlardan herhangi biri bir proxy'ye veya yerel bir ağ geçidine yönlendirilebiliyor.

Kriptografi: Object Pascal ile Kuantum Sonrası

ML-KEM (FIPS 203), ML-DSA (FIPS 204) ve SLH-DSA (FIPS 205), X-Wing hibrit anahtar kapsülleme, kuantum sonrası X.509 sertifikaları ve sertifika otoriteleri, ve ML-DSA ile imzalanan JWT'ler. Tüm bunlar sgcCrypto paketinde Object Pascal ile, hiçbir harici kütüphane olmadan yazıldı ve NIST'in bilinen yanıt vektörlerine karşı doğrulandı.

Bunun üzerinde, yine saf Pascal ile yazılmış bir yerel TLS 1.3 motoru bulunuyor: bir istemci ya da sunucu, OpenSSL veya SChannel olmadan TLS konuşuyor, RFC 10024'ün hibrit kuantum sonrası gruplarını müzakere ediyor, ve ALPN, S N I, istemci sertifikaları ve işletim sisteminin güven deposunun isteğe bağlı kullanımını destekliyor.

Klasik taraf da aynı geçişte güçlendirildi: kör edilmiş sabit zamanlı RSA, sabit zamanlı eliptik eğri skaler çarpımı ve Ed25519, tablo kullanmayan AES ve GHASH, içe aktarılan özel anahtarların kendi ortak yarılarına karşı doğrulanması, ve minimal olmayan DER imzalarının reddedilmesi.

Belirtilmeye Değer Düzeltmeler

.NET

.NET kütüphanesi de aynı hızda ilerliyor: ASP.NET Core için bir ClaimsPrincipal köprüsüyle kimlik doğrulama ve oturumlar, yönlendirici, test yardımcıları, SPA navigasyonu, yerel bir uç noktaya sahip SSE taşıması, yapılandırılmış çıktı, AI Data Pack, Web Push, MCP Apps ve adaptörleriyle CRUD bileşeni; hepsi Delphi ile aynı API adlarıyla.

Yükseltme

Yeni olan her şey eklemelidir ve varsayılan olarak kapalıdır. Yeni unit'leri ekleyin, paketlerinizi yeniden derleyin, ve mevcut bir uygulama tam olarak eskisi gibi davranmaya devam edecek.

Uzun Sürümler

İzleyin

Bununla ilgili kısa bir video, eSeGeCe kanalında yer alıyor.

Sorularınız, geri bildiriminiz veya taşıma konusunda yardıma mı ihtiyacınız var? İletişime geçin — kodu yazan kişilerden yanıt alacaksınız.