Commit Graph

19 Commits

Author SHA1 Message Date
Jun Wu
9dc21f8d0b codemod: import from the edenscm package
Summary:
D13853115 adds `edenscm/` to `sys.path` and code still uses `import mercurial`.
That has nasty problems if both `import mercurial` and
`import edenscm.mercurial` are used, because Python would think `mercurial.foo`
and `edenscm.mercurial.foo` are different modules so code like
`try: ... except mercurial.error.Foo: ...`, or `isinstance(x, mercurial.foo.Bar)`
would fail to handle the `edenscm.mercurial` version. There are also some
module-level states (ex. `extensions._extensions`) that would cause trouble if
they have multiple versions in a single process.

Change imports to use the `edenscm` so ideally the `mercurial` is no longer
imported at all. Add checks in extensions.py to catch unexpected extensions
importing modules from the old (wrong) locations when running tests.

Reviewed By: phillco

Differential Revision: D13868981

fbshipit-source-id: f4e2513766957fd81d85407994f7521a08e4de48
2019-01-29 17:25:32 -08:00
Matt Mackall
5e1b4ad958 urls: bulk-change primary website URLs 2015-09-30 15:43:49 -05:00
Matt Mackall
30c1fc3bf2 mq: add a warning about uncommitted changes for qfinish 2011-11-10 15:40:34 -06:00
Dan Villiom Podlaski Christiansen
080231037c *: add executable bit to a few files that were missing it. 2010-10-26 12:18:37 +02:00
Martin Geisler
93a9c977a3 hgweb: add link to wiki 2010-07-03 02:03:55 +02:00
Matt Mackall
61584a3d15 hgweb: simplify hgweb.cgi, add help pointer
- move important config to the top
- add help pointer
- drop encoding hack comment (use web.encoding)
- simplify imports
- use unified hgweb interface
2010-04-26 11:03:40 -05:00
Thomas Arendsen Hein
6f399a19b1 merge backout 2008-02-18 19:21:33 +01:00
Thomas Arendsen Hein
4d33c02751 Backed out changeset 8105fa3c7347 (see issue971/msg5317) 2008-02-18 19:20:22 +01:00
Bryan O'Sullivan
dfa3e1ea9b profiling: allow CGI and FastCGI to be profiled 2008-02-01 13:09:45 -08:00
Dirkjan Ochtman
eb63af80e4 Less indirection in the WSGI web interface. This simplifies some code, and makes it more compliant with WSGI. 2007-11-30 18:23:18 +01:00
Maxim Dounin
73664b16b5 hgweb: disable cgitb by default 2008-02-12 19:07:45 +03:00
Benoit Boissinot
6addb45a89 cgi: sys.path.insert should be before importing mercurial
thanks to R. Burke
2007-08-25 16:31:37 +02:00
Thomas Arendsen Hein
90d76a6ec9 Enable demandimport only in scripts, not in importable modules (issue605)
This way other applications can choose if and when they want this feature,
because it might be problematic if those applications rely on ImportError.
2007-08-18 11:37:08 +02:00
Thomas Arendsen Hein
dc76f842d3 hgweb.cgi and hgwebdir.cgi fixes/cleanups for user configurable parts:
- "import os" was missing in hgwebdir.cgi, added to comments for both script.
- HGENCODING has to be set before importing hgweb, otherwise you'll get
  mixed encoding in changelog vs. file content/diffs.
- "import sys" is only needed when changing sys.path
- document purpose of cgitb.
2006-12-11 14:30:50 +01:00
Matt Mackall
cdbe57fc80 hgweb: report detected character set
Add comments on overriding charset to CGI scripts
2006-12-03 18:47:05 -06:00
Eric Hopper
4498f60ff4 This patch make several WSGI related alterations.
First, it changes the server to be almost a generic WSGI server.

Second, it changes request.py to have wsgiapplication and
_wsgirequest.  wsgiapplication is a class that creates _wsgirequests
when called by a WSGI compliant server.  It needs to know whether
or not it should create hgwebdir or hgweb requests.

Lastly, wsgicgi.py is added, and the CGI scripts are altered to
use it to launch wsgiapplications in a WSGI compliant way.

As a side effect, all the keepalive code has been removed from
request.py.  This code needs to be moved so that it is exclusively
in server.py
2006-06-27 00:09:33 -07:00
mpm@selenic.com
8098f7c792 hgweb: pull cgitb into CGI script example, where it can easily be disabled
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

hgweb: pull cgitb into CGI script example, where it can easily be disabled

This also eliminates cgitb dumps in the logging output of hg serve

manifest hash: a0aa07a706c2c388c0b49505e2960197f716920c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCsv9DywK+sNU5EO8RAieFAJwOjdfkz7pILNVUTvpMkRa6/OIhIQCgo2TP
I2E4hxQ0N7mTtl45pXEFLsk=
=tG0v
-----END PGP SIGNATURE-----
2005-06-17 08:50:11 -08:00
mpm@selenic.com
5c1b6c547d Call python via env in hgweb.cgi 2005-05-31 21:24:14 -08:00
mpm@selenic.com
970955c99d Add example CGI script
This gives an example of how to easily use hgweb via CGI
2005-05-25 16:28:23 -08:00