Page MenuHomePhorge
Feed Advanced Search

Nov 12 2023

speck published D25276: Add support for secure connections to the database for review.

Opening this up from draft if communication/reviews are happening

Nov 12 2023, 17:09
speck accepted D25464: Enforce viewable MIME types config on PDF documents.

Okay I misunderstood the default value. I don’t think a security tag is necessary either.

Nov 12 2023, 15:49
speck added a comment to D25464: Enforce viewable MIME types config on PDF documents.

This will require documentation of some sort, specifically for the upgrade notes to indicate that if someone relies on rendering PDFs currently then after upgrading they would need to update that configuration.

Nov 12 2023, 15:23
speck added inline comments to D25465: Fix loop in contribution docs.
Nov 12 2023, 00:51

Nov 11 2023

speck added a comment to D25464: Enforce viewable MIME types config on PDF documents.

The Referenced Files section of this diff looks like someone is looking for a vulnerability. Any idea what’s happening here?

Nov 11 2023, 15:51
speck added inline comments to D25465: Fix loop in contribution docs.
Nov 11 2023, 15:48
speck added a comment to D25441: Fix possible array to string conversion renaming Pholio Mockup image.

Since this is for the timeline text maybe it should check for array and just say “multiple images” rather than grabbing the first.

Nov 11 2023, 15:43
speck accepted D25463: Correct default database prefix in documentation.

Thanks!

Nov 11 2023, 02:27
speck accepted D25462: Fix view policy inheritance on image transforms.

Awesome thanks for adding details and clarification

Nov 11 2023, 02:26
speck added inline comments to D25462: Fix view policy inheritance on image transforms.
Nov 11 2023, 00:03

Nov 10 2023

speck added inline comments to D25421: Audit Feed: less verbose when the author is the committer.
Nov 10 2023, 04:04
speck accepted D25460: Make "git cat-file" exception messages include repository monogram/slug.

This seems reasonable to me. It only adds further information to logs. I suppose there are some paths that could result in showing exception on the client-side but including monogram doesn’t seem concerning/dangerous.

Nov 10 2023, 03:58
speck accepted D25425: Remove mention of Phabricator in the Auth setup check.
Nov 10 2023, 03:56

Nov 8 2023

speck accepted D25459: Fix doc link to Restarting Phorge.

Would there be a bunch of these lying around?

Nov 8 2023, 23:20
speck accepted D25362: Show more in Application Detail and List view.

Is the list of PHIDs referring to what types of objects that it creates? Is the expectation that each PHID type corresponds to exactly one Application? Maybe some additional text on that page to explain more what PHIDs mean in this context.

Nov 8 2023, 23:20
speck accepted D25408: Fix Exception in Chat room when you are not a Participant.
Nov 8 2023, 23:17

Nov 5 2023

speck accepted D25374: Fix PHP 8.1 "urlencode(null)" exception blocking account registration redirect for custom OAuth provider.

This looks like a reasonable chance to me.

Nov 5 2023, 15:13
speck accepted D25455: Fix cursor paging issue in Given Token query call.

Nice

Nov 5 2023, 15:09
speck accepted D25450: Add Diffusion policy capability "Can Edit and View Identities".

Great points. Thank you for talking through more details.

Nov 5 2023, 15:07
speck accepted D25452: Do not expose Contact Numbers settings panel when no SMS support configured.

Nice, thank you!

Nov 5 2023, 15:06

Nov 4 2023

speck added a comment to D25420: Improving UX for ignoring timezone conflicts.

Instead of adding a checkbox is there precedent for having a separate button alongside Cancel and Submit?

Nov 4 2023, 15:25
speck added a comment to D25362: Show more in Application Detail and List view.

I’m surprised the monograms weren’t already defined on the applications - those should be somewhere already, right?

Nov 4 2023, 15:13
speck accepted D25421: Audit Feed: less verbose when the author is the committer.

Basically it works

😂

Nov 4 2023, 15:07
speck accepted D25454: Fix PHP 8.1 "strlen(null)" exception on Diffusion repo URIs page after repo creation.
Nov 4 2023, 15:00
speck added a comment to D25118: Remarkup: make less internal links open in new tabs.

This looks good and I really like the idea of being able to customize the style of external links. Just one tweak to the logic I think we should add before landing.

Nov 4 2023, 15:00
speck accepted D25453: Fix project page 404 after rename and removing new name from alias slugs.

Looks good to me, I suggest clarifying the comment before landing.

Nov 4 2023, 14:50
speck added a comment to D25450: Add Diffusion policy capability "Can Edit and View Identities".

Maybe add some doc - the view and edit actions being lumped together are because it would be a larger change to split out that functionality right now, correct?

Nov 4 2023, 14:46

Oct 27 2023

speck added a comment to D25452: Do not expose Contact Numbers settings panel when no SMS support configured.

Thanks for clarifying this behavior, it sounds like contact numbers in general need fleshed out quite a bit.

Oct 27 2023, 15:46
speck added a comment to D25452: Do not expose Contact Numbers settings panel when no SMS support configured.

Changing policy based on sms being configured seems a little off to me. Having the setting only conditionally show based on it being configured seems fine, however what happens in this scenario:

  1. Turn on sms
  2. Add number
  3. Turn off sms
Oct 27 2023, 12:16

Oct 25 2023

speck added a comment to T15106: "Upload file" in remarkup text fields should attach by default .

I had communicated these upstream (almost exactly a year ago~) and some helpful information was provided

Oct 25 2023, 21:33 · Files, Remarkup
speck added inline comments to D25118: Remarkup: make less internal links open in new tabs.
Oct 25 2023, 21:24
speck requested changes to D25118: Remarkup: make less internal links open in new tabs.
Oct 25 2023, 21:17

Oct 10 2023

speck accepted D25444: Fix regression in DiffusionDiffQueryConduitAPIMethod.

lgtm

Oct 10 2023, 01:12

Jul 29 2023

speck added inline comments to D25367: Various PHP 8.1 strlen(null) fixes for Dashboard Panels.
Jul 29 2023, 23:34
speck accepted D25365: Fix HarbormasterBuildUnitMessage PHP 8.1 strlen(null) error.
Jul 29 2023, 11:58
speck accepted D25366: Fix PHP 8.1 Diffusion history errors.
Jul 29 2023, 11:57
speck added a comment to D25363: Match yourself from Imported Events Invitees.

Could this be abused, e.g. create an event with a thousand emails then import it and see if those emails are registered? If so how does that compare to existing means of discovering registered users?

Jul 29 2023, 01:23

Jul 28 2023

speck accepted D25361: Fix strlen(null) PHP 8.1 error when pushing into a fresh repository.
Jul 28 2023, 15:23

Jul 27 2023

speck added a comment to T15554: Handling PHP deprecations: convert to Setup Issues.

This is a good plan. Would this be opt-in, e.g. this Phorge instance would be the main one with this on but other installs wouldn’t see this by default?

Jul 27 2023, 13:27 · Phorge

Jul 22 2023

speck added inline comments to D25341: Fix ArcanistExternalLinter on Windows.
Jul 22 2023, 04:27
speck added a comment to T15045: Support SSL/TLS for MariaDB connections.

I have this working now in https://we.phorge.it/D25276. I still have it marked as draft because there are some outstanding things that should be decided/addressed

  1. Whether client certificate should be configurable. Ideally this is something that would be configured in the php.ini rather than directly in phorge but at the moment I don't think it can be.
  2. Updating documentation to specify how to set up TLS/SSL. For database configurations there's now a use-tls flag which will require connecting to the database using TLS. Turning on TLS/SSL on the database we can probably provide pointers but it's left to the reader for determining that based on their database.
  3. Database clusters with master & replicas? I don't know how to set this up. Those changes might affect cluster dbs but I'm unsure and it's untested.
Jul 22 2023, 04:11 · Security

Jul 19 2023

speck added a comment to T15045: Support SSL/TLS for MariaDB connections.

I picked this up again recently. I’m stuck on getting mariadb valid certificates it uses for connections, for testing my Phorge changes.

Jul 19 2023, 11:43 · Security

Jul 18 2023

speck added a comment to T15512: Make Flags more useful.

We don't allow cross-application table joins

Jul 18 2023, 22:30

Jul 5 2023

speck added a comment to T15524: Discussion: Technical direction of Phorge.
  • Is it possible to make Phorge use a different database? Adding SQLite support could greatly reduce complexity and lower the barrier for entry for new developers and allow running Phorge as a standalone app.

Phorge/Phab support a variety of different setups, including support of clustered MySQL/MariaDB databases. Moving to SQLite would be a large undertaking and would not support clustering/replication without major overhauls. For a move like this I can only conceive of many downsides and no benefits.

Jul 5 2023, 03:55

Jul 4 2023

speck added a comment to T15524: Discussion: Technical direction of Phorge.

It all comes from the fact that PHP was designed for a web 1.0

I don't follow this logic.

Jul 4 2023, 19:51

Jul 3 2023

speck accepted D25326: Add explicit tests for phutil_string_cast.

Awesome, tyty

Jul 3 2023, 21:03
speck added a comment to D25326: Add explicit tests for phutil_string_cast.

Nice. Could we add some additional tests for Boolean true/false, the number zero, populated and empty array?

Jul 3 2023, 18:37
speck added a comment to T15516: Regression in PhabricatorStandardCustomField.php:304 - field can be an integer.

I agree that non-string/null should be handled differently. I guess I don’t see the difference between null + strlen being used vs. the proposed nonempty_string/stringlike, and that making that change is explicitly acknowledging that casting is expected/intentional when it isn’t and instead the different types should be handled appropriately (your suggested long-term solution).

Jul 3 2023, 17:56 · Bug Reports
speck added a comment to D25319: Make src/infrastructure/javelin/markup.php phabricator_form PHP 8.1 compliant.

phabricator_form() is called in 24 places, and 23 of those specify the method.

So the choices are:

  1. Update the one calling place which isn't specifying the method, but leave phabricator_form() as a fragile function.
  2. Update phabricator_form() to defensively handle the lack of a method attribute, as we have done here.
  3. Update the phabricator_form function signature to make the method a required parameter.
Jul 3 2023, 15:53
speck added a comment to T15516: Regression in PhabricatorStandardCustomField.php:304 - field can be an integer.

Wouldn’t this be better as a null + strlen check? It was originally a strlen I assume.

Jul 3 2023, 14:05 · Bug Reports

Jun 30 2023

speck added a comment to D25319: Make src/infrastructure/javelin/markup.php phabricator_form PHP 8.1 compliant.

Is there another place not specifying the method for a form? I don’t think that attribute should be optional and instead the fix is to explicitly declare GET or POST or PUT for forms.

Jun 30 2023, 17:22
speck accepted D25316: Update a couple of lingering instances of secure.phabricator.com to we.phorge.it.
Jun 30 2023, 00:05

Jun 27 2023

speck added a comment to T15152: MFA: Avoid to having to wait a minute so often, for example right after login.

In discussion over a support ticket one of the potential options that was discussed was having a "An MFA challenge is about to appear, click to continue" prompt in the workflow as a means to prepare users to get their phones/devices ready so they can respond within the 30 seconds. Right now since MFA is opt-in per each user instead of required per auth portal - the current login workflow will immediately prompt you for MFA after successful login, which might surprise users who fumble to get the TOTP code out (it's happened to me).

Jun 27 2023, 00:25 · User-valerio.bozzolan
speck added a comment to T15152: MFA: Avoid to having to wait a minute so often, for example right after login.

The comments in https://secure.phabricator.com/T9770 discuss the "spyglass" attack and how this behavior is meant to be more secure.

Jun 27 2023, 00:21 · User-valerio.bozzolan

Jun 26 2023

speck accepted D25291: Fix UX regression in Dashboard Tabs Panel.

nice

Jun 26 2023, 23:44
speck added a comment to D25303: Implements a more informative hovercard for wiki documents.

Very nice

Jun 26 2023, 23:42
speck added a comment to D25312: Fix notification message when Aphlict is not configured.

Is it legit for this function to return an array instead of a single item? That’s the only structural question I have- everything else looks good and just some nitpicks.

Jun 26 2023, 21:46

Jun 23 2023

speck added a comment to D25303: Implements a more informative hovercard for wiki documents.

Code-wise this looks good, though I’m not overly familiar with CSS or how Phorge uses it. Ready to accept after the empty icon thing is resolved.

Jun 23 2023, 19:51
speck added a comment to D25303: Implements a more informative hovercard for wiki documents.

This looks great! Thank you for working on it.

Jun 23 2023, 19:47

Jun 22 2023

speck added a comment to T15491: Add config option for default branch name.

Just clarifying - this is for specifying the initial default value for the Default Branch field that can currently be edited after creation?

Jun 22 2023, 18:01 · Good Starter Task, Feature Requests, Diffusion

Jun 21 2023

speck added a comment to D25291: Fix UX regression in Dashboard Tabs Panel.

No worries, I haven’t had time to dig in. I wanted to review D25067

Jun 21 2023, 17:08

Jun 20 2023

speck added a comment to D25303: Implements a more informative hovercard for wiki documents.

Thank you for clarifying!

Jun 20 2023, 12:18
speck added inline comments to D25303: Implements a more informative hovercard for wiki documents.
Jun 20 2023, 12:18

Jun 19 2023

speck added a comment to T15152: MFA: Avoid to having to wait a minute so often, for example right after login.

I had discussed this with Evan previously and he gave a great explanation for why the current behavior exists, something he refers to as “spyglass attack”. I’d have to go back and review the explanation. What I recall the outcome being a few options, one of which was prompting the user that they are about to be promoted for MFA before issuing the challenge, to give the user time to prepare.

Jun 19 2023, 23:27 · User-valerio.bozzolan
speck accepted D25249: Fix PHP 8.0 ValueError calling mb_convert_encoding() with an invalid encoding.

Thanks - the behavior I was seeing I think mirrors your own but the error I was getting was more directly related which confused me. It seems using @ does not clear the previous error from its use? Bleh.

Jun 19 2023, 23:00
speck added a comment to T15470: Include user email address in Conduit output when query is run by admin.

I think updating the user script is a good idea if this functionality is needed.

Jun 19 2023, 22:56 · Conduit, Discussion Needed, Feature Requests
speck added a comment to D25303: Implements a more informative hovercard for wiki documents.

I like this idea. A few things I want to note

  1. Could you post a screenie for what the breadcrumb rendering appears as?
  2. Does the name of this new class follow other classes that extend the hierarchy? I’m guessing yes but just want to double-check.
  3. Maniphest tasks will render their primary Space (assuming non-default) as a prefix to the title. I think wiki docs should do similar.
  4. Do wiki docs have a description field?
Jun 19 2023, 22:55
speck added a comment to T15486: Do not expose "Contact Numbers" in user settings when no SMS support is set up in Phorge.

I wonder if there were plans to incorporate contact numbers with the prototype app for handling support (the name escapes me).

Jun 19 2023, 22:45 · Policy

Jun 13 2023

speck accepted D25292: Fix PHP 8.1 "strlen(null)" exception calling Conduit's user.whoami.
Jun 13 2023, 00:38
speck added a comment to D25249: Fix PHP 8.0 ValueError calling mb_convert_encoding() with an invalid encoding.

Something like this, though I'm not sure if this is actually correct - in PHP8 using @ will still throw a ValueError if passed an invalid encoding. But I'm not sure This @ thing is working as expected in php8, or I don't have a valid test case.

$message = null;
try {
  $result = @mb_convert_encoding($string, $to_encoding, $from_encoding);
Jun 13 2023, 00:33
speck requested changes to D25249: Fix PHP 8.0 ValueError calling mb_convert_encoding() with an invalid encoding.

I think this change is removing intentional design. The reason that @ is used instead of try/catch -- the comment on the function is saying if you have a string in e.g. Latin-1 and $to_encoding is set to something different-yet-valid such as Korean (e.g. ISO-2022-KR) -- then the encoding conversion will silently fail, not throwing an exception, but still populating the result with incorrect garbage. The exception only appears to be thrown if either of the to/from encodings are invalid like lol or asd. This is likely a breaking change.

Jun 13 2023, 00:26

Jun 12 2023

speck added a comment to D25285: Fix PHP 8.1 "strlen(null)" exception when Diffusion repository has no tags.

Still accepted~

Jun 12 2023, 17:16
speck accepted D25289: Fix PHP 8.1 "strlen(null)" exception on Diffusion repository History page after setting Callsign.
Jun 12 2023, 15:33
speck accepted D25290: Fix PHP 8.1 "strlen(null)" exception which blocks rendering commit page in Diffusion.
Jun 12 2023, 02:07
speck added a comment to D25289: Fix PHP 8.1 "strlen(null)" exception on Diffusion repository History page after setting Callsign.

Do you think this also requires the strlen() check?

Jun 12 2023, 01:50
speck accepted D25284: Fix PHP 8.1 "strlen(null)" exceptions on History page of Diffusion repo after changing text encoding.

Thank you!

Jun 12 2023, 01:46
speck added inline comments to D25290: Fix PHP 8.1 "strlen(null)" exception which blocks rendering commit page in Diffusion.
Jun 12 2023, 01:45
speck accepted D25286: Fix PHP 8.1 "strlen(null)" exceptions trying to browse Diffusion repository code.

Thank you!

Jun 12 2023, 01:44
speck requested changes to D25284: Fix PHP 8.1 "strlen(null)" exceptions on History page of Diffusion repo after changing text encoding.

Similar here, on transactions it’s unclear if these are always strings, especially the use of the render functions. I think these should be null checked (for both vars, in both cases) and not use phutil.

Jun 12 2023, 01:28
speck accepted D25285: Fix PHP 8.1 "strlen(null)" exception when Diffusion repository has no tags.
Jun 12 2023, 01:26
speck requested changes to D25289: Fix PHP 8.1 "strlen(null)" exception on Diffusion repository History page after setting Callsign.

Similar here it seems the values might not always be strings so should be null-check, and both old and new should be checked

Jun 12 2023, 01:24
speck added inline comments to D25286: Fix PHP 8.1 "strlen(null)" exceptions trying to browse Diffusion repository code.
Jun 12 2023, 01:23
speck accepted D25288: Fix PHP 8.1 "strlen(null)" exception rendering a commit in Diffusion when bugtraq.url = null.
Jun 12 2023, 01:20
speck requested changes to D25286: Fix PHP 8.1 "strlen(null)" exceptions trying to browse Diffusion repository code.
Jun 12 2023, 00:46
speck accepted D25287: Fix PHP 8.1 "strlen(null)" exceptions trying to browse Diffusion repository history.
Jun 12 2023, 00:44

Jun 11 2023

speck accepted D25258: Fix PHP 8.1 "base64_decode(null)" exception calling Conduit's file.upload with no data passed.
Jun 11 2023, 13:18

Jun 10 2023

speck added inline comments to D25268: Fix PHP 8.2 "strlen(null)" exceptions block rendering Differential Revision page (T15432 - 1/2).
Jun 10 2023, 19:51
speck accepted D25240: Fix PHP 8.1 "strlen(null)" exception which blocks rendering errors on Create Blueprint page.

For additional context the use of the phutil function would add the intent of the value being a string so my preference is to only use it if we’re sure the variable is intended to only be of type string. Here I think it’s less clear.

Jun 10 2023, 19:50
speck added inline comments to D25258: Fix PHP 8.1 "base64_decode(null)" exception calling Conduit's file.upload with no data passed.
Jun 10 2023, 19:43
speck added a comment to D25258: Fix PHP 8.1 "base64_decode(null)" exception calling Conduit's file.upload with no data passed.

Correct, this change is what I was suggesting and not trying to continue if there’s no file data. If someone is calling the api to upload a file but doesn’t give any file data that’s a user/caller error and the server-side api execution has no sensible path forward.

Jun 10 2023, 19:41
speck accepted D25283: Fix PHP 8.1 "strlen(null)" exception initializing Diffusion repository without path access permissions.
Jun 10 2023, 19:34
speck added inline comments to D25268: Fix PHP 8.2 "strlen(null)" exceptions block rendering Differential Revision page (T15432 - 1/2).
Jun 10 2023, 19:32
speck accepted D25282: Fix PHP 8.1 "strlen(null)" exception about Staging URI on Diffusion repo History page.

Thanks!

Jun 10 2023, 14:36
speck added inline comments to D25148: Config page: add lovely git-related error messages in standard error log.
Jun 10 2023, 14:31
speck accepted D25259: Fix PHP 8.1 "trim(null)" exception which blocks rendering Conduit's harbormaster.sendmessage page.

I think !strlen(trim($var)) is more semantically meaningful than comparing to the empty string but this is fine. Locating calls to strlen which do not compare its return value to another value is more indicative of a non-empty check m, and easier to identify later on

Jun 10 2023, 14:22
speck requested changes to D25282: Fix PHP 8.1 "strlen(null)" exception about Staging URI on Diffusion repo History page.

Could you make these null-and-strlen checks instead? Notice that within the strlen check it uses “renderOldValue” instead of the old value directly, suggesting it might not be a string

Jun 10 2023, 14:18
speck added a comment to D25149: Config page: add $HOME to allow a gitconfig and help on "dubious ownership".

I agree with a more targeted change of a git-specific argument if possible

Jun 10 2023, 14:16

Jun 8 2023

speck accepted D25268: Fix PHP 8.2 "strlen(null)" exceptions block rendering Differential Revision page (T15432 - 1/2).

Thanks!

Jun 8 2023, 18:25
speck accepted D25277: PHP 8.1 "strlen(null)" exception on SVN History page after changing "Import Only".
Jun 8 2023, 11:09
speck accepted D25271: Fix PHP 8.1 "strlen(null)" exceptions creating a Diffusion Identity without entering assignee.
Jun 8 2023, 11:09