[IPython-dev] Windows installer - Progress Report
Fernando Perez
Fernando.Perez at colorado.edu
Sun Jun 20 20:30:54 EDT 2004
Viktor Ransmayr wrote:
> For the moment I just want to document the facts and the current status. - I
> attach portions of my work-log:
>
> 2004-06-20 12:31:28
>
> o Prepare a *minimal* version to send to FP and the mailing list.
>
> o Run 'bdist_wininst'.
>
> o Install 'IPython-0.6.1.cvs.win32.exe'
> - Finished w/o a glitch; i.e.
> - C:\Programme\IPython\IPython.py created.
> - Menu 'Start > Alle Programme > IPython' created empty.
This needs fixing: my old hacked one was able to create the proper shortcuts,
and that's ultimately our goal. We want to get shortcuts made _both_ by the
graphic installer and by a manual 'python setup.py install'.
By the way, I think my old hack re-copied the documentation from the dir where
the source got unpacked over to C:\Program...\IPython. But those docs are
already being copied by setup.py. It would be much better to just make the
shortcuts point to the right place instead of making a second copy. How to
actually find at runtime where distutils ends up putting them may take a bit
of work, I've never understood 100% how distutils makes all of its path
decisions. And it irks me to no end that there's no way to get a 'return'
value from setup.py with all the information about what ended up where.
Good luck on this front: distutils is probably the single most annoying Python
technology in existence (as much as I love most of Python, distutils pisses me
off every single time I use it).
To summarize the goal: we want to have
1. A source installer which when called from a command-line as 'setup.py
install', works
2. A GUI-driven .exe installer which also works to completion
Both 1 and 2 should put ipython where it belongs along with the documentation,
and leave StartMenu shortcuts for the HTML/PDF manual, and also for
new_design.pdf (same doc/ directory).
2 should allow ipython to be de-installed with the normal windows process.
Users of 1 will need to clean up manually, but that's fine. That's also how
it works under Unix if a source-based install is made, there's no automatic
de-installation.
> o Running C:\Programme\IPython\IPython.py in IDLE w/ 'Run Module' fails w/
>
> ### Begin of IDLE Output ###
>
> >>> ================================ RESTART
> ================================
> >>>
>
> Traceback (most recent call last):
> File "C:\Programme\IPython\IPython.py", line 26, in -toplevel-
> import IPython
> File "C:\Programme\IPython\IPython.py", line 27, in -toplevel-
> IPython.Shell.IPShell().mainloop()
> AttributeError: 'module' object has no attribute 'Shell'
> >>>
>
> ### End of IDLE Output ###
No surprise here. Ipyhton is _not_ meant to run inside IDLE, at least not
yet. Idle changes the environment way too much for ipython to run correctly,
among other things it mangles stdin/out/err.
Current CVS actually _kind of_ runs inside idle, but this is a total hack.
For proper testing, use IPython from a normal terminal, with Gary's readline
installed (I added to CVS code to complain --but not crash-- if Gary's lib is
missing).
If you _also_ have cygwin, even better: it would be great if you could test in
both environments.
I greatly appreciate your help on this front. My famously catastrophic
Windows support only got worse recently: the only computer with Windows I
could occasionally borrow died, and my wife is replacing it with a Macintosh
Powerbook. While this means the joy of never dealing with Windows again
anymore for me, it also means I don't have any kind of access to the platform
anymore. So now _all_ windows-specific testing and development will have to
be done by users.
Best regards,
Fernando.
More information about the IPython-dev
mailing list