Gin 1.12.0 yayınlandı
Gin v1.12.0
Özellikler
- feat(binding): uri/query binding’de encoding.UnmarshalText desteği ekle (#4203)
- feat(context): hata alımı için GetError ve GetErrorSlice yöntemleri ekle (#4502)
- feat(context): içerik müzakeresi için Protocol Buffers desteği ekle (#4423)
- feat(context): Delete yöntemi uygula (#4296)
- feat(gin): kaçış yolu kullanma seçeneği ekle (#4420)
- feat(logger): renklendirilen gecikme (#4146)
- feat(render): bson protokolü ekle (#4145)
Hata Düzeltmeleri
- fix(binding): boş değer hatası (#2169)
- fix(binding): form binding’de boş dilim/dizi işlemesini iyileştir (#4380)
- fix(context): birden çok X-Forwarded-For başlık değerleri için ClientIP işlemesini düzelt (#4472)
- fix(debug): sürüm uyuşmazlığı (#4403)
- fix(gin): kaynak sızıntısını önlemek için RunFd’de os.File’ı kapat (#4422)
- fix(gin): engine.Handler() ile çalışmayan harfsel iki nokta rotalarını düzelt (#4415)
- fix(recover): recovery’de http.ErrAbortHandler’ı bastır (#4336)
- fix(render): Data.Render’de içerik uzunluğu yaz (#4206)
- fix(response): yanıt yaşam döngüsü için ele geçirme davranışını iyileştir (#4373)
- fix(tree): RedirectFixedPath ile findCaseInsensitivePathRec’de paniği düzelt (#4535)
- fix: Yazım hatalarını düzelt, belge netliğini iyileştir ve ölü kodu kaldır (#4511)
İyileştirmeler
- chore(binding): bson bağımlılığını mongo-driver v2’ye yükselt (#4549)
- chore(context): unix soketinden gelen xff başlıklarına her zaman güven (#3359)
- chore(deps): golang.org/x/crypto’yu v0.45.0’a yükselt (#4449)
- chore(deps): quic-go’yu v0.57.1’e yükselt (#4532)
- chore(logger): sorgu dizesi çıkışını atlamaya izin ver (#4547)
- chore(response):
http.Flusherolduğunda Flush() panikini önle (#4479)
Yeniden Düzenleme
- refactor(binding): daha temiz harita işlemesi için maps.Copy kullan (#4352)
- refactor(context): dönüş değeri adlarını atla (#4395)
- refactor(context): sabit kodlanmış localhost IP adreslerini sabitlerle değiştir (#4481)
- refactor(context): maps.Clone kullanıyor (#4333)
- refactor(ginS): motor işlevini basitleştirmek için sync.OnceValue kullan (#4314)
- refactor(recovery): akıllı hata karşılaştırması (#4142)
- refactor(utils): util işlevlerini utils.go’ya taşı (#4467)
- refactor: for döngüsü int üzerinde range kullanılarak modernize edilebilir (#4392)
- refactor: bodyAllowedForStatus’ta sihirli sayıları adlandırılmış sabitlerle değiştir (#4529)
- refactor: kodu basitleştirmek ve performansı artırmak için b.Loop() kullan (#4389, #4432)
Derleme Süreci Güncellemeleri / CI
- ci(bot): bağımlılık güncellemelerinin sıklığını artır ve gruplandır (#4367)
- ci(lint): test iddiaları ve linter yapılandırmasını yeniden düzenle (#4436)
- ci(sec): HTTP ara yazılımda tür güvenliğini ve sunucu organizasyonunu iyileştir (#4437)
- ci(sec): Trivy güvenlik taramalarını her gün UTC gece yarısında çalışacak şekilde zamanla (#4439)
- ci: güvenlik açığı tarama iş akışını Trivy entegrasyonu ile değiştir (#4421)
- ci: CI iş akışlarını güncelle ve Trivy yapılandırma tırnaklarını standartlaştır (#4531)
- ci: CI ve belgeler genelinde Go sürüm desteğini 1.25+‘a güncelle (#4550)
Belge Güncellemeleri
- docs(README): Trivy güvenlik tarama rozeti ekle (#4426)
- docs(context): ShouldBind* yöntemleri için örnek yorumlar ekle (#4428)
- docs(context): bazı yorumları düzelt (#4396)
- docs(context): yorumda hatalı işlev adını düzelt (#4382)
- docs(readme): belgeleri açıklık ve eksiksizlik için yeniden tasarla ve genişlet (#4362)
- docs: Gin 1.11.0 sürümünü blog bağlantısı ile duyur (#4363)
- docs: Gin v1.12.0 sürümünü belge ve sonuçlandır (#4551)
- docs: GitHub katkı ve destek şablonlarını yeniden tasarla (#4364)
- docs: katkı kılavuzlarını kapsamlı talimatlarla yeniden tasarla (#4365)
- docs: Go sürüm değişikliklerini yansıtacak şekilde belgeleri güncelle (#4552)
- docs: bozuk belge bağlantısı için özellik belgeleme talimatlarını güncelle (#4508)
Performans
- perf(path): redirectTrailingSlash’ta regex’i özel işlevlerle değiştir (#4414)
- perf(recovery): yığın işlevinde satır okumayı optimize et (#4466)
- perf(tree): strings.Count kullanarak yol ayrıştırmasını optimize et (#4246)
- perf(tree): findCaseInsensitivePath’de ayırmaları azalt (#4417)
Testler
- test(benchmarks): hatalı işlev adını düzelt (#4375)
- test(bytesconv): boş/nil durumları için test ekle (#4454)
- test(context): sihirli sayı 100 yerine http.StatusContinue sabitini kullan (#4542)
- test(debug): debug.go test kapsamını %100’e iyileştir (#4404)
- test(gin): ginS paketi için kapsamlı test kapsamı ekle (#4442)
- test(gin): entegrasyon testlerinde yarış koşullarını çöz (#4453)
- test(render): kapsamlı hata işleme testleri ekle (#4541)
- test(render): MsgPack oluşturma için kapsamlı testler ekle (#4537)