Dev Chat Summaries for April 19 & 26, 2017

BuddyPress 2.9

  • June 7 – Beta 1
  • June 14 – Beta 2
  • June 28 – Release Candidate 1
  • July 5 – BP 2.9.0 Release Date
  • There are currently 45 tickets slated for this release (19 closed, 26 open).

bp-nouveau

@hnla updates:

  • @mercime and I have been tackling various tasks including a11y aspects for form elements.
  • Made adjustments to the message displays to improve those adding icons as separate child elements rather than hooking to the parent element to be able to hide using aria roles.
  • New buddypress-wrap class added to the main wrapper so we don’t use the same class for body as we do the inner div.
  • Improving the ease of updating search & filter wrapping elements extracting to one include file so we only need to work in three files for all elements.
  • Created a new function to manage group descriptions excerpts to change $length values if the list display is set as grid boxes, which was required to effect an equal height-ish box.
  • Improved group grid layouts to improve those for min-heights and general breakpoints.
  • Refactored action elements in list layout views for better positioning & flow, removing absolute positioning in favor of stacking to the left on larger screens.
  • General refining of elements such as title sizes, metadata, and displays. A little attention was given to single screen subnavs to try and define them better visually at small/mobile screen layouts.
  • Travis CI is now up and running for bp-nouveau. Thanks @netweb. to the project

BP Trac Tickets

Only load component action and screen code when we’re on the component’s page (#7218) @r-a-y has refreshed patch. Requests opinion on the approaches taken before proceeding.

friends_add_friend() should convert accepted arguments (#7506) @r-a-y has committed fix to trunk.

Add identifying tag parameter to bp_has_*() loop arguments. (#7503) @dcavins requested dev feedback.

When user is not logged, if he/she clicks email link to view new messages gets 404 page when should get login page (#7349) @r-a-y has committed fixes for redirection issues and improving UX. Has refreshed patch after commits. Dev feedback requested.

Use stylelint to lint SCSS & CSS replacing Ruby Gem `scss_lint` (#7028) @hnla follows up with @netweb. We need to get this in early in dev cycle to test.

Move asset template parts away from bp-legacy (#7116) @r-a-y’s proposal only applies to core functionality like emails, embed, and attachments.

bp_group_has_members performs unnecessary query (#7513) @dcavins has patch for dev feedback.

JS Enqueued On Non-BuddyPress Admin Pages (#7512) @r-a-y has looked into issue posted by @kstover and requested more information since BP’s caret.js is enqueued correctly on admin pages.

Resize member avatar error with cyrillic (not latin) filename (#7484) @r-a-y has patch for dev feedback.

Fix for profile image upload on Microsoft Edge breaks iOS Safari and Chrome (#7416) @r-a-y has patch. Needs a Mac user to test.

Take advantage of BP_Groups_Group magic methods in groups component setup (#7416) @dcavins has patch. Ready to commit. Dev feedback requested.

BP_PHPMailer needs to set the `Date` header (#7509) @r-a-y has committed fix to trunk.

Test depends on PHP EXIF support; should fail more gracefully when absent (#7432) @r-a-y has committed fix to trunk.

{{user.site_url}} token not using HTTPS when site is on SSL (#7508) @r-a-y has committed fix to trunk.

BP Use Cases from BP Developers/Site Builders

@mercime announced that guest posts from BP Developers/Site Builders will be published soon at BuddyPress.org. The first batch of informative and interesting case studies have been submitted by developers who signed up during the BuddyPress 2016 Survey.

Slack logs:
April 19: https://wordpress.slack.com/archives/C02RQBYUG/p1492628459684302
April 26: https://wordpress.slack.com/archives/C02RQBYUG/p1493233250835528

#dev-chat

Dev Chat Summaries for April 5 & 12, 2017

bp-nouveau template pack

@hnla reported on the bug and a11y fixes made on bp-nouveau to date. He has added a temporary Gruntfile.js, primarily for compiling and linting Sass files, as well as other project-specific configuration files. @mercime will be posting solutions in codepen for removing placeholders from form controls.

Many thanks to @boonebgorges for delving deeply into bp-nouveau and his post introducing the new template pack.

BP REST API

@rayisme has started work on the /members endpoint for the BP REST API locally. He raised a question at the Github repo re Members – GET – List Users Schema. @modemlooper has responded in ticket.

@rayisme noted, “We’ll definitely have the /members endpoint ready by the time BP 2.9 is done, but probably will not be merged into core. The BP REST API will stay as a plugin for at least the next few release cycles until things have been fleshed out, similar to how the WP REST API was a plugin for awhile.”

Trac Tickets

Allow bp_get_group_permalink() to produce HTML links (#7485) @dcavins has committed fix to trunk.

Update bp_group_description_excerpt() to accept a $length param (#7493) @hnla has patch. @dcavins has responded to keep the group as the first parameter.

Required xprofile fields are not validated (#7483) @hnla has confirmed issue reported in ticket. Needs patch.

groups_send_invites() should allow us to omit sending to users that have already received an invite (#7397) @rayisme will be refreshing the patch for BP 2.9.

Include BP Edit Group Slug into the core (#6014) @dcavins refreshed the patch including unit tests. New patch adds support for changing group slug via wp-admin. Dev feedback requested.

Take advantage of BP_Groups_Group magic methods in groups component setup (#7494) @dcavins has patch. Dev feedback requested.

Use JOIN rather than Subquery on user search (#7442) @brandonliles has patch. Dev feedback requested.

Harmful bp_activity indexes (#7500) @johnjamesjacoby in discussion with @brandonliles.

Deprecate the BuddyPress functions for bbPress 1.x forums (#6851) @johnjamesjacoby introduced a motion to “remove bp-forums pretty much completely, or relegate it to its own compatibility plugin like we did Wire and Status.”
@boonebgorges concurred with the compat plugin route and noted, “I’d like to stage it over maybe two releases, with large warnings in the interim release if you are running legacy forums. Maybe even block upgrade to the removing-version if we detect you are running it (like we did with the 5.3 requirement). How many of them will upgrade to BP 3.0 or 3.1, that’s another question. But it’s easy enough for us to create barriers to white screens, so we should do so.” @johnjamesjacoby: “Making this release ideal for the warning. I think the 3.0.0 release is a nice round number to cut the old legacy forum cord, too.” @boonebgorges: “So admin notices + upgrade-blocks for 2.9, and maybe some logic in 3.0 that prevents loading the full plugin if the compat plugin is not found. Someone will need to wrangle all of the necessary steps, including preparing and releasing the compat plugin.”
@johnjamesjacoby has volunteered for the tasks, “the pleasure of the pain will all be mine.”

Create administration sections for every component that’s currently lacking an interface

@johnjamesjacoby: Friends, Messages, and Notifications basically. “Preferably, I’d like to also stagger the work on those, so the expectation isn’t to have a 100% fully covered and integrated interface that covers all users and use-cases. Similar to Groups Admin (how you can’t create a new group from within wp-admin). I really also want a live-chat style Messages UI while you’re in wp-admin”
@boonebgorges: “Big +1 to more admin coverage, though we should think carefully about whether each of these BP components needs its own top-level item. (Friends may be properly a property of Users, rather than its own thing, or whatever).”
@johnjamesjacoby: “Right now, all of BuddyPress makes theme-side websites better, and that’s awesome, and it should, and always will. But once you enter wp-admin, BuddyPress doesn’t actually help WordPress itself be a better piece of software for managing users, community content, etc. We don’t need to talk about all of the detail-work right now, but I wanted to drop that vision in here now, so everyone has an idea of what I’m thinking, and we can maybe try to hit that vision hard in 3.0 and beyond. Hopefully 2.9 and Nouveau and everything else will keep the traditional BuddyPress installation type satisfied for a few years, enough time to work on REST API, wp-admin integration, maybe some GraphQL if we like that, etc.”

BP Theme Compatibility

A basic visualization of the BuddyPress Theme Compat is now available for bp-templates/bp-legacy. Use Ctl/Cmd +/- to zoom in/out, scroll up/down or click + drag right/left to navigate. Visualizations for bbPress Theme Compat and the upcoming bp-nouveau template pack are also in the works.

Slack logs:
https://wordpress.slack.com/archives/C02RQBYUG/p1491418861341587
https://wordpress.slack.com/archives/C02RQBYUG/p1492023677928317
(Slack account is required)

#dev-chat

Dev Chat Summary for March 29, 2017

BuddyPress 2.9

  • There are currently 35 tickets in queue (8 closed, 27 open).
  • June 7, 2017 – Beta 1

bp-nouveau

@hnla gave a project status update. He will also be “tending to ongoing styling /layout concerns plus adding to the project cards. In terms of primary work the core focus needs to be on the Switcher element in core as outlined in #7157 – UI to pick Template Packs.”

Trac Tickets

Improve message after successful group invitation acceptance (#7486) @dcavins has patch. Will hold committing till after #7485 is resolved.

Allow `bp_get_group_permalink()` to produce HTML links (#7485) @dcavins has patch.

Multisite Relevant emails Display for editing on single site (#7480) c/o @johnjamesjacoby

PHP Fatal error: Uncaught Error: Call to a member function `get_do_autolink()` on null (#7337) needs patch.

`BP_Groups_Group::group_exists()` should be cached (#7447) @dcavins has committed fix to trunk.

Only load component action and screen code when we’re on the component’s page (#7218) @rayisme has patch. Feedback requested.

Include BP Edit Group Slug into the core (#6014) @dcavins has updated patch. Feedback requested.

Messages: member page messages are queried for the loggedin user (#7096) @dcavins has updated patch. Feedback requested.

Slack log: https://wordpress.slack.com/archives/C02RQBYUG/p1490813828429272

BP 2.9 Kick-Off Meeting – March 22, 2017

BP 2.9 Scoping/Wishlist

bp-nouveau Template Pack

@hnla, 2.9 Release Lead, will focus on getting bp-nouveau ready for integration into core this dev cycle. He noted, “bp-nouveau represents a clean break from those older templates, clean markup, new styles new file structure with include files and function files managing components and affords us the opportunity to build a better BP than ever before.”

@hnla encouraged all core devs to have a local install running the plugin version and to reconvene at next meeting for a renewed focus & to air any concerns. He has added the following guides to the project for all who want to contribute:

  • Milestones: https://github.com/buddypress/next-template-packs/milestones
  • Project cards: https://github.com/buddypress/next-template-packs/projects

The major steps to get this project for inclusion are pretty much covered by the milestones but broadly fall into:
1. Core integration: adding the switching mechanism to core admin settings, working out the logic for default selection & some means of registering packs in use.
2. Testing the process for stylesheet building and testing the core files merged to trunk along with possible gruntfile adjustments required.
3. Testing of components by device( mobile/ desktop & browser versions) and testing.
4. Testing Accessibility.

@boonebgorges: “I share Hugo’s belief that the time has come to move beyond bp-legacy, and I think that a new set of templates is critical for the future of the project. I’m going to be working with Hugo over the next few weeks to develop some materials that’ll introduce the rest of the team to the workings of bp-nouveau, as well as more details on a plan for moving toward merge, with the idea of soliciting as much energy and contribution from the broader team as possible.” He will help to get bp-nouveau in for 2.9.

@mercime noted that per her initial a11y audit of bp-nouveau (last year), there were items which needed to be fixed in core first. Edit – Most items have been fixed, there are only a few remaining a11y issues which will affect template pack left in core.

@modemlooper likes the Template Pack UI in admin which he thinks will open up lots of customization … spawning child themes of bp-nouveau.

@dcavins volunteered to help with bp-nouveau. @hnla mentioned his concerns with group creation wanted it more a one step process that we could then paginate if we wanted to but accessing certain meta is hard such as group ID at some points where you need it. @dcavins: “I also have some feelings about group creation. (Like change it to one step then redirect to the new group to setup.)”

@boonebgorges will be working on a summary document about bp-nouveau’s status plus user-facing and developer-oriented features over the next week or so.

BP REST API

@rayisme would like to see where we’re currently at and what we can accomplish in this dev cycle. @boonebgorges responded, “it needs someone to take the lead – there was some initial work done on the Members endpoint but it needs to be seen through.”

BuddyPress.org Redesign

@hnla brought up the redesign site/mockups by @modemlooper and @karmatosed and wanted to know the best way to get the redesign implemented.

@rayisme: “There are elements I like about both. modemlooper’s orange header + iconfont section and karmatosed’s “Are you a user / developer” section. At first, I didn’t like the orange header, but I like that it’s a little in-your-face.”

@modemlooper‘s design was à la https://jetpack.com/ and said, “the design reboot started because I thought the homepage lacked alot of marketing points.” @karmatosed thought that doing original design is good. She’s happy to noodle some more.

@johnjamesjacoby: “Naturally, I have opinions, but mostly I really want all of y’all to feel like these themes are yours to create/enjoy also. It seems like everyone is still in the “I wonder what this or that might look or feel like” which is totally fine. No rush, no agenda, and if something naturally suddenly clicks into the place, we should head that direction.”

Dev Chat Schedule

This is a friendly reminder that starting Wednesday, March 29, dev chat at the #buddypress channel on Slack.com will be at 19:00 UTC through the end of Daylight Savings Time for both U.S. and Europe.

Slack log: https://wordpress.slack.com/archives/C02RQBYUG/p1490212929620791
(Slack account is required)

#bp-nouveau, #dev-chat

General Summary as of February 6, 2017

Apologies for not posting updates here lately. This is a compilation of all the dev chats for January 4, 11, 18, 25, and February 1 plus relevant activities.

BuddyPress 2.8

BP 2.8 Trac

BP Email: Allow end user to specify which PHPMailer should be used (#7286). @djpaul has committed patch to trunk.

Alphabetical sorting in the group widget (#7313). @dcavins has committed patch to trunk.

Make group search more flexible (#7418). @dcavins has committed patch to trunk.

Use BP_Groups_Group::get() where possible (#7419). @dcavins has committed patch to trunk.

get_group_extras function doesn’t “respects” the user_id variable from groups_get_groups() function (#6431). Ticket punted to Future Release.

BP 2.8 – Prevent loading if PHP < 5.3 (#7277). @boonebgorges has commited patch to trunk.

Add View link for users on BP Signups page (#7261). @slaFFik has committed patch to trunk.

Group Types Default Pagination Broken (#7423). @r-a-y has committed patch to trunk.

When user is not logged , in he/she clicks email link to view new messages gets 404 page when should get login page (#7349). Ticket punted to BP 2.9.

XProfile: use filterable field input name in radio/checkbox field type (#7425). @offereins has committed patch to trunk.

Group and member template functions should check current group/member as well (#3842). Ticket punted to Future Release.

Notice: Trying to get property of non-object (#7329). @r-a-y has committed patch to trunk.

Welcome Screen for 2.8.0 (#7426). Under construction.

Hook for custom email type schema (#7431). @DJPaul has committed patch to trunk.

Update and fix all the NPM things (#7429). Ticket punted to BP 2.9.

XProfile: a group’s first field becomes last after save (#7428). @offereins has committed patch to trunk.

BuddyCamp Miami, March 24, 2017

WordCamp Miami hosts BuddyCamp for the 6th time and this year, expect a REST API workshop along with interesting BuddyPress topics in this single full-day event.

As of Feb. 6, topics for the “BuddyCamp + REST API” track on Friday, March 24th, include:

  • “BuddyPress 101: What You Need To Know” by David Laietta
  • “Taming BuddyPress” by Tanner Moushey
  • “A BuddyPress Case Study” by Tara Claeys
  • “How To Build A WordPress/BuddyPress Mobile App” by Brian Messenlehner
  • “The State of BuddyPress” by John James Jacoby
  • “Working With The WordPress REST API” by Joseph Van
  • …more speakers and surprises to come!

WordCamp Miami 2017 will be held over the course of three days, March 24-26, at Florida International University.

Initial list of speakers for the BuddyCamp + REST API Track on March 24. Top row, L – R: David Laietta, John James Jacoby, Tanner Moushey. Bottom row, L – R: Joseph Van, Brian Messenlehner, Tara Claeys. (Image from WordCamp Miami 2017 site)

#dev-chat

Dev Chat Summaries for December 21 & 28, 2016

BP 2.8 Trac Tickets

BP 2.8 – Prevent loading if PHP < 5.3 (#7277) @boonebgorges has patch. Dev feedback requested (esp. @johnjamesjacoby & @djpaulgibbs).

Removal of `create_function` usage for BP 2.8 (#7325) @tw2113 has patches.

Anonymize BP Core Dependency functions file. (#7335) Closed as wontfix.

`groups_promote_member()` shouldn’t attempt to fetch ⁠⁠⁠⁠BP_Core_User⁠⁠⁠⁠ object (#7382) Patch needs unit tests. Assigned to @boonebgorges.

Add a “buddypress” class to body element of wp-admin (#7353) @slaffik has committed fix to trunk.

Component Maintainers

@slaffik will be contacting everyone who volunteered to maintain BP components in Trac.

@dcavins would like notifications from Trac for new tickets under the Group components. He mentioned different workarounds like getting Slack notifications for the Groups component to getting the RSS feed from Trac for the specific component. @johnjamesjacoby: “We’d need to merge into our Trac what’s already in WordPress Trac. That’s probably Dion and/or Nacin.” @netweb noted after the chat that there’s a ticket in Meta Trac to get this underway.

🥂 Wishing Everyone a Happy & Prosperous New Year! 🥂

Slack logs:
Dec. 21 https://wordpress.slack.com/archives/buddypress/p1482350517001398
Dec. 28 https://wordpress.slack.com/archives/buddypress/p1482955219002247

#7277, #7325, #7335, #7353, #7382, #dev-chat

Dev Chat Summary for November 16, 2016

Trac Gardening

@slaffik has been reviewing old tickets, closing some, adding others to 2.8, and “providing feedback where I see fit.” A friendly reminder to core devs to review tickets marked with `2nd-opinion`⁠⁠⁠⁠ and `⁠⁠⁠⁠dev-feedback`.

Welcome to our New Committers!

Congratulations to @slaffik and @netweb and @offereins for getting commit access! We all look forward to working with you in making BuddyPress greater than ever 🙂

Banners for the BuddyPress 2016 Survey

@johnjamesjacoby has added banners linking to the BuddyPress 2016 Survey at https://buddypress.org and https://codex.buddypress.org The survey will run through November 30, 2016.

buddypress-2016-survey

Bumping Required WordPress Version

BuddyPress 2.8 will require at least WordPress 4.3. (#7350)

Slack log: https://wordpress.slack.com/archives/buddypress/p1479326430001024

#7350, #dev-chat