kreuzcrawl'ın v0.3.0 versiyası rəsmi olaraq buraxılıb. Bu yeniləmə ilə kitabxana artıq 14 proqramlaşdırma dilində istifadə oluna bilər və ilk dəfə olaraq API stabilliyi elan edilib. Layihə Rust əsasında qurulub və müxtəlif dillər üçün bindinqlər avtomatik generasiya olunur.
Yaddaş istifadəsində inqilabi dəyişiklik
v0.3.0'ın ən diqqətçəkən xüsusiyyəti yaddaş idarəçiliyindəki təkmilləşdirmədir. Əvvəlki versiyada crawl_stream() metodu 10 min səhifəlik bir kraul zamanı təxminən 2.5 GB yaddaş sərf edirdisə, yeni versiyada bu rəqəm cəmi 20 MB'a enib. Bunun üçün hər bir səhifə nəticəsi dərhal emal olunur və yaddaşdan azad edilir - beləliklə, mühərrik eyni anda yalnız cari sorğuları saxlayır.
Təhlükəsizlik: SSRF müdafiəsi standart olaraq aktivdir
Yeni versiyada Server-Side Request Forgery (SSRF) hücumlarına qarşı müdafiə artıq standart olaraq işə salınıb. Sistem hər bir URL-i yoxlayır və loopback, private (RFC 1918), link-local, multicast kimi təhlükəli ünvanlara sorğuları avtomatik bloklayır. DNS vasitəsilə həll olunan bütün IP ünvanları yoxlanılır - beləliklə, hücumçu DNS-i dəyişdirsə belə, müdafiə işləyir. 30x redirect-lər zamanı da hər bir keçid yenidən yoxlanılır.
Yeni imkanlar və genişlənmələr
- Tiered dispatch sistemi — WAF bloklamaları aşkarlandıqda avtomatik olaraq bypass provider'lara və ya headless Chrome'a keçid edir
- 35 WAF fingerprints — Cloudflare, DataDome, Imperva, AWS WAF və digər 8 vendor üçün imza bazası
- MCP server — indi CLI ilə 1:1 uyğun gəlir, batch-scrape, batch-crawl, download və citations əmrləri əlavə olunub
- Yeni dil bindinqləri — Dart, Kotlin/Android, Swift və Zig əlavə olunub
- OpenTelemetry metrikaları — WAF bloklamaları və tier keçidləri izlənilə bilər
API stabilliyi və geriyə uyğunluq
v0.3.0 ilk stabil API buraxılışıdır. Bundan sonra əsas versiya dəyişiklikləri MAJOR nömrə ilə qeyd olunacaq. C FFI ABI isə MAJOR.MINOR səviyyəsində stabildir. Bəzi enum variantları genişləndirilə bilən (#[non_exhaustive]) olaraq saxlanılıb ki, gələcək versiyalarda yeni variantlar əlavə oluna bilsin.
kreuzcrawl v0.3.0 haqqında ətraflı məlumat və sənədlər GitHub səhifəsində mövcuddur. Layihə açıq mənbədir və WAF fingerprint-ləri üçün töhfələr qəbul edilir.
Mənbə: Dev.to (https://dev.to/kreuzberg/introducing-kreuzcrawl-v030-8di)



