joshuaspence (Joshua Spence)
Code Monkey

Projects (83)

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Monday

  • Clear sailing ahead.

User Details

User Since
Oct 9 2013, 12:25 AM (180 w, 3 d)
Availability
Available

Recent Activity

Tue, Mar 21

joshuaspence added inline comments to D17497: Use "git ls-remote" to guess if "git fetch" is a no-op.
Tue, Mar 21, 1:41 AM

Mon, Mar 20

joshuaspence added a comment to D17232: Improve `ArcanistDeprecationXHPASTLinterRule` by lowercasing keys in `xhpast.deprecated.functions`.

LGTM, but we need a Blessed Reviewers to sign off on it as well.

Mon, Mar 20, 7:32 AM
joshuaspence added inline comments to D17497: Use "git ls-remote" to guess if "git fetch" is a no-op.
Mon, Mar 20, 6:30 AM

Thu, Mar 16

joshuaspence added a comment to D12692: Allow full URIs to be rendered as object references.

Let me see if I can get this over the edge of the precipice...

Thu, Mar 16, 1:19 AM

Mon, Mar 13

joshuaspence added a comment to T12390: `differential.querydiffs` is timing out for a revision with 20 diffs.

Mon, Mar 13, 3:15 AM · Conduit, Differential, Bug Report
joshuaspence added a comment to T12390: `differential.querydiffs` is timing out for a revision with 20 diffs.

OK weird, I can't reproduce it anymore. Anyway, I'll add the response body from differential.querydiffs here. It shouldn't contain any sensitive information, but I'll restrict the visibility of the file given that it does contain email addresses.

Mon, Mar 13, 3:11 AM · Conduit, Differential, Bug Report
joshuaspence created T12390: `differential.querydiffs` is timing out for a revision with 20 diffs.
Mon, Mar 13, 3:03 AM · Conduit, Differential, Bug Report

Wed, Mar 8

joshuaspence awarded T12270: Unbeta Badges a Like token.
Wed, Mar 8, 5:13 AM · Badges (v0)

Sun, Mar 5

joshuaspence edited the content of 2017 Week 9 (Early March).
Sun, Mar 5, 2:24 AM

Sat, Mar 4

CodeMouse92 awarded D17429: Update `phd launch` a Like token.
Sat, Mar 4, 1:37 AM

Thu, Mar 2

joshuaspence committed rPfcd8c9c240d4: Update `phd launch` (authored by joshuaspence).
Update `phd launch`
Thu, Mar 2, 10:37 AM
joshuaspence added a commit to T12298: Allow daemon pools to autoscale down to 0 processes: rPfcd8c9c240d4: Update `phd launch`.
Thu, Mar 2, 10:37 AM · Daemons, Ops, Phacility
joshuaspence closed D17429: Update `phd launch` by committing rPfcd8c9c240d4: Update `phd launch`.
Thu, Mar 2, 10:37 AM

Tue, Feb 28

joshuaspence committed rPHU81494451f9be: Minor fix presumably identified by PHPStan (authored by joshuaspence).
Minor fix presumably identified by PHPStan
Tue, Feb 28, 8:43 PM
joshuaspence closed D17435: Minor fix presumably identified by PHPStan by committing rPHU81494451f9be: Minor fix presumably identified by PHPStan.
Tue, Feb 28, 8:43 PM
joshuaspence added a comment to D17435: Minor fix presumably identified by PHPStan.

Unit test thing is a PHP7 thing.

Tue, Feb 28, 8:42 PM
joshuaspence created D17435: Minor fix presumably identified by PHPStan.
Tue, Feb 28, 8:41 PM
epriestley awarded D17429: Update `phd launch` a Cup of Joe token.
Tue, Feb 28, 12:46 PM
joshuaspence updated the summary of D17429: Update `phd launch`.
Tue, Feb 28, 4:25 AM
joshuaspence created D17429: Update `phd launch`.
Tue, Feb 28, 3:49 AM
joshuaspence added a revision to T12298: Allow daemon pools to autoscale down to 0 processes: D17429: Update `phd launch`.
Tue, Feb 28, 3:49 AM · Daemons, Ops, Phacility
joshuaspence closed T12329: Unable to establish a connection to any database host (while trying "phabricator_config"). All masters and replicas are completely unreachable as "Invalid".

Oh wait, this is the unit tests failing. Nevermind

Tue, Feb 28, 3:47 AM · Phacility, Bug Report
joshuaspence created T12329: Unable to establish a connection to any database host (while trying "phabricator_config"). All masters and replicas are completely unreachable.
Tue, Feb 28, 3:45 AM · Phacility, Bug Report

Feb 15 2017

joshuaspence added inline comments to D17357: arc set-config: warn about unknown keys.
Feb 15 2017, 9:54 PM

Feb 14 2017

joshuaspence retitled D17350: Allow external linters to operate on multiple paths in batches from Allow external linters to operate on multiple paths to Allow external linters to operate on multiple paths in batches.
Feb 14 2017, 4:36 AM
joshuaspence created D17350: Allow external linters to operate on multiple paths in batches.
Feb 14 2017, 3:36 AM

Feb 10 2017

joshuaspence accepted D17232: Improve `ArcanistDeprecationXHPASTLinterRule` by lowercasing keys in `xhpast.deprecated.functions`.
Feb 10 2017, 2:45 AM

Feb 9 2017

shepting awarded D11657: Add a ShellCheck linter a Doubloon token.
Feb 9 2017, 5:50 PM

Feb 7 2017

joshuaspence added a comment to I2 Donate to Phacility.

Macro awwyiss2:

Feb 7 2017, 8:54 PM · Phacility
joshuaspence added a comment to I2 Donate to Phacility.

Can haz badge??? 🍺

Feb 7 2017, 8:49 PM · Phacility
joshuaspence backed I2 Donate to Phacility with $3.00 USD.
Feb 7 2017, 8:47 PM · Phacility
joshuaspence backed I2 Donate to Phacility with $1.00 USD.
Feb 7 2017, 8:43 PM · Phacility
joshuaspence added a comment to T8937: Unclear exception when patching non-existant revision.

I don't believe this is related to E being set in variables_order.

Feb 7 2017, 8:40 PM · Arcanist

Feb 1 2017

robertkraig awarded Community Resources a Love token.
Feb 1 2017, 8:22 PM

Jan 25 2017

1stone awarded T4558: Make Diviner useful for third-parties a Like token.
Jan 25 2017, 8:16 AM · Diviner

Jan 23 2017

joshuaspence added a comment to T12144: Ability to reorder milestones on a project's workboard.
In T12144#208351, @chad wrote:

I'd rather fix the core problem if it's an unclear typeahead.

Jan 23 2017, 1:16 AM · Projects, Feature Request

Jan 22 2017

joshuaspence added a comment to T12144: Ability to reorder milestones on a project's workboard.

My understanding is that subprojects are basically just regular projects but with a parent relationship. We didn't want these projects to pollute the projects typeahead because no-one should be creating tasks within these subprojects (given that these subprojects dictate what we are working on). By choosing "milestone" instead of "subproject", it becomes clearer in the project typeahead that the subproject is internal to the parent project. That is, if we made #our_january_goal a subproject then it would show up in the projects typeahead as "Our January Goal" whereas as a milestone it is rendered as "Our Team (Our January Goal)".

Jan 22 2017, 11:45 PM · Projects, Feature Request
joshuaspence created T12144: Ability to reorder milestones on a project's workboard.
Jan 22 2017, 11:10 PM · Projects, Feature Request
chad awarded T9640: Make Phabricator compatible with PHP7 a Yellow Medal token.
Jan 22 2017, 7:26 PM · Prioritized, Restricted Project, Infrastructure
dmgarcia awarded T9640: Make Phabricator compatible with PHP7 a Yellow Medal token.
Jan 22 2017, 7:20 PM · Prioritized, Restricted Project, Infrastructure
dmgarcia awarded T9640: Make Phabricator compatible with PHP7 a Orange Medal token.
Jan 22 2017, 7:20 PM · Prioritized, Restricted Project, Infrastructure

Jan 19 2017

joshuaspence requested changes to D17232: Improve `ArcanistDeprecationXHPASTLinterRule` by lowercasing keys in `xhpast.deprecated.functions`.

I think you probably want to use CaseInsensitiveArray, otherwise the linter message won't exactly match xhpast.deprecated.functions.

Jan 19 2017, 10:38 PM

Jan 18 2017

cburroughs awarded T5889: Allow herald rules to act on existence of auditors a Mountain of Wealth token.
Jan 18 2017, 9:47 PM · Restricted Project, Audit, Herald
sgielen awarded T9640: Make Phabricator compatible with PHP7 a Yellow Medal token.
Jan 18 2017, 3:25 PM · Prioritized, Restricted Project, Infrastructure

Jan 13 2017

joshuaspence awarded T12101: Phabricator PHP 7 Compatibility a Mountain of Wealth token.
Jan 13 2017, 10:51 PM · Infrastructure, Guides
skibbipl awarded T9640: Make Phabricator compatible with PHP7 a Like token.
Jan 13 2017, 12:09 PM · Prioritized, Restricted Project, Infrastructure
cmmata awarded T9640: Make Phabricator compatible with PHP7 a 100 token.
Jan 13 2017, 10:16 AM · Prioritized, Restricted Project, Infrastructure
Zolli awarded T9640: Make Phabricator compatible with PHP7 a Like token.
Jan 13 2017, 6:03 AM · Prioritized, Restricted Project, Infrastructure

Jan 12 2017

PhoneixS awarded T9640: Make Phabricator compatible with PHP7 a Like token.
Jan 12 2017, 9:58 AM · Prioritized, Restricted Project, Infrastructure

Jan 8 2017

joshuaspence created T12082: Differential emails are rendering literal HTML tags.
Jan 8 2017, 10:33 PM · Differential, Bug Report
joshuaspence abandoned D17159: Testing blocking reviewers.
Jan 8 2017, 10:32 PM
joshuaspence added a reviewer for D17159: Testing blocking reviewers: epriestley.
Jan 8 2017, 10:30 PM
joshuaspence created D17159: Testing blocking reviewers.
Jan 8 2017, 10:28 PM

Jan 2 2017

joshuaspence added projects to T11953: Herald rule for commits on autoclose branch didn't trigger when a commit was first pushed to a branch, then to master (fast-forward): Diffusion, Herald.
Jan 2 2017, 10:26 AM · Diffusion (v3), Herald, Bug Report
joshuaspence added a comment to T11085: Prevent users from generating an ambiguous commit message by editing revisions with the web UI.

You're watching #twitter.

Jan 2 2017, 1:42 AM · Prioritized, Restricted Project, Arcanist, Bug Report

Jan 1 2017

joshuaspence added a comment to T10038: Plan the mid-term pathway for linter bindings.

Do you see there being a "Blessed" foo-linter (maybe as a repo on this instance?), or will there be multiple foo-tributes fending themselves in the wilds of github?

This is all still pretty early, but I imagine this instance mostly just collecting packages into a directory for now. The actual source might be on GitHub, but you'd be able to search this instance to find all foo-linter extensions by authors who had bothered to register their packages.

In some cases, we'd likely pull linters out of arc and turn them into Phacility-Published extensions (secure.phabricator.com/phacility/foo-linter) which we'd sign. These would be "blessed", as long as you continue trusting our signing keys.

In some cases, I'd like to "soft-bless" extensions as "safe, but don't come to us for support" with some sort of "Community Badge of Quality" key. For example, you might publish a secure.phabricator.com/cburroughs/foo-linter) which we'd sign in an advisory way which mean "we looked at the code, it seems fine, but we aren't taking bug reports for it". The UI and arc install would show users that someone they trust also trusts this code.

In some cases, untamed wilds, but collected in one place and searchable, with signing and a consistent toolset.

If nothing is blessed, you may have to make a decision like this yourself:

$ arc install foo-lint
Query "foo-lint" matches multiple packages:

  secure.phabricator.com/alice/foo-lint
  secure.phabricator.com/bob/foo-lint

None of these packages or vendors are signed by anything you trust.

Which package do you want to install?

But I think that should be OK. And we can do some level of positive and negative curation (advisory signing on good packages, disabling bad packages)..

You'll also be able to have an internal package directory for your company's stuff, so you can just publish internal things to it and then everyone can use standard tools to manage extensions.

Some day far in the future I could imagine the package directory integrating with other applications (e.g., giving each package its own repositories and tasks, like GitHub) but that's definitely far in the future. I expect most extensions (like linter bindings) to be small so they wouldn't get much benefit (e.g., 100 lines of code updated a couple times a year) and large extensions (eventually, third-party applications) to probably want to self-host on their own Phabricator instances in most cases.

The immediate goal is just fixing the problem that distributing extensions is a huge pain and all solutions have major downsides, with "convince the upstream to accept the extension" being the best option for everyone but us. The new distribution mechanism would be:

$ arc lint
Okay, automatically installing all the extensions this project needs.

(...prompts if you need to trust new stuff...)

Done!
...
nice lint output

Which fixes distribution. In the long run, there's a lot we can do to build stronger ecosystem tools, but I'm less worried about tackling that stuff today than I am about moving distribution to a broadly reasonable mechanism.

Jan 1 2017, 3:22 AM · Lint, Arcanist

Dec 29 2016

joshuaspence added a comment to D17058: Separate all commit message field parsing out of Differential custom fields.

Thanks for the explanation.

Dec 29 2016, 8:57 PM
joshuaspence added a comment to T11114: Move Differential to EditEngine.

From D17067:

Dec 29 2016, 10:42 AM · Prioritized, Restricted Project, Infrastructure, EditEngine, Differential
joshuaspence added projects to T11343: Generate default "Depends on" line in commit message when multiple diffs are stacked: Arcanist, Differential.
Dec 29 2016, 7:08 AM · Differential, Arcanist, Feature Request

Dec 28 2016

joshuaspence added a comment to D17058: Separate all commit message field parsing out of Differential custom fields.

Also, is it intentional that the field name is wrapped in pht(...) but the field aliases are not?

Dec 28 2016, 11:59 PM
joshuaspence added inline comments to D17058: Separate all commit message field parsing out of Differential custom fields.
Dec 28 2016, 11:52 PM

Dec 15 2016

J5lx awarded T9640: Make Phabricator compatible with PHP7 a Like token.
Dec 15 2016, 7:13 PM · Prioritized, Restricted Project, Infrastructure

Dec 9 2016

rafaelrabeloit awarded T9640: Make Phabricator compatible with PHP7 a Like token.
Dec 9 2016, 3:53 PM · Prioritized, Restricted Project, Infrastructure

Dec 6 2016

salvian awarded T5155: Evaluate support for AWS IAM Roles in S3 Client a Like token.
Dec 6 2016, 9:30 AM · Files

Dec 2 2016

vanmeeuwen awarded T9640: Make Phabricator compatible with PHP7 a Like token.
Dec 2 2016, 6:48 AM · Prioritized, Restricted Project, Infrastructure

Dec 1 2016

joshuaspence added a project to T11933: Let `PhutilTypeLexer` support PHP style qualified names: libphutil.
Dec 1 2016, 1:36 AM · libphutil, Feature Request

Nov 29 2016

joshuaspence added a comment to T11930: Users don't realise that they must link their account.

That didn't seem to be the case. It might have been because we only enforced Google authentication around one year ago, before that users could use a password for authentication. I can check later today, but perhaps the users that ended up with duplicate accounts never setup Google Auth.

Nov 29 2016, 9:42 PM · NUX, Auth
joshuaspence added a project to T11930: Users don't realise that they must link their account: NUX.
Nov 29 2016, 9:35 PM · NUX, Auth
joshuaspence added a comment to T11930: Users don't realise that they must link their account.

To provide some additional context, we originally allowed users to register their own accounts, but we eventually disabled this because we ended up with around 30 duplicate accounts (users with more than one account). I think that this happened because users had listed an alias address in their Phabricator settings, but Google was using a canonical email address to authenticate, which didn't map to any existing user accounts (we have a lot of users that have aliases set up. For example, abraham@mycompany.com would be an alias for the canonical alincoln@mycompany.com address).

Nov 29 2016, 9:35 PM · NUX, Auth
joshuaspence created T11930: Users don't realise that they must link their account.
Nov 29 2016, 9:32 PM · NUX, Auth
joshuaspence added a project to T11509: Provide a way to quickly see if all comments on a diff have been marked as "done": Differential.
Nov 29 2016, 12:32 AM · Differential, Restricted Project, Feature Request
joshuaspence renamed T11495: Drydock doesn't delete working copies from "DryDock doesn't delete working copies" to "Drydock doesn't delete working copies".
Nov 29 2016, 12:30 AM · Bug Report (Needs Information), Drydock
Herald updated subscribers of T11476: Record transaction histories when users edit application capabilities.
Nov 29 2016, 12:28 AM · Contributor Onboarding, Restricted Project, Applications, Feature Request

Nov 28 2016

joshuaspence added a project to T11900: Create bot reviewers that do code analysis and post findings as inline comments.: Differential.
Nov 28 2016, 7:21 PM · Differential, Feature Request

Nov 18 2016

pmatos awarded T9640: Make Phabricator compatible with PHP7 a Like token.
Nov 18 2016, 4:36 PM · Prioritized, Restricted Project, Infrastructure
joshuaspence added a comment to D16822: Add a `phutil_person()` wrapper for the string extractor.

Wouldn't it be better to add some sort of %g format string? If I understand correctly, the current approach doesn't work in cases like this:

Nov 18 2016, 6:49 AM

Nov 3 2016

NMeral awarded T9640: Make Phabricator compatible with PHP7 a Like token.
Nov 3 2016, 7:35 AM · Prioritized, Restricted Project, Infrastructure

Sep 28 2016

joshuaspence added a comment to T11705: Repositories are getting stuck.

Thanks!

Sep 28 2016, 10:02 PM · Diffusion, Daemons
joshuaspence added a comment to T11705: Repositories are getting stuck.

I clicked "Update Now" and the update frequency for our most active repository has dropped back down to 15 seconds.

Sep 28 2016, 2:04 AM · Diffusion, Daemons
joshuaspence created T11705: Repositories are getting stuck.
Sep 28 2016, 2:03 AM · Diffusion, Daemons

Sep 26 2016

joshuaspence closed T11699: `arc patch` is timing out as "Invalid".

Sorry, apparently after running arc upgrade it no longer times out (although it does take a long time).

Sep 26 2016, 4:07 AM · Conduit, Differential
joshuaspence added a comment to T11699: `arc patch` is timing out.
In T11699#195930, @chad wrote:

The error log says July

Sep 26 2016, 2:29 AM · Conduit, Differential
joshuaspence added a comment to T11699: `arc patch` is timing out.

Server

Sep 26 2016, 2:27 AM · Conduit, Differential
joshuaspence added a comment to T11699: `arc patch` is timing out.

Here are some query traces from XHProf:

Sep 26 2016, 1:24 AM · Conduit, Differential
joshuaspence added a comment to T11699: `arc patch` is timing out.
> time echo '{"revisionIDs": [46496]}' | arc call-conduit  differential.querydiffs >/dev/null
Sep 26 2016, 12:13 AM · Conduit, Differential
joshuaspence created T11699: `arc patch` is timing out.
Sep 26 2016, 12:13 AM · Conduit, Differential

Sep 10 2016

joshuaspence renamed T11606: Allow custom fields to accept function tokens like "viewer()" from "Allow custom "users" fields to accept function tokens like "viewer()"" to "Allow custom fields to accept function tokens like "viewer()"".
Sep 10 2016, 12:44 AM · Custom Fields, Typeahead, Feature Request
joshuaspence added a project to T11606: Allow custom fields to accept function tokens like "viewer()": Custom Fields.
Sep 10 2016, 12:40 AM · Custom Fields, Typeahead, Feature Request
joshuaspence renamed T11609: Don't resize small pictures in Remarkup from "don't resize small pictures in remarkup" to "Don't resize small pictures in Remarkup".
Sep 10 2016, 12:38 AM · Remarkup

Sep 8 2016

joshuaspence added a comment to T11610: Call to a member function getCommitDetail() on a non-object.

I was able to reproduce on this install by passing rPf712ae718ccc1c94d882c626ca8626b77346026b to the Herald test console.

Sep 8 2016, 10:46 PM · Diffusion, Herald
joshuaspence created T11610: Call to a member function getCommitDetail() on a non-object.
Sep 8 2016, 10:46 PM · Diffusion, Herald

Sep 7 2016

pouyana awarded T4558: Make Diviner useful for third-parties a Mountain of Wealth token.
Sep 7 2016, 10:25 AM · Diviner

Sep 2 2016

joshuaspence accepted D16484: Use new format for docblock specials when parsing symbols.
Sep 2 2016, 12:03 PM
joshuaspence accepted D16487: Update Diviner for array-valued `@doc-stuff` return values from DocblockParser.
Sep 2 2016, 12:02 PM

Aug 30 2016

joshuaspence added a comment to D16464: Properly Set Host Header in Conduit Client.

Interestingly, I can't see the contents of this diff... I just see "No data available" under "Revision Contents" and nothing under "Diff 39613".

Aug 30 2016, 9:34 AM

Aug 23 2016

joshuaspence added a member for Contributor Onboarding: joshuaspence.
Aug 23 2016, 12:32 PM
joshuaspence awarded T11480: Stop sending misbehaving user nonsense to the error log a Doubloon token.
Aug 23 2016, 12:26 PM
joshuaspence committed rPHU237549280f08: Improve parsing of docblock specials (authored by joshuaspence).
Improve parsing of docblock specials
Aug 23 2016, 2:14 AM
joshuaspence closed D16431: Improve parsing of docblock specials by committing rPHU237549280f08: Improve parsing of docblock specials.
Aug 23 2016, 2:13 AM
joshuaspence updated the diff for D16431: Improve parsing of docblock specials.

Add another test case

Aug 23 2016, 2:11 AM