- Jan 30, 2018
-
-
Matt Harbison authored
Previously, there was a progress bar indicating the byte count, but then it disappeared once the transfer was done. Having that value stay on the screen seems useful. Downloads are done one at a time, so hold off on that until they can be coalesced, to avoid a series of lines being printed. (I don't have any great ideas on how to do that. It would be a shame to have to wrap a bunch of read commands to be able to do this.) I'm not sure if the 'lfs:' prefix is the right thing to do here. The others in the test are verbose/debug messages, so in the normal case, this is the only line that's prefixed.
-
- Jan 31, 2018
-
-
Matt Harbison authored
-
- Feb 01, 2018
-
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D1993
-
Augie Fackler authored
This is a redo of D1963 that has the added benefit of not breaking Python 2. Oops. # skip-blame because this is bytes prefixes and a s/iteritems/items/ Differential Revision: https://phab.mercurial-scm.org/D1970
-
- Jan 18, 2018
-
-
Augie Fackler authored
Differential Revision: https://phab.mercurial-scm.org/D1911
-
- Feb 01, 2018
-
-
Augie Fackler authored
This is portable to Python 3. Differential Revision: https://phab.mercurial-scm.org/D1992
-
- Jan 18, 2018
-
-
Augie Fackler authored
Differential Revision: https://phab.mercurial-scm.org/D1910
-
Augie Fackler authored
This fixes the output formatting problems I see in debugobsolete. I still am seeing some effectflag differences, which we'll need to tackle separately. I'm not in love with this approach. There might be something better we could do, and I'd love it if someone else wanted to take a run at this. Differential Revision: https://phab.mercurial-scm.org/D1909
-
- Jan 31, 2018
-
-
Gregory Szorc authored
This is a required part of the interface. Abstract properties must be defined at type creation time. So we make name a @property. Differential Revision: https://phab.mercurial-scm.org/D1991
-
Gregory Szorc authored
Plug in the abc module so we can have run-time validation of type conformance. Differential Revision: https://phab.mercurial-scm.org/D1990
-
Gregory Szorc authored
The send* methods are specific to sshserver and aren't part of the common protocol interface. So rename them accordingly. The handlers dict is also specific to sshserver and is related to these methods. So give it the same treatment. Differential Revision: https://phab.mercurial-scm.org/D1989
-
Gregory Szorc authored
sshserver attempts to conform to a well-defined interface. The instance attributes changed as part of this commit don't appear to be part of that interface. So prefix them with _ to mark them as private. Differential Revision: https://phab.mercurial-scm.org/D1988
-
Gregory Szorc authored
AFAICT the last consumer of this helper method was removed by d054cc5c7737 in 2010. Differential Revision: https://phab.mercurial-scm.org/D1987
-
Gregory Szorc authored
AFAICT sshserver.lock is unused. The last caller of it disappeared in 9f6e0e7ef828 ~18 months ago as part of removing code to support ancient wire protocol commands. Let's remove some dead code. Differential Revision: https://phab.mercurial-scm.org/D1986
-
Gregory Szorc authored
Old versions of wire protocol handlers relied on methods named do_<command> to handle wire protocol commands. The last definition of these methods on sshserver was removed by 9f6e0e7ef828 ~2 years ago. I think it's time to not support this mechanism for defining command handlers. .. api:: sshserver no longers looks for wire protocol command handlers in methods named do_<command>. Use @wireproto.wireprotocommand to declare wire protocol command handler functions. Differential Revision: https://phab.mercurial-scm.org/D1985
-
Gregory Szorc authored
These aren't part of the protocol interface. So they should be _ prefixed. Differential Revision: https://phab.mercurial-scm.org/D1984
-
Gregory Szorc authored
I think the last use of this attribute was removed by 2f8adc60e013 in 2010. Differential Revision: https://phab.mercurial-scm.org/D1983
-
Gregory Szorc authored
To aid readability. And to make it easier to search the code base for protocol instances. Differential Revision: https://phab.mercurial-scm.org/D1982
-
Gregory Szorc authored
Let's make this file slightly easier to read. Differential Revision: https://phab.mercurial-scm.org/D1981
-
- Jan 26, 2018
-
-
Augie Fackler authored
I want to optimize splitnewlines, so writing tests seems prudent. Differential Revision: https://phab.mercurial-scm.org/D1972 # no-check-commit because of test_ funciton
-
- Jan 25, 2018
-
-
Augie Fackler authored
Differential Revision: https://phab.mercurial-scm.org/D1971
-
- Jan 31, 2018
-
-
Gregory Szorc authored
Let's have the interface live next to things that define it. Differential Revision: https://phab.mercurial-scm.org/D1969
-
Gregory Szorc authored
Let's welcome the SSH protocol handler to our new central home for protocol handlers. .. api:: Content from mercurial.sshserver has been moved into mercurial.wireprotoserver. Differential Revision: https://phab.mercurial-scm.org/D1968 # no-check-commit because we're moving a foo_bar function
-
Gregory Szorc authored
Importing hgweb.common requires importing hgweb. hgweb/__init__.py contains a bit of code and does imports of large parts of the hgweb.* module tree. All we need is a constant defining the integer status code for HTTP OK. So just redefine HTTP_OK in wireprotoserver.py and avoid the excessive imports. Differential Revision: https://phab.mercurial-scm.org/D1967
-
Gregory Szorc authored
In the context of multiple handlers, call() is ambiguous. Differential Revision: https://phab.mercurial-scm.org/D1966
-
Gregory Szorc authored
The HTTP wire protocol server / response handler is currently defined in the hgweb sub-package. That only kind of makes sense. hgweb does contain most of the HTTP server code. However, hgweb is more tailored for providing HTTP server and WSGI scaffolding and serving hgweb requests. The wire protocol is kind of its own beast. In addition, the code for HTTP and SSH wire protocol handling is actually pretty small and it needs to stay in sync to ensure parity between the transport implementations. We rename mercurial/hgweb/protocol.py to mercurial/wireprotoserver.py. The new module will eventually become the home of the SSH handler as well. .. api:: Content from mercurial.hgweb.protocol has been moved to mercurial.wireprotoserver. Differential Revision: https://phab.mercurial-scm.org/D1965
-
- Feb 01, 2018
-
-
Martin von Zweigbergk authored
We attempt to write the 5 most recent test timings to a file called .testtimes, but we read previous results from a file called .testtimes- (including the hyphen), so we ended up no more than a single time per test. Differential Revision: https://phab.mercurial-scm.org/D1961
-
Martin von Zweigbergk authored
Due to a bug that will be fixed in the next patch, we never actually read back .testcases, so we didn't notice that it could not be parsed successfully when there are #testcases tests. The parsing failed on lines like "test-amend-subrepo.t (case obsstore-off) 32.420" because we used a simple string.split() call and expected all parts but the first to be floating point numbers (and "(case" isn't, for example). Fix by using a regex instead. Differential Revision: https://phab.mercurial-scm.org/D1960
-
- Jan 31, 2018
-
-
Gregory Szorc authored
I'm not sure why, but my system is printing "[Errno -5]" before the "No address associated with hostname" message. I suspect a modern version of Python improved errno tracking or something. Add an "[Errno ...]" pattern as optional output to make the test pass. Differential Revision: https://phab.mercurial-scm.org/D1958
-
- Jan 26, 2018
-
-
Jörg Sonnenberger authored
Differential Revision: https://phab.mercurial-scm.org/D1942
-
Jörg Sonnenberger authored
Differential Revision: https://phab.mercurial-scm.org/D1941
-
- Jan 25, 2018
-
-
Jörg Sonnenberger authored
Differential Revision: https://phab.mercurial-scm.org/D1940
-
- Feb 01, 2018
-
-
Martin von Zweigbergk authored
Our custom server has too many heads to announce (one per code review, plus a public head), but it still lets the user request one of them by doing hg pull -r <some expression> After the client has resolved the expression to a set of nodeids by calling the "lookup" wire command, it will start the discovery phase. Before this patch, that doesn't take the requested heads into account and unconditionally calls the server's "heads" command to find all its heads. One consequence of that the "all remote heads known locally" case triggers if the client already had the public head and the user will see a "no changes found" message that's unrelated to the head they requested. That message confused me for a while. More imporantly, it also means that pullop.cgresult incorrectly (given our arguably misbehaving server) gets set to 0 (no changesets added), which confused some of our extensions. This patch makes it so the client skips the "heads" command if the user requested specific revisions. Since the "heads" command is normally batched with the first "known" command and calculating the list of heads is probably cheap, I don't expect much improvement in speed from this. Differential Revision: https://phab.mercurial-scm.org/D1962
-
Martin von Zweigbergk authored
When using #testcases, the lines that read something like ERROR: test-split.t (case obsstore-off) output changed get colored red and the filename gets highlighted with a brighter red. This makes it harder to notice the "case obsstore-off" part, but it does seem important, so let's highlight it. Differential Revision: https://phab.mercurial-scm.org/D1959
-
- Jan 18, 2018
-
-
Augie Fackler authored
Differential Revision: https://phab.mercurial-scm.org/D1908
-
Augie Fackler authored
# skip-blame just a bytes prefix Differential Revision: https://phab.mercurial-scm.org/D1907
-
Augie Fackler authored
This fixes far more failures than I feel like it has any right to, so there's clearly some subtle interaction between self._cache and other parts of this code. :( Differential Revision: https://phab.mercurial-scm.org/D1906
-
Augie Fackler authored
Differential Revision: https://phab.mercurial-scm.org/D1903
-
Augie Fackler authored
Differential Revision: https://phab.mercurial-scm.org/D1902
-
Augie Fackler authored
Differential Revision: https://phab.mercurial-scm.org/D1901
-