v1.10 dan v1.11 ga yangilash
v1.11.3
Xatolik tuzatishlar 🐛
- Schedule'dagi panic tufayli jarayon to'xtatilishi muammosi
- Schedule'dagi DailyAt har daqiqa bajarilishi muammosi
v1.11.2
Xatolik tuzatishlar 🐛
- Request.Input() va Request.Bind() ni bir vaqtda ishlatishda ma'lumot xatosi tuzatildi-and-request-bind()-at-the-same-time)
v1.11.1
Qiziqarli yangi xususiyatlar 🎉
- Route resurs marshrutlash qo'shdi
- Request yangi usullar qo'shdi
- Storage yangi usullar qo'shdi
- File yangi usullar qo'shdi
Xatolik tuzatishlar 🐛
- Filesystem uchun noto'g'ri Windows yo'li xatosi tuzatildi
- Request uchun Header usulining panic xatosi tuzatildi
v1.11.0
Qiziqarli yangi xususiyatlar 🎉
Takomillashtirishlar 🚀
- Cache usullar qo'shdi va optimallashtirdi (1.11.0)
- Route Fallback marshrutini qo'llab-quvvatlaydi (1.11.0)
- Orm yangi usullar qo'shdi (1.11.0)
- facades.Config.Add() optimallashtirildi (1.11.0)
- Sqlite haydovchi o'zgartirildi (1.11.0)
- contracts/http net/http usul xaritalashini qo'shdi (1.11.0)
O'zgarishlar 🛠
Xatolik tuzatishlar 🐛
- Ba'zi holatlarda hesh konfiguratsiyasi amalga oshmasligi muammosi (1.11.0)
- RateLimiter'dagi mavjud bo'lmagan thread xavfsizligi muammolari (1.11.0)
Yangilash bo'yicha ko'rsatma
Iltimos, ushbu bo'limdagi mazmunga muvofiq freymvorkni bosqichma-bosqich yangilang.
Taxminiy yangilash vaqti: 1 daqiqa
1. Bog'liqliklarni yangilash
go.mod faylidagi bog'liqliklarni yangilang:
go get -u github.com/goravel/framework@v1.11.0 && go mod tidy2. Eskirgan usullarni olib tashlash
import (
"github.com/goravel/framework/database"
"github.com/goravel/framework/database/gorm"
)
// Eskirgan
database.NewGormInstance()
// Almashtirish (Eslatma: Bu usul tavsiya etilmaydi, iltimos uni ishlatmang)
gorm.New()
// Eskirgan
facades.Orm.Query().Updates()
// Almashtirish (Faqat usul nomini o'zgartirish kifoya, parametrlarni o'zgartirish shart emas)
facades.Orm.Query().Update()
// Update usuli qaytish qiymatini o'zgartiradi
// Oldin
err := facades.Orm.Query().Update()
// Keyin
res, err := facades.Orm.Query().Update()Yangi mazmun
Ushbu bo'lim kod o'zgarishlarini o'z ichiga olmaydi, faqat takomillashtirishlar.
Orm model voqealari qo'shdi
Versiya: v1.11.1
Orm modellari bir nechta voqealarni ishga tushiradi, bu sizga model hayot tsiklining quyidagi bosqichlariga kirish imkonini beradi: Retrieved, Creating, Created, Updating, Updated, Saving, Saved, Deleting, Deleted, ForceDeleting, ForceDeleted.
Cache usullar qo'shdi va optimallashtirdi
Versiya: v1.11.1
Yangi usullar
| Usullar | Harakat |
|---|---|
| Kamaytirish | Kamaytirish |
| Oshirish | Oshirish |
| Qulflash | Atomik qulf |
| Do'kon | Bir nechta keshlash do'konlariga kirish |
Optimallashtirilgan usullar
Get, GetBool, GetInt, GetInt64, GetString, Pull endi standart qiymat berish shart emas (Orqaga moslik saqlangan).
Route Fallback marshrutini qo'llab-quvvatlaydi
Versiya: v1.11.1
Kiruvchi so'rovga boshqa marshrut mos kelmasa bajariladigan marshrutni belgilashingiz mumkin.
facades.Route.Fallback(func(ctx http.Context) http.Response {
return ctx.Response().String(404, "topilmadi")
})Orm yangi usullar qo'shdi
Versiya: v1.11.1
| Usul | Harakat |
|---|---|
| db.Raw | Xom ifodalar |
| LockForUpdate | Pessimistik qulf |
| SharedLock | Pessimistik qulf |
facades.Config.Add() optimallashtirildi
Versiya: v1.11.0
facades.Config.Add() ning configuration parametri map[string]any dan any ga o'zgartirildi, bu konfiguratsiyani yanada moslashuvchan qiladi.
Sqlite haydovchi o'zgartirildi
github.com/mattn/go-sqlite3 CGO ni talab qilganligi sababli, CGO talab qilmaydigan uchinchi tomon paketi bilan almashtirildi: github.com/glebarez/go-sqlite.
contracts/http net/http usul xaritalashini qo'shdi
Versiya: v1.11.0
net/http import qilish o‘rniga, http.MethodGet ni kontrollerda to‘g‘ridan-to‘g‘ri ishlatishingiz mumkin.
Marshrut Resurs Marshrutlash Qo‘shish
Versiya: v1.11.1
facades.Route.Resource("/resource", resourceController)So‘rov Yangi Usullarni Qo‘shadi
Versiya: v1.11.1
| Usul | Harakat |
|---|---|
| Hammasi | Barcha kiritilgan ma’lumotlarni olish |
| Xost | So‘rov XOSTini olish |
| So‘rovlar | So‘rov qatori orqali kiritilgan ma’lumotni olish |
Form, Json usullari tez orada bekor qilinadi, iltimos, o‘rniga Input dan foydalaning.
Saqlash Yangi Usullarni Qo‘shadi
Versiya: v1.11.1
| Usul | Harakat |
|---|---|
| LastModified | Faylning oxirgi o‘zgartirilgan vaqtini olish |
| MimeType | Faylning mime turini olish |
Fayl Yangi Usullarni Qo‘shadi
Versiya: v1.11.1
| Usul | Harakat |
|---|---|
| LastModified | Faylning oxirgi o‘zgartirilgan vaqtini olish |
| MimeType | Faylning mime turini olish |
| Hajmi | Fayl hajmini olish |
Fayl Tizimi Uchun Noto‘g‘ri Windows Yo‘li Xatosini Tuzatish
Versiya: v1.11.1
Windows tizimida noto‘g‘ri chiziqcha mavjud.
So‘rov Uchun Header Usuli Panikasini Tuzatish
Versiya: v1.11.1
ctx.Request().Header( key: "token") panikaga sabab bo‘ladi.
Request.Input() va Request.Bind() ni Bir Vaqtda Ishlatishda Ma’lumot Xatosini Tuzatish
Versiya: v1.11.2
Request.Input() Request.Body ni tozalaydi, agar shundan keyin Request.Bind() dan foydalansangiz, ma’lumotni to‘g‘ri ola olmaysiz.
Schedule’da Panika Sababli Jarayon To‘xtashi Muammosi
Versiya: v1.11.3
Panika sodir bo‘lganda Schedule jarayoni to‘xtaydi, barcha vazifalar ta’sirlanadi.
Schedule’dagi DailyAt Har Minut Bajarilishi Muammosi
Versiya: v1.11.3
DailyAt har minut bajarilishi muammosini tuzatish:
func (kernel *Kernel) Schedule() []schedule.Event {
return []schedule.Event{
facades.Schedule.Call(func() {
fmt.Print("1")
}).DailyAt("18:00"),
}
}