- Jul 28, 2022
-
-
Raphaël Gomès authored
-
Raphaël Gomès authored
-
- Jul 27, 2022
-
-
Pierre-Yves David authored
-
- Jul 26, 2022
-
-
Pierre-Yves David authored
This is now associated with each request.
-
Pierre-Yves David authored
This code was previously confused by case where: `heads_common == {nullid}`
-
Pierre-Yves David authored
This is a useful case to consider, so we should not abort in this case. A warning is still issued.
-
Pierre-Yves David authored
We where not counting the right amount of request before.
-
Pierre-Yves David authored
This is useful to understand the algorithm.
-
Pierre-Yves David authored
Before this change using `--remote-as-revs` with `--old` had no effect and everything was considered as "common", which is really not what we intended.
-
Pierre-Yves David authored
The second option should be `--remote-…` as we just talked about `--local-…` already.
-
- Jul 19, 2022
-
-
Matt Harbison authored
I'm told the new dulwich avoids hg-git test failures.
-
Matt Harbison authored
When challenged for a network password, this would spew on Windows before it actually used the stored password: ``` Error initializing plugin EntryPoint(name='libsecret', value='keyring.backends.libsecret', group='keyring.backends'). Traceback (most recent call last): File "keyring.backend", line 198, in _load_plugins init_func = ep.load() File "importlib.metadata", line 77, in load module = import_module(match.group('module')) File "importlib", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "<frozen importlib._bootstrap>", line 1030, in _gcd_import File "<frozen importlib._bootstrap>", line 1007, in _find_and_load File "<frozen importlib._bootstrap>", line 984, in _find_and_load_unlocked ModuleNotFoundError: No module named 'keyring.backends.libsecret' Error initializing plugin EntryPoint(name='macOS', value='keyring.backends.macOS', group='keyring.backends'). Traceback (most recent call last): File "keyring.backend", line 198, in _load_plugins init_func = ep.load() File "importlib.metadata", line 77, in load module = import_module(match.group('module')) File "importlib", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "<frozen importlib._bootstrap>", line 1030, in _gcd_import File "<frozen importlib._bootstrap>", line 1007, in _find_and_load File "<frozen importlib._bootstrap>", line 984, in _find_and_load_unlocked ModuleNotFoundError: No module named 'keyring.backends.macOS' ``` We're kinda threading a needle here because the next version of `keyring` (currently at 23.7.0) requires `importlib-metadata` 3.6+, which PyOxidizer 0.22 doesn't support[1]. [1] https://github.com/indygreg/PyOxidizer/issues/609
-
Georges Racinet authored
Apparently the standard for them is still to use byte strings. Found while looking at something else
-
- Jul 13, 2022
-
-
Ondřej Pohořelský authored
The previous attribute was python 3.6+, but guarded a python 3.7+ block Using the correct attribute avoids: + File "/tmp/hgtests.bc0_uk2d/install/lib/python/mercurial/sslutil.py", line 577, in wrapserversocket + sslcontext.minimum_version = ssl.TLSVersion.TLSv1_1 + AttributeError: module 'ssl' has no attribute 'TLSVersion'
-
- Jul 12, 2022
-
-
Mathias De Mare authored
The previous attribute was python 3.6+, but guarded a python 3.7+ block. Using the correct attribute avoids: File "/usr/lib64/python3.6/site-packages/mercurial/sslutil.py", line 334, in wrapsocket sslcontext.minimum_version = ssl.TLSVersion.TLSv1_1 AttributeError: module 'ssl' has no attribute 'TLSVersion'
-
- Jul 06, 2022
-
-
Anton Shestakov authored
-
- Jul 04, 2022
-
-
Anton Shestakov authored
Since nothing else in hgext/git supports copies yet, the best I can do is avoid TypeError: set_tracked() got an unexpected keyword argument 'reset_copy'.
-
Anton Shestakov authored
-
- Jul 11, 2022
-
-
Raphaël Gomès authored
-
Raphaël Gomès authored
-
- Jul 10, 2022
-
-
Manuel Jacob authored
In make_line_buffered(), we don’t want to wrap the stream if we know that lines get flushed to the underlying raw stream already. Previously, the heuristic was too optimistic. It assumed that any stream which is not an instance of io.BufferedIOBase doesn’t need wrapping. However, there are buffered streams that aren’t instances of io.BufferedIOBase, like Mercurial’s own winstdout. The new logic is different in two ways: First, only for the check, if unwraps any combination of WriteAllWrapper and winstdout. Second, it skips wrapping the stream only if it is an instance of io.RawIOBase (or already wrapped). If it is an instance of io.BufferedIOBase, it gets wrapped. In any other case, the function raises an exception. This ensures that, if an unknown stream is passed or we add another wrapper in the future, we don’t wrap the stream if it’s already line buffered or not wrap the stream if it’s not line buffered. In fact, this was already helpful during development of this change. Without it, I possibly would have forgot that WriteAllWrapper needs to be ignored for the check, leading to unnecessary wrapping if stdout is unbuffered. The alternative would have been to always wrap unknown streams. However, I don’t think that anyone would benefit from being less strict. We can expect streams from the standard library to be subclassing either io.RawIOBase or io.BufferedIOBase, so running Mercurial in the standard way should not regress by this change. Py2exe might replace sys.stdout and sys.stderr, but that currently breaks Mercurial anyway and also these streams don’t claim to be interactive, so this function is not called for them.
-
- Jul 05, 2022
-
-
Pierre-Yves David authored
In Python 3, the type are no longer comparable and this expose the error.
-
- May 25, 2022
-
-
Raphaël Gomès authored
This makes trace output *really* noisy and is only useful in case you want to take a look at a single revlog. This is easy to add back on a case-by-case basis and does not need to stay with the more permanent timers.
-
Raphaël Gomès authored
This mirrors the Python implementation. The relative path handling should probably be refactored into a util, but it it out of scope for this change.
-
- May 18, 2022
-
-
Raphaël Gomès authored
This helps when diagnosing corruption, and is in general good practice. The information is here, valuable and can be used easily.
-
Raphaël Gomès authored
This is useful when debugging.
-
- Jun 12, 2022
-
-
Ian Moody authored
This has been deprecated since py3.2, and removed entirely in py3.9
-
Ian Moody authored
- don't check for a binary symbol in globals(), which meant it always thought the module wasn't available - don't pass bytes to stdlib methods - return bytes in getchanges where Mercurial expects to see them
-
- Jun 15, 2022
-
-
Ian Moody authored
All the `import elementtree` attempts seem to pre-date py2.5, when it was brought into the standard library, and the manual `cElementTree` fast implementation import has been unnecessary and deprecated since py3.3.
-
- Jun 16, 2022
-
-
Raphaël Gomès authored
-
Raphaël Gomès authored
-
Raphaël Gomès authored
-
Raphaël Gomès authored
-
Raphaël Gomès authored
-
Raphaël Gomès authored
-
Raphaël Gomès authored
-
- Jun 10, 2022
-
-
Pierre-Yves David authored
With rust supporting more matcher types, we can now take this route in the sparse case too.
-
Pierre-Yves David authored
core is already aware of sparse, so lets move the handful of line of code that deal with this for the sake of simplicity and explicitness.
-
Pierre-Yves David authored
This new output clarify the important part out this merging : we want to be able to record the copy source even it is outside of the sparse profile.
-
Pierre-Yves David authored
The code of the wrapper only act in the case where the file is not tracked, so this has not effect for `untracked`. In addition the message explicitly mention `add` of a file and no test are breaking if we drop this. So we drop this for simplicity and cleanup
-