Page MenuHomePhabricator
Feed Advanced Search

Nov 10 2017

epriestley updated the task description for T13012: Mercurial "--config" and "--debugger" command injection vulnerability.
Nov 10 2017, 4:46 PM · Mercurial, Security
epriestley added a comment to T13012: Mercurial "--config" and "--debugger" command injection vulnerability.

This is now in master so I've made the task public.

Nov 10 2017, 4:42 PM · Mercurial, Security
epriestley changed the visibility for T13012: Mercurial "--config" and "--debugger" command injection vulnerability.
Nov 10 2017, 4:42 PM · Mercurial, Security
epriestley added a revision to T13012: Mercurial "--config" and "--debugger" command injection vulnerability: D18769: Filter and reject "--config" and "--debugger" flags to Mercurial in any position.
Nov 10 2017, 4:22 PM · Mercurial, Security
epriestley added a comment to T13012: Mercurial "--config" and "--debugger" command injection vulnerability.

I don't want to leave RCE in Phabricator for 3 weeks, so I'm planning to land, deploy and disclose some version of the patch above today.

Nov 10 2017, 4:05 PM · Mercurial, Security
epriestley added a comment to T13012: Mercurial "--config" and "--debugger" command injection vulnerability.

(I change visibility for this to @epriestley, @amckinley and @durin42 for now -- note that I intend to eventually make this issue public once the fix hits the commit log, so don't stockpile all your 0-days here.)

Nov 10 2017, 3:50 PM · Mercurial, Security
epriestley shifted T13012: Mercurial "--config" and "--debugger" command injection vulnerability from the Restricted Space space to the S1 Core space.
Nov 10 2017, 3:48 PM · Mercurial, Security

Sep 27 2017

cspeckmim added a comment to T12842: Some improvements to Mercurial, Arcanist, and Dependent Revisions.

I missed your question in (1). A typical scenario for this would be when working on a feature which requires some refactoring work to be done. A revision is created with just the refactoring work and then a dependent revision is made which includes the actual feature work. During feature work additional refactoring might be made and need to update to that changeset and either add/amend changes, rebase the dependent revision back on top. Having the bookmarks auto created would help especially when using arc:bookmark when updating revisions back to phab.

Sep 27 2017, 8:48 PM · Arcanist, Mercurial, Feature Request

Sep 19 2017

franjesus added a comment to T9548: Support Mercurial's bundle2 wire protocol.

https://www.mercurial-scm.org/repo/hg/file/default/contrib/phabricator.py is a Mercurial extension that allows you to send a series of changesets to Phabricator by calling Conduit APIs directly. The extension is currently tailored for the use cases of the Mercurial project itself, isn't distributed with Mercurial, and may require Mercurial 4.3. And it obviously bypasses Phabricator's built-in Mercurial server. But if you are willing to live with the caveats, you may find it a suitable workaround.

Sep 19 2017, 11:26 AM · Diffusion, Mercurial

Sep 5 2017

epriestley added a comment to T9948: Modernize "arc land" for Mercurial: bookmark-to-branch, branch-to-self, multiple heads.

See also PHI45.

Sep 5 2017, 2:24 PM · Mercurial, Arcanist

Aug 27 2017

epriestley added a comment to T12972: Ignoring missing version information on binaries doesn't seem to work.

The behavior may have changed, but the change is from "we sometimes silently do the wrong thing" to "we explicitly refuse to do the wrong thing".

Aug 27 2017, 5:26 PM · Mercurial, Diffusion
chad merged task T12972: Ignoring missing version information on binaries doesn't seem to work into T7339: Raise a setup warning when the "en_US.UTF-8" locale is unavailable.
Aug 27 2017, 4:05 PM · Mercurial, Diffusion
chad added a comment to T12972: Ignoring missing version information on binaries doesn't seem to work.

Ah, it sounded like a regression from the report. I haven't tried to bisect to determine if that was true.

Aug 27 2017, 4:05 PM · Mercurial, Diffusion
epriestley added a comment to T12972: Ignoring missing version information on binaries doesn't seem to work.

That is, specifically, it expected that hg commands do not work in Phabricator if it can not determine the version of hg, so this is not a bug. Ignoring the setup warning might mean "we used to do Mercurial stuff but don't anymore, leaving us with some archived Mercurial repositories which we don't really need to look at, so it's okay that hg commands won't be able to run".

Aug 27 2017, 4:03 PM · Mercurial, Diffusion
epriestley added a comment to T12972: Ignoring missing version information on binaries doesn't seem to work.

The version is strictly required because different versions of hg use different command syntax. If we can not determine which version of hg is installed, we can not run hg commands.

Aug 27 2017, 4:01 PM · Mercurial, Diffusion
chad created T12972: Ignoring missing version information on binaries doesn't seem to work.
Aug 27 2017, 3:58 PM · Mercurial, Diffusion

Aug 14 2017

epriestley closed T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`) as Resolved.

There doesn't seem to be anything actionable remaining on our end.

Aug 14 2017, 8:07 PM · Subversion, Mercurial, Git, Security

Aug 11 2017

epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

This cropped up in the HN thread -- works in my browsers (although Phabricator does not recognize it as a valid link):

Aug 11 2017, 8:07 PM · Subversion, Mercurial, Git, Security
avivey added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

Thanks for the writeup :)

Aug 11 2017, 7:04 PM · Subversion, Mercurial, Git, Security
indygreg added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

The reason the upstream projects aren't using -- is that it isn't portable. For example, Putty's ssh doesn't support it.

Aug 11 2017, 3:45 PM · Subversion, Mercurial, Git, Security
epriestley updated the task description for T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).
Aug 11 2017, 1:41 PM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

The full set of mitigations is now available in stable, and I've promoted 2017 Week 32 (Mid August).

Aug 11 2017, 1:36 PM · Subversion, Mercurial, Git, Security
epriestley renamed T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`) from Assess Impact of CVE-2017-1000117 et al (`ssh://-...` executing code) to [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).
Aug 11 2017, 1:31 PM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

See also this enormously valuable contribution I made to the Git LFS upstream in connection with T7789 some time ago:

Aug 11 2017, 1:19 PM · Subversion, Mercurial, Git, Security
epriestley updated the task description for T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).
Aug 11 2017, 1:14 PM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

So, all three major VCS had the exact same CVE, which was "we invoke ssh command line, don't sanitize input, and don't specify -- anywhere"?

Aug 11 2017, 12:50 PM · Subversion, Mercurial, Git, Security
quark.zju added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

Thanks for the detailed explanations! I should have thought more carefully. Note old Mercurial also fails to do correct shell quoting on Windows (It uses ' where Windows needs "). But Phabricator does not run on Windows, it shouldn't be an issue.

Aug 11 2017, 3:22 AM · Subversion, Mercurial, Git, Security
avivey added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

So, all three major VCS had the exact same CVE, which was "we invoke ssh command line, don't sanitize input, and don't specify -- anywhere"?

Aug 11 2017, 2:53 AM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

@indygreg Thanks for the heads up about subrepos -- I would not have otherwise guessed that hg pull might run git.

Aug 11 2017, 2:40 AM · Subversion, Mercurial, Git, Security
epriestley updated the task description for T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).
Aug 11 2017, 2:24 AM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

From this writeup:

Aug 11 2017, 2:21 AM · Subversion, Mercurial, Git, Security
epriestley closed T4416: Drop "-u" flag from `hg pull` in daemons? as Resolved by committing rP2c150076b00f: Stop populating or updating working copies in observed Mercurial repositories.
Aug 11 2017, 2:15 AM · Mercurial, Diffusion
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

The magic incantation I arrived at was slightly modified from one of the hg test cases:

Aug 11 2017, 2:14 AM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

Never mind, I was able to get hg pull -u to interact. I'm going to land, cherry-pick, and hotfix D18390.

Aug 11 2017, 2:12 AM · Subversion, Mercurial, Git, Security
cspeckmim added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

I think this is related:
https://www.mercurial-scm.org/wiki/Subrepository#Synchronizing_in_subrepositories

Aug 11 2017, 2:10 AM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

And here's an extension which appears to be aimed at solving this problem, by adding a new command to execute hg pull -u in subrepositories:

Aug 11 2017, 2:04 AM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

Also, although ui.ssh appears inneffective against the [git] and [svn] variants of subrepos (Mercurial does not appear to populate GIT_SSH or SVN_SSH based on the ui.ssh setting), I can't get hg to actually interact with remotes using hg clone --noupdate ... or hg pull -u -- <uri>, which are the only relevant commands we run. I can get it to interact with remotes with hg up or hg clone (without --noupdate).

Aug 11 2017, 1:56 AM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

In the example above, I put malicious content in .hgsub, like this:

Aug 11 2017, 1:32 AM · Subversion, Mercurial, Git, Security
quark.zju added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

The subrepo issue is when .hgsub has malicious content (ex. foo = ssh://-oProxyCommand=touch%20BAR/). It's not related to command line or config files.

Aug 11 2017, 1:25 AM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

I'm going to cherry-pick rP794e185bf90e (the SSH wrapper stuff) to stable and hotfix production, although I'm not entirely certain hg pull -u -- <uri> is vulnerable.

Aug 11 2017, 12:54 AM · Subversion, Mercurial, Git, Security
epriestley added a revision to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`): D18390: Stop populating or updating working copies in observed Mercurial repositories.
Aug 11 2017, 12:49 AM · Subversion, Mercurial, Git, Security
epriestley added a revision to T4416: Drop "-u" flag from `hg pull` in daemons?: D18390: Stop populating or updating working copies in observed Mercurial repositories.
Aug 11 2017, 12:49 AM · Mercurial, Diffusion
epriestley added a revision to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`): D18389: Pass SSH wrappers to VCS commands unconditonally, not just if there's an SSH remote.
Aug 11 2017, 12:16 AM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

I also can't get hg pull -u -- <uri> to fetch subrepos, am I just not setting things up correctly? In my current working state, hg up tries to interact with the subrepo remote but hg pull -u -- <uri> (which is what we actually execute) does not.

Aug 11 2017, 12:14 AM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

See also T4416. Removing -u hasn't been a priority because no actual install has expressed interest in it.

Aug 11 2017, 12:02 AM · Subversion, Mercurial, Git, Security

Aug 10 2017

indygreg added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

That same code I pointed to for Mercurial also seems to perform Git working copy checkouts. Although I can't recall Git's semantics for automatically updating submodules (because I don't use them). It is worth auditing.

Aug 10 2017, 11:03 PM · Subversion, Mercurial, Git, Security
indygreg added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

Note that Phabricator can manifest Mercurial working directories. See executeMercurialUpdate() in src/applications/repository/engine/PhabricatorRepositoryPullEngine.php. It does this when pulling non-hosted repos. I know this occurs when observing repos. Not sure where else this code is used.

Aug 10 2017, 10:59 PM · Subversion, Mercurial, Git, Security
epriestley updated the task description for T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).
Aug 10 2017, 10:48 PM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

I'll leave this open until I write up the release notes since it deserves a mention (users are still vulnerable if an attacker tricks them into running a suspicious git clone command), but I think we're otherwise unscathed by this.

Aug 10 2017, 10:40 PM · Subversion, Mercurial, Git, Security
epriestley added a revision to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`): D18388: Increase strictness of URI parsing, rejecting URIs in the form "ssh://-flag".
Aug 10 2017, 10:23 PM · Subversion, Mercurial, Git, Security
epriestley lowered the priority of T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`) from Unbreak Now! to Normal.
Aug 10 2017, 10:15 PM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

We also used to have a separate PhutilGitURI which had looser rules, but I removed this in D16100 (June 13, 2016) and all URI parsing now goes through PhutilURI which has the stricter rules.

Aug 10 2017, 10:14 PM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

The theoretical attack here is:

Aug 10 2017, 9:56 PM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

These are slightly more fleshed-out versions of the attack in Mercurial:

Aug 10 2017, 9:48 PM · Subversion, Mercurial, Git, Security
chad added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

git, svn, and hg... wow

Aug 10 2017, 9:47 PM · Subversion, Mercurial, Git, Security
epriestley added a comment to T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).

The attack is basically:

Aug 10 2017, 9:45 PM · Subversion, Mercurial, Git, Security
epriestley raised the priority of T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`) from Normal to Unbreak Now!.

oh wow

Aug 10 2017, 9:40 PM · Subversion, Mercurial, Git, Security
epriestley created T12961: [CVE-2017-1000117, et al] Git, Mercurial and Subversion could all execute arbitrary commands when interacting with malicious SSH URIs (`ssh://-...`).
Aug 10 2017, 9:38 PM · Subversion, Mercurial, Git, Security

Jul 20 2017

indygreg added a comment to T9548: Support Mercurial's bundle2 wire protocol.

https://www.mercurial-scm.org/repo/hg/file/default/contrib/phabricator.py is a Mercurial extension that allows you to send a series of changesets to Phabricator by calling Conduit APIs directly. The extension is currently tailored for the use cases of the Mercurial project itself, isn't distributed with Mercurial, and may require Mercurial 4.3. And it obviously bypasses Phabricator's built-in Mercurial server. But if you are willing to live with the caveats, you may find it a suitable workaround.

Jul 20 2017, 12:15 AM · Diffusion, Mercurial

Jul 18 2017

arrowd added a comment to T9548: Support Mercurial's bundle2 wire protocol.

This is pretty sad that this bug is still open. I haven't found a way to use Phabricator with recent Mercurial, so I'm sticking on 4.0.1 ATM.

Jul 18 2017, 8:24 PM · Diffusion, Mercurial

Jul 10 2017

cul8er updated the answer wiki for Q635: arc land fails with error "Usage Exception: --merge is not currently supported for hg repos.".
Jul 10 2017, 9:02 PM · Mercurial, Arcanist
cul8er updated the question details for Q635: arc land fails with error "Usage Exception: --merge is not currently supported for hg repos.".
Jul 10 2017, 7:15 PM · Mercurial, Arcanist

Jul 9 2017

cul8er asked Q635: arc land fails with error "Usage Exception: --merge is not currently supported for hg repos.".
Jul 9 2017, 8:56 AM · Mercurial, Arcanist

Jul 2 2017

quark.zju added a comment to T12618: Parse multiple commits and commit metadata from "hg log --patch" and "hg export".

Parsing hg export metadata is an elegant solution. # HG changeset patch could imply sourceControlSystem = 'hg'. Thanks for merging the task!

Jul 2 2017, 7:30 PM · Arcanist, Mercurial, Differential, Conduit, Feature Request
epriestley merged T12890: Add sourceControlSystem parameter to differential.createrawdiff into T12618: Parse multiple commits and commit metadata from "hg log --patch" and "hg export".
Jul 2 2017, 7:22 PM · Arcanist, Mercurial, Differential, Conduit, Feature Request

Jun 23 2017

epriestley added a comment to T12841: Using `arc patch` on a revision with dependency leaves bookmark on the applied commit.

That sounds like a bug, but my guess is that the investigation would probably turn up "wow you are dumb at writing software" in about 3 minutes and not really get us much closer to a fix, which is probably "rewrite arc patch to fix 200 problems".

Jun 23 2017, 11:40 PM · Arcanist, Mercurial, Bug Report
epriestley added a comment to T12842: Some improvements to Mercurial, Arcanist, and Dependent Revisions.

For (1), it's currently expected, yes. We don't create branches for dependencies in Git either, currently. I don't think this is terribly unreasonable, but I'm also not sure it's terribly useful (does it just help you keep track of which commits are part of the leaf?) and it makes cleanup more difficult by creating more total branch/bookmark artifacts in the local working copy.

Jun 23 2017, 11:39 PM · Arcanist, Mercurial, Feature Request
cspeckmim added a comment to T12841: Using `arc patch` on a revision with dependency leaves bookmark on the applied commit.

Also, I've noticed that when applying dependent revisions like this, it seems that usually all of the commits will apply cleanly (without prompting) except for the last one, which will always fail to locate the commit to apply on and prompt whether to apply to current working copy state. Based on what I think arcanist is doing I would expect all patches to prompt whether to apply to working copy (since all patches will be given new commit IDs) -- it seems strange that all will apply cleanly except the last one. Does that sound like a bug or am I misunderstanding what's happening? I can try to investigate/debug if you think it might be a bug.

Jun 23 2017, 11:37 PM · Arcanist, Mercurial, Bug Report
cspeckmim added a comment to T12842: Some improvements to Mercurial, Arcanist, and Dependent Revisions.

For (1), it is expected to not apply bookmarks to dependency changesets that are applied as part of the patch issued? When patched one-by-one they would each obtain their bookmark.

Jun 23 2017, 11:29 PM · Arcanist, Mercurial, Feature Request
epriestley added a comment to T12841: Using `arc patch` on a revision with dependency leaves bookmark on the applied commit.

(That is, our behavior seems clearly incorrect.)

Jun 23 2017, 4:50 PM · Arcanist, Mercurial, Bug Report
epriestley added a comment to T12841: Using `arc patch` on a revision with dependency leaves bookmark on the applied commit.

This just looks unambiguously wrong to me.

Jun 23 2017, 4:50 PM · Arcanist, Mercurial, Bug Report
epriestley added a comment to T12842: Some improvements to Mercurial, Arcanist, and Dependent Revisions.

Some of the (3), (2), (1) stuff is that we're trying to pick a single behavior which addresses most use cases reasonably well. For example, if we use "natural" bookmark names that will tend to make things much worse for users in bucket (3).

Jun 23 2017, 4:48 PM · Arcanist, Mercurial, Feature Request

Jun 14 2017

cspeckmim created T12842: Some improvements to Mercurial, Arcanist, and Dependent Revisions.
Jun 14 2017, 3:08 AM · Arcanist, Mercurial, Feature Request
cspeckmim created T12841: Using `arc patch` on a revision with dependency leaves bookmark on the applied commit.
Jun 14 2017, 2:33 AM · Arcanist, Mercurial, Bug Report

Jun 8 2017

phpdave11 added a comment to T9548: Support Mercurial's bundle2 wire protocol.

My solution to this problem was to compile version 3.4.2 of mercurial and install with a different PREFIX, and only use it for pushing to phabricator. That way I can use the latest version of mercurial for everything else.

Jun 8 2017, 4:07 PM · Diffusion, Mercurial

May 30 2017

epriestley closed T8109: Using 'arc feature' on mercurial repository gave an exception as Invalid.

I'm just going to nuke this since there's no repro. This workflow has also been rewritten on the experimental branch and the specific error encountered here should now be impossible.

May 30 2017, 6:07 PM · Bug Report (Needs Information), Mercurial, Arcanist

May 28 2017

LeCoyote added a comment to T7108: high server load due to continuous hg calls.

I can confirm T12129 is indeed related, and the suggested workaround is very effective. Thanks for this!
For the record, our repo has about 60 branches total (about a dozen active only).

May 28 2017, 2:46 PM · Mercurial

May 26 2017

epriestley added a comment to T9548: Support Mercurial's bundle2 wire protocol.

See Planning for information on timelines and priorities.

May 26 2017, 6:52 PM · Diffusion, Mercurial
jeremy.norris added a comment to T9548: Support Mercurial's bundle2 wire protocol.

Just curious if there is any news on this front?

May 26 2017, 6:50 PM · Diffusion, Mercurial

May 22 2017

cspeckmim added a comment to T12726: Errors when trying to create a diff with arcanist.

What if you try recreating the output generated by the hg commands shown from the --trace -- does the output look off in any way?

May 22 2017, 2:28 PM · Mercurial, Differential, Arcanist, Bug Report
franjesus added a comment to T12726: Errors when trying to create a diff with arcanist.

Did that, you can see the result at P2054. At least to me, nothing looks fishy...

May 22 2017, 2:03 PM · Mercurial, Differential, Arcanist, Bug Report

May 19 2017

cspeckmim added a comment to T12726: Errors when trying to create a diff with arcanist.

Any weird environment variables defined on those workstations? Also add --trace to the arc diff command might give more details

May 19 2017, 3:01 PM · Mercurial, Differential, Arcanist, Bug Report
franjesus added a comment to T12726: Errors when trying to create a diff with arcanist.

Just tried it, didn't help :(

May 19 2017, 2:48 PM · Mercurial, Differential, Arcanist, Bug Report
cspeckmim added a comment to T12726: Errors when trying to create a diff with arcanist.

What if you disable the extdiff extension? The documentation doesn't mention modifying regular diff output but probably worth trying.

May 19 2017, 12:21 PM · Mercurial, Differential, Arcanist, Bug Report
franjesus added a comment to T12726: Errors when trying to create a diff with arcanist.

We have installed mercurial 3.9.2 both in the server and client, in fact we downgraded the client mercurial from 4.1 to 3.9.2 to match the versions, but nothing changed. The version of arcanist is 3c4735795a29 (pre-last commit) and phabricator is at ef839192aa5a (from Tuesday).

May 19 2017, 9:56 AM · Mercurial, Differential, Arcanist, Bug Report

May 18 2017

cspeckmim added a project to T12726: Errors when trying to create a diff with arcanist: Mercurial.

Please identify the versions of mercurial used on client/server, also the version of Phabricator in use. If you're on an older version of Phabricator it's possible that upgrading may resolve the issue.

May 18 2017, 5:57 PM · Mercurial, Differential, Arcanist, Bug Report

May 5 2017

cspeckmim added a comment to P2048 Mercurial - Client-side enforce commit messages start with a Task #.

Also this should probably be using ui.status()/ui.warn() instead of print.

May 5 2017, 2:41 PM · Mercurial
cspeckmim added a comment to P2048 Mercurial - Client-side enforce commit messages start with a Task #.
NOTE: Installing this on a developer workstation means modifying a repository's .hg/hgrc file
May 5 2017, 2:38 PM · Mercurial
cspeckmim created P2048 Mercurial - Client-side enforce commit messages start with a Task #.
May 5 2017, 2:36 PM · Mercurial

May 2 2017

epriestley added a parent task for T8768: Under Mercurial, `arc patch` mishandles files with spaces in them : T12664: Update diff/patch parsing to extract more metadata and parse a wider range of formats.
May 2 2017, 4:58 PM · Git, Mercurial, Arcanist
epriestley renamed T12618: Parse multiple commits and commit metadata from "hg log --patch" and "hg export" from Create a revision/diff using Conduit which sets the base revision to Parse multiple commits and commit metadata from "hg log --patch" and "hg export".
May 2 2017, 4:48 PM · Arcanist, Mercurial, Differential, Conduit, Feature Request
epriestley added a parent task for T12618: Parse multiple commits and commit metadata from "hg log --patch" and "hg export": T12664: Update diff/patch parsing to extract more metadata and parse a wider range of formats.
May 2 2017, 4:47 PM · Arcanist, Mercurial, Differential, Conduit, Feature Request
epriestley added a comment to T12618: Parse multiple commits and commit metadata from "hg log --patch" and "hg export".

Yes. We'd retain the base revision information during parsing in differential.createrawdiff, and it would remain available later in arc patch.

May 2 2017, 3:10 PM · Arcanist, Mercurial, Differential, Conduit, Feature Request
cspeckmim added a comment to T12618: Parse multiple commits and commit metadata from "hg log --patch" and "hg export".

@epriestley - Just to clarify, with the solution you're suggesting that would mean the diff created using differential.createrawdiffdifferential.revision.edit would result in arc patch of that revision applying the patch to the base revision parsed from the raw diff from hg log --patch --rev <rev>?

May 2 2017, 3:06 PM · Arcanist, Mercurial, Differential, Conduit, Feature Request

Apr 21 2017

epriestley added a comment to T12618: Parse multiple commits and commit metadata from "hg log --patch" and "hg export".

Oh, you're right. I misread an implication of implementation specifics into "set", but the actual language doesn't actually suggest an implementation.

Apr 21 2017, 6:50 PM · Arcanist, Mercurial, Differential, Conduit, Feature Request
cspeckmim added a comment to T12618: Parse multiple commits and commit metadata from "hg log --patch" and "hg export".

I tried to not specifically ask for a change to API or parsing, just that the missing bit I need is a base revision set on the new diff.

Apr 21 2017, 6:40 PM · Arcanist, Mercurial, Differential, Conduit, Feature Request
epriestley added a project to T12618: Parse multiple commits and commit metadata from "hg log --patch" and "hg export": Mercurial.
Apr 21 2017, 5:39 PM · Arcanist, Mercurial, Differential, Conduit, Feature Request

Apr 13 2017

cspeckmim added a project to T8109: Using 'arc feature' on mercurial repository gave an exception: Bug Report (Needs Information).
Apr 13 2017, 5:48 PM · Bug Report (Needs Information), Mercurial, Arcanist

Apr 10 2017

epriestley moved T12453: Using `arc patch` will leave behind a bookmark when answering 'No' in attempt to apply to current state in Mercurial repository from Backlog to arc patch on the Arcanist board.
Apr 10 2017, 10:14 PM · Arcanist, Mercurial, Bug Report

Apr 7 2017

franjesus added a comment to T7108: high server load due to continuous hg calls.

↑ I second @rros, commenting line line 71 of the PhabricatorRepositoryRefEngine class fixed it for me. Don't know about possible secondary effect but I have the feeling it was not working as intended anyway.

Apr 7 2017, 8:37 AM · Mercurial