Opened 8 years ago

Closed 2 years ago

#11236 closed Bug (wontfix)

Can't build a windows msi installer

Reported by: mr_pink Owned by: nobody
Component: Packaging Version: master
Severity: Normal Keywords: setup msi
Cc: Triage Stage: Accepted
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no


Using "python bdist_msi" it should be possible to build a django msi installer. Whilst I doubt this is high on the list of priorities it seems like quite an easy fix.

I discovered two issues, the first is the version numbering - it is rejected unless it matches a certain pattern. So 1.1 beta should be, for example, 1.1b1.

Secondly contrib.gis causes a problem with the code in

as city.$DB_BACKEND.sql all get shortened to city.sql, and there is an assertion that names must be unique. Therefore these files would need renaming.

I suspect that the hack that looks for 'bdist_wininst' to include data files might have to be expanded to look for bdist_msi too.

Tested using python2.5

Change History (9)

comment:1 Changed 8 years ago by Alex Gaynor

Triage Stage: UnreviewedAccepted

comment:2 Changed 6 years ago by Julien Phalip

Severity: Normal
Type: Bug

comment:3 Changed 6 years ago by Aymeric Augustin

Easy pickings: unset
UI/UX: unset

The issue with contrib.gis was somehow resolved since this ticket was filed. The issue with the version number still exists.

Distutils' docs say:

It is recommended that versions take the form major.minor[.patch[.sub]].

Encoding the version information is an art in itself. Python packages generally adhere to the version format major.minor[.patch][sub]. The major number is 0 for initial, experimental releases of software. It is incremented for releases that represent major milestones in a package. The minor number is incremented when important new features are added to the package. The patch number increments when bug-fix releases are made. Additional trailing version information is sometimes used to indicate sub-releases. These are “a1,a2,...,aN” (for alpha releases, where functionality and API may change), “b1,b2,...,bN” (for beta releases, which only fix bugs) and “pr1,pr2,...,prN” (for final pre-release release testing). Some examples:


the first, experimental release of a package


the second alpha release of the first patch version of 1.0

comment:4 Changed 6 years ago by Aymeric Augustin

I just uploaded a patch to #17491 to fix the format of the version number. If that patch is committed, this ticket will probably be fixed.

comment:5 Changed 6 years ago by Aymeric Augustin

Resolution: fixed
Status: newclosed

In [17351]:

(The changeset message doesn't reference this ticket)

comment:6 Changed 6 years ago by Aymeric Augustin

Resolution: fixed
Status: closedreopened

Hum, python.exe bdist_msi still returns an error:

Writing build\bdist.win32\msi\Lib\site-packages\Django-1.4.0a1-py2.7.egg-info
Traceback (most recent call last):
  File "", line 98, in <module>
    'Topic :: Software Development :: Libraries :: Python Modules',
  File "C:\Python27\lib\distutils\", line 152, in setup
  File "C:\Python27\lib\distutils\", line 953, in run_commands
  File "C:\Python27\lib\distutils\", line 972, in run_command
  File "C:\Python27\lib\distutils\command\", line 255, in run
  File "C:\Python27\lib\distutils\command\", line 318, in add_files
_msi.MSIError: 1: 2263 2: _Tables 3: -2147287032

comment:7 Changed 5 years ago by Aymeric Augustin

Status: reopenednew

comment:8 Changed 4 years ago by Aymeric Augustin

Component: UncategorizedPackaging

comment:9 Changed 2 years ago by Tim Graham

Resolution: wontfix
Status: newclosed

I'm going to close this ticket given a lack of motivation of why we need an MSI installer and the fact that we likely don't have anyone interested in debugging that error. If someone is motivated and can fix it, feel free to reopen.

Note: See TracTickets for help on using tickets.
Back to Top