I’ve updated the dates in…

I’ve updated the dates in the Schedule (in the sidebar of the bpdevel.wordpress.com site) for the #2.8 release timetable.

Hi everyone. As usual, BuddyPress’…

Hi everyone. As usual, BuddyPress’ contributor chat has been moved back to 20:00 UTC on Wednesdays, after the recent DST timezone changes for the majority of our frequent contributors.

Apologies to those who get caught off-guard by this late change for today’s meeting; at least you’ll be there on time!🙂

Build/Test tooling

It’s always fun figuring out improvements for our build and test tooling, to make life easier for regular contributors. Does anyone have any ideas for things we can do to improve this in BP #2.8 ? I’ve given this a bit of thought. We could:

  • Grunt: remove dependency on Ruby by removing grunt-scss-lint#7028 (in progress)
  • Move bbPress 1 out of buddypress.svn.wordpress.org, and manually add it in when we commit the release build to plugins.svn.wordpress.org. We already do this for the bp-default theme. ?
  • Iterate on the NPM package versions and shrinkwrapping and related requirements, and make it work 100% reliable on @boonebgorges computers.🙂
  • Look into performance improvements using Yarn, which acts as a wrapper/CDN for NPM. ?
  • Add Git commit hooks.
    • All committers work in Git, and commit to BuddyPress via git-svn. It isn’t an option to switch to committing in Git directly as the moment. We should think about what things we could/should pre-commit hook.

Super interested to hear any feedback or other ideas or wishlists around tooling! Share in comments below!

Tooling

BuddyPress integrates with a number of third-party services via Github that help us build a stable piece of software. To document what the project currently uses, I wanted to write a quick list:

  • Travis-CI
    • PHPUnit tests; Grunt build script test; code-coverage generation.
  • Codecov (new!)
    • Code coverage tracking.
  • Scrutinizer
    • Code standards review; PHPDoc review.
    • Scrutinizer is very tricky to configure well, so we’re still unconvinced if this is useful to us. Experimental.

Code coverage reports are new as of this week, and I look forward to using them to help us evaluate if new features we add have adequate test coverage.

#codeco-io, #scrutinizer, #tooling, #travis-ci

I’ve just committed the patch…

I’ve just committed the patch in https://buddypress.trac.wordpress.org/ticket/6923 to trunk/2.7. It’s an enhancement to grunt patch to allow you* to upload patches directly to a Trac ticket, and also to download a Github pull request and apply it as a place. See the commit message https://buddypress.trac.wordpress.org/changeset/10936 for instructions.

*Only BuddyPress Trac admins and bug gardeners have access to upload patches in this way.

Congratulations all contributors to BuddyPress…

Congratulations all contributors to BuddyPress 2.6! For those who attend our dev meetings regularly, please note that next week’s scheduled meeting — 29th June — is cancelled to give everyone a chance to relax. It’s quite probable that some members of the team will be on Slack then anyway, so we’d love to have a casual chat if you happen to be around.🙂

The dev chat scheduled for 6th July is on, and it will be used to discuss any problems that have been found since release of 2.6, and to discuss ideas for BuddyPress 2.7 and ways to help contribute to it.

Trac milestone improvement ideas

I’ve been reviewing how we manage trac tickets to try to improve how we manage and prioritise feature requests and suggestions. We have many great ideas in our Future Release milestone, but all too-often that’s become the place where great ideas go to die. At time of writing, the milestone contains nearly 700 tickets, and not even I know what’s good in there, or even what was once good but now redundant.

Our current workflow is: new ticket -> [Awaiting Review] -> [Under Consideration] -> [Future Release] or [Release Milestone] or closed ticket.

“Under Consideration” is where new suggestions live while we evaluate them and gather further feedback and comment. This is a relatively recent addition in the last couple of years, and it’s helped seperate tickets we haven’t looked at yet (“Awaiting Review”) to those we are looking at.

I propose we should try tweaking how we approach the “Future Release” milestone so we gain better understanding and awareness of vetted suggestions and bug reports, which in turn will help existing and new contributors find exciting tasks to work on. Et voilà!

trac milestone screenshot

  • At the top of the pyramid, we have the two next release milestones (major and minor releases) which will work the same as they do today.
  • “Up Next” is a new milestone containing important or strategic tickets that our regular contributors have expressed in working on within the next two releases.
  • “Maybe Later” is a new milestone containing tickets that our regular contributors have decided that we have significant interest in working on, or are of a strategic importance, but less so than those in “Up Next”.
  • “Awaiting Contributions” is a new milestone. It contains tickets that our regular contributors have decided would be valuable enhancements for BuddyPress, but which are unlikely to be worked on by those regular contributors for the forseeable future — because they are less important than those in the other milestones.
  • This is pyramid-shaped on purpose. The milestones at the bottom should always contain more tickets than those at the top.

If this idea has support, we’ll have to spend alot of time reviewing the entire Future Release milestone, which is a great opportunity to close any tickets that are now irrelevant for some reason. The “Future Release” name itself would no longer be used to avoid confusion.

I would be very happy to hear your feedback on the proposed milestone changes (would they work? are they solving the right problem?).