Page MenuHomePhorge

Phorge
PublicGeneral discussions about Phorge.

T15726: Remove dysfunctional Fund and Phortune prototype applications - they're breaking up and we think nobody is using them.

Mar 12th, 2024

Huh? What functionality?

tsc joined the room.

Hi Folks,

It seems to me that this channel is used more actively than the IRC one. Is it OK if I just repost my questions from there to here?

Thanks

  • I want to create Issues with Sub-Issues and be able to clone them. Is that somehow possible? I would need that for onboarding new employees.
  • Is there some kind of automation possible to create an issue every 15th? I would need that for the office team to have a ticket for accounting.
  • Can I restrict forms to projects? For example, I wish to have an “Office Form” that is only available in the office project?

I think there will be more, but these would be my most important ones.

The first thing (cloning tasks) seems super-possible doing an extension. I don't know how to create extensions, so I just create CLI scripts like this one :D T15754 at the moment. Other people here can help to create extensions.

Restrict forms to projects: This, on the other hand, is something that would make sense even upstream here in my opinion. But I am not clear on which side. Maybe from the side of a Workboard. So each Workboard chooses their creation forms. Task welcome on this.

I'm missing the create Permission, so I can't create a task for that.

Also: Can I gantt chart??

Mar 13th, 2024

@tsc What about progress bars instead? :D :D :D For example see here: "3 of 3 points" - https://gitpull.it/project/view/263/ - to enable that, just create a Milestones, enable points (/config/edit/maniphest.points/) and play

There's a "clone" feature on tasks, but I can't find a button for it.
I think https://we.phorge.it/book/phorge/article/forms/ covers "cloning" or "templating", or at least "prefilling" a form

can I restrict forms to projects? For example, I wish to have an “Office Form” that is only available in the office project?

Not sure what this refers to - you can limit the visibility of a form to users that are in a project; Does this help?

Also: Can I gantt chart??

I'm sure you can, but Phorge doesn't have such a feature....

Mar 14th, 2024

If I wanted to build an extension that adds a menu item here, what would be a good start into that?

https://we.phorge.it/source/phorge/browse/master/src/applications/maniphest/controller/ManiphestTaskDetailController.php$272

Would that be doable with a PhabricatorEventListener? Something in the likeness of this?

https://github.com/motla/phixator/blob/master/event/PhixatorUIEventListener.php

This does exactly what I need: https://we.phorge.it/source/phorge/browse/master/src/applications/system/events/PhabricatorSystemDebugUIEventListener.php

I'll try to stick some extension together.

Sorry for being my ruber duck.

Yeah, that's the way for that right now.
I'd like to replace it with something more modern (T15709) someday.

Mar 15th, 2024

What is that "@task" in the inline documentation?

I don't think there's any real formal description/tool for that marker; It just helps group methods by role/job.

Lots of the early classes are big and had less-refined responsibilities, so this is useful to sort of navigate (ctrl-f) around related things.

Mar 18th, 2024

I'm making progress with my extension, I managed to put the menu item in the ticket curtain :-)

I also started to create a setup file for the dev containers (https://github.com/willson556/phorge-devcontainer):

https://we.phorge.it/P34

Setting up the user works fine, but how would I persist the PhabricatorPasswordAuthProvider and then set a password for that user?

it managed to get it running

updated the paste

Mar 19th, 2024

Is there any documentation about core concepts like transactions and so on? I'm struggling to find my way around it.

There's actually some stuff in https://we.phorge.it/book/arcanist/, like https://we.phorge.it/book/arcanist/article/core_quick_reference/, but it's hard to find because it's in the same space as all the class-doc stuff.

One thing you can do is search for *.diviner files in arc/phorge codebases, and either read them directly or look for them in diviner

About transactions in particular, I don't remember having docs - maybe there's some in the various code files (Transaction and Editors).

I'm trying to come up with ways to make the existing docs easier to find, and I think I'll end up writing a bunch more in the wiki

Actually: Is the class reference in /book/ actually useful? Maybe it can be removed completely from here?

We have symbol-search (when I remember to update it), and it goes to the code itself. I don't remember using the generated reference ever.

Digging through the code with vscode helps a lot, also reading unit tests. I think I now have a good grasp what transactions are. One of the big annoyances is that id() destroys the type information and disables intelisense. I tried applying a generic, but somehow that did not work: https://blog.devsense.com/2022/generics-in-php-using-phpdoc

Actually: Is the class reference in /book/ actually useful? Maybe it can be removed completely from here?

I don't think it is helpful, I have vscode for that.

which PHP extension do you use? I've tried one and it crashed on me so now I'm back to the built-in support for php.

What is your result here?

arc unit ./src/infrastructure/markup/remarkup/__tests__/PhutilRemarkupEngineTestCase.php

it fails on <p>phutil_fake_test_block_interpreter {{{ content }}}</p>'

I don't know if it's caused by D25415 but the unit test is green at git reset --hard dc10a7e69ea3

OK, I've used git bisect and fails on 7868ab3754

which PHP extension do you use? I've tried one and it crashed on me so now I'm back to the built-in support for php.

bmewburn.vscode-intelephense-client

Yeah, that's the one I had :/

Mar 20th, 2024

I can push my code with the devcontainer code, but works very well sofar, including xdebug

do you want to host it here? Phactory: Community Projects

Sure, why not

cool, create a task similiar to T15558, assign it to me, I'll do the thing

I think I did everything...

It seems WMF updated to stable with strange crashes https://phabricator.wikimedia.org/T358610#9642933

@avivey can you change the default branch from master to main please? It seems I don't have the permissions for that.

Mar 23rd, 2024

It would be cool if someone could have a look at that, and please correct me if I'm totally off the beaten path with my approach, as I'm relatively new to developing in this area:

https://we.phorge.it/D25558

Mar 25th, 2024

It seems 328aee033fbd is causing search issues (Q121) - because there is a feature that allows to paste a Phorge URL in the search bar, to be redirect here 🤔
It seems that core features is based on untested cases of PhabricatorEnv::isSelfURI().
Thanks for additional eyes - D25561

Mar 30th, 2024

Can someone review D25548 and D25549 please?

Mar 31st, 2024
aklapper joined the room.

I'll hope to play/test those two in the next 48h

Apr 2nd, 2024
kat joined the room.

@avivey Thanks! Glad to be on board^^ Landed D25566!

Apr 3rd, 2024

If you visit https://we.phorge.it/book/dev/, you'll note that:
(1) it takes a long time to load, and
(2) it has lots of items - one for each class in the code.

I suspect that it also has some purpose-written articles, that are lost in the noise.

Some of these (https://we.phorge.it/book/dev/function/qsprintf/) have actual content that's easier to read in rendered Remarkup, but most just list the methods.

It also requires to re-generate them, and the flow is such that they would usually be several weeks out of date.
What do we think about removing them from this site?

Missing option "I don't know but we should write more PHPDoc :D"

I have an interesting crash visiting this page https://we.phorge.it/T15064

Undefined index: PHID-TASK-7nsqj4gmspgyirmlgejq
Stack trace:
PhutilErrorHandler::handleError called at [/var/www/arcanist/src/utils/AbstractDirectedGraph.php:126]
AbstractDirectedGraph::getNodesInTopologicalOrder called at [/var/www/phorge/src/infrastructure/graph/PhabricatorObjectGraph.php:202]
PhabricatorObjectGraph::newGraphTable called at [/var/www/phorge/src/applications/maniphest/controller/ManiphestTaskDetailController.php:129]
ManiphestTaskDetailController::handleRequest called at [/var/www/phorge/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
phlog called at [/var/www/phorge/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable called at [/var/www/phorge/src/aphront/configuration/AphrontApplicationConfiguration.php:751]

I see it too....
I'll check it tonight, maybe the task is just hidden or something.

I have an interesting crash visiting this page https://we.phorge.it/T15064

Looks like the task graph got too big or something... All the tasks are public.

Or maybe there's some cycle in the graph.
Actually tracking it down might require downloading some tables from here to my machine, so I'm thinking of just adding a catch{} instead.

Apr 4th, 2024

It's just a feeling, but maybe the query goes into burnout (or whatever it's called) and doesn't return all the results, and the graph gets broken

Apr 5th, 2024

FIled T15772 and sent a diff to not-crash.

Apr 9th, 2024

@avivey if you could work on T15773: Community Project: Gantt Diagrams that would be magnificent. I could already push some code.

Apr 11th, 2024

screenshot_1712829402.png (308×600 px, 36 KB)

Is this intended?

(sorry please edit file and set Visible to all users)

ups sorry, need always to check that

Yeah, depending on your OS - T15630

Apr 14th, 2024
bekay joined the room.

Hey, could an admin please make a workboard here? I have some ideas for the extension 😅

You can join the project, then you should be able to create one.

Ah... oh man, sometimes you miss the most obvious things.

Apr 15th, 2024

For some reasons my link for "See other changes" in D25576 was this, and was crashy to me
https://we.phorge.it/transactions/showolder/PHID-DREV-em7vleytcec4vifhqir5/?after=16576&quoteTargetID=UQ0_1&quoteRef=D25576
Undefined index: in applications/differential/engine/DifferentialRevisionTimelineEngine.php : 24

File a bug? 🐛 :)

Yep thanks, here → T15785

Apr 26th, 2024

... i want that o.o