It’s Wednesday! It’s also 14 days before feature development ends for BuddyPress 1.8, so let’s recap where we’re all at!
Recent Updates Toggle Comment Threads | Keyboard Shortcuts
-
Paul Gibbs
-
Paul Gibbs
Wednesday updates! How’s your BuddyPress gone this week, feature leads?
-
Paul Gibbs
Translations: http://buddypress.trac.wordpress.org/ticket/4857
- Going well. Had good feedback/review from @boonebgorges.
- Aiming to commit this or next week after some small tweaks and another review.
- GlotPress changes have been deployed to translate.wordpress.org, so everything’s ready there.
-
Tammie Lister
Template pack (http://buddypress.trac.wordpress.org/ticket/4952):
- Wireframes are now completed and uploaded
UI refresh (http://buddypress.trac.wordpress.org/ticket/4953):
- A few more things pointed out to get this week after that probably close to being ready for core review
Side note: Been slightly slower week as I was away until just few hours ago but we made some progress.
-
Boone B. Gorges
- I’ve got a patch up for order and orderby params for bp_has_groups: http://buddypress.trac.wordpress.org/ticket/4483
- Been having good discussions around http://buddypress.trac.wordpress.org/ticket/4482. I’ll be patching this week.
-
-
Tammie Lister
I’m going to start this week’s updates with mine.
UI Refresh (http://buddypress.trac.wordpress.org/ticket/4953):
New message styling.
@hugo has some more ‘detheming’ that was missed he’s going to commit.New templates (http://buddypress.trac.wordpress.org/ticket/4952):
I added some mockups: http://buddypress.trac.wordpress.org/ticket/4952#comment:7
I also updated the dropmark board to show the wireframes Turtleshell was using (more as a record)
This week we move into refining and commenting.-
Paul Gibbs
Translations download ticket: 4857
- First version of patch up; need to review initial feedback from @boonebgorges.
- Could be a week or two before it gets into trunk due to upcoming travel.
-
Boone B. Gorges
Massive BP_Group_Extension improvements were committed last week: http://buddypress.trac.wordpress.org/changeset/6997 Documentation and writeup to come before beta.
Added solid support for the -c multisite.xml flag in the unit test suite https://buddypress.trac.wordpress.org/changeset/7028
Been working on writing unit tests in support of recent security enhancements.
-
Ray
Speaking of multisite unit testing, Boone, could you take a look at my multisite improvements to the go_to() method and see if it makes sense to include it?
https://buddypress.trac.wordpress.org/attachment/ticket/4948/unittests.patch
-
-
Ray
Refreshed the template hierarchy patch:
https://buddypress.trac.wordpress.org/ticket/4639
-
-
Paul Gibbs
Let’s try something new; each Wednesday, would people leading on a headline feature for 1.8 please publish a brief progress update to the weekly update post.
Doesn’t matter when on Wednesday, as long as it’s still Wednesday wherever you are
I’m hoping this will increase visibility of things that are in development, as it’s hard for someone not going to the dev chats or reading the IRC logs to find out the current status of a particular feature, and in turn help us keep 1.8 on schedule.
I’ll post mine later to kick things off!
-
Tammie Lister
I’m going to split it into the 2 tasks so it’s easier to follow:
UI Refresh:
- Created a trac ticket to get the ball rolling : http://buddypress.trac.wordpress.org/ticket/4953
- Created a plugin that is available for everyone as a starting point for the UI refresh: https://github.com/karmatosed/refreshdefault
So far the plugin has dealt with the following areas: font fixes, removed gradients, removed border radius
New template pack:
- Created a trac ticket : http://buddypress.trac.wordpress.org/ticket/4952
- Did short audit of what wireframes will be needed and what we have now (this will wrap up today with a dropmark board of all of them going on the trac ticket.
The current plan is to get more people involved now and start looking at who wants to do what.
Ideally this week wireframes should be the focus to keep to schedule.-
hnla
Can I make a suggestion for consideration? with things like this ui-refresh plugin and my experimental playing around with members templates re-factoring to use bp_nav_menu() files on my github that we could perhaps move these to the buddypress-themers github that we used for the Status theme as somewhere to maintain bits like this and where we can easily add people as necessary?
-
Tammie Lister
Hmm not convinced on that one. It assumes everyone will be doing every project – this won’t be the case at all. A github home should also only be temporary. Lets not and lets keep things separate for now – it could get over confusing otherwise fast.
-
-
Boone B. Gorges
The
meta_queryparameter has been introduced for thebp_has_groups()andbp_has_activities()family of functions. See http://buddypress.trac.wordpress.org/ticket/4591, http://buddypress.trac.wordpress.org/ticket/3521, http://buddypress.trac.wordpress.org/changeset/6948, http://buddypress.trac.wordpress.org/changeset/6950Trisha mentioned that she was working on group member queries: http://buddypress.trac.wordpress.org/ticket/4482
Next on my list is to tackle
BP_Group_Extensionimprovements. http://buddypress.trac.wordpress.org/ticket/4955-
trishasalas
I got sidetracked with client work but have made some progress with the ‘how’ of it.
My biggest hurdle is wading through the BuddyPress code itself since it is somewhat unfamiliar to me. I have a file I put together but it is just a conglomeration of all the parts I `think` might work. I still need to go through them and test and narrow it down after adding my sql to it.
I’m not sure if it is even ‘post-worthy’ at this point but I don’t mind posting if only to get some direction. I’m trying to keep in mind that everyone is busy and do my learning on my time
-
-
Paul Gibbs
For the auto language downloads, I wrote a patch for GlotPress to add LAST-MODIFIED headers to the .mo export, which was committed. Waiting for the change to be deployed to translate.wordpress.org:
http://glotpress.trac.wordpress.org/ticket/236
http://glotpress.trac.wordpress.org/changeset/751I am working on the BuddyPress changes and hope to have a patch up for review next week before I do some travelling.
-
Ray
Didn’t do anything for template hierarchy this week.
Looking to refresh the patch in https://buddypress.trac.wordpress.org/ticket/3741 before next dev chat.
Will also try to implement JJJ’s idea of hierarchy for the wrapper template as well.
-
John James Jacoby
Rewrite Rules Update:
- Started writing the backwards compatibility layer to make rewrite rules and tags out of the existing bp_nav and bp_options_nav arrays.
- Started creating functions to encapsulate and simplify adding “screens” and their associated “actions” ala register_post_type() so we can use them in core to start, and third party plugins later.
- May not have a proof of concept for a week or more, based on availability.
-
-
Boone B. Gorges
BP 1.7.1 is now available. View the blog post for more info http://buddypress.org/2013/04/buddypress-1-7-1/
-
cars
Shopping for cars is generally a stressful experience.
It does not have to be, though. With a little knowledge and
determination, your car shopping experience can be devoid of stress.
Use the tips that follow to make your car shopping experience one that you enjoy, with a shiny new car to show
for it.
-
-
Boone B. Gorges
At yesterday’s dev chat, we made some broad decisions about scope, and some specific decisions about timelines, for the BuddyPress 1.8 release cycle.
Scope
The major improvements slated for BP 1.8, and the team members who’ve committed to lead them up:
meta_querysupport for the main template loops. See #3521 and Eric Lewis’s preliminary patch for the activity component. (Boone)- Migrating to the WP Rewrite API. See #4954. (John)
- Template hierarchy for BP template parts. See #4639. (Ray)
- Automatic download and update of language packs. See #4857. (Paul)
- General tidying of BP UI styling. See #4953. (Tammie)
- New template pack. See #4952. (Tammie)
- Miscellaneous improvements to
BP_Group_Extension. See #4955. (Boone) - Convert group member queries to
BP_User_Query. See #4482. (Boone)
A number of these items (especially #4482 and #4952) are somewhat questionable for 1.8, due to their size and to our tight deadlines. The team may decide partway into the cycle to punt them.
In addition to the major items listed above, the 1.8 milestone contains a number of smaller enhancements, which can be rolled into the release if folks step up to the plate with patches, testing, and feedback.
Timetable
We’re experimenting with a short release cycle: six weeks for feature development, and six weeks for testing. The following dates are of particular interest:
- June 5, 2013 – End of feature development. Beyond this date, nothing gets committed that is not either a bug with a new feature, or a regression from 1.7.x. Any major features from the list above that are not commit-ready by this date will not be included in BP 1.8. At the dev meeting on June 5, the team will make decisions about borderline cases – features that are partially implemented. We plan to release BP 1.8 beta1 in the days immediately following June 5.
- July 17, 2013 – BP 1.8 final release
The timetable is, by design, compressed. As part of our experiment in a shorter dev cycle, we’re going to hold to this proposed schedule as strictly as possible.
Contribute
Interested in contributing to BuddyPress during the 1.8 dev cycle? The more the merrier! Join us in our weekly dev chats (see sidebar for details), visit one of the tickets listed above, or dip your toe into the 1.8 milestone. Core devs are generally lingering in freenode #buddypress-dev, so please stop by if you’re looking for a place to start.
-
Erlend
I like it. Sounds like a very reasonable scope. Looking forward to a more solid BP_Group_Extension.
Boone B. Gorges
At next week’s dev meeting (April 24 – see the sidebar of this blog for time details), we’ll be discussing the scope and schedule for the BuddyPress 1.8 release. The tentative plan is to have a short release cycle – 12 weeks from the beginning of development to the final release. The core team is asking that interested parties leave suggestions about what to include in 1.8 in the comments below, for discussion at the Apr 24 chat. And if (especially if) you can commit to doing significant development/testing for a given feature, you should mention that too.
For reference, here’s what’s already (tentatively) in the 1.8 milestone on Trac: https://buddypress.trac.wordpress.org/query?status=accepted&status=assigned&status=new&status=reopened&milestone=1.8&groupdesc=1&group=priority&col=id&col=summary&col=milestone&col=status&col=type&col=priority&col=component&order=priority See something on that list you want to help with? Feel free to mention that below, too.
-
Mills
I am still experiencing this problem in the ticket below using BuddyPress 1.7 on a live server and with a with a fresh BP 1.7 install on MAMP.
-
Boone B. Gorges
Thanks. If you have additional information, please leave it on the Trac ticket – this is not a great place to discuss bugs.
-
-
hnla
I’ll add a note about http://buddypress.trac.wordpress.org/ticket/4639 as so much was done by Paul and r-a-y to get this to quite an advance stage it’s worth seeing if possible to complete – I’ll naturally commit significant amounts of heavy encouragement
but also continuation of the testing I was doing (still have trunk patched with last patch)I also added a ticket and patch for registration validation messages the other day, think this is an relatively easy one to polish up and perhaps find a means of testing for spaces in usernames where BP add a em dash in place of. http://buddypress.trac.wordpress.org/ticket/4939 (just noticed Boone responded on that ticket)
Trac is very bad with not notifying on these pending approval initial tickets
-
Ray
Not much more needs to be done for template hierarchy.
A decision needs to be made on filenaming convention and we should be good.
I didn’t want to push anything then b/c 1.7 was in the final stages of being released. But I’ll look into this.
-
-
Boone B. Gorges
Here are the major things I’d personally like to do for BP 1.8:
- Convert group member queries to use BP_User_Query. Right now, we’re still doing global table joins in these queries – the last places in BP where that’s in the case. Related ticket: #4482
- Improvements to BP_Group_Extension. There are quite a few things that developers are currently forced to do manually that we could easily do automatically: creating/checking nonces, checking to see whether the display callbacks should be invoked on a given admin page, more consistent markup requirements on the edit_screen(), create_screen(), admin_screen() methods
- Implementing a meta_query parameter for bp_has_activities() and bp_has_groups() (and maybe bp_has_members()). Eric Lewis has a proof-of-concept patch on #3521 that uses WP_Meta_Query to do the heavy lifting, so I expect it would be pretty easy to add to these three components.
- Improvements to Activity Favorites. Currently, favorites are stored as an array in usermeta. This makes them pretty useless for any purpose other than displaying as a list on a user activity page (as we currently do). One possibility is to break them out into their own table/component, so that we can do legitimate querying on them, such as “this activity item has been favorited x times”. Note – this item is sort of a question mark. Could easily be built as a plugin (and maybe should be). Would like feedback.
-
Paul Gibbs
Improvements to activity favourites
Thinking we should touch this when we and if we decide to build a Like button (Likes = new type of activity item).
-
Boone Gorges
Yes, ‘Like’ is pretty much the same thing as activity favorites. I don’t see what we gain from moving from the Favorites terminology to the Like terminology, especially given that we’ve had Favorites for a long time. Anyway, we can talk about that on a ticket. The idea of storing the favorites as a new activity item type is really smart – I may build a prototype of that, even if we don’t decide to adopt it in BP 1.8.
-
Paul Gibbs
-
-
Boone Gorges
Paul’s comment reminded me of another improvement I’d at least like to prototype and benchmark: moving user/group last_activity values (especially user) out of user/groupmeta and into the activity table as a new activity type. This issue was discussed and tabled in https://buddypress.trac.wordpress.org/ticket/4060#comment:5. I have a feeling that making this change would dramatically improve the scalability of certain types of user queries, but it needs testing. Also, making this change would require that the activity component (or at least a small subset of it) always be activated, so that’s something to think about in the discussion.
-
Paul Gibbs
@boonebgorges If you do this, might be worth taking a look at https://buddypress.trac.wordpress.org/ticket/4186
-
Tammie Lister
I’d like to suggest a UI 2 pronged task
(Some of this comes from a discussion with @djpaulgibbs)
1. ‘De-defaulting’ of the current components.
Focusing on buttons, text, messages and notifications. This is a good way for people to get involved in some small tasks in a shorter focus task. It would consist of a list of ‘improvements’ after a UI review of what we currently have. No large changes are being suggested but as part of this any bugs, issues with responsive or hitches could be merged into this task so maybe clean up the UI tickets a bit.2. Pick 1 or 2 templates and redesign (doing one at a time).
This will draw on the work done in TS but also be open to other possibilities. This allows for speed and no hold ups to release in keeping with a faster schedule. I’d suggest the candidates for this would be: Members directory, Groups directory, Profile. I’m keen we do one of the directories as they currently use the same format which doesn’t overly work.Both could be done in a ‘mp6 style’ as a plugin to see improvements early on we can revise to avoid having to be in core when other things happening.
I think both of these could easily be done as part of the 1.8 cycle as not huge but have room to grow or reduce scope (which is good as flexible).
As part of this TS can also still be worked on as I’d suggest other templates are tackled in later versions.
-
Tammie Lister
TS = Turtleshell btw (just being clear as couldn’t edit)
-
Tammie Lister
I’d like to also put myself forward to do this along with anyone who’d like to get involved with me.
-
trishasalas
I’m volunteering to be an ‘anyone who’d like to get involved with you’
-
ubernaut
likewise!
-
-
Tammie Lister
I have now created two tickets for this.
1. Refresh: http://buddypress.trac.wordpress.org/ticket/4953
2. New template pack : http://buddypress.trac.wordpress.org/ticket/4952
These should explain things a bit more in detail and are from the scope chat today in irc.
-
-
Tammie Lister
Another possible UI/UX task could be to create an existing users dashboard. It’s in response to the new user experience we now have which is great, but what we lack is an existing user experience. I explored this a bit myself as a thought what is needed is a place where statistics and other ‘site summary’ information could go. A BuddyPress dashboard of sorts.
Post I discuss this in : http://buddydesignlab.wpengine.com/existing-users-dashboard/
Image : http://buddydesignlab.wpengine.com/wp-content/uploads/2013/04/note011.pngIt may be something for later versions but just throwing it out there as a possible idea. It could be achieved with minimal first version and then built on – hopefully to keep to the release schedule. It could also vary contents wise depending on who wants to get involved – some interesting statistics stuff could happen or just keep it simple first release with totals, links and summary copy.
-
trishasalas
…again, love the idea. I’m in.
-
-
oc2ps
I’d like to a greatly increased WP-Admin footprint for BP….Admin options/UI for many of the features that BP provides…
e.g.
https://buddypress.trac.wordpress.org/ticket/4130-
oc2ps
I mean:
I’d like to “see” a greatly…*
-
-
oc2ps
Email: Easily done, but quite important 2 things:
1- Include username https://buddypress.trac.wordpress.org/ticket/4731
2- Resend activation https://buddypress.trac.wordpress.org/ticket/4676 -
Paul Gibbs
Should consider porting bbPress’ log in widget. Seen several threads on the forums asking where BP’s log in widget went in BP 1.7
-
OC2PS
Like
-
Boone Gorges
-
-
Paul Gibbs
Translations
-
John James Jacoby
- Rewrite Rules
- Separate Notifications into its own component /via GSoC
-
Ray
About notifications, I had an idea that notifications could be tied to the activity component. Because notifications are essentially activity items and we already have all the necessary template loops and JS/CSS to do something without too much effort. What was your idea for GSoC?
Boone B. Gorges
As promised, I’ve started a codex page that explains how to take advantage of BuddyPress’s new automated testing suite when writing unit tests for your own BP plugins. http://codex.buddypress.org/developer/automated-testing/writing-automated-tests-for-buddypress-dependent-plugins/ has lots of details and a working example, but the summary is: require buddypress/tests/includes/loader.php before your own plugin to make sure that BP gets installed and initialized, and require buddypress/tests/includes/testcase.php for access to BP’s testcase class and factories.
Questions or comments? Please leave them below.
Paul Gibbs
Unfortunately, BuddyPress’ application to be a mentoring organisation for GSoC 2013 was rejected. We’d like to thank everyone who helped put together the application and ideas pages, and those who volunteered to be a mentor. However, WordPress got in!
If those people would still like to mentor a WordPress project, or you’re a student and you’d like to work on a BuddyPress project, then I’d encourage you to applying as a mentoring or student to the WordPress project. Check out make/core for details.
Boone B. Gorges
Over the last few months, Paul and I have been building a framework for writing unit and integration tests for BuddyPress. As of tonight, the BuddyPress automated test suite is part of BuddyPress core. (See r6905-6908)
I’ve started a Codex page about our tests: http://codex.buddypress.org/developer/automated-testing/. The BP tests are modeled after the WordPress suite; you can read much more about how WordPress tests work at https://make.wordpress.org/core/handbook/automated-testing/.
If you are a BuddyPress plugin developer, or if you contribute to BuddyPress itself, you’re highly encouraged to use, and contribute to, our test suite. The test coverage right now is very, very sparse, but we hope that it will improve as we fix bugs and refactor various parts of the codebase.
An exciting feature of the BP test suite is that it allows dependent plugins to write tests that invoke BP_UnitTestCase and other BP-specific tools. I will write more about this feature, including examples from my own plugins, in the upcoming days.
The testcases are located in the tests/testcases subdirectory of BP’s plugin folder. Bug reports and enhancement requests should be reported to BP Trac.
-
foxly
THIS!
Myself and the team are so happy to see BuddyPress is starting to grow up. Whenever the opportunity arises, we’ll do our best to contribute to your test suite.
^F^
-
Boone Gorges
Thanks, Foxly! I spent a lot of time studying Razor and the BPM tests, and while we decided to go in a different direction for a couple of reasons, your stuff served as a major inspiration. Thanks for the prodding over the years
-
-
Stas
Congrats, this is really huge!
Looking forward to see it growing with every release. -
Paul Gibbs
BOOM
-
Lachlan
Awesome work all. This and 1.7!
You guys are kicking goals
Paul Gibbs 9:17 am on May 22, 2013 Permalink |
Automatic download of language translations
Tammie Lister 9:43 am on May 22, 2013 Permalink |
Refresh UI plugin:
This week: Considering removing all inner-box shadows, focus elements and also border/form styling. These are more radical moves but would mean it’s easier for light / dark themes. Have to see impact so may not decide to keep in.
Template pack:
Whilst some progress has been made this week it became aware that some ground work needed doing in order to allow anyone a chance to contribute. As a result this project I’m not sure will be ready for the 1.8 feature dev end. I’m ok with this myself, as we all knew it may stretch over 2 releases – it’s a lot of work.
I think one of the worst things we could do is rush things in 14 days just to reach a deadline. However, I want to keep the pace because if we’re done 1 week into new dev cycle we then have the luxury of user testing, refinement and time. I think that’s a better approach to release this with time – if we’re doing this it needs to be good.
Core question: Do we want a ticket per template section or have those on Github as issues? I want to assign each to a person so we can keep conversations relevant to the template and track things easier. I’d like to use trac but don’t want to clutter it if that’s not suitable.
This week: Plan on creating and assigning templates to those who want to get involved. When you do volunteer just do for one template at a time. We don’t have to have everything assigned all at once.