Index.php
- [Değişti]: Akış BarakApplication.php üzerinden yapılması sağlandı.
Composer
- Değişiklik yok.
BarakApplication +
- [Açıklama]: Ana Çekirdek ve Modüllerin yüklenip ilgili yönlendiricinin sevk edildiği sınıf oluşturuldu.
kernel
vemodules
olmak üzere iki kütüphane yükleme ayarlandı.modules
olarak:cacher
,mailer
,model
,http
ekleme olanağı eklendi.
lib/
kernel/
Application -+
-
[Değişti]: Tüm sınıf BarakApplication olarak yeni sınıf ismiyle taşındı.
-
[Eklendi]: Yeni
config/application.php
çekirdek yapılandırma dosyasını okuyan sınıf oluşturuldu.
Çekirdek genel ayarları olarakdebug
,timezone
,locale
,logger
set etme imkanı ve modül ayarları olarakcacher
,mailer
,model
,http
ekleme olanağı eklendi.
Application::config(function() {
set("timezone", "Europe/Istanbul");
set("debug", true);
set("locale", "tr");
set("logger", [
"file" => "production", // dosya ismi
"level" => "info", // en kapsamlı yaz
"driver" => "weekly", // haftalık
"rotate" => 4, // 4 yedek
"size" => 15728640 // 15 MB
]);
modules(["cacher", "mailer", "model", "http"]);
});
ApplicationAlias
- [Değişti]: ApplicationRoutes kısa yol fonksiyonları BarakApplication'a taşındı.
ApplicationCache -
- [Açıklama]: Sınıf kaldırıldı. ApplicationCache → ApplicationCacher olarak taşındı.
ApplicationConfig
-
[Değişti]: Application için
config/application.ini
dosyası kaldırıldı,config/application.php
dosyası eklendi. -
[Kaldırıldı]: ApplicationLogger için kullanılan
config/logger.ini
yapılandırma dosyası kaldırıldı,config/application.php
dosyası içerisinde yapılandırılacak şekilde taşındı. -
[Eklendi]: ApplicationCacher için
config/cacher.ini
dosyası içerisindedatas
,clear
saniye cinsinden girilen değerlere göre anahtara göre ön bellekleme ve genel ön bellek temizliği imkanı sağlandı.
ApplicationController
ApplicationDebug
- [Değişti]: Hata gösterme durumu varsayılan olarak
true
şeklinde değişti.
ApplicationDispatcher
- [Eklendi]: Controller isminin tam adı loglanması sağlandı. (Ör.:
Processing by WritepageController#show as HTML gibi
)
ApplicationHelper
- Değişiklik yok.
ApplicationI18n
- [Eklendi]: Tembel anahtar özelliği eklendi. Her template dosyasının bir title vermek isterseniz ve buna kolayca erişmek istenirse kullanılır.
Ör.:
<title><?= t(".title"); ?></title>
- [Eklendi]: Anahtara parametre gönderme özelliği eklendi.
Ör.:
<title><?= t(".title", ["writer_name" => $writer_name]); ?></title>
ApplicationLogger
- [Değişti]:
driver
,file
,rotate
,level
,size
anahtarları ile logger çalışma şekli değişti.
ApplicationRequest
- [Değişti]: Kullanıcı istek zamanına
GMT
eklenerek değişti.
ApplicationResponse
- Değişiklik yok.
ApplicationRoute
- Değişiklik yok.
ApplicationRoutes
- [Değişti]: Normalde
head
,options
gibi (get
,post
harici) method isteklerinde expection yönlendirmesi sonucupublic/500.php
sayfası gösteriliyordu. Buna uygun bir http status buluna kadar diğer frameworklerde kullanılan genel davranış olarakpublic/404.php
sayfasına yönlendirme yapılarak değişti.
ApplicationView
-
[Değişti]: Görünüm dosyasına(
Template
) gönderilen değişkenlere sadece o görünüm dosyasında ve alt görünüm dosyalarında erişim sağlanıyordu. Şimdi görünüm yerleştirme dosyasında da(Layout
) bu değişkenlere erişme imkanı sağlanacak şekilde değişti. -
[Eklendi]: Ana render için log kaydı oluşturulması eklendi.(Ör.:
Rendering home/index.php within layouts/home.php gibi
)
modules/
cacher/
ApplicationCacher +
-
[Açıklama]: Sınıf oluşturuldu. ApplicationCache → ApplicationCacher olarak taşındı.
-
[Değişti]:
reset()
fonksiyonuclear()
olarak değişti. -
[Değişti]: Değişkenler sadece ismine göre kaydedilecek şekilde değişti. (Değişken kaydederken her
istek_url
ye özgü ön ek eklenmesi silindi. Bir değişken her yerden erişilebilir olduğu için tekil(unique) yapmak istenirse Helper sınıfı oluşturulupfonksiyon_ismi + değiken_değeri
kullanılabilir.)
http/
ApplicationHttp
- Değişiklik yok.
mailer/
ApplicationMailer
-
[Onarıldı]: Web sunucular sistemi çalıştırmaya devam etsede fazla olan "/" path kaldırıldı, bug onarıldı.
-
[Eklendi]: Mail render için log kaydı eklendi. (Ör.:
Rendering mail/notice/home.php within layouts/mailer.php gibi
)
model/
ApplicationDatabase
- Değişiklik yok.
ApplicationModel
- Değişiklik yok.
ApplicationQuery
- Değişiklik yok.
ApplicationSql
- Değişiklik yok.