Page MenuHomePhorge

speck (Christopher Speck)
UserAdministrator

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Wednesday

  • Clear sailing ahead.

User Details

User Since
Jun 10 2021, 02:58 (179 w, 4 d)
Roles
Administrator
Availability
Available

At my company I investigated code review tools back in 2014/2015 and selected Phabricator. I worked to adopt it into the company and we've used it successfully since then. I have a few minor contributions in the upstream, mainly related to Mercurial, along with some bug reports.

I'm interested in helping to organize the project effort as well as help document existing architecture/code and provide input into architectural design decisions. I will likely have time for some coding as well.

Recent Activity

Mon, Nov 11

NameNoQuality awarded rP7157dd96b34a: T15006: Update .arcconfig to point to we.phorge.it a Love token.
Mon, Nov 11, 10:25

Tue, Oct 22

speck accepted D25830: Fix PHP 8.1 "strlen(null)" exception rendering JSON file as Jupyter.

The function name including a negative, “nonempty”, throws me off…

Tue, Oct 22, 01:04

Sep 4 2024

speck added a comment to D25535: T15011: Update support for XHPast on Windows.

Maybe this is wild, but: should we consider removing the compiled xhpast.exe file from the repository, and host is externally?

Sep 4 2024, 02:07
speck updated the task description for T15937: Exception when viewing diff while not logged in.
Sep 4 2024, 02:04 · Phorge
speck created T15937: Exception when viewing diff while not logged in.
Sep 4 2024, 02:03 · Phorge

Sep 3 2024

speck accepted D25673: Fix error in Mercurial when no offset is specified.

Ty. I’m still confused how “limit” is required but doesn’t throw an error when not specified. Can address that later if needed.

Sep 3 2024, 21:53

Aug 27 2024

speck added inline comments to D25811: Fix PHP 8.1 "strlen(null)" exception in PhutilOAuth1Future.
Aug 27 2024, 16:40

Aug 26 2024

speck accepted D25808: Remove an outdated PHP 5.3 check in utils.
Aug 26 2024, 13:55

Jul 27 2024

speck accepted D25118: Remarkup: make less internal links open in new tabs.
Jul 27 2024, 15:31

Jul 10 2024

speck accepted D25728: Fix PHP 8.1 "file_exists(null)" exception rendering AphrontStackTraceView.

😆

Jul 10 2024, 21:54
speck added a comment to D25728: Fix PHP 8.1 "file_exists(null)" exception rendering AphrontStackTraceView.

This might regress the case where file is “0”

Jul 10 2024, 00:31
speck accepted D25727: Fix invalid logic in PhabricatorEmailPreferencesSettingsPanel::processRequest().
Jul 10 2024, 00:10
speck accepted D25726: Set specific timeline title for form creation.
Jul 10 2024, 00:04

Jul 3 2024

speck added a comment to D25708: Fix invalid constructor call for ArcanistHardpointFutureList.

I don't know what an "hardpoint" is.

Jul 3 2024, 17:40

Jun 27 2024

speck added a comment to D25667: Redirect back to object after clicking "Log In to Comment" and login.

❤️

Jun 27 2024, 11:45

Jun 24 2024

speck accepted D25699: Fix PHP 8.1 "strlen(null)" exceptions handling empty comment metadata in PhabricatorEditEngine.
Jun 24 2024, 21:57

Jun 23 2024

speck accepted D25648: Fix call to non-existing newEmptyValue() in PhabricatorDashboardPortalProfileMenuEngine.

ty

Jun 23 2024, 17:32

Jun 22 2024

speck added a comment to D25631: Update d3 from version 5.9.2 to 6.7.0.

Great, I appreciate your thoroughness here!

Jun 22 2024, 17:31
speck added a comment to D25341: Fix ArcanistExternalLinter on Windows.

I had no idea that I am supposed to "land" these changes. Surely it should be the responsibility of the maintainers to decide into which release a change will go and when?

Anyway, I have been waiting for several months for someone to stop ignoring me and accept my patch, until @aklapper explained it to me… This seems like an awful workflow.

Jun 22 2024, 03:34
speck added inline comments to D25388: PhutilErrorHandler: support multiple error listeners.
Jun 22 2024, 03:29
speck accepted D25518: Allow setting default value for SearchFields; set Maniphest Page Size to 100.

seems good

Jun 22 2024, 03:26
speck accepted D25631: Update d3 from version 5.9.2 to 6.7.0.

I take it the api used by Phorge hasn’t updated or changed in the update?

Jun 22 2024, 03:15
speck requested changes to D25673: Fix error in Mercurial when no offset is specified.

I didn’t find changes in our fork regarding this. We should either change these parameters to be optional in their definition or throw exceptions when they aren’t specified. Changing them to be optional seems the better behavior.

Jun 22 2024, 03:12
speck added inline comments to D25648: Fix call to non-existing newEmptyValue() in PhabricatorDashboardPortalProfileMenuEngine.
Jun 22 2024, 03:01
speck accepted D25690: Fix "Undefined offset: 1" exception in Diviner when @task value in PHPDoc is a single word.

Not having a title seems j like a bug elsewhere

Jun 22 2024, 03:00

Jun 20 2024

speck added inline comments to D25051: Destroy file attachments when file is deleted, or object is deleted.
Jun 20 2024, 21:26 · Files

Jun 19 2024

speck added inline comments to D25694: Set "preconnect" HTTP header when "security.alternate-file-domain" is set.
Jun 19 2024, 02:43

Jun 15 2024

speck accepted D25692: Fix PHP 8.1 "strlen(null)" exception in PhabricatorMailSMTPAdapter when sending email.

Thank you!

Jun 15 2024, 13:12

Jun 11 2024

speck added inline comments to D25690: Fix "Undefined offset: 1" exception in Diviner when @task value in PHPDoc is a single word.
Jun 11 2024, 17:17
speck accepted D25689: Fix PHP 8.1 "strlen(null)" exception in Diviner when PHPDoc has no @task block.

Ah I see below it assumes string. Thanks!

Jun 11 2024, 17:15
speck added a comment to D25689: Fix PHP 8.1 "strlen(null)" exception in Diviner when PHPDoc has no @task block.

Is it possible tasks isn’t a string in this case, where non_empty_scalar might be more of a match?

Jun 11 2024, 17:13
speck accepted D25687: Display same items in mobile menu on User Profile page as on desktop.

seems good, ty!

Jun 11 2024, 17:11

May 30 2024

speck added a comment to D25660: PHPMailer: Set defaults for required parameters followed by optional parameters in Authorise() method signature.

Oh I see you did confirm it’s fixed upstream. Should we just update the version we’re using?

May 30 2024, 17:47
speck added a comment to D25660: PHPMailer: Set defaults for required parameters followed by optional parameters in Authorise() method signature.

Since this is a third-party dependency can we check if this was fixed upstream, and that an update to phpmailer would fix this?

May 30 2024, 17:46
speck added a comment to D25673: Fix error in Mercurial when no offset is specified.

Swear I’ve come across this before… it might be fixed in our forked branch so I’ll take a look. Does $limit also need same treatment?

May 30 2024, 17:44

May 26 2024

speck added a comment to D25671: Reword joke password reset email message.
In D25671#18360, @speck wrote:

Agree the current non-serious language needs updated.

May 26 2024, 16:39
speck added inline comments to D25671: Reword joke password reset email message.
May 26 2024, 16:34
speck added a comment to D25671: Reword joke password reset email message.

Agree the current non-serious language needs updated. Maybe something like,

May 26 2024, 16:33

May 17 2024

speck accepted D25661: PHPMailer: Remove a check for PHP 5.0.
May 17 2024, 17:57

May 4 2024

speck added a comment to D25619: Fix overflowing of AphrontSideNavFilterView on small screens and tidy up nav bar styles.

Ah, yes thank you for the video. I should have clarified but was asking for screenies of the result after this change. The changes look reasonable but I’m not a regular css user

May 4 2024, 17:18
speck added a comment to D25619: Fix overflowing of AphrontSideNavFilterView on small screens and tidy up nav bar styles.

screenies?

May 4 2024, 16:33
speck added a comment to D25614: Explicitly cast "limit" (page size) API parameter to int.

Should the conduit handler also check this and throw an exception? Doing so will send back a more informative error to the caller. I did some of this in https://secure.phabricator.com/D21872

May 4 2024, 16:23

May 1 2024

speck accepted D25578: Fix PHP 8.1 "strlen(null)" exceptions adding an OAuth provider.

Thank you for testing. I think this looks good. In the one case that the old var is used it’s rendered as a string in pht so string assumption seems okay here.

May 1 2024, 23:12
speck accepted D25613: Fix exception trying to export empty task list to CSV.

One by one

May 1 2024, 23:04
speck accepted D25611: Fix PHP 8.1 "strlen(null)" exception in PhabricatorPasteLanguageTransaction.php.

thank you!

May 1 2024, 23:03
speck accepted D25610: Fix PHP 8.1 "strlen(null)" exception in PhabricatorStandardCustomFieldLink.php.

yarp

May 1 2024, 23:02

Apr 12 2024

speck added a comment to D25576: Improve PHPDoc of id().

I don’t believe this style of doc annotation is used elsewhere. What’s the purpose of this?

Apr 12 2024, 20:53
speck accepted D25568: Fix PHP 8.1 "addcslashes(null)" exception exporting task list to tab-separated text.

Seems good

Apr 12 2024, 20:51

Apr 3 2024

speck added a comment to V5: Should we remove the code-generated documents from this instance?.

Are there mechanisms to re-gen the doc after we land changes? If not that might be something we should be able to do with harnormaster, and we can bring the docs back after something like that is set up to ensure they’re always updated

Apr 3 2024, 11:21 · Diviner
speck added inline comments to D25568: Fix PHP 8.1 "addcslashes(null)" exception exporting task list to tab-separated text.
Apr 3 2024, 02:31

Apr 2 2024

speck added a comment to D25475: Drag & Drop Task Cover Image: also attach.

The change looks reasonable though I’m not familiar at this level of the database schema design

Apr 2 2024, 22:01
speck accepted D25566: Fix setup check for gzip request mangling being sent as GET.

Ah yep, GET with body will get flagged in a number of cases.

Apr 2 2024, 01:05

Mar 26 2024

speck accepted D25561: Fix important regression in search engine.

nice, tyty

Mar 26 2024, 01:16

Mar 25 2024

speck accepted D25561: Fix important regression in search engine.

I prefer to invert the logic and return early, to avoid having the entire function contents inside a nested level - up to you but this looks good.

Mar 25 2024, 17:24
speck added inline comments to D25561: Fix important regression in search engine.
Mar 25 2024, 11:51

Mar 22 2024

speck accepted D25557: Fix "strpos(): Non-string needles will be interpreted as strings" in PhutilSortVector.
Mar 22 2024, 11:26

Mar 13 2024

speck accepted D25472: Update PhpunitTestEngine.php and ArcanistPhpunitTestResultParser.php to use junit output rather than json..

yep!

Mar 13 2024, 11:54

Feb 28 2024

speck added a comment to D25544: Comments: avoid confusing warning about "core:file".

I’m not very familiar with this area of code but this sounds appropriate

Feb 28 2024, 23:11

Feb 12 2024

speck added a comment to D25502: Make PhabricatorSearchIntField validate its input.

Is it possible to check if anything is relying on this not working with negative numbers?

Feb 12 2024, 22:56
speck accepted D25489: Fix PHP 8.1 "strlen(null)" exception rendering dashboard panel with latest tasks when custom int field configured.

whoops

Feb 12 2024, 12:23

Feb 10 2024

speck added a comment to Q108: Phorge and Mermaid Js (Answer 137).

A mermaid-js one could be written based on the old graphviz one:

Feb 10 2024, 03:54

Feb 9 2024

speck added a comment to Q101: Cannot land a diff - LOGIN REQUIRED (I am logged in).

I haven’t run this specific issue but I have seen other oddities when using my installed arc within the arc or phorge repos. I’m unable to get it to work unless I use the arc that exists along side that phorge repo. That might be similar here.

Feb 9 2024, 03:15
speck added a comment to T15673: Phorge participation at FOSDEM 2024.

Hahaha I’m just now seeing this. Thank you for putting together the presentation and giving the talk. I enjoy seeing your excitement!

Feb 9 2024, 03:07 · Blessed Communicators, Phorge
speck added a comment to T15630: Fix Fonts.

I configure my browsers to increase the default font size because my eyes can’t handle the small fonts. Most pages tend to size appropriately but there are some oddities, including Phorge. I’ll grab some screen caps when I’m back on workstation.

Feb 9 2024, 02:42

Feb 6 2024

speck closed D25534: T15064: Several arcanist PHP 8.1 compat issues on Windows.
Feb 6 2024, 11:56
speck committed rARC8ef1ead6aca0: T15064: Several arcanist PHP 8.1 compat issues on Windows.
T15064: Several arcanist PHP 8.1 compat issues on Windows
Feb 6 2024, 11:56
speck added a comment to D25534: T15064: Several arcanist PHP 8.1 compat issues on Windows.

Both of these failures are edge cases so it does seem likely we wouldn't have found them as quickly. I do still wonder how many Windows users we have.

Feb 6 2024, 11:54
speck updated the summary of D25534: T15064: Several arcanist PHP 8.1 compat issues on Windows.
Feb 6 2024, 03:42
speck added a revision to T15064: Make Phorge compatible with PHP 8.1/8.2/8.3: D25534: T15064: Several arcanist PHP 8.1 compat issues on Windows.
Feb 6 2024, 03:42 · PHP 8 support
speck updated the summary of D25535: T15011: Update support for XHPast on Windows.
Feb 6 2024, 03:41
speck added a revision to T15011: Build a Phorge Developer Environment: D25535: T15011: Update support for XHPast on Windows.
Feb 6 2024, 03:41 · Extension Development
speck added a comment to D25535: T15011: Update support for XHPast on Windows.

The ArcanistBundleTestCase failures are due to diff binary not being present on Windows systems. The tests could be rewritten to utilize git diff instead but would take some effort.

Feb 6 2024, 03:37
speck updated the diff for D25535: T15011: Update support for XHPast on Windows.

Fix some lints about line length

Feb 6 2024, 03:13
speck updated the diff for D25535: T15011: Update support for XHPast on Windows.

Fix use of ExecFuture to pass a scalar string as first argument instead of variable.

Feb 6 2024, 03:10
speck requested review of D25535: T15011: Update support for XHPast on Windows.
Feb 6 2024, 03:06
speck edited P29 xhpast-make.bat.
Feb 6 2024, 02:28
speck added a comment to T15011: Build a Phorge Developer Environment.

I managed to compile xhpast on windows using llvm installed via Scoop. I also have Visual Studio C++ 19 installed which may be required (I saw some suspicious output that indicated that some include files were being pulled from that install somehow).

Feb 6 2024, 02:17 · Extension Development
speck created P30 xhpast-winbisonflex.bat.
Feb 6 2024, 02:16
speck created P29 xhpast-make.bat.
Feb 6 2024, 02:16
speck created P28 unistd.h.
Feb 6 2024, 02:12
speck added a comment to D25534: T15064: Several arcanist PHP 8.1 compat issues on Windows.

I wonder how many Windows users we have. The xhpast linter does not work, and the unit test failures listed here are pre-existing and occur without these changes.

Feb 6 2024, 00:42
speck requested review of D25534: T15064: Several arcanist PHP 8.1 compat issues on Windows.
Feb 6 2024, 00:38

Feb 5 2024

speck accepted D25533: Deprecate Fund and Phortune prototype applications.

Almost seems a little too easy

Feb 5 2024, 22:58

Jan 30 2024

speck added a comment to D25301: Diffusion: add "Permalink" button.

I’m not sure about Permalink being a top-level button. Maybe under the View Options menu?

Jan 30 2024, 13:23

Jan 26 2024

speck added a comment to T15726: Remove dysfunctional Fund and Phortune prototype applications.

I believe it was originally made for Phacility to accept donations and then process payments for paid support, neither of which we want at Phorge, and I doubt is used elsewhere. Removing seems fine to me.

Jan 26 2024, 20:47
speck accepted D25528: Fix PHP 8.1 "strlen(null)" exception creating a Merchant in Phortune.
Jan 26 2024, 20:39
speck added inline comments to D25526: Avoid exception in revision timeline when left diff does not exist.
Jan 26 2024, 14:19

Jan 19 2024

valerio.bozzolan awarded T15322: Footer: specify a default Libre license for Phorge contents a Love token.
Jan 19 2024, 21:00 · Discussion Needed, Governance
speck closed T15322: Footer: specify a default Libre license for Phorge contents as Resolved.
Jan 19 2024, 20:45 · Discussion Needed, Governance
speck claimed T15322: Footer: specify a default Libre license for Phorge contents.
Jan 19 2024, 20:45 · Discussion Needed, Governance
speck added a comment to T15322: Footer: specify a default Libre license for Phorge contents.

Is it assumed that using the site will automatically license the user’s content under these, or should there be a line for that?

Jan 19 2024, 18:54 · Discussion Needed, Governance
speck accepted D25521: Adds "Locate File" input to every browse directory view in Diffusion.

Thanks!

Jan 19 2024, 12:36

Jan 18 2024

speck added a comment to T15645: Implement "Locate File" input in Browse view.

@bekay while in this area of code would you have any pointers on these other issues I’d like to fix at some point?

  1. File browse widget doesn’t work unless logged in, for publicly accessible repos
  2. The search results pop up width is often too narrow to show the full results path, and truncates the end of the path instead of beginning.
Jan 18 2024, 23:35 · Diffusion
speck added a comment to D25521: Adds "Locate File" input to every browse directory view in Diffusion.

Looks good! Thank you so much for this!

Jan 18 2024, 23:22
speck added inline comments to D25518: Allow setting default value for SearchFields; set Maniphest Page Size to 100.
Jan 18 2024, 01:24

Jan 17 2024

speck added inline comments to D25518: Allow setting default value for SearchFields; set Maniphest Page Size to 100.
Jan 17 2024, 17:37

Jan 14 2024

speck accepted D25516: preg_match() null exception setting custom user profile image with empty files.viewable-mime-types.
Jan 14 2024, 13:43

Jan 13 2024

speck accepted D25514: Correct manual upload of Differential patch with a leading BOM.

Thanks - I did mean as an inline comment in the code but either is good.

Jan 13 2024, 19:58
speck added a comment to D25514: Correct manual upload of Differential patch with a leading BOM.

Is the input to parseDiff guaranteed to be UTF-8 encoded? I don’t have the code on-hand to look up but it’s possible encoding is handled elsewhere — or arc might have a hard requirement for all input to be UTF-8. All mercurial commands run by arcanist are done with a flag to enforce UTF-8.

Jan 13 2024, 15:51
speck added a comment to T15452: Differential drops a diff's first hunk if the file starts with a Byte-order-Mark.

Hmm I’ve used mercurial and arcanist/Phab for years at my company and don’t believe we’ve ever run into this. Any idea what’s causing the presence of the BOM? We’ll apply a change to handle the UTF-8 bom but I am curious what may have caused it to show up. Is your hgrc configured in some way for this or maybe an environment variable?

Jan 13 2024, 15:42 · Differential