BP Dev-Chat Agenda June 5, 2023

Hi!

As today is holidays in US & France, our next development meeting is postponed by a week and will happen on June 5 at 21:00 UTC in #BuddyPress. Here’s our agenda:

  • 12.0.0:
    • #8897 A new way to create, maintain and publish BP User & Developer docs using GitHub PRs
    • Testing/Adapting plugins with/to BP Rewrites: bbPress & BP Attachments
    • #8734 new community visibility feature
    • Latest BP Classic improvements: Legacy widgets & BP Default
  • Feedback post series: prepare the 4th post.

If you have specific/additional points you need to discuss about, please share them into the comments area of this post.

🐯

#12-0-0, #agenda, #dev-chat

BP Dev-Chat summary: May 15, 2023

12.0.0 development cycle updates

#4954: The main parts of the BP Rewrites merge has been accomplished and this 10 years old ticket is now fixed 👴 🏁. Huge thanks to all contributors who helped making this happen. Of course, improvements can still be brought to our new BP Rewrites API, but these will be discussed/worked on from new tickets. Our next steps is to finish the job on moving our Deprecated Legacy URL parser inside the BP Classic backward compatibility plugin.

About #8869: the moving process of Legacy widgets to the BP Classic plugin was still in progress at the time of our meeting, it’s now accomplished 🏁.

#8734 @dcavins has started to plan ahead to make the implementation of the visibility feature as flexible/extensible as possible.

Schedule

  • 12.0.0-beta1 : July 30,
  • 12.0.0 : October 30.

Feedback posts series

@im4th & @dcavins talked about the third post of this series: @dcavins did the review process and it’s now available on BuddyPress.org.

Open floor

We finally talked about the ActivityPub protocol and ways to implement it since @im4th was contacted about it by a WordPress news Podcast. As a French guy, @im4th feels very impressed by the idea of discussing in English so he asked @dcavins to the rescue. After a few minutes of discussion, they both agreed it was a bit early to share BuddyPress vision about the Fediverse. The fall period should be a better timing to do so. @im4th did this reply to the Podcast host.

Next Dev-Chat

It will happen on May 29 at 21:00 UTC in #BuddyPress. If you have specific points or ideas you want to discuss about, don’t hesitate to share them in comments.

#12-0-0, #dev-chat, #summary

BuddyPress 11.2.0 is available

Hi,

11.2.0 is a maintenance release, please upgrade 🙏.

🧡

#11-2-0, #maintenance, #release

BP Dev-Chat summary: March 27, 2023

BP Attachments Add-on release & first feedbacks

It was released on 15th BuddyPress birthday (March 25). It got two 5 ⭐️ reviews so far, one of them is saying it’s a « game changer ». It’s making @im4th very happy considering the hard work the team already invested into this add-on. @dcavins plans to use it on some of the sites he manages to get feedbacks from more users. Inside the plugin’s support forum, requests were made about supporting the BP Legacy template pack & the Groups component.

12.0.0 development cycle updates

About #4954: @im4th accelerated on the BP Rewrites merge process as he realized there were more work than expected. Most of the BP URLs are now built using the BP Rewrites API, but quite an amount of functions needed to be deprecated/moved inside the BP Classic backcompat plugin. These deprecations will help us inform users they need to use this plugin to be sure to carry-on enjoying the third party plugin features that are not ready yet for the BP Rewrites API.

As the BP REST API & the BP Attachments Add-on will need to be improved to be ready for Rewrites, working on this will help us to advise third party plugin developers about the best way to stay compatible with pre 12.0 BP versions as well as next BP versions.

About #8457: @im4th decided to stop waiting for ParcelJS v2 to support global variables. The development team weirdly put this v1 feature out of v2 ones and there were no progress about bringing back this support for at least 2 years! The plan is to migrate to @wordpress/scripts which uses Webpack. You can follow our progress about it from this BP Blocks PR.

About #7018: @im4th quickly added some #[AllowDynamicProperties] to be compatible with PHP 8.2, but he thinks a better fix would be to properly declare all properties to our Classes. @dcavins agrees.

12.0.0 schedule

  • 12.0.0-beta1 : April 15,
  • 12.0.0 : May 31.

NB: we’ll need to update this initial schedule due to the BP Rewrites remaining work to achieve.

2022 feedbacks & 2023 roadmap

@im4th would really like to publish the wrap up post about the feedbacks we got last year. He thinks it’s important to say: « hey we read you, and here’s what we plan to do about it ». This post is waiting for review since February 27 and as it contains some suggestions about important changes he wishes we all agree about it or edit the parts we have different opinions on. @dcavins thinks this post is too long and suggests to split it as he’s afraid that the exciting stuff at the end is after too much text (which people mostly don’t read.).

Let’s try to decide about this during our next dev-chat.

Next Dev-Chat

It will happen on April 17 at 21:00 UTC in #BuddyPress. If you have specific points or ideas you want to discuss about, don’t hesitate to share them in comments.

#12-0-0, #dev-chat, #summary

BP Dev-Chat Agenda March 27, 2023

Hi!

Our next development meeting will happen on March 27 at 21:00 UTC (today) in #BuddyPress. Here’s our agenda:

  • 12.0.0:
    • accomplished progresses about BP Rewrites merge + needed BP REST API adjustments
    • #8457 migrating to WordPress scripts (Webpack)
    • #8820 PHP 8.2 compatibility & properly declaring PHP class properties (#7018)
  • 2022 feedbacks wrap-up & 2023 roadmap post.

If you have specific/additional points you need to discuss about, please share them into the comments area of this post.

⚙️🔭

#agenda, #dev-chat

Happy Birthday to BuddyPress

BuddyPress is 15 today 🎂🎊 To celebrate this specific day, here’s our gift 🎁 to the community:

#anniversary, #attachments, #release

BP Dev-Chat summary: February 13, 2023

11.1.0 maintenance release

We mainly discussed about this ticket #8821. In short, if a string containing placeholders has not been updated by a translator of the Polyglots team, it can result in a fatal error when using the sprintf() function. @dcavins and I think it’s a WordPress issue, but WordPress core team don’t, see #55776. As it was too heavy to address this issue in a maintenance release, we’ve decided to use a workaround for 11.1.0 trying to alert translation contributors they need to remove one of the placeholders for specific strings using gettext comments. We’ll try to find a nicer way to avoid these kind of fatals during the 12.0 development cycle, see #8836.

11.1.0 was released on February 16. Many thanks to contributors who shared their time with us to make it happen.

12.0.0: required documentation effort about migrating to using the WP Rewrite API.

@im4th believes most of the work will consist in documenting the changes about the way to extend BuddyPress. A place of choice for this documentation is the developer.buddypress.org site.

@dcavins thinks so too and started talking about the Code Reference part of this website. We haven’t progressed much into this area & @im4th thinks we do need to use composer on the server to benefit from the WP Parser tool. Tests he made about WP export/import tool wasn’t conclusive due to missing relationships between post types. It doesn’t mean we’re giving up, it simply needs some available time.

@im4th’s idea is to create first chapters of a BP Plugin Handbook as it’s very easy to do so on the current developer documentation site. We’ll try this way once most of the BP Rewrites API will have been merged into Core.

About this subject, progress can be followed from this ticket #4954. @im4th will make small steps using pull requests. Once the function to build links using BP Rewrites is available in Core, @dcavins will be able to give him a hand on reviewing all existing BP links so that they are built using this new function.

@dcavins will take in charge #8794 💪

12.0.0 schedule

  • 12.0.0-beta1 : April 15,
  • 12.0.0 : May 31.

BP Attachments: beta and first stable version schedule

@dcavins tested the plugin and found some issues. The biggest one was with regular WordPress themes. As @im4th only tested it with Block themes he hadn’t figured it out so far.

@dcavins & @im4th then discussed about how site owners need to set the private uploads directory. @im4th is convinced the best way to do it is to put it one level upper the site’s directory: a bit like what you can do to secure your wp-config.php file. Doing so requires a bit more work to make sure the directory is writable for the server’s user, but this feedback from a betatester is very interesting as it seems not too difficult to understand thanks to the admin notices in place.

As @dcavins noted, we’ll need to document the private uploads directory creation process.

BP Attachments 1.0.0 schedule

  • 1.0.0-beta: right now!
  • WP.org plugin submission: early March.
  • 1.0.0 release: March 25.

Next Dev-Chat

It will happen on February 27 at 21:00 UTC in #BuddyPress. If you have specific points or ideas you want to discuss about, don’t hesitate to share them in comments.

#11-0-0, #12-0-0, #dev-chat, #summary

BP Dev-Chat summary: January 30, 2023

12.0.0: function signatures for hook callbacks

@espellcaste and I thought it was important to talk about the pull request he suggested about changing action callbacks returned value (from boolean to no returned value) See #GH55. During the discussion we had with @dcavins, we came to this conclusion as the change is a possible breaking one & targeted callbacks are in a bp-component-functions.php file we are not discouraging third party plugin authors from using them, these functions shouldn’t have their signature changed. Instead we should use hooks the right way inside a bp-component-hooks.php file.

12.0.0: first schedule & feature/fix ideas

We’ve decided the main focus of this release will be to merge BP Rewrites into Core (see #4954) and create a new plugin to provide backward compatibility users will be able to use in case one of their third party plugin is not compatible with BuddyPress Rewrites. We’ll also raise WordPress required version to above 5.8 and move legacy widgets into this plugin. We agreed a nice name for this plugin would be BP Classic!

Here’s 12.0.0 initial schedule

  • 12.0.0-beta1 : April 15,
  • 12.0.0 : May 31.

The BP Attachments Add-on is ready for beta testing!

@im4th plans to package a first beta version to submit it to the WordPress.org Plugin directory. @dcavins will use the next 2 weeks to test it as @im4th ask him to do so to feel more secure about it. To see the list of available features, you can have a look at the add-on’s GH readme.

Next Dev-Chat

It will happen on February 13 at 21:00 UTC in #BuddyPress. If you have specific points or ideas you want to discuss about, don’t hesitate to share them in comments.

#12-0-0, #dev-chat, #summary

BP Dev-Chat summary: January 4, 2023

Last 11.0.0 final release tasks

Before releasing 11.0.0 on January 5, we had another look to #8783. This is still a mysterious issue we haven’t manage to reproduce yet (Displaying The Opt-outs Administration page is not generating an error for us on multisite). We also decided @im4th would package the release & draft the announcement post & @dcavins would take care of the release changelog.

Focus on the BP Messages component

Specific needs about this component BP REST API endpoint were brought to @espellcaste‘s attention (see #8696). It made him think about this component more broadly. So far BP Messages is fetching all messages belonging to a thread and he thinks we can improve this behavior and performance using pagination. He shared the roadmap we all agreed on about it:

  • Remove the default behavior of loading all messages;
  • Set reasonable default for page and per_page ;
  • Update the BP Theme to support pagination (currently, it loads all messages);
  • Cache with bp_core_get_incremented_cache – The same approach used in the Activity component;
  • Apply the same suggestions to the recipients’ query.

How do you see BuddyPress at the end of 2023?

That’s the question we took a few minutes to try to reply to.

  • @espellcaste‘s priority is mostly dev-focused: a developer reference site, BP GraphQL Extension, PHPCS/PHPDoc Improvements, VSCode BP Extension,
  • @dcavins would like to see a simple “private site” option land in BP, he believes another big possibility is to make core BP template pieces “insertable” using the WP Site Editor.
  • @im4th‘s predictions are: “To me, at the end of 2023, BuddyPress Activities will use the Blocks API, the Post Form will be a block based one and we’ll have a brand new Block Templates based theme”.

We’ve also discussed about:

  • the opportunity to move the Site Wide Notices feature outside of the BP Messages one,
  • splitting optional components into plugins,
  • community media,
  • the ActivityPub protocol to make BuddyPress a bridge between WordPress sites.
  • the need to organize all the feedbacks we got from last year to take wise decisions.

Open floor

@espellcaste has a conflict of meeting, so he won’t be able to attend future meetings. @im4th & @dcavins are flexible about the meeting day and time (as long as it’s after 19:30 UTC for @im4th), let’s find asap a new day to “biweekly” meet!

Next Dev-Chat

It will happen on January 18 at 19:30 UTC in #BuddyPress. If you have specific points or ideas you want to discuss about, don’t hesitate to share them in comments.

#11-0-0, #dev-chat, #summary, #the-future

BuddyPress 11.0.0-RC1 is ready for your tests

Thanks in advance for your help 😍

👋

#11-0-0, #release, #release-candidate