I think using FileLock is pretty reasonable. It's a little gross, but I'm not aware of any way to do this synchronization in make itself (although it's possible there is one), and if the process doesn't have write access to the lock it isn't going to be able to run make anyway, so it shouldn't be adding new failure modes.
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Aug 18 2015
Aug 14 2015
I can sorta fix with using PhutilFileLock, but it feels a bit gross. Here is something I threw together real quick: https://secure.phabricator.com/differential/diff/33545/
Aug 13 2015
Aug 12 2015
Aug 4 2015
Jul 10 2015
Missing finally support is now starting to affect a large portion of my colleagues.
Jun 24 2015
Another option is to add the following to .gitattributes:
Jun 14 2015
I considered putting a getClassName() method on the XHPASTNode class, but I'm not entirely convinced that this is a good idea.
Jun 2 2015
The same thing applies to ArcanistDuplicateKeysInArrayXHPASTLinterRule.
Jun 1 2015
May 27 2015
This was sorta fixed by D12922.
May 24 2015
May 7 2015
May 4 2015
May 3 2015
Apr 11 2015
Apr 10 2015
Actually, nevermind... my development install was a bit old. I can replicate this on my development host.
Apr 9 2015
These changes fix it:
diff --git a/support/xhpast/scanner.l b/support/xhpast/scanner.l index 28cf40f..bbdde72 100644 --- a/support/xhpast/scanner.l +++ b/support/xhpast/scanner.l @@ -313,8 +313,8 @@ NEWLINE ("\r\n"|"\n"|"\r") "("{TABS_AND_SPACES}unset{TABS_AND_SPACES}")" tok(T_UNSET_CAST); }
Feb 28 2015
Feb 18 2015
Yes. My clever plan is to wait for mobile devices to have an effective resolution of 3600x8200 and MindMouse technology.
after the IPO
I'll show you! I'll make this the greatest mobile app the world has ever seen!
Yea, there are just certain things you can't make mobile friendly, I think this may be one of them.
This is "working as intended" on mobile. We should maybe mark XHPAST as developer/prototype or something.
Feb 17 2015
Feb 12 2015
Feb 11 2015
Oh, I forgot to change that.
Feb 3 2015
Jan 29 2015
Thanks - seems that had failed to upgrade for a while now. Problem solved.
Jan 28 2015
Update libphutil, it seems that you are not using the latest version.
Jan 11 2015
I tried to give this a go, but with no luck:
Jan 9 2015
Jan 7 2015
Yeah, it did indeed. D11268 does solve the issue correctly for me in all cases I tested.
I expect that patch breaks this:
FWIW, this patch fixes it for me
diff --git a/support/xhpast/parser.y b/support/xhpast/parser.y index 1697c26..e07704b 100644 --- a/support/xhpast/parser.y +++ b/support/xhpast/parser.y @@ -1176,7 +1176,7 @@ class_statement: yyextra->expecting_xhp_class_statements = yyextra->old_expecting_xhp_class_statements;
Nov 12 2014
Oct 12 2014
Sep 26 2014
Here's a very basic test I did for profiling XHPAST against PHP-Parser:
Sep 22 2014
A related case with try..catch..finally (see D10337) works in the same way as @epriestley described. However, in that case it's easy to fix. This may be less trivial, but still worth fixing.
Sep 21 2014
This is not a syntax error, per se, in PHP -- the error would say something like "PHP Parse error: syntax error, unexpected 'final'..." if it was. I think it gets raised a little later on in the compile phase. So that's the technical reason why we don't detect it.
I don't mind working on this, but I'm not sure what the correct fix is.
Sep 12 2014
Aug 22 2014
Aug 21 2014
@epriestley: could you take a look at the comment above? I'd push out a diff but for some reason the values of the tokens change when I rebuild xhpast.