Commit Graph

755 Commits

Author SHA1 Message Date
Pascal Quantin
8779a2558c win32: update build instructions with correct CRT version
As stated in http://msdn.microsoft.com/en-us/library/cc664727.aspx, when you
compile an application with MSVC 2008 SP1 it is bound by default to the
original CRT version (9.0.21022.8). This is the case for Python 2.6 up to 3.1.
If the wrong CRT version is embedded in the Inno Setup installer, with a PC
that does not have the MSVC 2008 redistributable package installed, hg will
refuse to launch with an error: "the system cannot execute the specified
program".
2010-09-16 11:36:38 +02:00
Pascal Quantin
79b606ed69 win32: 64-bit Inno Setup installer 2010-09-11 18:48:03 +02:00
Pascal Quantin
58f110611d win32: update Inno Setup build instructions with up-to-date software 2010-09-11 09:48:10 +02:00
Brendan Cully
fc79a72f03 zsh completion: bookmarks support 2010-09-05 13:37:17 -07:00
Brendan Cully
94254d16e4 zsh completion: patchbomb support 2010-09-04 01:32:01 -07:00
Martin Geisler
c3c7fa090f Merge with stable 2010-08-30 13:00:22 +02:00
Pascal Quantin
80eb33b604 win32: add hgweb scripts to Inno Setup installer 2010-08-29 23:16:31 +02:00
Pascal Quantin
be74e290e0 win32: add Emacs scripts to Inno Setup installer 2010-08-29 22:57:24 +02:00
Mads Kiilerich
cd19e3668d mercurial.spec: specify file modes for install 2010-08-26 23:11:03 +02:00
Martin Geisler
1b1861d1eb Merge with stable 2010-08-27 13:18:25 +02:00
Benoit Boissinot
2a5344e149 contrib/compress: compress should activate parentdelta 2010-08-22 19:41:04 +02:00
Benoit Boissinot
f1dc9e3787 contrib/compress: correct ordering of copying
Changelog should always be copied last, otherwise readers can see an
inconsistent repo.
2010-08-22 19:27:09 +02:00
Benoit Boissinot
b68994148f contrib/compress: refactor revlog copying 2010-08-22 19:26:07 +02:00
Benoit Boissinot
ca7a857d7d contrib/compress: use store API instead of a collector 2010-08-22 19:13:30 +02:00
Benoit Boissinot
984cffb62e contrib/compress: proper lock handling
Lock the src repo before beginning the compression and lock the destination
repo before copying the revlogs.
Proper handling of exceptions.
2010-08-22 18:29:30 +02:00
Benoit Boissinot
349b6aaab5 contrib/compress: use hg API to compute the destination path 2010-08-22 18:23:32 +02:00
Benoit Boissinot
e7a85d1ff5 contrib/compress: use repo's transaction method 2010-08-22 18:21:30 +02:00
Benoit Boissinot
75b2e19c12 contrib/compress: remove unused variables 2010-08-22 18:18:36 +02:00
Yann E. MORIN
f3a35cc478 mq/qqueue: update bash completion 2010-08-18 23:37:26 +02:00
Renato Cunha
49f7aba937 hgfixes: added a fixer to convert changes in the email package
This patch adds a fixer that accounts for changes in python packages, as the
framework provided by lib2to3 is only able to track changes in module names.
This fixer (hopefully) can fix any change in one-level hierarchies.

To exemplify, this fixer can successfully change an import from
"email.MIMEMultipart" to "email.mime.multipart".
2010-08-08 15:48:58 -03:00
Renato Cunha
c4578da8bf contrib/setup3k.py: added script to build hg with py3k
This patch implements a script that inherits most of its functionality from
hg's setup.py and adds support to calling 2to3 during invocation with python3.
The motivation of having this script around is twofold:

 1) It enables py3k crazies to test mercurial in py3k and, hopefully, patch it
    more easily, so it can improve the py3k support to eventually run there.

 2) Being separated from the main setup.py eliminates the need to make hg's
    setup.py even more cluttered, and enables "independent" development until
    the port is done.

Some considerations about the structure of this patch:

Mercurial already overrides the behavior of build_py, this patch tweaks it a bit
more to add support to call 2to3 with a custom fixer* location for Mercurial.
There is also a need of having the core C modules built *before* the
translation process starts, otherwise 2to3 will think those are global modules.

* A fixer is a python module that transforms python 2.x code in python 3.x
code.
2010-08-03 13:18:16 -03:00
Pradeepkumar Gayam
a444183249 contrib: simple extension to practically convert a repo from tip delta to parentdelta 2010-08-10 22:28:30 +05:30
Martin Geisler
ec0bf03276 Merge with stable 2010-08-15 18:13:46 +02:00
Martin Geisler
888421d8ca check-code: catch "echo -n" in tests 2010-08-15 17:48:05 +02:00
Mads Kiilerich
e26e44a190 mercurial.spec: gettext is a build requirement for getting proper localization 2010-08-14 01:31:57 +02:00
Martin Geisler
e7bd3fc69a Merge with stable 2010-08-14 03:30:35 +02:00
Alecs King
00c728120d check-code: add exit status
so that we can use it in a shell command combination and/or in hg hooks.
2010-08-12 16:42:41 +08:00
Yann E. MORIN
af2d086089 mq/qqueue: enable bash completion
Return the list of available queues when completion is attempted on qqueue.
2010-08-08 23:10:08 +02:00
Renato Cunha
f65cf06e03 check-code: added a check for calls to the builtin cmp function 2010-08-07 16:13:53 -03:00
Yuya Nishihara
3cdd1e55b0 zsh completions: add qpush --move option 2010-08-07 15:32:33 +09:00
Renato Cunha
49c247ab1e hgfixes: added a fixer that makes bytes to be formatted correctly
This patch implement a fixer that replaces all calls to the '%' when bytes
arguments are used to a call to bytesformatter(), a function that knows how to
format byte strings. As one can't be sure if a formatting call is done when
only variables are used in a '%' call, these calls are also translated. The
bytesformatter, in runtime, makes sure to return the "raw" % operation if
that's what was intended.
2010-08-03 13:59:14 -03:00
Renato Cunha
48aa19eddb py3kcompat: added a "compatibility layer" for py3k
This patch adds some ugly constructs. The first of them is bytesformatter, a
function that formats strings like when '%' is called. The main motivation for
this function is py3k's strange behavior:

>>> 'foo %s' % b'bar'
"foo b'bar'"
>>> b'foo %s' % b'bar'
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for %: 'bytes' and 'bytes'
>>> b'foo %s' % 'bar'
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for %: 'bytes' and 'str'

In other words, if we can't format bytes with bytes, and recall that all
mercurial strings will be converted by a fixer, then things will break badly if
we don't take a similar approach.

The other addition with this patch is that the os.environ dictionary is
monkeypatched to have bytes items. Hopefully this won't be needed in the
future, as python 3.2 might get a os.environb dictionary that holds bytes
items.
2010-08-03 13:52:48 -03:00
Renato Cunha
09994866c3 hgfixes: add a fixer to convert plain strings to bytestrings
This patch implements a 2to3 fixer that converts all plain strings in a python
source file to byte strings syntax. Example:

foo = 'Normal string'

would become

foo = b'Normal string'

The motivation behind this fixer can be found in
http://selenic.com/pipermail/mercurial-devel/2010-June/022363.html or, in other
words: the current hg source assumes that _most_ strings are "meant" to be byte
sequences, so it makes sense to make the convertion implemented by this patch.

As mentioned above, not all mercurial modules want to use strings as bytes,
examples include i18n (which uses unicode), and demandimport (in py3k, module
names are normal strings, thus unicode, and there's no need for a convertion).
Therefore, these modules are blacklisted in the fixer. There are also a few
functions that can take only unicode arguments, thus the convertion shouldn't
be done for those.
2010-08-03 13:41:47 -03:00
Nicolas Dumazet
3186d42f7f perf: break down long line 2010-07-31 11:41:42 +09:00
Pradeepkumar Gayam
02c67b2a97 perf: add perfrevlog function to check performance of revlog 2010-07-27 20:50:09 +05:30
Matt Mackall
661034417e check-code: add warning on lines over 80 characters 2010-07-25 17:10:32 -05:00
Brodie Rao
bfa13e8d9a bash/zsh completion: use HGPLAIN when invoking hg (issue2297) 2010-07-21 17:06:00 -04:00
Martin Geisler
71971a8928 check-code: warn about untranslated ui.warn calls 2010-07-16 14:40:57 +02:00
Martin Geisler
177012ed6e Merge with stable 2010-07-22 10:49:55 +02:00
Vishakh H
dc91b670e1 contrib: add debugshell extension 2010-07-20 23:29:49 +05:30
Matt Mackall
6c780d7b4f check-code: add --blame switch 2010-07-16 13:26:39 -05:00
Martin Geisler
12085cad2b check-code: catch dict.has_key 2010-07-16 14:48:52 +02:00
Martin Geisler
f985c9d777 Merge with stable 2010-07-16 14:45:52 +02:00
Renato Cunha
29ee0d7c07 check-code: added check for reduce usage 2010-07-14 23:15:03 -03:00
Renato Cunha
f678753e0c check-code: check for tuple parameter unpacking (missing in py3k) 2010-07-14 23:15:00 -03:00
Martin Geisler
5fbbb27c25 Merge with stable 2010-07-09 14:21:45 +02:00
Martin Geisler
59385f10e8 check-code: add test for callable 2010-07-09 14:01:55 +02:00
Martin Geisler
9fd4048b8f Merge with stable 2010-07-06 20:43:19 +02:00
Martin Geisler
fabfcd3971 mergetools.hgrc: add vimdiff
Imported from deb_specific__mergetools patch in Debians patch queue:

  http://svn.debian.org/viewsvn/python-apps/packages/mercurial/trunk/debian/patches/
2010-07-03 02:15:25 +02:00
Martin Geisler
6ae5a495d7 hgweb.wsgi: add a URL to the corresponding wiki documentation
Imported for_upstream__add_doc_url_in_example_files.patch from
Debian's patch queue:

  http://svn.debian.org/viewsvn/python-apps/packages/mercurial/trunk/debian/patches/
2010-07-03 01:48:50 +02:00