BP Dev-Chat Agenda January 30, 2023

Hi!

Our next development meeting will happen on January 30 at 21:00 UTC in #BuddyPress. Here’s our agenda:

  • 12.0.0: code formatting, inline documentation improvements & function signatures for hooks callback
  • 12.0.0 first schedule & feature/fix ideas.
  • BP Attachments: last steps before the very first beta version.

Oh 😳 But wait it will happen a Monday and at a different time?

Yes, it was difficult for us to carry on meeting every other Wednesdays at 19:30 UTC, so we’re trying this new day/time to give most of us the opportunity to attend dev-chats.

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 Agenda January 18, 2023

Hi!

Our next development meeting will happen on January 18 at 19:30 UTC (today) and of course in #BuddyPress. Here’s our agenda:

  • 11.0.0 first results and feedbacks.
  • BP Attachments: last steps before the very first beta version.
  • 12.0.0 first schedule & feature/fix ideas.

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

📯

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

BuddyPress 11.0.0 is available

Thanks for welcoming “La Scala” into your WordPress sites: please upgrade!

🙌 🍕

#11-0-0, #release

BP Dev-Chat Agenda January 4, 2023

Hi!

Our next development meeting will happen on January 4 at 19:30 UTC (tomorrow) and of course in #BuddyPress. Here’s our agenda for this 1st meeting of the year:

  • Happy new year BuddyPress greetings, what do we wish to accomplish in 2023?
  • 11.0.0 Final Release: last checks before (scheduled to January 5) packaging tasks.
  • Focus on the BP Messages component (requested by @espellcaste)

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

🥂🍀🔮

#11-0-0, #agenda, #dev-chat

BP Dev-Chat Agenda December 21, 2022

Hi!

Our next development meeting will happen on December 21 at 19:30 UTC (tomorrow) and of course in #BuddyPress. Here’s our agenda:

Open floor!

For this last development meeting of the year, let’s chat about anything that comes to our mind! 🎄🎅 🎁

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

👋

#agenda, #askusanything, #dev-chat, #fun

Here’s 11.0.0-beta3

Thanks in advance for beta testing this pre-release version. If you’re using the BP Default theme, we’d be even more thankful if you could give us some of your time to make sure everything is fine for you with this third beta release.

#11-0-0, #beta, #release

BP Dev-Chat Agenda December 7, 2022

Hi!

Our next development meeting will happen on December 7 at 19:30 UTC (today) and of course in #BuddyPress. Here’s our agenda:

  • 11.0.0 Release Candidate, we’re late & we still need to write the Hello Screen change log 😱
  • BP Default & deprecated code (blocker)

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

👋

#11-0-0, #agenda, #dev-chat

BP 11: bp_has_profile() Now Accepts an Array of Profile Group IDs

In the upcoming BuddyPress 11.0 release, we’ve added some developer frosting 🧁 to make working with profile groups more straightforward. The template function bp_has_profile() and its underlying function BP_XProfile_Group::get() now accept a single profile group ID or an array of profile group IDs, making it easier to loop through your members’ profile data.

For example, the following code:

<?php
$profile_args = array(
    'user_id'          => 1,
    'profile_group_id' => array( 1, 2 ),
);

if ( bp_has_profile( $profile_args ) ) :
    while ( bp_profile_groups() ) : bp_the_profile_group();
        if ( bp_profile_group_has_fields() ) : ?>
            <h2><?php bp_the_profile_group_name(); ?></h2>

            <table class="profile-fields">

                <?php while ( bp_profile_fields() ) : bp_the_profile_field(); ?>

                    <?php if ( bp_field_has_data() ) : ?>

                        <tr<?php bp_field_css_class(); ?>>

                            <td class="label"><?php bp_the_profile_field_name(); ?></td>

                            <td class="data"><?php bp_the_profile_field_value(); ?></td>

                        </tr>

                    <?php endif; ?>

                <?php endwhile; ?>

            </table>

        <?php
        endif;
    endwhile;
endif;

produces the following output:

Without having to add an extra profile group loop! You can test this new functionality out in the most recent BuddyPress v11 release beta.

BP Dev-Chat Agenda November 23, 2022

Hi!

Our next development meeting will happen on November 23 at 19:30 UTC (today) and of course in #BuddyPress. Here’s our agenda:

  • News about latest commits to trunk
  • 11.0.0-beta2 and RC schedule

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

👋

#11-0-0, #agenda, #dev-chat

The way BuddyPress loads deprecated code will change in version 11.0.0

During a development cycle, we can deprecate functions the plugin is not using anymore. In this case we are moving this deprecated code into a specific file named according to the BuddyPress version when it was deprecated. For example, the bp_insert_site_hook() function was deprecated during the 10.0.0 development cycle and was moved into the /bp-core/deprecated/10.0.php file.

Before 11.0.0, deprecated code was never loaded when BuddyPress was first installed or if the BP_IGNORE_DEPRECATED constant was set to true. Deprecated code was only loaded if this constant wasn’t set to true and if BuddyPress has been regularly upgraded since version 2.7. This means if you first installed version 8.0.0 of BuddyPress, deprecated code was never loaded. This was wrong considering BuddyPress Plugin and Theme authors who were not able to be informed by setting their WP_DEBUG constant to true that a function was deprecated (and eventually replaced by another one) and no more available.

Starting in 11.0.0, we’re improving our deprecated code loading strategy

First we are keeping these 2 behaviors from previous versions:

  • Deprecated code is never loaded when you first install BuddyPress.
  • Deprecated code is not loaded when you define the BP_IGNORE_DEPRECATED constant to true.

Second we’re introducing a new constant to force all deprecated code to be loaded: BP_LOAD_DEPRECATED. Defining this constant to true can help you to identify deprecated functions one of your plugins or you active theme is still using although it shouldn’t.

Third, when BuddyPress has been upgraded, we are loading the code that was deprecated during the 2 previous versions.

To read more about the story of this change, you can have a look at this ticket #8687.

At the time I’m writing these lines, we’ve started the 11.0.0 beta testing period. As this change is pretty important, we strongly advise BuddyPress Plugin and Theme authors to test BuddyPress 11.0.0 pre-versions.

#11-0-0, #developer-documentation