Page MenuHomePhabricator

ConduitProject
ActivePublic

Members (2)

Watchers

  • This project does not have any watchers.
  • View All

Details

Description

API access to Phabricator goodness.

Recent Activity

Tue, Feb 16

epriestley closed T13607: Provide additional query constraints in "harbormaster.target.search" as Resolved.

Yep, that's more constraints.

Tue, Feb 16, 8:34 PM · Harbormaster, Conduit
epriestley added a revision to T13607: Provide additional query constraints in "harbormaster.target.search": D21559: Add more constraints to "harbormaster.target.search".
Tue, Feb 16, 8:06 PM · Harbormaster, Conduit
epriestley triaged T13607: Provide additional query constraints in "harbormaster.target.search" as Normal priority.
Tue, Feb 16, 7:47 PM · Harbormaster, Conduit

Nov 3 2020

epriestley added a revision to T13585: Expose "harbormaster.step.edit" and "harbormaster.step.search" over Conduit: D21488: Add a basic "harbormaster.step.search" API method.
Nov 3 2020, 8:50 PM · Conduit, Harbormaster
epriestley added a comment to T13585: Expose "harbormaster.step.edit" and "harbormaster.step.search" over Conduit.
  • There is no way to pull custom field values with *.search. See above.
    • There is no way to edit non-custom field values with *.edit. The underlying transactions haven't been modularized yet; they should be, then EditEngine should get appropriate EditField definitions.
    • There's no way to identify which custom fields can be edited. This overlaps with T13248, but is also a Conduit API Console UI problem. The web UI should have some way to inspect parameter variations per object subtype for available subtypes.
      • As a workaround, you can try to edit an invalid field. The error message will identify valid fields.
    • There's no way to create steps with *.edit because you can't specify a step type. See T13449 for a general variation of the "type is required to initialize objects" problem.
Nov 3 2020, 8:49 PM · Conduit, Harbormaster
epriestley added a revision to T13585: Expose "harbormaster.step.edit" and "harbormaster.step.search" over Conduit: D21489: Add a basic "harbormaster.step.edit" API method.
Nov 3 2020, 8:46 PM · Conduit, Harbormaster
epriestley renamed T13585: Expose "harbormaster.step.edit" and "harbormaster.step.search" over Conduit from Expose "harbormaster.buildstep.edit" and "harbormaster.buildstep.search" over Conduit to Expose "harbormaster.step.edit" and "harbormaster.step.search" over Conduit.
Nov 3 2020, 8:45 PM · Conduit, Harbormaster
epriestley added a comment to T13585: Expose "harbormaster.step.edit" and "harbormaster.step.search" over Conduit.

HarbormasterBuildStepCoreCustomField emits no fields if a BuildStep has no attached Implementation object. This dates from D15352 and is conceptually reasonable ("don't crash if a build step exists but the implementation no longer does") but should probably be represented differently (e.g., an explicit "InvalidImplementation").

Nov 3 2020, 8:18 PM · Conduit, Harbormaster
epriestley triaged T13585: Expose "harbormaster.step.edit" and "harbormaster.step.search" over Conduit as Normal priority.
Nov 3 2020, 8:17 PM · Conduit, Harbormaster

Sep 17 2020

epriestley added a revision to T13582: Exception handling in ConduitFuture for raw HTTP exceptions lacks tailoring: D21467: In ConduitCallFuture, only call Conduit exception messages on Conduit exceptions.
Sep 17 2020, 8:19 PM · Arcanist, Conduit
epriestley triaged T13582: Exception handling in ConduitFuture for raw HTTP exceptions lacks tailoring as Low priority.
Sep 17 2020, 8:17 PM · Arcanist, Conduit

Apr 15 2020

epriestley closed T13507: Compress Conduit client requests as Resolved.

One possible improvement remains here: in streaming mode, HTTPSFuture will not "Accept-Encoding: gzip" and can not inflate responses. Today, this only applies to arc download.

Apr 15 2020, 6:58 PM · Performance, Conduit
epriestley added a revision to T13507: Compress Conduit client requests: D21125: Compress file downloads if the client sends "Accept-Encoding: gzip" and we guess the file might compress alright.
Apr 15 2020, 6:35 PM · Performance, Conduit
epriestley added a revision to T13507: Compress Conduit client requests: D21122: Disable automatic decoding of "Content-Encoding" responses during "Accept-Encoding" setup test.
Apr 15 2020, 12:28 PM · Performance, Conduit
epriestley added a revision to T13507: Compress Conduit client requests: D21121: Allow HTTPFuture callers to disable processing of "Content-Encoding" response headers.
Apr 15 2020, 12:16 PM · Performance, Conduit

Apr 14 2020

epriestley added a comment to T13507: Compress Conduit client requests.

There's also one minor related concern in PHI1638 that I want to take care of here, since it's adjacent.

Apr 14 2020, 11:52 PM · Performance, Conduit
epriestley added a revision to T13507: Compress Conduit client requests: D21120: In Conduit responses, assert that Phabricator supports a "gzip" capability.
Apr 14 2020, 11:47 PM · Performance, Conduit
epriestley added a revision to T13507: Compress Conduit client requests: D21119: If the Conduit server asserts it has the "gzip" capability, compress requests.
Apr 14 2020, 11:45 PM · Performance, Conduit
epriestley added a revision to T13507: Compress Conduit client requests: D21118: If the Conduit client supports gzip, make calls with "Accept-Encoding: gzip".
Apr 14 2020, 11:21 PM · Performance, Conduit
epriestley added a revision to T13507: Compress Conduit client requests: D21117: In "phutil_loggable_string()", encode every byte above 0x7F.
Apr 14 2020, 9:52 PM · Performance, Conduit
epriestley added a comment to T13507: Compress Conduit client requests.

In fairness, "SetInputFilter DEFLATE" is documented as uniquely opinionated, if you catch this box and read between the lines a little bit:

Apr 14 2020, 9:45 PM · Performance, Conduit
epriestley added a comment to T13507: Compress Conduit client requests.

A grand aventure in PHI1679 led to identifying the Apache "SetInputFilter DEFLATE" directive as a problem with implementing compression.

Apr 14 2020, 9:40 PM · Performance, Conduit
epriestley added a revision to T13507: Compress Conduit client requests: D21116: Add a setup warning to detect "SetInputFilter DEFLATE" and other "Content-Encoding" request mangling.
Apr 14 2020, 9:25 PM · Performance, Conduit

Apr 11 2020

epriestley closed T11968: Decide the fate of FutureGraph as Resolved.

"FutureGraph" is dead. Long live "HardpointEngine".

Apr 11 2020, 2:41 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley closed T11968: Decide the fate of FutureGraph, a subtask of T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching, as Resolved.
Apr 11 2020, 2:41 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11968: Decide the fate of FutureGraph: D21083: Remove "RefQuery" and all "HardpointLoader" code.
Apr 11 2020, 1:44 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11968: Decide the fate of FutureGraph: D21082: Reroute all RefQuery callers to HardpointEngine.
Apr 11 2020, 1:40 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist

Apr 10 2020

epriestley added a revision to T11968: Decide the fate of FutureGraph: D21080: Bring "pro" browse queries from modern hardpoint code.
Apr 10 2020, 2:51 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11968: Decide the fate of FutureGraph: D21079: Bring a "pro" WorkingCopyState ref to "master".
Apr 10 2020, 1:06 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a comment to T11968: Decide the fate of FutureGraph.

Generators can't "return" until PHP 7:

Apr 10 2020, 11:43 AM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11968: Decide the fate of FutureGraph: D21078: Introduce "arc inspect" and some of the new ref/hardpoint classes.
Apr 10 2020, 11:39 AM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist

Apr 9 2020

epriestley added a revision to T13507: Compress Conduit client requests: D21077: Remove the (hopefully) obsolete "post_max_size" check during startup.
Apr 9 2020, 8:27 PM · Performance, Conduit
epriestley added a comment to T13507: Compress Conduit client requests.

PHP has a setting called post_max_size. If a POST request is larger than this size, PHP does not populate $_POST or $_FILES.

Apr 9 2020, 8:22 PM · Performance, Conduit

Apr 8 2020

epriestley added a revision to T11968: Decide the fate of FutureGraph: D21075: Rename "getWorkingCopy()" to "getWorkingCopyIdentity()" in Arcanist.
Apr 8 2020, 7:37 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11968: Decide the fate of FutureGraph: D21074: Trivially update "arc branch/feature" and "arc browse" for Toolsets.
Apr 8 2020, 7:29 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T13507: Compress Conduit client requests: D21073: Compress requests from the Conduit client to Phabricator.
Apr 8 2020, 4:21 PM · Performance, Conduit
epriestley claimed T13507: Compress Conduit client requests.
Apr 8 2020, 3:58 PM · Performance, Conduit
epriestley triaged T13507: Compress Conduit client requests as Normal priority.
Apr 8 2020, 3:58 PM · Performance, Conduit
epriestley added a revision to T11968: Decide the fate of FutureGraph: D21072: Remove onboard future bulk-resolution from ConduitEngine.
Apr 8 2020, 3:55 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11968: Decide the fate of FutureGraph: D21071: Add new "Hardpoint" classes to support request parallelization.
Apr 8 2020, 3:47 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11968: Decide the fate of FutureGraph: D21070: Update the "WorkingCopy" API and create a fallback "Filesystem" working copy.
Apr 8 2020, 3:35 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a comment to T11968: Decide the fate of FutureGraph.

XHPAST currently can't build an AST for $result = yield ..., even though this is a valid construct. This is probably a straightforward fix.

Apr 8 2020, 1:27 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist

Apr 5 2020

epriestley added a revision to T11968: Decide the fate of FutureGraph: D21058: Move Phage to FuturePool.
Apr 5 2020, 12:50 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist

Apr 3 2020

epriestley added a revision to T11968: Decide the fate of FutureGraph: D21054: Update some Phabricator behaviors for changes to Futures.
Apr 3 2020, 7:03 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11968: Decide the fate of FutureGraph: D21053: Introduce "FuturePool" to make it easier to manage an ongoing pool of futures.
Apr 3 2020, 6:56 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a comment to T11968: Decide the fate of FutureGraph.

XHPAST currently can't build an AST for $result = yield ..., even though this is a valid construct. This is probably a straightforward fix.

Apr 3 2020, 2:38 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist

Apr 1 2020

epriestley added a revision to T11968: Decide the fate of FutureGraph: D21046: Fix two issues with Future key selection inside FutureIterator.
Apr 1 2020, 5:33 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist

Feb 28 2020

epriestley added a comment to T11968: Decide the fate of FutureGraph.

I have some code which runs and looks plausible (i.e., not covered in piles of callback garbage), at least:

Feb 28 2020, 4:58 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist

Feb 27 2020

epriestley added a comment to T11968: Decide the fate of FutureGraph.

Here's an actual example of loadHardpoints($objects, $hardpoint):

Feb 27 2020, 5:21 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a comment to T11968: Decide the fate of FutureGraph.

In the specific case of the Hardpoints, we currently often have code which loads objects but doesn't do anything with them. For example, most Query classes use didFilterResults() to fill things-that-sure-look-like-hardpoints, but few do anything with the results.

Feb 27 2020, 3:30 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist