- May 03, 2017
-
-
Martin von Zweigbergk authored
-
Martin von Zweigbergk authored
It seems like localrepo.getbundle() is trying to do the same thing, so let's just call the method. That way we get the same condition as there (matching any "HG2" prefix, not only "HG20").
-
- Apr 27, 2017
-
-
Pulkit Goyal authored
The keys of class.__dict__ are unicodes on Python 3.
-
- Apr 24, 2017
-
-
Pulkit Goyal authored
opts in add command were passed again to cmdutil.add() as kwargs so we need to convert them again to str. Intstead we convert them to bytes when passing scmutil.match(). Opts handling is also corrected for all the functions which are called from cmdutil.add().
-
- Apr 23, 2017
-
-
Pulkit Goyal authored
dryrun and force are just check for None, the value is not used. So its better to leave opts as unicodes as that wont harm us.
-
- Apr 21, 2017
-
-
Pulkit Goyal authored
There is just a check whether the value is None or not. So even having optupdate as unicodes won't harm us.
-
- Apr 20, 2017
-
-
Pulkit Goyal authored
commands.commit() calls cmdutil.dorecord() where opts are passed as unicodes being keyword arguments. This patch converts them back to bytes as they are required.
-
- Apr 27, 2017
-
-
Pulkit Goyal authored
opts are converted back to bytes in help.help_() where they are used. Before that it's ensured that we have a bytes value for keep variable.
-
- May 03, 2017
-
-
Pulkit Goyal authored
Since keyword arguments can't be bytes on Python 3, we converted then to unicodes before passing into different command functions. We need to adopt a certain pattern to convert opts back to bytes. Following are some of the functions which are called from inside these command functions and should always be feeded bytes to follow the right behaviour. ui.fomattter() scmutil.match() patch.diffallopts() hg.peer() cmdutil.{show_changeset|copy|graphrevs|checkunsupportedflag} server.{createservice|runservice} There are few commands which are left out where opts is again passed to a function as keyword arguments or converting opts back to bytes is kind of not necessary. Those are cat, revert, help, unbundle and rollback. Following patches will deal with them. This patch apart from these five commands, convert opts back to bytes for rest of the commands. This fixes a lot of things which are hidden like --git works now. Similarly more flags of commands which run on Python 3 currently get fixed.
-
- May 04, 2017
-
-
Augie Fackler authored
-
Matt Harbison authored
As an aside, I'm having trouble parsing the help text meaning for HG when it is unset or empty. How can it be the frozen name or searched if it is empty?
-
Matt Harbison authored
-
Matt Harbison authored
This may be too subtle of a change to get the point across, but when I first read the original text, I thought maybe the pager would only be invoked if writing more than a screenful. The distinction between this and a pager that simply exits after printing less than a screenful is important on Windows, given the inability of `more` to color output.
-
Matt Harbison authored
Even though I figured this out a few weeks ago, I was initially puzzled where the color went when I upgraded to 4.2 on a different Windows machine. Let's point users reading the help into the right direction. I wonder if we should be even more explicit about cmd.exe/MSYS/pager/color interplay, but at least all of the breadcrumbs are here (I think).
-
Jun Wu authored
-
Jun Wu authored
-
Jun Wu authored
filectx provides "isbinary" to test if the data is binary. Let's use it. This enables other filectx implementations (like LFS) to override the isbinary test.
-
- May 03, 2017
-
-
Siddharth Agarwal authored
Modern clients use a different discovery mechanism.
-
Durham Goode authored
The matcher subinclude functionality allows us to have .hgignore files that include subdirectory hgignore files. Today it parses the entire repo at once, even if we only need to test a file in one subdirectory. This patch makes the subinclude tree creation lazy, which speeds up matcher creation significantly in large repos with very large trees of ignore patterns.
-
Martin von Zweigbergk authored
"hg bisect --reset" just deletes the state file (it doesn't move back to the starting point like rebase does); it can not conflict with an ongoing rebase etc. checkunfinished() has this documentation: It's probably good to check this right before bailifchanged(). So that's where I moved it.
-
- Apr 20, 2017
-
-
Pulkit Goyal authored
dispatch._runcatch() always returns an integer value.
-
Pulkit Goyal authored
-
Pulkit Goyal authored
-
- Apr 27, 2017
-
-
Pulkit Goyal authored
This is because str() on python 3 return unicodes
-
- Apr 20, 2017
-
-
Pulkit Goyal authored
-
- May 03, 2017
-
-
Alex Gaynor authored
It is documented as existing since Python 2.0, and empirically from other OSS projects I maintain, there is no problem relying on its existance.
-
Jun Wu authored
75bb7c702317 changed the return type of filelog.parsemeta but forgot to update its docstring.
-
- May 02, 2017
-
-
Martin von Zweigbergk authored
Gone since fa836e050c50 (chunkbuffer: removed unused method and arg, 2007-10-11).
-
- May 03, 2017
-
-
Matt Harbison authored
Windows uses `more.com`, which unhelpfully adds an extra trailing line consisting only of '\r'. It also converts tab characters to spaces, which throws off the last two tests. Setting the 'ui.formatted' option is what allowed the pager to be used by these tests in the first place.
-
- May 02, 2017
-
-
Pierre-Yves David authored
This was deprecated in favor of 'localrepo.wvfs.islink'. We can now drop it for the future 4.3.
-
Pierre-Yves David authored
This was deprecated in favor of 'localrepo.wvfs.join'. We can now drop it for the future 4.3.
-
Pierre-Yves David authored
This was deprecated in favor of 'localrepo.vfs.join'. We can now drop it for the future 4.3.
-
Pierre-Yves David authored
This was deprecated in favor of 'mercurial.tags.tag'. We can now drop it for the future 4.3.
-
Pierre-Yves David authored
This was deprecated in favor of 'localrepo.vfs'. We can now drop it for the future 4.3.
-
Pierre-Yves David authored
This was deprecated in favor of 'localrepo.wvfs'. We can now drop it for the future 4.3.
-
- May 01, 2017
-
-
Pierre-Yves David authored
All these constructors are deprecated in 4.2. We can now drop them on the default branch (future 4.3).
-
- Apr 23, 2017
-
-
Jun Wu authored
This patch adds some sleep and increases numcpus to exercise the "killworkers" situation. So race conditions could be discovered more easily, if someone changes worker.py incorrectly. Currently worker.py should be free of such issues.
-
Jun Wu authored
The traceback test may have traceback caused by SIGTERM. Instead of grepping "Traceback", explicitly grep the exception we care about. This makes the test less flaky.
-
- Apr 22, 2017
-
-
Jun Wu authored
Previously the worker error handling is like: pid = os.fork() --+ if pid == 0: | .... | problematic .... --+ try: --+ .... | worker error handling --+ If a signal arrives when Python is executing the "problematic" lines, an external error handling (dispatch.py) will take over the control flow and it's no longer guaranteed "os._exit" is called (see 86cd09bc13ba for why it is necessary). This patch rewrites the error handling so it covers all possible code paths for a worker even during fork. Note: "os.getpid() == parentpid" is used to test if the process is parent or not intentionally, instead of checking "pid", because "pid = os.fork()" may be not atomic - it's possible that that a signal hits the worker before the assignment completes [1]. The newly added test replaces "os.fork" to exercise that extreme case. [1]: CPython compiles "pid = os.fork()" to 2 byte codes: "CALL_FUNCTION" and "STORE_FAST", so it's probably not atomic: def f(): pid = os.fork() dis.dis(f) 2 0 LOAD_GLOBAL 0 (os) 3 LOAD_ATTR 1 (fork) 6 CALL_FUNCTION 0 9 STORE_FAST 0 (pid) 12 LOAD_CONST 0 (None) 15 RETURN_VALUE
-
Jun Wu authored
dispatch handles KeyboardInterrupt already. This makes the code more consistent, and makes worker not print "killed!" if it receives SIGTERM in most cases (in rare cases there is still "killed!" printed, which will be fixed by the next patch).
-