Releases: WebFiori/framework
Version 2.2.0 Bata 1
Changes
This release separates the application layer from the core of the framework.
WebFiori Framework v2.1.0 Stable
Change Log
-
Refactoring
- Renamed class
WebFiori
toWebFioriApp
.
- Renamed class
-
New Features
- Allow the developer to set custom sessions storage engine using the constant
WF_SESSION_STORAGE
. - Added new class:
WebPage
. This class is used to build web pages instead of using the classPage
. - Added the class
AppConfig
which holds all different global configurations. - Now the framework will render web pages which uses the class
WebPage
automatically. - Added support for new language class creation when a new display language is added.
- Added a way to allow the developer to register database table classes using the method
DB::register()
- Allow the developer to set custom sessions storage engine using the constant
-
Added database session storage implementation.
-
Deprecations and Removals:
- Removed the class
Config
,MailConfig
andSiteConfig
. - Deprecated the class
Page
. Will be removed next release.
- Removed the class
-
Other Changes:
- Added new method to the class
File
which can be used to append data (File::append()
). - Updated all themes to depend on the class
WebPage
instead of using the classPage
.
- Added new method to the class
Installation
Using Composer
To install the latest release using composer, use the following command:
php composer.phar create-project --prefer-dist "webfiori/framework" <project-folder>
Replace <project-folder>
with the name of the folder that will hold your project.
Using Attached File
Optionally, you can download the file webfiori-v2.0.0.zip
which is part of this release if you don't want to use composer in installation. Once downloaded, extract the content of the file in your project folder.
Running Using PHP's Built-in Server
To run the project, open command line interface and navigate to <project-folder>/src
. While inside the folder, run the following command:
path/to/php.exe -S localhost:8080 -t public
In your web browser, open http://localhost:8080 . Note that if the framework is installed using attached release, no need to add the src
folder. Just navigate to <project-folder>
Wondering what is WebFiori Framework? Check following link for more information: https://webfiori.com/learn/introduction
Learning Resources
If you are new to the framework and would like to learn how to use it, you can check at https://webfiori.com/learn .
WebFiori Framework v2.0.0 Stable
Changelog
-
New Features:
- Introduced the folder
app
. It can hold all source code which is related to the web application. - Added new
public
folder which should be set as server root in deployment. This folder can hold system resources such as images, css and js files. - New command line interface engine (more info at https://webfiori.com/learn/command-line-interface).
- Added support for middleware (more info at https://webfiori.com/learn/middleware) .
- Added new database abstraction layer (currently only support MySQL).
- Moved all request and response related things to a library called
HTTP
. - Added support for creating middleware class using CLI.
- Added support for creating background process class using CLI.
- Added support for creating web services using CLI.
- Added support for creating database tables classes and entities using CLI.
- Auto-Registration:
- CRON jobs which are created in the folder
app/jobs
are auto registered. - Commands which are created in the folder
app/commands
are auto registered. - Middleware which are created in the folder
app/middleware
are auto registered.
- CRON jobs which are created in the folder
- Introduced the folder
-
Email Related Improvements:
- Now it is possible to create more than one instance of the class
EmailMessage
. - Fixed encoding issues with sending emails Now supports emoji in names and subject.
- Now it is possible to create more than one instance of the class
-
Themes Related Improvements:
- Themes resources (js, css, images or fonts) now should be placed inside the folder
public/assets
. - Theme resources (js and css) are automatically loaded if resources directories names are set.
- Added support for loading themes using the syntax
Class::class
.
- Themes resources (js, css, images or fonts) now should be placed inside the folder
-
Routing Related Improvements:
- Added support for creating routes to classes using the syntax
Class::class
. - Support for redirect to non-www URL is added. It is possible to force the website to use non-www URLs.
- A 404 error page that uses default theme will appear if a route is not found by default.
- Added support for creating routes to classes using the syntax
-
New Classes:
- New class added:
AbstractJob
. This class can be used to implement custom cron jobs. - New class added:
CronEmail
. This class is used to send cron output and cron notifications. - New class added:
GlobalConstants
. The main aim of this class is to allow the developer to define his own global constants in one place. - New class added:
UploadFile
. This class is used by the class Uploader to use it instead of returning associative arrays.
- New class added:
-
Other Changes and Improvements
- Improved error handling.
- Now the framework has its own set of exceptions which are found under the namespace
webfiori\framework\exceptions
. - Added a way to enable and disable cron web interface.
- Improved existing CLI commands.
- Root framework file changed from
WebFiori.php
toindex.php
. - Moved all framework related classes to the namespace
webfiori\framework
. - All standard libraries updated to latest versions
- Ability to install the framework using composer.
Installation
Using Composer
To install the latest release using composer, use the following command:
php composer.phar create-project --prefer-dist "webfiori/framework" <project-folder>
Replace <project-folder>
with the name of the folder that will hold your project.
Using Attached File
Optionally, you can download the file webfiori-v2.0.0.zip
which is part of this release if you don't want to use composer in installation. Once downloaded, extract the content of the file in your project folder.
Running Using PHP's Built-in Server
To run the project, open command line interface and navigate to <project-folder>/src
. While inside the folder, run the following command:
path/to/php.exe -S localhost:8080 -t public
In your web browser, open http://localhost:8080 . Note that if the framework is installed using attached release, no need to add the src
folder. Just navigate to <project-folder>
Learning Resources
If you are new to the framework and would like to learn how to use it, you can check at https://webfiori.com/learn .
WebFiori Framework v2.0.0 Beta 5
Changelog
- Added support for loading themes using the syntax
Class::class
. - Fixed encoding issues with mailing classes.
- Fixed detected bugs.
Installation
Using Composer
To install the new release using composer, use the following command:
php composer.phar create-project --prefer-dist "webfiori/framework:v2.0.0-beta.5" <project-folder>
Replace <project-folder>
with the name of the folder that will hold your project.
Using Attached File
Optionally, you can download the file webfiori-v2.0.0-beta.5.zip
which is part of this release if you don't want to use composer in installation. Once downloaded, extract the content of the file in your project folder.
Running Using PHP's Built-in Server
To run the project, open command line interface and navigate to <project-folder>
. While inside the folder, run the following command:
path/to/php.exe -S localhost:8080 -t public
In your web browser, open http://localhost:8080 .
WebFiori Framework v2.0.0 Beta 4
Changelog
- Added support for creating middleware class using CLI.
- Added support for creating background process class using CLI.
- Fixed small detected bugs.
Installation
Using Composer
To install the new release using composer, use the following command:
php composer.phar create-project --prefer-dist "webfiori/framework:v2.0.0-beta.4" <project-folder>
Replace <project-folder>
with the name of the folder that will hold your project.
Using Attached File
Optionally, you can download the file webfiori-v2.0.0-beta.4.zip
which is part of this release if you don't want to use composer in installation. Once downloaded, extract the content of the file in your project folder.
Running Using PHP's Built-in Server
To run the project, open command line interface and navigate to <project-folder>
. While inside the folder, run the following command:
path/to/php.exe -S localhost:8080 -t public
In your web browser, open http://localhost:8080 .
WebFiori Framework v2.0.0 Beta 3
Changelog
- Updated
WebFiori HTTP
. - Updated database abstraction layer.
- Added full support for Arabic in Email (including sender name, receiver name).
- Fixed detected bugs.
- Bug in class
CreateCommand
- Bug in class
Router
- Bug in class
ConfigController
- Bug in class
Installation:
To install the new release using composer, use the following command:
php composer.phar create-project --prefer-dist "webfiori/framework:v2.0.0-beta.3" <project-folder>
Replace <project-folder>
with the name of the folder that will hold your project.
Optionally, you can download the file webfiori-v2.0.0-beta.3.zip
which is part of this release if you don't want to use composer in installation.
Running Using PHP's Built-in Server
To run the project, open command line interface and navigate to <project-folder>
. While inside the folder, run the following command:
path/to/php.exe -S localhost:8080 -t public
In your web browser, open http://localhost:8080 .
WebFiori Framework v2.0.0 Beta 2
Changelog
- Renamed the library
RESTEasy
toWebFiori HTTP
. - Moved all things which is related to request and response to the library
WebFiori HTTP
. - Added support for middleware (more info at https://webfiori.com/learn/middleware) .
- Moved initialization classes from the folder
ini
to the folder `app/ini'. - Removed all deprecated classes in the folder
entity
. - Fixed detected bugs.
Installation:
To install the new release using composer, use the following command:
php composer.phar create-project --prefer-dist "webfiori/framework:v2.0.0-beta.2" <project-folder>
Replace <project-folder>
with the name of the folder that will hold your project.
Optionally, you can download the file webfiori-v2.0.0-beta.2.zip
which is part of this release if you don't want to use composer in installation.
WebFiori Framework v2.0.0 Beta 1
Changelog
Version 2.0 of the framework will be a full refactor of version 1.0. It includes many changes. Some of them are:
- All standard libraries where updated.
- Moved all framework core files to new namespace.
- All standard libraries are now part of the namespace
\webfiori\
. - Root framework file changed from
WebFiori.php
toindex.php
. - New sessions management sub-system.
- Fully supports composer.
- Added new
public
folder which should be server root. - Added new
app
folder. Developer must use this folder to add his code. - Changed how CRON jobs should be implemented.
- CRON jobs which are created in the folder
app/jobs
are auto registered. - Commands which are created in the folder
app/commands
are auto registered. - Removed the class
webfiori\logic\Controller
as it is not needed. - Updated database library from
phMysql
to use a new database abstraction layer. - Now it is possible to create more than one instance of the class
EmailMessage
. - Themes resources (
js
,css
,images
or fonts) now should be placed inside the folderpublic/assets
. - Changed how web services created.
- Updated the
add
CLI command. - Added new command:
update-table
.
In addition to listed changes, All changes which are planned for v1.1.0 are included in this release.
Documentation
Now the framework has a written documentation that covers most framework features. The documentation can be found at https://webfiori.com/learn . The actual docs are hosted on https://github.com/WebFiori/docs . Note that the documentation is still under development.
Installation
To install the new release using composer, use the following command:
php composer.phar create-project --prefer-dist "webfiori/framework:v2.0.0-beta.1" <project-folder>
Replace <project-folder>
with the name of the folder that will hold your project.
Optionally, you can download the file webfiori-v2.0.0-beta.1.zip
which is part of this release if you don't want to use composer in installation.
WebFiori Framework v1.1.0 Beta 3
New Features:
Core
- Added support for multi-language sitemap creation.
- New command:
add
. Used to add database connections, SMTP connections and website languages. - Modified how the framework will create the configuration files if they are not exist.
Installation
To install the new release using composer, use the following command:
php composer.phar require "webfiori/framework:1.1.0-beta-3"
WebFiori Framework v1.1.0 Beta 2
New Features:
Core
- New class added:
UploadFile
. This class is used by the classUploader
to use it instead of returning associative arrays. - Refactored the class
File
and deprecated two methods and added two new. - Router now detects API routes for classes which are children of the class
WebServicesSet
. - Added a way to only use one connection for all controllers if the connection already exist.
Standard Libraries
- Updated the library RESTEasy to the latest release.
Fixes:
- Many fixes to the class
SessionManager
. - Fixed small bug in the class
ServerErrView
Other changes:
- The framework will now auto-load any files that are created in the top level folder
app
Installation
To install the new release using composer, use the following command:
php composer.phar require "webfiori/framework:1.1.0-beta-2"