- Jan 17, 2014
-
-
Katsunori FUJIWARA authored
Before this patch, there is no explicit description about pattern matching against directories, even though users may understand it from "plain examples" in "hg help patterns". This patch adds description about pattern matching against directories.
-
Katsunori FUJIWARA authored
Before this patch, online help of "adds()", "contains()", "filelog()", "file()", "modifies()" and "removes()" predicates doesn't explain about how the pattern without explicit kind like "glob:" is treated, even though each predicates treat it differently: - as "relpath:" by "adds()", "modifies()" and "removes()" - as "glob:" by "file()" - as special by "contains()" and "filelog()" - be relative to cwd, and - match against a file exactly ("relpath:" matches also against a directory) This may confuse users. This patch adds explanation about the pattern without explicit kind to these predicates.
-
Katsunori FUJIWARA authored
Before this patch, revset predicate "filelog()" uses "match.files()" to get filename also for the pattern without explicit kind. But in such case, only canonicalization of relative path is required, and other initializations of "match" object including regexp compilation are meaningless. This patch uses "pathutil.canonpath()" directly for "filelog()" pattern without explicit kind like "glob:", for efficiency. This patch also does below as a part of introducing "canonpath()": - move location of "matchmod.match()" invocation, because "m" is no more used in "if not matchmod.patkind(pat)" code path - omit passing "default" argument to "matchmod.match()", because "pat" should have explicit kind of pattern in this code path
-
Katsunori FUJIWARA authored
This patch avoids the loop for "match.files()" having always one element in revset predicate "filelog()" for efficiency: "match" object "m" is constructed with "[pat]" as "patterns" argument.
-
Katsunori FUJIWARA authored
Before this patch, default kind of pattern for revset predicate "contains()" is treated as the exact file path rooted at the root of the repository. This decreases usability, because: - all other predicates taking pattern argument (also "filelog()") treat such pattern as the path rooted at the current working directory - "contains()" doesn't describe this difference in its help - this difference may confuse users for example, this prevents revset aliases from sharing same argument between "contains()" and other predicates This patch makes default kind of pattern for revset predicate "contains()" be rooted at the current working directory. This patch uses "pathutil.canonpath()" instead of creating "match" object for efficiency.
-
Katsunori FUJIWARA authored
This patch narrows scope of the variable "m" in the function for revset predicate "contains()", because it is referred only in "else" code path of "if not matchmod.patkind(pat)" examination.
-
Simon Heimberg authored
Do the same hack as in test-doctests.py to let the test pass on OS X.
-
Simon Heimberg authored
Some versions of python 2.4 write ? instead of <module>. Ignore this detail by a glob. This fixes a failure spotted on buildbot, existing since this test lines were introduced 47d0843647d1.
-
- Jan 15, 2014
-
-
Sean Farley authored
Now that bookmarks.py has grown a validdest method that even handles successor changesets, we use that instead of duplicating the logic in commands.py
-
Sean Farley authored
Previously, when an obsolete changeset was bookmarked, successor changesets were not considered when moving the bookmark forward. Now that a bare update will move to the tip most of the successor changesets, we also update the bookmark logic to allow the bookmark to move with this update. Tests have been updated and keep issue4015 covered as well.
-
Sean Farley authored
Previously, a bare update would ignore any successor changesets thus potentially leaving you on an obsolete head. This happens commonly when there is an old bookmark that hasn't been moved forward which is the motivating reason for this patch series. Now, we will check for successor changesets if two conditions hold: 1) we are doing a bare update 2) *and* we are currently on an obsolete head. If we are in this situation, then we calculate the branchtip of the successor set and update to that changeset. Tests coverage has been added.
-
- Nov 06, 2013
-
-
Sean Farley authored
There is no code change here but this helps prepare for future commits that will fix a bare update with obsolete markers.
-
Sean Farley authored
-
- Jan 16, 2014
-
-
Sean Farley authored
-
- Jan 09, 2014
-
-
Pierre-Yves David authored
In some case Backout silently succeeded to back out but left all the change uncommitted. This may be confusing for user so this changeset add a note reminding to commit. Other backout case already actively informs the user about created commit.
-
- Jan 08, 2014
-
-
Pierre-Yves David authored
Before the changeset the backout process was: 1) go to <target> 2) revert to <target> parent 3) update back to changeset we came from The two update steps can takes a very long time to move back and forth unrelated file change between <target> and current working directory. The new process is just merging current working directory with the parent of <target> using <target> as ancestor. This give the very same result but skip the two updates. On big repo with a lot of files and changes that save a lots of time (x20 for one week window). The "merge" version (hg backout --merge) is still done with upgrades. We could imagine using in memory commit to speed it up but this is another fish.
-
- Jan 16, 2014
-
-
Simon Heimberg authored
Extend the message with the test name and the approximate line number. (The line number is the one of the command producing the output.) Finding the line to fix is easier now. old message: ...... Info, unnecessary glob: at a/b/c (glob) .. new message: ...... Info, unnecessary glob in test-example.t (after line 9): at a/b/c (glob) .. The test result is still pass as before.
-
Simon Heimberg authored
When the line does not match because of \ instead of / (on windows), append (glob) in the expected output. This allows to rename test-bla.t.err to test-bla.t for getting a correct output. This worked for other failures like missing (esc), but not here. Output example (only +- lines of diff): Before: - path/with/local/sep + path\\with\\local/sep Now: - path/with/local/sep + path/with/local/sep (glob)
-
Simon Heimberg authored
This has several advantages. * Each match function can return some information to the caller runone (used in the next patch). * It is not checked that the line ends in " (glob)" when rematch() returns false. * And it looks more readable.
-
Simon Heimberg authored
Test for failing matches and warnings. (The existing test-run-tests.t can not do both by design.) And simulate matching on other os.
-
- Jan 09, 2014
-
-
Pierre-Yves David authored
The main goal is to monitor that working directory parent are correct after backout. This will be useful the next changeset introducting magic merge usage.
-
- Dec 01, 2013
-
-
Katsunori FUJIWARA authored
Before this patch, transplant extension shows the list of available responses by specific string, even though the prompt string passed to "ui.promptchoice()" has enough (maybe i18n-ed) information. This patch uses "ui.extractchoices()" to show the list of available responses.
-
Katsunori FUJIWARA authored
Before this patch, transplant extension uses "ui.prompt()" for interactive transplant, and has to check whether user response returned by "ui.prompt()" is valid or not in own code. In addition to it, transplant extension uses response characters (e.g. "y", "n", and so on) directly in own code, and this disallows to use another response characters by translation, even though the help shown by '?' typing is translatable. This patch uses "ui.promptchoice()" instead of "ui.prompt()" to resolve problems above.
-
Katsunori FUJIWARA authored
-
Katsunori FUJIWARA authored
Before this patch, record extension gets the list of available responses from online help document of "hg record" in the tricky way, even though the value passed to "ui.promptchoice()" has enough (maybe i18n-ed) information. This patch uses "ui.extractchoices()" to get the list of available responses.
-
Katsunori FUJIWARA authored
-
- Jan 06, 2014
-
-
Pierre-Yves David authored
We are doing membership test and substraction. new code is marginally faster.
-
Pierre-Yves David authored
We drop iterrevs which are not needed anymore. The know head are never a descendant of the updated set. It was possible with the old strip code. This simplification make the code easier to read an update.
-
- Jan 04, 2014
-
-
Pierre-Yves David authored
We never use the node of new revisions unless in the very specific case of closed heads. So we can just use the revision number. So give another handfull of percent speedup.
-
- Jan 15, 2013
-
-
Pierre-Yves David authored
Now that no user try to update the cache on a truncated repo we can drop the extra lookup. Give an handfull percent speedup on big branchmap update.
-
- Jan 04, 2014
-
-
Pierre-Yves David authored
The line fit in 80 character limit without it. It is even shorter without it.
-
- Jan 16, 2014
-
-
Simon Heimberg authored
This does not happen when running normal. But when fiddling around with the test infrastructure, this helps a lot. Old traceback messge Exception in thread Thread-7: Traceback (most recent call last): ... new traceback message Exception in thread test-something.t: Traceback (most recent call last): ...
-
Simon Heimberg authored
Before no message was returned to the main thread. No result was registered and no new thread was started. This does not happen when running normal. But when fiddling around with the test infrastructure, this helps a lot.
-
- Jan 07, 2014
-
-
Takumi IINO authored
-
- Jan 16, 2014
-
-
durin42 authored
-
- Jan 07, 2014
-
-
Takumi IINO authored
-
Takumi IINO authored
-
Takumi IINO authored
Infinity scroll is broken when you override the web.style in the following ways: $ hg --config='web.style=gitweb' serve $ open http://localhost:8080/shortlog?style=paper ajaxScrollInit should use http://localhost:8080/shortlog/%next%?style=paper. however, http://localhost:8080/shortlog/%next% is used actually. It is missing style parameter. This patch add style parameter to request url.
-
Takumi IINO authored
Some styles have indentation.
-
- Nov 16, 2013
-
-
Mads Kiilerich authored
-