Skip to content

V1.10.0 - #2

Merged
Toxpox merged 16 commits into
mainfrom
optimization-beta
Aug 23, 2026
Merged

Toxpox merged 16 commits into
mainfrom
optimization-beta

Conversation

@Toxpox

@Toxpox Toxpox commented Aug 23, 2026

Copy link
Copy Markdown
Owner

No description provided.

Toxpox added 16 commits August 23, 2026 01:03
- bilgi_cek erken donusu kaldirildi: isim blogu bulunamadiginda kota ve
  kota-doldu tespiti de sessizce atlaniyordu
- alan_ayikla ve kota_normalize turkce_kucult ile ASCII'ye indirgiyor;
  "SON GIRIS" gibi buyuk harfli Turkce etiketler artik kaybolmuyor
- cikis dogrulamasi URL'nin son yol bilesenine daraltildi; blogindex.html
  gibi alakasiz adresler basari sayilmiyor, JSF partial-response icindeki
  gercek redirect hedefi ayristiriliyor
- kota_doldu_mu ham HTML yerine gorunur DOM metnini tariyor; script ve
  yorum icindeki sablon metni yanlis pozitif uretmiyor
- Tauri ikonu src-tauri/icons/icon.png olarak eklendi, Linux'ta cargo test
  calisir hale geldi
- CI clippy --all-targets ile genisletildi, tani.js syntax kontrolune eklendi
- danger_accept_invalid_certs kaldirildi; kimlik bilgisi tasiyan istemci
  artik normal sertifika dogrulamasindan geciyor
- reqwest gzip ozelligi acildi
- Ortak sinirli_govde okuyucusu eklendi; decode edilmis boyut siniri
  uygulaniyor (portal 256 KiB, NCSI 1 KiB) ve bes text() cagrisinin tamami
  degistirildi
- Login oncesi yalnizca bilgi amacli DNS cagrisi kritik yoldan cikarildi;
  IP artik yanitin remote_addr alanindan geliyor, ip_bul kendi DNS
  timeout'unu aldi
- connect_timeout ve read_timeout toplam timeout'tan ayrildi
- NCSI istemcisi tekrar kullaniliyor, govde kontrolu alt dizge yerine tam
  eslesme yapiyor
- Tum CSS selector'lari LazyLock/OnceLock ile cachelendi
- Tani akisinda DNS bir kez cozuluyor ve sonuc paylasiliyor; internet,
  portal ve DNS kontrolleri tokio::join! ile paralel calisiyor
- gsb_aginda_mi IPv4/IPv6 ailelerini yaristiriyor; adres basina timeout
  yerine tek global TCP butcesi ve DNS timeout'u var
- Aktif profil degismediyse profil deposu yeniden yazilmiyor
- Frontend baslangicta app bilgisi, ayarlar ve profil yuklemesini
  Promise.all ile paralel calistiriyor
- CI frontend syntax kontrolu frontend/js/*.js glob'u ile yapiliyor
- Login POST'u idempotent olmadigi icin hatalar siniflandiriliyor:
  baglanti kurulamadiysa tekrar guvenli, sonuc belirsizse kor POST yerine
  oturum dogrulama GET'i yapiliyor, semantik hatada donguden cikiliyor
- Login akisina 25 saniyelik global butce eklendi
- Leading cooldown yerine trailing debounce; ag olayi firtinasinin son
  olayi artik bastirilmiyor
- maksimum_sayfa_cek cihaz ve form bilgisini tek DOM parse'indan birlikte
  donduruyor; ayni HTML iki kez parse edilmiyor
- onceki_oturumu_kapat sonucu artik kontrol ediliyor; sabit 2 sn sleep
  yerine butceli oturum dusme yoklamasi yapiliyor
- 20 KB'lik ham HTML state'i kaldirildi, yerine yalnizca ihtiyac duyulan
  typed form bilgisi saklaniyor
- giris_aktif bayragi Semaphore permit'e cevrildi; erken donuste bayrak
  takili kalamiyor
- Network katmanindaki ham contains("content-div") kontrolu kaldirildi;
  yerine login formu, oturum sinyalleri ve gercek DOM dugumunu birlikte
  degerlendiren PortalSayfa siniflandirmasi kullaniliyor
- Kota paneli, cihaz tablosu, icerik blogu ve submit butonu icin
  suffix ve torun tabanli fallback seciciler eklendi; buton fallback'i
  yalnizca dogru form icinde araniyor
- Olcum modulu eklendi; DNS, TCP, login denemesi, login toplami, govde,
  parse ve yeniden baglanma sureleri yerel loga anahtar=deger bicimiyle
  yaziliyor. Telemetri gonderilmiyor
- Mock HTTP sunucusuyla integration testleri: basarili login, login
  formuna donus, gzip decode, decode sonrasi limit asimi, 503 sonrasi
  retry ve asiri buyuk govde
- CI'a ubuntu-latest job'u eklendi; Windows disi cfg kollari ve capraz
  platform derleme artik denetleniyor
Olcum satirlari eklendikten sonra cargo test, kullanicinin gercek log
dosyasina 234 satir yaziyordu (uygulama hic calismadigi halde 12 KB).

- ayar_dizini cfg(test) altinda gecici dizine yonleniyor; test kosumunun
  gercek veri dizinine dokunmasi yapisal olarak imkansiz
- Uretimde GSB_VERI_DIZINI ile override edilebiliyor
- Iki koruma testi: log yolunun gecici dizinde oldugu ve yazilan olcum
  satirinin dosyadan geri okunabildigi
Butce yalnizca backoff oncesinde kontrol ediliyordu; denemeler kendi
timeout'larini doldurabildigi icin kotu durumda toplam sure 30 sn'ye
cikiyordu (ilan edilen butce 25 sn). Yanit yazmayan bir sunucuya karsi
yazilan test bunu olctu.

- POST, govde okuma ve oturum dogrulama GET'i kalan butceye sariliyor
- Butce tukendiginde yeni deneme baslatilmiyor
- Butce parametrelestirildi, dogrudan test edilebiliyor
- Zamanlama sabitleri arasindaki invariantlar const blokta derleme
  zamaninda zorlaniyor; tutarsiz butce artik derlemeyi kiriyor
- Test derlemesinde backoff kuculdu, retry testleri gercek saatte
  milisaniyeler icinde kosuyor
…zasyonu

GSB portali (F5 BigIP + PrimeFaces/JSF) yalnizca HTTP/1.1 konusuyor.
- http1_only ile gereksiz HTTP/2 ALPN denemesi kaldirildi
- pool_idle_timeout + tcp_keepalive ile ardisik istekler ayni TCP
  baglantisini yeniden kullaniyor
- tcp_nodelay ile kucuk istek gecikmesi azaltildi

Ayarlar merkezi portala dayali oldugu icin tum GSB lokasyonlarinda gecerli;
MTU/gecikme gibi konuma ozgu degerlere dokunulmadi.
- Surum 1.9.1 -> 1.10.0 (ag istemcisi optimizasyonu minor bump)
- Linux AppImage icin kare PNG ikon seti eklendi; bundle.icon listesi
  masaustu hedefleri (png/icns/ico) icerecek sekilde guncellendi
- CHANGELOG 1.10.0 girdisi
…rilabilir pencere

- Pencere 420x680 -> 440x760; min 420x620, max 640x1100 ile sinirli resizable.
  Linux font metrikleri Windows'tan buyuk oldugu icin alt buton cubugu
  ('Cikis Yap' / 'Baglan') pencere disinda kaliyordu.
- Ekran icerigi kaydirilabilir .ekran-govde icine alindi: marka satiri ve alt
  cubuk her zaman gorunur, arada kalan icerik sigmazsa kaydiriliyor. Boylece
  tasma tema/font/olcek farkindan bagimsiz olarak yapisal olarak imkansiz.
- Giris ekrani altbilgisi 'SSL kapali' yerine 'TLS dogrulamali' (v1.10.0'da
  sertifika dogrulamasi acildi); nokta sari yerine yesil.
CI yalnizca Windows'ta derleyip paketliyordu; Linux ve macOS kullanicilari
icin paket uretilmiyordu. Ayrica `latest.json` icine sadece `windows-x86_64`
yaziliyordu, bu yuzden diger platformlardaki istemciler guncelleme kontrolunde
kendi platformlarini bulamayip hata aliyordu (CP-09).

Is akisi dort asamaya ayrildi: hizli-kontrol (fmt, surum, changelog, betik
testleri), test (windows/ubuntu/macos matrisi), paketle (yalnizca surum
etiketinde) ve release.

Paketleme matrisi Windows icin NSIS + portable exe, Linux icin deb/rpm/
AppImage, macOS icin Intel ve Apple Silicon dmg/app uretir. Intel yapisi
macos-13 runner'i emekliye ayrildigi icin Apple Silicon runner'inda capraz
derlenir.

Windows'a ozgu PowerShell surum denetimi platform bagimsiz Python betikleriyle
degistirildi:

- surum-kontrol.py: Cargo.toml'u kaynak kabul edip Cargo.lock, app.js, README
  rozeti, CHANGELOG basligi ve git etiketi arasindaki tutarliligi denetler.
- changelog-bolum.py: surum notunu CHANGELOG'dan uretir, elle yazilmaz.
- release-manifest.py: uretilen her updater paketini latest.json'a ekler,
  SHA256SUMS.txt yazar. deb/rpm updater kapsamina alinmaz cunku uygulama ici
  guncelleme ile kurulamazlar. Imzasiz paket veya eksik windows girdisi
  varsa yayin durdurulur: bozuk bir manifest tum istemcilerin guncelleme
  kontrolunu kirar.

Artefakt toplama adimi artik eksik dosyada sessizce gecmek yerine hata verir;
aksi halde imzasiz veya eksik bir release yayinlanabiliyordu.

Betikler 13 testle korunuyor ve her CI kosumunda calisiyor. Linux paketleme
yerelde ucu uca dogrulandi: deb, rpm ve AppImage uretildi, gecici bir anahtarla
imzalandi ve CI'daki toplama adiminin glob'lari gercek ciktiya karsi kosuldu.

README'ye guncel Linux dagitimlarindaki AppImage/linuxdeploy strip sorunu ve
NO_STRIP gecici cozumu not edildi; CI ubuntu-22.04 kullandigi icin orada
gerekmez ve artefakti buyutecegi icin kullanilmaz.
setup-python v5 ve upload/download-artifact v4 Node.js 20 hedefledigi icin
GitHub bunlari uyariyla Node 24'e zorluyordu. Artefakt birlestirmesi zaten
merge-multiple ile acikca belirtildiginden download-artifact v6'nin varsayilan
degisikliginden etkilenmiyor.
@Toxpox
Toxpox merged commit 24253b6 into main Aug 23, 2026
15 checks passed
@Toxpox
Toxpox deleted the optimization-beta branch October 20, 2026 23:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant