Skip to:

Opened 6 years ago

Last modified 2 years ago

#7018 assigned enhancement

Properly declare all properties on classes

Reported by: tw2113 Owned by: espellcaste
Milestone: Up Next Priority: normal
Severity: normal Version:
Component: Core Keywords: needs-patch needs-refresh good-first-bug

Description (last modified by tw2113)

We have a number of classes available, whether internal or public for users, and that's wonderful. However, we have not always properly declared the properties that we set in the __construct() methods or elsewhere in the class. We should work to change that fact.

Example from BP_Groups_Group:

 * ID of the group.
 * @since 1.6.0
 * @var int
public $id;
public function __construct( $id = null, $args = array() ) {
	$this->args = wp_parse_args( $args, array(
		'populate_extras' => false,
	) );

	if ( !empty( $id ) ) {
		$this->id = $id;

Attachments (2)

7018-declare-component-properties.diff (1.5 KB) - added by tw2113 5 years ago.
7018-declare-component-properties.2.diff (1.6 KB) - added by tw2113 5 years ago.
Declare the types based on class instead of array.

Download all attachments as: .zip

Change History (13)

#1 @tw2113
6 years ago

  • Description modified (diff)

#2 @DJPaul
6 years ago

  • Milestone changed from Awaiting Review to Future Release


#3 @tw2113
5 years ago







Need to decide on visibility of properties



#4 @tw2113
5 years ago

Some appear to be a part of BuddyPress::setup_globals(); which has a nice long note about protecting things and keeping part of the galaxy at peace.

5 years ago

Declare the types based on class instead of array.

#6 @espellcaste
3 years ago

  • Keywords needs-patch needs-refresh added
  • Milestone changed from Awaiting Contributions to 5.0.0

@tw2113 This seems to be an interesting problem we could solve. Can you leave an update what's left on this one?

#7 @tw2113
3 years ago

Honestly probably most of it. I doubt I ever committed anything officially, instead just relied on the diff files above for extra review.

#8 @espellcaste
3 years ago

  • Keywords good-first-bug added
  • Owner set to espellcaste
  • Status changed from new to assigned

@tw2113 Can I ask how you generated this list here: ?

And thank you for your feedback, I'll take from here. :)

#9 @tw2113
3 years ago

I most likely did a grep/ack/ag code search on the trunk branch and extracted out the results.

This ticket was mentioned in Slack in #buddypress by espellcaste. View the logs.

2 years ago

#11 @espellcaste
2 years ago

  • Milestone changed from 5.0.0 to Up Next
Note: See TracTickets for help on using tickets.