From: Steven P. <n9...@n9...> - 2003-12-10 03:34:24
|
On Dec 9, 2003, at 9:04 PM, Roger Binns wrote: > I assume that Modules.zip just contains the .py files. I also > assume this directory structure isn't writable when deployed. > On Linux and Windows the .py files are compiled to .pyo files > (optimised). This means that all the doc strings are stripped > out which makes them considerably smaller. Somewhat. It stores the .pyc files, not only for the bitpim stuff, but any associated items. Here is a list that has been put into it here: Archive: Modules.zip testing: Carbon/__init__.pyc OK testing: Carbon/AE.pyc OK testing: Carbon/Appearance.pyc OK testing: Carbon/AppleEvents.pyc OK testing: Carbon/CarbonEvents.pyc OK testing: Carbon/ControlAccessor.pyc OK testing: Carbon/Controls.pyc OK testing: Carbon/Ctl.pyc OK testing: Carbon/Dialogs.pyc OK testing: Carbon/Dlg.pyc OK testing: Carbon/Dragconst.pyc OK testing: Carbon/Events.pyc OK testing: Carbon/Evt.pyc OK testing: Carbon/File.pyc OK testing: Carbon/Files.pyc OK testing: Carbon/Folder.pyc OK testing: Carbon/Folders.pyc OK testing: Carbon/Menu.pyc OK testing: Carbon/Qd.pyc OK testing: Carbon/QuickDraw.pyc OK testing: Carbon/Res.pyc OK testing: Carbon/TextEdit.pyc OK testing: Carbon/Win.pyc OK testing: Carbon/Windows.pyc OK testing: DSV/__init__.pyc OK testing: DSV/DSV.pyc OK testing: EasyDialogs.pyc OK testing: FCNTL.pyc OK testing: Finder/__init__.pyc OK testing: Finder/Containers_and_folders.pyc OK testing: Finder/Enumerations.pyc OK testing: Finder/Files.pyc OK testing: Finder/Finder_Basics.pyc OK testing: Finder/Finder_items.pyc OK testing: Finder/Legacy_suite.pyc OK testing: Finder/Standard_Suite.pyc OK testing: Finder/Type_Definitions.pyc OK testing: Finder/Window_classes.pyc OK testing: MacOS.pyc OK testing: Nav.pyc OK testing: Queue.pyc OK testing: StdSuites/__init__.pyc OK testing: StdSuites/AppleScript_Suite.pyc OK testing: StdSuites/Macintosh_Connectivity_Clas.pyc OK testing: StdSuites/QuickDraw_Graphics_Suite.pyc OK testing: StdSuites/QuickDraw_Graphics_Suppleme.pyc OK testing: StdSuites/Required_Suite.pyc OK testing: StdSuites/Standard_Suite.pyc OK testing: StdSuites/Table_Suite.pyc OK testing: StdSuites/Text_Suite.pyc OK testing: StdSuites/Type_Names_Suite.pyc OK testing: StringIO.pyc OK testing: TERMIOS.pyc OK testing: UserDict.pyc OK testing: _AE.pyc OK testing: _Ctl.pyc OK testing: _Dlg.pyc OK testing: _Evt.pyc OK testing: _File.pyc OK testing: _Folder.pyc OK testing: _Menu.pyc OK testing: _Qd.pyc OK testing: _Res.pyc OK testing: _Win.pyc OK testing: __future__.pyc OK testing: __main__.pyc OK testing: _builtinSuites/__init__.pyc OK testing: _builtinSuites/builtin_Suite.pyc OK testing: _hotshot.pyc OK testing: _locale.pyc OK testing: _random.pyc OK testing: _socket.pyc OK testing: _ssl.pyc OK testing: _weakref.pyc OK testing: aepack.pyc OK testing: aetools.pyc OK testing: aetypes.pyc OK testing: analyser.pyc OK testing: applesingle.pyc OK testing: array.pyc OK testing: atexit.pyc OK testing: bdb.pyc OK testing: binascii.pyc OK testing: bpaudio.pyc OK testing: brewcompressedimage.pyc OK testing: cStringIO.pyc OK testing: calendar.pyc OK testing: calendarcontrol.pyc OK testing: cmd.pyc OK testing: comdiagnose.pyc OK testing: common.pyc OK testing: commport.pyc OK testing: comscan.pyc OK testing: copy.pyc OK testing: copy_reg.pyc OK testing: datetime.pyc OK testing: difflib.pyc OK testing: dis.pyc OK testing: doctest.pyc OK testing: dummy_thread.pyc OK testing: fcntl.pyc OK testing: fixedscrolledpanel.pyc OK testing: fnmatch.pyc OK testing: getopt.pyc OK testing: glob.pyc OK testing: gui.pyc OK testing: guihelper.pyc OK testing: guiwidgets.pyc OK testing: helpids.pyc OK testing: hexeditor.pyc OK testing: hotshot/__init__.pyc OK testing: hotshot/log.pyc OK testing: hotshot/stats.pyc OK testing: ic.pyc OK testing: icglue.pyc OK testing: importexport.pyc OK testing: inspect.pyc OK testing: linecache.pyc OK testing: locale.pyc OK testing: macfs.pyc OK testing: macostools.pyc OK testing: macpath.pyc OK testing: macresource.pyc OK testing: math.pyc OK testing: native/__init__.pyc OK testing: native/usb/__init__.pyc OK testing: native/usb/_libusb.pyc OK testing: native/usb/libusb.pyc OK testing: native/usb/usb.pyc OK testing: ntpath.pyc OK testing: opcode.pyc OK testing: operator.pyc OK testing: os.pyc OK testing: os2emxpath.pyc OK testing: p_brew.pyc OK testing: p_lg.pyc OK testing: p_lgtm520.pyc OK testing: p_lgvx4400.pyc OK testing: p_lgvx6000.pyc OK testing: p_sanyo.pyc OK testing: parser.pyc OK testing: pdb.pyc OK testing: phonebook.pyc OK testing: phonebookentryeditor.pyc OK testing: popen2.pyc OK testing: posixpath.pyc OK testing: pprint.pyc OK testing: profile.pyc OK testing: prototypes.pyc OK testing: pstats.pyc OK testing: pubsub.pyc OK testing: pwd.pyc OK testing: py_compile.pyc OK testing: random.pyc OK testing: re.pyc OK testing: repr.pyc OK testing: select.pyc OK testing: serial/__init__.pyc OK testing: serial/serialjava.pyc OK testing: serial/serialposix.pyc OK testing: serial/serialutil.pyc OK testing: serial/serialwin32.pyc OK testing: sha.pyc OK testing: socket.pyc OK testing: sre.pyc OK testing: sre_compile.pyc OK testing: sre_constants.pyc OK testing: sre_parse.pyc OK testing: stat.pyc OK testing: string.pyc OK testing: strop.pyc OK testing: struct.pyc OK testing: symbol.pyc OK testing: tempfile.pyc OK testing: termios.pyc OK testing: threading.pyc OK testing: time.pyc OK testing: token.pyc OK testing: tokenize.pyc OK testing: traceback.pyc OK testing: types.pyc OK testing: unittest.pyc OK testing: usbscan.pyc OK testing: version.pyc OK testing: wallpaper.pyc OK testing: warnings.pyc OK testing: weakref.pyc OK testing: webbrowser.pyc OK testing: wx/__init__.pyc OK testing: wx/grid.pyc OK testing: wx/html.pyc OK testing: wxPython/__init__.pyc OK testing: wxPython/__version__.pyc OK testing: wxPython/calendar.pyc OK testing: wxPython/calendarc.pyc OK testing: wxPython/clip_dnd.pyc OK testing: wxPython/cmndlgs.pyc OK testing: wxPython/controls.pyc OK testing: wxPython/controls2.pyc OK testing: wxPython/events.pyc OK testing: wxPython/filesys.pyc OK testing: wxPython/fonts.pyc OK testing: wxPython/frames.pyc OK testing: wxPython/gdi.pyc OK testing: wxPython/gizmos.pyc OK testing: wxPython/gizmosc.pyc OK testing: wxPython/grid.pyc OK testing: wxPython/gridc.pyc OK testing: wxPython/help.pyc OK testing: wxPython/helpc.pyc OK testing: wxPython/html.pyc OK testing: wxPython/htmlc.pyc OK testing: wxPython/htmlhelp.pyc OK testing: wxPython/image.pyc OK testing: wxPython/lib/__init__.pyc OK testing: wxPython/lib/colourdb.pyc OK testing: wxPython/lib/grids.pyc OK testing: wxPython/lib/intctrl.pyc OK testing: wxPython/lib/maskededit.pyc OK testing: wxPython/lib/mixins/__init__.pyc OK testing: wxPython/lib/mixins/listctrl.pyc OK testing: wxPython/lib/pubsub.pyc OK testing: wxPython/lib/rcsizer.pyc OK testing: wxPython/mdi.pyc OK testing: wxPython/misc.pyc OK testing: wxPython/misc2.pyc OK testing: wxPython/printfw.pyc OK testing: wxPython/sizers.pyc OK testing: wxPython/stattool.pyc OK testing: wxPython/streams.pyc OK testing: wxPython/tools/__init__.pyc OK testing: wxPython/tools/dbg.pyc OK testing: wxPython/utils.pyc OK testing: wxPython/windows.pyc OK testing: wxPython/windows2.pyc OK testing: wxPython/windows3.pyc OK testing: wxPython/wx.pyc OK testing: wxPython/wxc.pyc OK testing: xyaptu.pyc OK testing: zipfile.pyc OK testing: zlib.pyc OK >> 14M dist > > What size does the final distributable work out as. IIRC you > make a dimg (disk image) which is a compressed loopback filesystem. 14,233,205 bytes. Yes, a disk image is one option for distribution. Either that or a "Stuffit" file. Manyh of the items in this bundle are already compressed, but when making a compressed disk image for distribution it cuts it down to 5.8MB (6,113,771 bytes) > BTW I assume that sys.platform returns 'darwin'. Yes, sorry 'bout that. > Also how do you encode the version numbers of BitPim itself. One thing very different here from your Windows or Linux examples... This is not an installer, this is a self-contained do-everything application. The user would download this as either a disk image or stuffit archive, and the resulting item can simply be drag-n-dropped anywhere in the filesystem and run. It is entirely self-contained, relying on no other system python parts/etc. Therefore, it's no trouble to have ten different versions on the machine as long as the application bundle has a different name or is in a different directory. Very nice. > I have integrated the code into makedist.py. Thanks for your > continuing contributions on this. THANK YOU. You have done a great work in bitpim, I'm just glad to do a feeble little part. It makes me feel good to give even a little bit of time back to the project. -. ----. -.-- - -.-- Steve Palm - n9...@n9... -. ----. -.-- - -.-- |