Getting involved in development

General discussion of development ideas and the approaches taken in the 3.x branch of phpBB. The next feature release of phpBB 3 will be 3.3/Proteus.
Forum rules
Please do not post support questions regarding installing, updating, or upgrading phpBB 3.2.x. If you need support for phpBB 3.2.x please visit the 3.2.x Support Forum on phpbb.com.

If you have questions regarding writing extensions please post in Extension Writers Discussion to receive proper guidance from our staff and community.
Tomba
Registered User
Posts: 17
Joined: Sat Apr 12, 2003 1:59 pm

Getting involved in development

Post by Tomba » Wed Mar 06, 2019 10:31 pm

Being somewhat disappointed with progress recently, I decided to give it another go in trying to get involved and do some phpbb coding.
While checking a few bits though, I've hit some issues which make it a bit difficult to get up and running without further help.

- First of all, who decides what goes in which branch? I mean, how is a change considered small enough to be able to go into 3.2
- On https://wiki.phpbb.com/Main_Page , there's a section for 3.0 and 3.1, but nothing for 3.2. Where can one find the RFC's that were done in 3.2?
- Is there some list of what changes will be done in 3.3 ?
- Also, the phpBB idea's page seems like a good thing, but how can items be in progress there, when the linked JIRA issue is "open", not assigned, and has no pull requests?

Note: I'm a software developer, but I'm pretty new to open source development.

User avatar
DavidIQ
Customisations Team Leader
Customisations Team Leader
Posts: 1828
Joined: Thu Mar 02, 2006 4:29 pm
Location: Earth
Contact:

Re: Getting involved in development

Post by DavidIQ » Wed Mar 06, 2019 11:02 pm

Tomba wrote:
Wed Mar 06, 2019 10:31 pm
- First of all, who decides what goes in which branch? I mean, how is a change considered small enough to be able to go into 3.2
Only fixes should go into a released version's branch, in this case 3.2.x. For the most part the only time a feature will be considered for inclusion in a released version is if it is identified as the only way to address a serious bug. New features should go into master. The GitHub template we're using for pull requests has some more information:
GitHub Pull Request Template wrote:
  • Correct branch: master for new features; 3.2.x for fixes
  • Tests pass
  • Code follows coding guidelines: master and 3.2.x
  • Commit follows commit message format
Tomba wrote:
Wed Mar 06, 2019 10:31 pm
- On https://wiki.phpbb.com/Main_Page , there's a section for 3.0 and 3.1, but nothing for 3.2. Where can one find the RFC's that were done in 3.2?
https://www.phpbb.com/about/launch/
The RFC approach hasn't been followed much since we released 3.1.
Tomba wrote:
Wed Mar 06, 2019 10:31 pm
- Is there some list of what changes will be done in 3.3 ?
You'd have to use GitHub for finding what's already been done:
https://github.com/phpbb/phpbb/compare/3.2.x...master
And there are also pending pull requests that are tagged as 3.3.
Tomba wrote:
Wed Mar 06, 2019 10:31 pm
- Also, the phpBB idea's page seems like a good thing, but how can items be in progress there, when the linked JIRA issue is "open", not assigned, and has no pull requests?
Can you be more specific on what ideas are listed as in progress but have no tracker or GitHub links?
Image

Senky Online
Extension Customisations
Extension Customisations
Posts: 314
Joined: Thu Jul 16, 2009 4:41 pm

Re: Getting involved in development

Post by Senky » Thu Mar 07, 2019 8:57 am

DavidIQ wrote:
Wed Mar 06, 2019 11:02 pm
Tomba wrote:
Wed Mar 06, 2019 10:31 pm
- First of all, who decides what goes in which branch? I mean, how is a change considered small enough to be able to go into 3.2
Only fixes should go into a released version's branch, in this case 3.2.x.
Plus new events (both php and template).

Tomba
Registered User
Posts: 17
Joined: Sat Apr 12, 2003 1:59 pm

Re: Getting involved in development

Post by Tomba » Thu Mar 07, 2019 8:05 pm

DavidIQ wrote:
Wed Mar 06, 2019 11:02 pm
Tomba wrote:
Wed Mar 06, 2019 10:31 pm
- On https://wiki.phpbb.com/Main_Page , there's a section for 3.0 and 3.1, but nothing for 3.2. Where can one find the RFC's that were done in 3.2?
https://www.phpbb.com/about/launch/
The RFC approach hasn't been followed much since we released 3.1.
Shouldn't this be properly documented then? I read there is a suggestion to create an RFC under phpbb4, and then create a related link in area51 forum. Isn't that still the case then?
DavidIQ wrote:
Wed Mar 06, 2019 11:02 pm
Tomba wrote:
Wed Mar 06, 2019 10:31 pm
- Is there some list of what changes will be done in 3.3 ?
You'd have to use GitHub for finding what's already been done:
https://github.com/phpbb/phpbb/compare/3.2.x...master
And there are also pending pull requests that are tagged as 3.3.
OK. Is it the aim then to have such a list by release date, or do you refer to github like this?
How was this in 3.2?
DavidIQ wrote:
Wed Mar 06, 2019 11:02 pm
Tomba wrote:
Wed Mar 06, 2019 10:31 pm
- Also, the phpBB idea's page seems like a good thing, but how can items be in progress there, when the linked JIRA issue is "open", not assigned, and has no pull requests?
Can you be more specific on what ideas are listed as in progress but have no tracker or GitHub links?
I stand corrected. The auto-resize avatar idea has an issue that is assigned, but "Open". I just checked that the phpbb JIRA apparently does not have an "In progress" status, like I've seen on almost all JIRAs i've worked with. Was that a specific choice?

User avatar
DavidIQ
Customisations Team Leader
Customisations Team Leader
Posts: 1828
Joined: Thu Mar 02, 2006 4:29 pm
Location: Earth
Contact:

Re: Getting involved in development

Post by DavidIQ » Thu Mar 07, 2019 8:54 pm

Tomba wrote:
Thu Mar 07, 2019 8:05 pm
Shouldn't this be properly documented then? I read there is a suggestion to create an RFC under phpbb4, and then create a related link in area51 forum. Isn't that still the case then?
We stopped doing RFCs after 3.1 was released and was basically replaced by the Ideas feature on phpbb.com to make it easier and more accessible for the community. If there is a place documenting an RFC process that has visibility then kindly point it out and we'll take care of adjusting or removing it.
Tomba wrote:
Thu Mar 07, 2019 8:05 pm
OK. Is it the aim then to have such a list by release date, or do you refer to github like this?
How was this in 3.2?
We rarely if ever put release dates on versions or features. And when we have we've found them to be more of a moving target. If you are looking for some list of planned changes for 3.3 then filtering tickets in the tracker by the various 3.3 tags should yield some results, something like this. Items in the Ideas center that have not been implemented and have enough community backing/support could also be considered for adding if the work is done for it (probably a good idea to create a ticket in the tracker for such an item). As is done with all pull requests, community contributions to the core will get scrutinized and reviewed, but once it passes muster it'll get added in.
Tomba wrote:
Thu Mar 07, 2019 8:05 pm
I just checked that the phpbb JIRA apparently does not have an "In progress" status, like I've seen on almost all JIRAs i've worked with. Was that a specific choice?
The workflow we've set up doesn't include that status so yeah it was a Dev Team choice. The aim was likely to fully rely on GitHub to transition ticket statuses in order to hopefully get more work easily submitted by users. So to indicate a ticket is in progress one of two things are possible:
  1. Add a note to the ticket indicating that it's being looked at
  2. Create a WIP pull request in GitHub which should link up to the associated tracker ticket and automatically transition it (Patch awaiting review). This can also be done manually if needed, but you'd still need the pull request link.
Image

Tomba
Registered User
Posts: 17
Joined: Sat Apr 12, 2003 1:59 pm

Re: Getting involved in development

Post by Tomba » Fri Mar 08, 2019 7:47 pm

DavidIQ wrote:
Thu Mar 07, 2019 8:54 pm
We rarely if ever put release dates on versions or features. And when we have we've found them to be more of a moving target. If you are looking for some list of planned changes for 3.3 then filtering tickets in the tracker by the various 3.3 tags should yield some results
Then how do you decide 3.3 is ready to be released? There is no date, and there is no requirement?

Is 3.3 in its current version already PHP 7.3 compatible, or does that still need some work?

User avatar
hanakin
Front-End Dev Team Lead
Front-End Dev Team Lead
Posts: 905
Joined: Sat Dec 25, 2010 9:02 pm
Contact:

Re: Getting involved in development

Post by hanakin » Fri Mar 08, 2019 8:05 pm

In relation to the specifc mentioned idea, the avatar resize was being worked but a pr has not been submitted yet.

have a look at the following topic for a guide on what we are hoping to accomplish for 3.3/4.0: viewtopic.php?f=81&t=61766&p=318491#p318491

As for releases the dev team weighs several factors usually to determine this and its different for every relase which is why its not listed. for exp 3.2 may require alot of bug fixes which takes away from work on the next minor release. Work on a major relase may also effect the reslease date of a minor release.

They also take into account the ammount of changes that go into a minor release.

Lastly They try to hit a 1 year mark if possible but as mentioned before certain factors can push this out beoynd our control.

As DaividIQ pointed out you can check the status of a release using the milestones on github ie https://github.com/phpbb/phpbb/milestone/11 for 3.3
The dev team will periodically add proposed changes to the milestone for a specific release until said time that the feature set for a that release is deemed as frozen.
Donations welcome via Paypal Image

User avatar
DavidIQ
Customisations Team Leader
Customisations Team Leader
Posts: 1828
Joined: Thu Mar 02, 2006 4:29 pm
Location: Earth
Contact:

Re: Getting involved in development

Post by DavidIQ » Fri Mar 08, 2019 8:23 pm

Tomba wrote:
Fri Mar 08, 2019 7:47 pm
Is 3.3 in its current version already PHP 7.3 compatible, or does that still need some work?
Still needs work: https://tracker.phpbb.com/browse/PHPBB3-15828
There might be some other 7.3-related issues as well outside of what was reported there. You'd have to poke around a phpBB forum running on that version presumably locally.
Image

Tomba
Registered User
Posts: 17
Joined: Sat Apr 12, 2003 1:59 pm

Re: Getting involved in development

Post by Tomba » Wed Mar 13, 2019 9:15 pm

DavidIQ wrote:
Fri Mar 08, 2019 8:23 pm
Tomba wrote:
Fri Mar 08, 2019 7:47 pm
Is 3.3 in its current version already PHP 7.3 compatible, or does that still need some work?
Still needs work: https://tracker.phpbb.com/browse/PHPBB3-15828
There might be some other 7.3-related issues as well outside of what was reported there. You'd have to poke around a phpBB forum running on that version presumably locally.
So it will be either 3.3 or 4.0 that supports PHP 7.3. I have reported my belief earlier in relation to 7.0, but apart from all the development work that happens with refactoring and features, I really feel like supporting the latest PHP release should always be a top priority. Not knowing when there will be a phpBB version that works on the latest PHP version may be a serious turn-off for people evaluating systems to set up a new board.

I really believe that as a team, you should be able to say, "we'll get 3.3 out there as soon as possible, including whatever we've got on master so far, and making sure it's compatible with the latest PHP". Reading the above, that does not seem to be the case.

Also, seeing that there's no 3.3 branch, I presume that everything that's "done" now on milestone/11 will be in the next major/minor release? Or is fancy branching and merging considered a possibility? ;)

I'll see what I can do to locally run the master branch and test a bit. Is there documentation on how to install such a master branch?

User avatar
DavidIQ
Customisations Team Leader
Customisations Team Leader
Posts: 1828
Joined: Thu Mar 02, 2006 4:29 pm
Location: Earth
Contact:

Re: Getting involved in development

Post by DavidIQ » Wed Mar 13, 2019 9:31 pm

Most projects will only create a version branch once there is a beta or even alpha out, neither of which we've released. Once that happens, as is the case with most other projects that use source control, it will be created off of what is in master. Therefore whatever is marked as done in the 3.3 milestone is what is currently in the master branch.

I'm not sure what exactly in the cited ticket indicates we will not be supporting PHP 7.3 in phpBB 3.3, but I do state in that ticket we should apply the changes to 3.3. As an aside to that 3.2 already "works" with PHP 7.3 even though there are some warnings that may come up, which is what would need to be addressed as well as the installer failure from that ticket. The runtime warnings seem to come up at cache creation time as I've not seen them at any other time while using 3.2 with 7.3.
Image

Post Reply