During Google Summer of Code, I have been working on refactoring the authentication system (login and registration) to allow for login via OpenID providers and Facebook Connect [code]. The system’s old authentication plugins (db, ldap, apache) have all been ported to the new authentication provider system and can be enabled/disabled via the administration control panel. Currently, OpenID is implemented using the Zend Framework 2 OpenID package. The Zend Framework 2 OpenID code, currently does not allow login via Google (a popular OpenID provider), however, support for login via Google should be available by the end of Google Summer of Code. The user interface has been nominally changed from its previous look, however, additional changes to the interface will be made to make logging in via various popular providers more convenient for users.
The current (temporary) login box design.
The current (temporary) registration design.
As can be seen from the images, not much work has been done on styling the interface. It currently is focused on functionality for use in tests. The design of the interface will undoubtedly change before the end of Google Summer of Code.
For the remainder of the summer, I will be implementing login via Facebook Connect and potentially (time permitting) adding general support for OAuth2.0 providers. I will also be writing a wrapper class that will handle old authentication plugins so that they will continue to work while they are being transferred over to the new provider system.
I look forward to continue working with my mentor, Nils Adermann, on the remainder of the project. It has been a great experience so far contributing to phpBB, and although I’m am uncertain of how much time I will be able to commit after this summer, I look forward to continuing to work with phpBB and its community.
During the Google Summer of Code I’ve been working on improving the current attachment system to have a bit more of a modern feel to it. I’m integrating Plupload which has a variety of features such as drag-and-drop, multiple file uploads and an upload queue.
The work has been pretty straightforward and I’ve been getting a lot of help from mentors and other team members so I’ve made considerable progress in a short time. The following screenshot shows Plupload integrated with phpBB and you can also look at the code itself in my pull request:
By the end of it, phpBB users (with modern browsers) should be able to enjoy a much smoother attachment experience without a bunch of page refreshes interrupting their posting or waiting ages for a file to upload only to find out it was too big.
It’s not my first time contributing to an open source project but, surprisingly, one of the most useful things I’ve learnt is actually how to use git properly. There are a huge number of really useful features that I’ve never had to use until I started contributing to a project of this size. It’s given me more than my fair share of headaches and some of my activity history on github is a bit embarrassing now but everyone’s been really patient and helpful and I like to think I’m starting to get the hang of things now.
I’m having a lot of fun and intend to keep contributing to the project long after the GSoC has finished.
Yesterday marked the announced feature freeze date for phpBB Ascraeus 3.1. We have postponed this date once before and we are still a bit behind schedule, but we will stick to it this time. We have picked a number of features with unfinished implementations or still in RFC phase which we believe to be very important and which can be realistically finished in time. We are still learning to work with our new development model and I’m sure we will improve until the phpBB Arsia 3.2 release. All features that are implemented or suggested after today are going to have to wait for phpBB Arsia 3.2 to become part of phpBB (small exceptions may be made).
As you can see from the list below this release is going to focus on improving a number of existing features as well as improving MOD installation & MOD writing. The following is the list of features and improvements for 3.1 in no particular order:
Patch in progress:
- Migrations (UMIL) RFC Ticket Data Providers RFC
- Changing IP banning to use ‘longest prefix matching’ RFC Ticket
- Ability to delete auto login keys RFC Ticket
- Authentication Plugin Refactoring, User Integration & OpenID RFC Ticket
- Session Backend Abstraction (memcache support) RFC Ticket
- Search Backend Refactoring RFC Ticket
- Pre-Compile Template Includes RFC
- Overridable imageset and theme paths for CDNs RFC
I would like to thank the rest of the development team for their work so far, and am looking forward to to finishing the first release of Ascraeus together with them. A special thank you goes to all the other volunteers who have brought great ideas to the proposal process and have provided us with high quality patches. They have really made me appreciate our active community and I’m looking forward to more collaboration during the next steps toward 3.1. You can find a list of all the contributors who have written code that was already merged at github This list will gain in length over the coming months as more of the proposed changes are merged.
Please discuss this blog post on the forum.
The Development team have decided to move the bug trackers for phpBB to Atlassian JIRA, we undertook this change after evaluating the options we had available and settled on JIRA as the best solution. phpBB has been using custom written bug tracker software for as long as I can remember, our custom software is simple and it works but it has deficiencies. Instead of updating and maintaining our own bug tracker we’ve decided to use an existing solution, after all we’d rather spend time developing phpBB than developing the tools to manage phpBB development!
Using JIRA we’ve got a number of things we wanted for the existing tracker right out of the box, for example now you can submit not only bugs but also improvements and feature requests. Now before everybody rushes off to the tracker to submit a feature request for kitchen sinks we have a few requests of our own, unless you have a decent proposal already (something more than one sentence) ask on Area51 and discuss it with community members and flesh out a proposal which fully explains what you’d like to add and why. If you have a patch or a Git branch we can pull from for either bugs, features or improvements even better! We’ll be revising much of the development section of the website to reflect the move to Git and JIRA as time permits.
The big deficiency with our tracker was a new tracker instance was required for each software branch, but bugs in branches with common ancestors may very well be shared. Now JIRA allows us to track the status of bugs in multiple branches of phpBB. Also included with JIRA is the ability vote on tickets encouraging us to fix them faster or implement a feature request sooner, it allows us to roughly gauge popularity of a ticket and but greater number of votes will not necessarily mean something is implemented sooner. We gain the ability to track dependencies between tickets, so we know which tickets need to be resolved before others can be tackled.
In the future we will also be using other development tools by Atlassian, but there is no time frame for when they’ll be installed.
You can find the new tracker at http://tracker.phpbb.com/, the security tracker has not moved it still resides at: http://www.phpbb.com/security/.
Please discuss this article on the forum.
About a month ago I was promoted to phpBB’s lead developer position. When I was given that role I was asked to present to the management team what my plans for phpBB are. But since they concern all of you, the phpBB community, I believe they belong here as well.
We are currently in the process of releasing phpBB 3.0.7, a smaller bug fix release of Olympus. After that development will split into multiple branches. Meik has already explained our new versioning system in a previous announcement. What this means is that after 3.0.7 is released we will start working on two branches: Ascraeus – the future phpBB 3.1, and Rhea – the future phpBB4. At the same time we will continue maintanance releases of Olympus.
Over the last few weeks we have made a few important decisions, that we believe can positively impact phpBB development. These include changes to development infrastructure as well as our development model. I will briefly outline these changes here, more details will be posted on the blog or as an announcement soon. Read the rest of this entry »
The phpBB Development and Management Teams met in Cologne, Germany last week for 4 days of exciting brainstorming and coding.
We discussed future phpBB releases and worked on phpBB 3.0.6. Our plans for 3.0.6 have previously been discussed on this blog, but we decided to add even more. One feature we decided upon and implemented during the meeting was PM reports. This feature allows users to report private messages to moderators just like posts. A reported private message will then appear in a new MCP module so moderators can read the message and act upon it. This is particularly useful for users who want to report spam PMs. From this feature emerged another: emptying a user’s outbox. This option, in the Manage Users section of the ACP, allows the deletion of all unread PMs sent by a spammer.
Yet another idea we had during the meeting, which has already been announced, is the Best CAPTCHA Plugin Competition. I would like to urge all MOD developers to participate in this competition since a large variety of CAPTCHAs is the most effective measure against spammers. With the new CAPTCHA API, creating a CAPTCHA plugin is really simple. The example Q&A CAPTCHA Plugin, which will ship with phpBB 3.0.6, was also created during the meeting.
Details of the decisions made regarding the future of phpBB will be published in separate blog posts over the next several weeks, so make sure to check back for news! Of course, the meeting was also a great opportunity for us to get to know each other better. Most of us had already met at Londonvasion last year, but it was great to catch up with everyone again! We visited the Chocolate Museum and climbed the tower of the Cologne Cathedral. All in all, we had lots of fun too. During the meeting, we were happy to invite bantu to join the Development Team.
View from the cathedral
Team at work
Andreas (bantu), Dominik (dhn), front: Jim (TerraFrost), back: Nils (naderman), Meik (Acyd Burn), Marek (APTX), Chris (ToonArmy), Henry (kellanved), Carolina, Yuriy (Marshalrusty), Igor (evil<3)
Here we are. phpBB 3.0.5 got released and work on phpBB 3.0.6 began. Previously, we concentrated on fixing bugs and only introduced tiny new features. This time, phpBB 3.0.6 will be a “feature” release, packed with numerous new, cool, stunning, breath-taking… err, just new features. 😉 We will now tell you which new features are planned for 3.0.6 and what style authors and modders need to take care of.
Read the rest of this entry »
One of the advantages of a face-to-face meeting is that feature requests and feature discussion can be much more effective; at least if it is about minor window dressing as opposed to huge changes. To curb the wave of requests right here: you should have been there, the opportunity has passed . People watching the SVN repository may know already: there were some major changes in the past two weeks. A lot is moving right now in the active branches, but that’s for future posts.
Today it is a great pleasure for us to unveil a new feature for the 3.0 branch, to be released with 3.0.3: Template Inheritance.
Read the rest of this entry »