HomePhabricator

Make the "result" property on Future private

Description

Make the "result" property on Future private

Summary: Depends on D21033. Ref T11968. This is just an incremental step in modernizing Future and making it more robust. Currently, subclasses are expected to write directly to $this->result, but this isn't consistent with how modern classes generally work.

Test Plan: Ran unit tests, created this revision.

Maniphest Tasks: T11968

Differential Revision: https://secure.phabricator.com/D21034

Details

Provenance
epriestleyAuthored on Feb 26 2020, 7:48 PM
epriestleyPushed on Mar 29 2020, 5:18 PM
Differential Revision
D21034: Make the "result" property on Future private
Parents
rARCe20dce875cf2: Resolve all futures inside FutureIterator
Branches
Unknown
Tags
Unknown
Tasks
T11968: Decide the fate of FutureGraph
Build Status
Buildable 23959
Build 32970: Run Core Tests

Event Timeline

artms raised a concern with this commit.Apr 3 2020, 1:40 PM
artms added a subscriber: artms.

This is breaking commit breaks drydock: PHP Fatal error: Cannot override final method Future::getResult() in /core/data/drydock/workingcopy-75/repo/phabricator/src/applications/harbormaster/future/HarbormasterExecFuture.php on line 50

This commit now has outstanding concerns.Apr 3 2020, 1:40 PM
This commit now requires audit.Apr 3 2020, 1:53 PM
This commit no longer requires audit.Apr 3 2020, 2:03 PM