|
Written by admin
|
|
Friday, 28 November 2008 |
I think that now is the time to write about the presentations, which we (developers) have made at the conference Londonvasion, discovering our plans regarding the next version of phpBB, code-named Ascraeus. Do not take anything from this post for certain. There may be changes, some things may not change, others may be changed completely. But yes, so look out our plans.
The changes in requirements:
Requirements 3.0.x line was established several years ago, so we had to re-think about the requirements and decide how we want to support the old software.
As far as the programming language (PHP), we decided to abandon support for PHP4, mainly because when you issue phpBB Ascraeus, PHP4 will no longer exist (and has already been discarded) and probably longer issued PHP6. At the time of this writing, we plan to the minimum requirement will Ascraeusa PHP 5.2.0.
As far as support for databases, porzucimy support for version does not already supported by the manufacturers. For example, support for MySQL 3.x and 4.x is over - so we will only support the 5.x and 6.x
It is possible that we will have to raise other requirements, but it depends primarily on the market situation at the time of the first public release.
Significant changes in frameworku:
The aim of these improvements is to subdivide the phpBB into independent parts, for better abstraction of code, unit testing, ease of use and reuse, and the removal of spaghetti-code.
The organization of our system files will be significantly altered. Currently, the files are neither ponazywane or grouped consistently. We will try to resolve this problem the introduction of a simpler structure of the files. To understand this does not change its excessively in order to maintain some backward compatibility.
Phpbb static class contains the most commonly used global variables
For our "most important classes" ($ db, $ user, etc.) you can use a static class, generally traveling global namespace. For the variables can be appealed by phpbb: $ db, phpbb: $ user, etc.
Static class will have a method for recording facilities, which will be held. [footnote. crowd. (LEW21): It is impossible - outside of class, you can not define a new variable static, and inside you can only create a private variable. If the phpBB Group really thought about something that will have to change plans or switch to PHP 5.3.]
Profitable is to remove most objects, and simplify receive proper object instance by using singletonów. [footnote. crowd. (LEW21): Vocabulary original, is not I who invented-not-well-known-as-a significant design "the department object." Just a question - I do not know what Acyd meant by "removal of most objects".]
With reference to the main class of objects by static, global namespace remains niezaśmiecona.
Renamed classes to prevent the conflict from someone else's products / code
All our classes will be preceded by the prefix phpbb_, interfaces prefix phpbb_interface, abstract class prefix phpbb_abstract etc ...
Examples of extending our frameworku
Currently, some files are not loading common.php to initiate everything, which forces us to duplicate code in common.php. An example is the provision of attachments. To be able to have only one seat and one of the things code, add new init file, which will be responsible for activating all the "base" with minimal effort. This file will reference file common.php, but can also be included by other files need frameworku, but not the entire system.
So, essentially, are two ways you can use. The first license to use the script only framework, and the second - the loading of specific settings for phpBB.
What's more, our filtering functions, as validate_ *, and feature request_var () will be collected in order to simplify the (re) use. Features to generate URLs and redirecting move the same amendments.
Ascraeus will contain more hooków placed in facilities designated as "hookable." This will allow you to someone else's software to analyze and change in the script, for even simpler integration with existing code.
Cache'owanie:
Recently added new backends caching, in support of APC, XCache, shmop and others. In addition, the backend cache'ujący in the database will be raised. Change the internal structure of cache.
We shall containers cache - a real type of caching will be configurable separately for each container. For example, someone wants to use caching to save templates File, a database for global data and memcache to SQL - the implementation of this will be very simple. This is an example of the power it gives to implement changes in the frameworku.
New parser BBCode'ów:
New parser BBCode'ów will not have problems like those encountered in 2.0.xi 3.0.x. He was already wkommitowany to the repository and completely replace and improve the previous regime BBCode'ów. Teaching at 2.0.x, we have introduced new parser BBCode'ów to 3.0.x. Parser has had its problems, but not so much as that from 2.0.x, especially when it comes to safety. Now, when recognized problems, we can ensure that the parser BBCode'ów from 3.2.x will not be unexpected restrictions.
Part of the functions it has a new parser BBCode'ów:
* Parsing through the stack * The possibility of using BBCode'ów in any column text * The possibility of parsing BBCode'ów if the need * For example, allow BBCode'ów in cenzorach words * No distinction between its own and built-in BBCode'ami * Support for regular expressions in their own BBCode'ach * Change BBCode'ów storage system (separation of typed text and sparsowanego text)
Planned features:
Below is a list of planned innovations for Ascraeusa. There are listed the most important. This can be called our list of milestones (of course, we have cut its more ... but it is full nonsensów, unnecessary here).
* The new MCP (Panel Moderator) to complete processing capabilities MCP the addition of moderation without the possibility of entering the MCP on the ability to create notes on you when carrying out certain operations to be moderate in the search results prepared to answer to have more control over warnings * AJAX a library server-side implemented by the ACP progress bars content depends on the configuration used for high-speed tools moderatorskich do not use everywhere, but only in places where it is appropriate * System events (events) Events for: a call moments causing shares, for example, to write a new thread on condition: a condition that must be satisfied that the action was taken. Example: A user has reached 20 posts for Action: action, which will be made when the condition is true. Example: Add a user to a group of X a callback: shares converted the shares responsible, for example, serves to notify the user to add to the group * RSS * Changes in their own fields profile with new types (image, float, etc.) for all the built-profile field moved to their own fields profile * Amendments private messages acknowledgment of the request to read the message outbox to remove and replace its status as sending a message for the option to put the contents of the message in the notification about it the correct reporting of private messages * The system authentication The extension of the system with a tool to process data profilowych. Support for OpenID
Less significant planned news:
* The style does not store templates and themes in the database. This system will be backward compatible, but we want that to the file system was the main location for templates, themes and sets of images. Changes to the ACP may be applied to the file system. * Prefixes in the titles of the threads. * Special sections (Trash, Archive). * Easy removal. *'ll CAPTCHA. * Improvements in the session. * Support for kolejkowanych editing. * Extension of cron (scheduling tasks), to be able to define specific deadlines for the implementation of the activities. * An improved system for logging errors by adding additional opportunities for notification. * Editable FAQ and rules of the forum. * The system is used to help aid administrators, and this (small icon support). * The ability to determine the default settings staff members. * Support for such tools as Akismet. * Use the default language of variables in the case when something depends on the language is not available. * Support for domain names IDN IRI. * The full multilingual support - the ability to define some elements in many languages (for example, the names of departments, divisions descriptions). * Proper handling of the daylight saving time (automatic shift).
Events -> plugins -> Hookie -> API -> code
From the point of view, developer, Ascraueus will be divided into multiple mechanisms for different purposes.
Events: Used by developers / admins to define specific shares caused by the incident. Example: Put the user in the group X, if the number of its posts will be 10
They'll: Used by developers to create new functionality within existing systems. Example: Creating a new module ACP with a more precise statistics on the forum.
Hookie: Used by developers to integrate with other applications phpBB. Example: A bridge to the Joomla!
API: Used by developers in the use of frameworku to specific purposes. Example: Add a user to a group using the APIs Example: phpbb: $ api: $ user-> add_to_group ( 'Administrators')
Code: Used by developers and developers phpBB, and only modified by the latter. Example: append_sid function () |
|
Who's Online
We have 12 guests online
|