bgneal@4
|
1 Upgrading Trac on Windows Gotchas
|
bgneal@4
|
2 #################################
|
bgneal@4
|
3
|
bgneal@4
|
4 :date: 2011-09-12 22:15
|
bgneal@4
|
5 :tags: Python, Trac, Subversion, Windows
|
bgneal@4
|
6 :slug: upgrading-trac-on-windows-gotchas
|
bgneal@4
|
7 :author: Brian Neal
|
bgneal@4
|
8
|
bgneal@4
|
9 At work, we are outfitted with Windows servers. Despite this obstacle, I managed
|
bgneal@4
|
10 to install Trac_ and Subversion_ a few years ago. During a break in the action,
|
bgneal@4
|
11 we decided to update Subversion (SVN) and Trac. Since we are on Windows, this
|
bgneal@4
|
12 means we have to rely on the `kindness of strangers`_ for Subversion binaries. I
|
bgneal@4
|
13 ran into a couple of gotchas I'd like to document here to help anyone else who
|
bgneal@4
|
14 runs into these.
|
bgneal@4
|
15
|
bgneal@4
|
16 I managed to get Subversion and Trac up and running without any real problems.
|
bgneal@4
|
17 However when Trac needed to access SVN to display changesets or a timeline, for
|
bgneal@4
|
18 example, I got an error:
|
bgneal@4
|
19
|
bgneal@4
|
20 ``tracerror: unsupported version control system "svn" no module named _fs``
|
bgneal@4
|
21
|
bgneal@4
|
22 After some googling, I finally found that this issue is `documented on the Trac
|
bgneal@4
|
23 wiki`_, but it was kind of hard to find. To fix this problem, you have to rename
|
bgneal@4
|
24 the Python SVN binding's DLLs to ``*.pyd``. Specifically, change the
|
bgneal@4
|
25 ``libsvn/*.dll`` files to ``libsvn/*.pyd``, but don't change the name of
|
bgneal@4
|
26 ``libsvn_swig_py-1.dll``. I'd really like to hear an explanation of why one
|
bgneal@4
|
27 needs to do this. Why doesn't the Python-Windows build process do this for you?
|
bgneal@4
|
28
|
bgneal@4
|
29 The second problem I ran into dealt with mod_wsgi_ on Windows. Originally, a few
|
bgneal@4
|
30 years ago, I setup Trac to run under mod_python_. mod_python has long been
|
bgneal@4
|
31 out of favor, so I decided to cut over to mod_wsgi. On my Linux boxes, I always
|
bgneal@4
|
32 run mod_wsgi in daemon mode. When I tried to configure this on Windows, Apache
|
bgneal@4
|
33 complained about an unknown directive ``WSGIDaemonProcess``. It turns out that
|
bgneal@4
|
34 `this mode is not supported on Windows`_. You'll have to use the embedded mode on
|
bgneal@4
|
35 Windows.
|
bgneal@4
|
36
|
bgneal@4
|
37 .. _Trac: http://trac.edgewall.org/
|
bgneal@4
|
38 .. _Subversion: http://subversion.apache.org/
|
bgneal@4
|
39 .. _kindness of strangers: http://sourceforge.net/projects/win32svn/
|
bgneal@4
|
40 .. _documented on the Trac wiki: http://trac.edgewall.org/wiki/TracSubversion
|
bgneal@4
|
41 .. _mod_wsgi: http://code.google.com/p/modwsgi/
|
bgneal@4
|
42 .. _mod_python: http://www.modpython.org/
|
bgneal@4
|
43 .. _this mode is not supported on Windows: http://code.google.com/p/modwsgi/wiki/ConfigurationDirectives#WSGIDaemonProcess
|