Opened 5 years ago

Closed 5 years ago

#2883 closed defect (fixed)

`python setup.py bdist_wheel` produces an empty package

Reported by: dustin Owned by: sa2ajj
Priority: major Milestone: 0.9.0
Version: 0.8.9 Keywords: pkg
Cc:

Description (last modified by dustin)

running bdist_wheel
running build
npm install
npm WARN package.json buildbot-www@ No description
npm WARN package.json buildbot-www@ No repository field.
npm WARN package.json buildbot-www@ No README data
npm WARN optional dep failed, continuing fsevents@0.2.1

> phantomjs@1.9.7-15 install /home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma-phantomjs-launcher/node_modules/phantomjs
> node install.js

Download already available at /tmp/phantomjs/phantomjs-1.9.7-linux-x86_64.tar.bz2
Extracting tar contents (via spawned process)
Copying extracted folder /tmp/phantomjs/phantomjs-1.9.7-linux-x86_64.tar.bz2-extract-1409529084459/phantomjs-1.9.7-linux-x86_64 -> /home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/lib/phantom
Writing location.js file
Done. Phantomjs binary available at /home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/lib/phantom/bin/phantomjs

> ws@0.4.32 install /home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws
> (node-gyp rebuild 2> builderror.log) || (exit 0)

make: Entering directory `/home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws/build'
  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
  SOLINK_MODULE(target) Release/obj.target/bufferutil.node
  SOLINK_MODULE(target) Release/obj.target/bufferutil.node: Finished
  COPY Release/bufferutil.node
  CXX(target) Release/obj.target/validation/src/validation.o
  SOLINK_MODULE(target) Release/obj.target/validation.node
  SOLINK_MODULE(target) Release/obj.target/validation.node: Finished
  COPY Release/validation.node
make: Leaving directory `/home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws/build'
gulp-shell@0.2.9 node_modules/gulp-shell
├── async@0.9.0
├── through2@0.5.1 (xtend@3.0.0, readable-stream@1.0.31)
├── gulp-util@3.0.1 (lodash._reinterpolate@2.4.1, dateformat@1.0.8-1.2.3, minimist@1.1.0, chalk@0.5.1, through2@0.6.1, multipipe@0.1.1, vinyl@0.4.2, lodash.template@2.4.1)
└── lodash@2.4.1

gulp@3.8.6 node_modules/gulp
├── tildify@0.2.0
├── interpret@0.3.6
├── pretty-hrtime@0.2.1
├── deprecated@0.0.1
├── archy@0.0.2
├── minimist@0.2.0
├── chalk@0.5.1 (escape-string-regexp@1.0.1, ansi-styles@1.1.0, supports-color@0.2.0, has-ansi@0.1.0, strip-ansi@0.3.0)
├── orchestrator@0.3.7 (stream-consume@0.1.0, sequencify@0.0.7, end-of-stream@0.1.5)
├── semver@2.3.2
├── gulp-util@2.2.20 (lodash._reinterpolate@2.4.1, dateformat@1.0.8-1.2.3, vinyl@0.2.3, multipipe@0.1.1, lodash.template@2.4.1, through2@0.5.1)
├── vinyl-fs@0.3.7 (graceful-fs@3.0.2, strip-bom@1.0.0, mkdirp@0.5.0, glob-stream@3.1.15, vinyl@0.4.2, glob-watcher@0.0.6, through2@0.6.1, lodash@2.4.1)
└── liftoff@0.12.1 (extend@1.3.0, resolve@0.7.4, findup-sync@0.1.3)

run-sequence@0.3.6 node_modules/run-sequence
└── chalk@0.5.1 (escape-string-regexp@1.0.1, ansi-styles@1.1.0, supports-color@0.2.0, has-ansi@0.1.0, strip-ansi@0.3.0)

guanlecoja@0.2.7 node_modules/guanlecoja
├── js-string-escape@1.0.0
├── rimraf@2.2.8
├── karma-sourcemap-loader@0.2.0
├── gulp-rename@1.2.0
├── gulp-angular-templatecache@1.2.1 (path@0.4.9)
├── karma-jasmine@0.2.2
├── minimist@0.2.0
├── event-stream@3.1.7 (stream-combiner@0.0.4, duplexer@0.1.1, from@0.1.3, pause-stream@0.0.11, map-stream@0.1.0, split@0.2.10, through@2.3.4)
├── gulp-karma@0.0.4 (xtend@2.1.2, event-stream@3.0.20, optimist@0.6.1)
├── gulp-ng-classify@4.0.0 (ng-classify@4.0.2)
├── gulp-fixtures2js@0.0.1 (through@2.3.4, fixtures2js@0.0.0)
├── gulp-concat@2.3.4 (through@2.3.4, concat-with-sourcemaps@0.1.3)
├── gulp-sourcemaps@1.1.3 (convert-source-map@0.3.5, vinyl@0.2.3, through2@0.5.1)
├── coffee-script@1.7.1 (mkdirp@0.3.5)
├── gulp-footer@1.0.5 (lodash.assign@2.4.1)
├── gulp-header@1.0.5 (lodash.assign@2.4.1)
├── gulp-util@2.2.20 (lodash._reinterpolate@2.4.1, dateformat@1.0.8-1.2.3, chalk@0.5.1, vinyl@0.2.3, lodash.template@2.4.1, through2@0.5.1, multipipe@0.1.1)
├── gulp-cached@1.0.1 (lodash.defaults@2.4.1, through2@0.5.1)
├── gulp-coffee@2.1.2 (merge@1.1.3, through2@0.6.1, vinyl-sourcemaps-apply@0.1.1, gulp-util@3.0.1)
├── karma-phantomjs-launcher@0.1.4 (phantomjs@1.9.7-15)
├── gulp-remember@0.2.1 (through2@0.5.1)
├── lodash@2.4.1
├── gulp-ng-annotate@0.2.0 (ng-annotate@0.9.11, through2@0.4.2)
├── gulp-livereload@2.1.1 (lodash.assign@2.4.1, tiny-lr@0.1.1, gulp-util@3.0.1)
├── gulp-if@1.2.4 (gulp-match@0.2.0, through2@0.5.1, ternary-stream@1.2.1)
├── gulp-minify-css@0.3.7 (memory-cache@0.0.5, bufferstreams@0.0.1, clean-css@2.2.15, through2@0.5.1)
├── gulp-uglify@0.3.2 (deepmerge@0.2.7, uglify-js@2.4.6, gulp-util@3.0.1, through2@0.6.1)
├── gulp-jade@0.6.1 (through2@0.5.1, jade@1.3.1)
├── connect@2.12.0 (uid2@0.0.3, methods@0.1.0, pause@0.0.1, debug@0.8.1, cookie-signature@1.0.1, fresh@0.2.0, qs@0.6.6, bytes@0.2.1, buffer-crc32@0.2.1, raw-body@1.1.2, batch@0.5.0, cookie@0.1.0, negotiator@0.3.0, send@0.1.4, multiparty@2.2.0)
├── gulp-bower-deps@0.1.2 (through2@0.5.1, gulp-util@3.0.1, bower@1.3.9)
├── karma@0.12.23 (di@0.0.1, graceful-fs@2.0.3, colors@0.6.2, mime@1.2.11, q@0.9.7, chokidar@0.8.4, minimatch@0.2.14, optimist@0.6.1, glob@3.2.11, http-proxy@0.10.4, log4js@0.6.20, source-map@0.1.38, useragent@2.0.9, socket.io@0.9.17)
└── gulp-less@1.3.5 (convert-source-map@0.4.1, lodash.defaults@2.4.1, vinyl-sourcemaps-apply@0.1.1, gulp-util@3.0.1, through2@0.5.1, less@1.7.4)
/home/buildbot/metaslave/builds/build/www/base/node_modules/.bin/gulp prod
[01:53:49] Bower: Using cwd:  /home/buildbot/metaslave/builds/build/www/base
[01:53:50] Bower: Using bower dir:  libs
/home/buildbot/metaslave/builds/build/www/base/libs/guanlecoja-ui/vendors.js
/home/buildbot/metaslave/builds/build/www/base/libs/guanlecoja-ui/scripts.js
/home/buildbot/metaslave/builds/build/www/base/libs/moment/moment.js
/home/buildbot/metaslave/builds/build/www/base/libs/restangular/dist/restangular.js
/home/buildbot/metaslave/builds/build/www/base/libs/angular-mocks/angular-mocks.js
[01:53:50] Using gulpfile ~/metaslave/builds/build/www/base/gulpfile.js
[01:53:50] Starting 'default'...
[01:53:50] Starting 'bower'...
[01:53:52] bower cached git://github.com/buildbot/guanlecoja-ui.git#1.2.1
[01:53:52] bower validate 1.2.1 against git://github.com/buildbot/guanlecoja-ui.git#~1.2.0
[01:53:52] bower cached git://github.com/mbostock/d3.git#3.4.11
[01:53:52] bower validate 3.4.11 against git://github.com/mbostock/d3.git#~3.4.11
[01:53:53] bower cached git://github.com/moment/moment.git#2.6.0
[01:53:53] bower validate 2.6.0 against git://github.com/moment/moment.git#~2.6.0
[01:53:53] bower cached git://github.com/angular/bower-angular-mocks.git#1.2.23
[01:53:53] bower validate 1.2.23 against git://github.com/angular/bower-angular-mocks.git#~1.2.17
[01:53:53] bower cached git://github.com/twbs/bootstrap.git#3.1.1
[01:53:53] bower validate 3.1.1 against git://github.com/twbs/bootstrap.git#~3.1.1
[01:53:53] bower cached git://github.com/mgonto/restangular.git#1.4.0
[01:53:53] bower validate 1.4.0 against git://github.com/mgonto/restangular.git#~1.4.0
[01:53:53] bower cached git://github.com/FortAwesome/Font-Awesome.git#4.1.0
[01:53:53] bower validate 4.1.0 against git://github.com/FortAwesome/Font-Awesome.git#~4.1.0
[01:53:55] bower cached git://github.com/lodash/lodash.git#2.4.1
[01:53:55] bower validate 2.4.1 against git://github.com/lodash/lodash.git#>=1.3.0 <2.5.0
[01:53:55] bower cached git://github.com/angular/bower-angular.git#1.2.23
[01:53:55] bower validate 1.2.23 against git://github.com/angular/bower-angular.git#*
[01:53:55] bower cached git://github.com/jquery/jquery.git#2.1.1
[01:53:55] bower validate 2.1.1 against git://github.com/jquery/jquery.git#>= 1.9.0
[01:53:57] bower install guanlecoja-ui#1.2.1
[01:53:57] bower install restangular#1.4.0
[01:53:57] bower install moment#2.6.0
[01:53:57] bower install font-awesome#4.1.0
[01:53:57] bower install d3#3.4.11
[01:53:57] bower install angular-mocks#1.2.23
[01:53:57] bower install bootstrap#3.1.1
[01:53:57] bower install lodash#2.4.1
[01:53:57] bower install angular#1.2.23
[01:53:57] bower install jquery#2.1.1
[01:54:00] Finished 'bower' after 10 s
[01:54:00] Starting 'scripts'...
[01:54:00] Starting 'styles'...
[01:54:00] Starting 'fonts'...
[01:54:00] Starting 'imgs'...
[01:54:00] Starting 'index'...
[01:54:00] Starting 'tests'...
[01:54:00] Starting 'generatedfixtures'...
[01:54:00] Starting 'fixtures'...
[01:54:00] Starting 'copyd3'...
[01:54:04] Finished 'fixtures' after 3.82 s
[01:54:04] Finished 'index' after 4.25 s
[01:54:04] Finished 'copyd3' after 4.15 s
[01:54:04] Finished 'generatedfixtures' after 4.42 s
[01:54:05] Finished 'imgs' after 5.13 s
[01:54:09] Finished 'styles' after 9.03 s
[01:54:10] Finished 'fonts' after 9.95 s
[01:54:10] Finished 'tests' after 10 s
[01:54:47] Finished 'scripts' after 47 s
[01:54:47] Starting 'karma'...
[01:54:47] Starting Karma server...
DEBUG [config]: No config file specified.
DEBUG [plugin]: Loading plugin karma-jasmine.
DEBUG [plugin]: Loading plugin karma-phantomjs-launcher.
DEBUG [plugin]: Loading plugin karma-sourcemap-loader.
INFO [karma]: Karma v0.12.23 server started at http://localhost:9876/
INFO [launcher]: Starting browser PhantomJS
DEBUG [temp-dir]: Creating temp dir at /tmp/karma-51672966
DEBUG [launcher]: /home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/lib/phantom/bin/phantomjs /tmp/karma-51672966/capture.js
WARN [watcher]: Pattern "/home/buildbot/metaslave/builds/build/www/base/buildbot_www/static/fixtures.js" does not match any file.
DEBUG [watcher]: Resolved files:
	/home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma-jasmine/lib/jasmine.js
	/home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma-jasmine/lib/boot.js
	/home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma-jasmine/lib/adapter.js
	/home/buildbot/metaslave/builds/build/www/base/buildbot_www/static/scripts.js
	/home/buildbot/metaslave/builds/build/www/base/buildbot_www/static/generatedfixtures.js
	/home/buildbot/metaslave/builds/build/www/base/buildbot_www/static/tests.js
DEBUG [web-server]: serving: /home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma/static/client.html
DEBUG [web-server]: serving: /home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma/static/karma.js
DEBUG [web-server]: upgrade /socket.io/1/websocket/h30t_IRJlOYuEEw9fhff
DEBUG [karma]: A browser has connected on socket h30t_IRJlOYuEEw9fhff
INFO [PhantomJS 1.9.7 (Linux)]: Connected on socket h30t_IRJlOYuEEw9fhff with id 51672966
DEBUG [launcher]: PhantomJS (id 51672966) captured in 3.14 secs
DEBUG [web-server]: serving: /home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma/static/context.html
DEBUG [web-server]: serving (cached): /home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma-jasmine/lib/jasmine.js
DEBUG [web-server]: serving (cached): /home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma-jasmine/lib/boot.js
DEBUG [web-server]: serving (cached): /home/buildbot/metaslave/builds/build/www/base/node_modules/guanlecoja/node_modules/karma-jasmine/lib/adapter.js
DEBUG [web-server]: serving (cached): /home/buildbot/metaslave/builds/build/www/base/buildbot_www/static/scripts.js
DEBUG [web-server]: serving (cached): /home/buildbot/metaslave/builds/build/www/base/buildbot_www/static/generatedfixtures.js
DEBUG [web-server]: serving (cached): /home/buildbot/metaslave/builds/build/www/base/buildbot_www/static/tests.js
PhantomJS 1.9.7 (Linux): Executed 0 of 37 SUCCESS (0 secs / 0 secs)
PhantomJS 1.9.7 (Linux): Executed 1 of 37 SUCCESS (0 secs / 0.067 secs)
PhantomJS 1.9.7 (Linux): Executed 2 of 37 SUCCESS (0 secs / 0.103 secs)
PhantomJS 1.9.7 (Linux): Executed 3 of 37 SUCCESS (0 secs / 0.126 secs)
PhantomJS 1.9.7 (Linux): Executed 4 of 37 SUCCESS (0 secs / 0.215 secs)
PhantomJS 1.9.7 (Linux): Executed 5 of 37 SUCCESS (0 secs / 0.274 secs)
PhantomJS 1.9.7 (Linux): Executed 6 of 37 SUCCESS (0 secs / 0.31 secs)
PhantomJS 1.9.7 (Linux): Executed 7 of 37 SUCCESS (0 secs / 0.339 secs)
PhantomJS 1.9.7 (Linux): Executed 8 of 37 SUCCESS (0 secs / 0.393 secs)
PhantomJS 1.9.7 (Linux): Executed 9 of 37 SUCCESS (0 secs / 0.437 secs)
PhantomJS 1.9.7 (Linux): Executed 10 of 37 SUCCESS (0 secs / 0.478 secs)
PhantomJS 1.9.7 (Linux): Executed 11 of 37 SUCCESS (0 secs / 0.544 secs)
PhantomJS 1.9.7 (Linux): Executed 12 of 37 SUCCESS (0 secs / 0.583 secs)
PhantomJS 1.9.7 (Linux): Executed 13 of 37 SUCCESS (0 secs / 0.621 secs)
PhantomJS 1.9.7 (Linux): Executed 14 of 37 SUCCESS (0 secs / 0.644 secs)
PhantomJS 1.9.7 (Linux): Executed 15 of 37 SUCCESS (0 secs / 0.7 secs)
PhantomJS 1.9.7 (Linux): Executed 16 of 37 SUCCESS (0 secs / 0.736 secs)
PhantomJS 1.9.7 (Linux): Executed 17 of 37 SUCCESS (0 secs / 0.782 secs)
PhantomJS 1.9.7 (Linux): Executed 18 of 37 SUCCESS (0 secs / 0.806 secs)
PhantomJS 1.9.7 (Linux): Executed 19 of 37 SUCCESS (0 secs / 0.831 secs)
PhantomJS 1.9.7 (Linux): Executed 20 of 37 SUCCESS (0 secs / 0.854 secs)
PhantomJS 1.9.7 (Linux): Executed 21 of 37 SUCCESS (0 secs / 0.888 secs)
PhantomJS 1.9.7 (Linux): Executed 22 of 37 SUCCESS (0 secs / 0.957 secs)
PhantomJS 1.9.7 (Linux): Executed 23 of 37 SUCCESS (0 secs / 0.98 secs)
PhantomJS 1.9.7 (Linux): Executed 24 of 37 SUCCESS (0 secs / 1.014 secs)
PhantomJS 1.9.7 (Linux): Executed 25 of 37 SUCCESS (0 secs / 1.044 secs)
PhantomJS 1.9.7 (Linux): Executed 26 of 37 SUCCESS (0 secs / 1.06 secs)
PhantomJS 1.9.7 (Linux): Executed 27 of 37 SUCCESS (0 secs / 1.077 secs)
PhantomJS 1.9.7 (Linux): Executed 28 of 37 SUCCESS (0 secs / 1.092 secs)
PhantomJS 1.9.7 (Linux): Executed 29 of 37 SUCCESS (0 secs / 1.106 secs)
PhantomJS 1.9.7 (Linux): Executed 30 of 37 SUCCESS (0 secs / 1.121 secs)
PhantomJS 1.9.7 (Linux): Executed 31 of 37 SUCCESS (0 secs / 1.139 secs)
PhantomJS 1.9.7 (Linux): Executed 32 of 37 SUCCESS (0 secs / 1.159 secs)
PhantomJS 1.9.7 (Linux): Executed 33 of 37 SUCCESS (0 secs / 1.176 secs)
PhantomJS 1.9.7 (Linux): Executed 34 of 37 SUCCESS (0 secs / 1.251 secs)
PhantomJS 1.9.7 (Linux): Executed 35 of 37 SUCCESS (0 secs / 1.286 secs)
PhantomJS 1.9.7 (Linux): Executed 36 of 37 SUCCESS (0 secs / 1.303 secs)
PhantomJS 1.9.7 (Linux): Executed 37 of 37 SUCCESS (0 secs / 1.318 secs)
PhantomJS 1.9.7 (Linux): Executed 37 of 37 SUCCESS (0.603 secs / 1.318 secs)
DEBUG [karma]: Run complete, exiting.
DEBUG [launcher]: Disconnecting all browsers
DEBUG [launcher]: Process PhantomJS exited with code 0
DEBUG [temp-dir]: Cleaning temp dir /tmp/karma-51672966
[01:54:53] Finished 'karma' after 6.52 s
[01:54:53] Finished 'default' after 1.05 min
[01:54:53] Starting 'prod'...
[01:54:53] Finished 'prod' after 50 μs
creating build
creating build/lib
creating build/lib/buildbot_www
creating build/lib/buildbot_www/static
copying buildbot_www/static/index.html -> build/lib/buildbot_www/static
copying buildbot_www/static/styles.css -> build/lib/buildbot_www/static
copying buildbot_www/static/tests.js -> build/lib/buildbot_www/static
copying buildbot_www/static/scripts.js -> build/lib/buildbot_www/static
copying buildbot_www/static/generatedfixtures.js -> build/lib/buildbot_www/static
copying buildbot_www/static/d3.min.js -> build/lib/buildbot_www/static
creating build/lib/buildbot_www/static/fonts
copying buildbot_www/static/fonts/fontawesome-webfont.ttf -> build/lib/buildbot_www/static/fonts
copying buildbot_www/static/fonts/fontawesome-webfont.woff -> build/lib/buildbot_www/static/fonts
copying buildbot_www/static/fonts/fontawesome-webfont.eot -> build/lib/buildbot_www/static/fonts
copying buildbot_www/static/fonts/FontAwesome.otf -> build/lib/buildbot_www/static/fonts
copying buildbot_www/static/fonts/fontawesome-webfont.svg -> build/lib/buildbot_www/static/fonts
creating build/lib/buildbot_www/static/img
copying buildbot_www/static/img/nobody.png -> build/lib/buildbot_www/static/img
copying buildbot_www/static/img/favicon.ico -> build/lib/buildbot_www/static/img
running build_py
creating build/lib.linux-x86_64-2.6
creating build/lib.linux-x86_64-2.6/buildbot_www
copying buildbot_www/__init__.py -> build/lib.linux-x86_64-2.6/buildbot_www
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/buildbot_www
copying build/lib.linux-x86_64-2.6/buildbot_www/__init__.py -> build/bdist.linux-x86_64/wheel/buildbot_www
running install_egg_info
running egg_info
creating buildbot_www.egg-info
writing buildbot_www.egg-info/PKG-INFO
writing top-level names to buildbot_www.egg-info/top_level.txt
writing dependency_links to buildbot_www.egg-info/dependency_links.txt
writing entry points to buildbot_www.egg-info/entry_points.txt
writing manifest file 'buildbot_www.egg-info/SOURCES.txt'
reading manifest file 'buildbot_www.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'buildbot_www.egg-info/SOURCES.txt'
Copying buildbot_www.egg-info to build/bdist.linux-x86_64/wheel/buildbot_www-latest-py2.6.egg-info
running install_scripts
creating build/bdist.linux-x86_64/wheel/buildbot_www-latest.dist-info/WHEEL

Running this on my system produces a package containing the appropriate css, js, etc. I'm not sure what the difference is.

Change History (15)

comment:1 Changed 5 years ago by dustin

  • Description modified (diff)
  • Owner set to dustin
  • Status changed from new to assigned

Er, that's the wrong log. The resulting package *is* empty, though!

dustin@cerf ~/tmp $ unzip -l buildbot_www-1latest-py2-none-any.whl
Archive:  buildbot_www-1latest-py2-none-any.whl
  Length     Date   Time    Name
 --------    ----   ----    ----
      847  08-31-14 21:44   buildbot_www/__init__.py
       10  09-01-14 01:54   buildbot_www-latest.dist-info/DESCRIPTION.rst
       59  09-01-14 01:54   buildbot_www-latest.dist-info/entry_points.txt
      449  09-01-14 01:54   buildbot_www-latest.dist-info/metadata.json
       13  09-01-14 01:54   buildbot_www-latest.dist-info/top_level.txt
       92  09-01-14 01:54   buildbot_www-latest.dist-info/WHEEL
      208  09-01-14 01:54   buildbot_www-latest.dist-info/METADATA
      709  09-01-14 01:54   buildbot_www-latest.dist-info/RECORD
 --------                   -------
     2387                   8 files

comment:2 Changed 5 years ago by dustin

Confirmed running by hand.

It looks like MANIFEST.in is being ignored. I've run into this on other projects, where it seems to be related to the setuptools version. Indeed, that's 0.6 on the buildslave and 5.7 on my host.

comment:3 Changed 5 years ago by dustin

That didn't help:

(sandbox)buildbot@ds0210:~/metaslave/builds/build/www/base$ ../../../sandbox/bin/python -c 'import setuptools; print setuptools.__version__'
5.7
(sandbox)buildbot@ds0210:~/metaslave/builds/build/www/base$ unzip -l dist/*.whl
Archive:  dist/buildbot_www-1latest-py2-none-any.whl
  Length      Date    Time    Name
---------  ---------- -----   ----
      847  2014-08-31 21:44   buildbot_www/__init__.py
       10  2014-09-01 03:03   buildbot_www-1latest.dist-info/DESCRIPTION.rst
       59  2014-09-01 03:03   buildbot_www-1latest.dist-info/entry_points.txt
      450  2014-09-01 03:03   buildbot_www-1latest.dist-info/metadata.json
       13  2014-09-01 03:03   buildbot_www-1latest.dist-info/top_level.txt
       92  2014-09-01 03:03   buildbot_www-1latest.dist-info/WHEEL
      209  2014-09-01 03:03   buildbot_www-1latest.dist-info/METADATA
      716  2014-09-01 03:03   buildbot_www-1latest.dist-info/RECORD
---------                     -------
     2396                     8 files

comment:4 Changed 5 years ago by dustin

Removing distutils doesn't help, either.

The build_js function is running -- that produces

copying buildbot_www/static/index.html -> build/lib/buildbot_www/static
..

What's not happening is the inclusion of the resulting files in the wheel file, during the install_lib command.

That command is invoking copy_tree('build/lib.linux-x86_64-2.6', 'build/bdist.linux-x86_64/wheel/'), which is a shame since all those files were copied to build/lib instead.

So, one fix may be to properly find the libdir that setuptools/distutils is using, and copy the files there directly.

comment:5 Changed 5 years ago by dustin

Nope, unfortunately that temporary install_lib is only set after bdist_wheel begins -- it calls reinitialize_command('install') and then sets its subdirs.

I suspect that the build_js part of buildbot_pkg can stay where it is, but that the copy_tree should be moved to an override of install_lib instead. So that's what I did:

https://github.com/buildbot/buildbot/pull/1215

comment:6 Changed 5 years ago by dustin

In trying to figure out what determines the install_lib, I thought perhaps it was 2.6's distutils. But running python setup.py build_wheel with my own system's python2.6 succeeded (it used the expected build/lib). So I don't know what component differs in the environment on the buildslave.

comment:7 Changed 5 years ago by sa2ajj

Last edited 5 years ago by sa2ajj (previous) (diff)

comment:8 Changed 5 years ago by sa2ajj

I did not try with wheels yet, but with eggs (and install command) the files are finally there with this small patch:

$ git diff setup.py
diff --git a/www/base/setup.py b/www/base/setup.py
index 91cc770..3ddbd2d 100644
--- a/www/base/setup.py
+++ b/www/base/setup.py
@@ -33,6 +33,14 @@ setup_www_plugin(
     url='http://buildbot.net/',
     license='GNU GPL',
     packages=['buildbot_www'],
+    package_data={
+        '': [
+            'VERSION',
+            'static/*',
+            'static/img/*',
+            'static/fonts/*',
+        ]
+    },
     entry_points="""
         [buildbot.www]
         base = buildbot_www:ep

I believe it's gonna be fine with wheel, but it's better safe than sorry :)

comment:9 Changed 5 years ago by sa2ajj

  • Owner changed from dustin to sa2ajj

Yes, it also works for wheels.

A PR is coming.

comment:11 Changed 5 years ago by tardyp

So if this coming from a bug of setuptools, I would prefer to require an updated version of setuptools, rather than trying to workaround them at the price of maintainability.

We already have a lot of monkey patching in buildbot, and workarounds other's bug. It looks pretty expensive to have us maintain all sorts of weird combination of system settings.

comment:12 Changed 5 years ago by sa2ajj

To the best of my knowledge, using package_data is the way to include data into the result.

MANIFEST.in is a remnant of old good days when there was a need to include some stuff into the source tarball.

Last edited 5 years ago by sa2ajj (previous) (diff)

comment:13 Changed 5 years ago by sa2ajj

A few comments.

The PR I submitted will not work since it's not exactly what I was testing.

The root cause for the failure Carlo described is because globbing in setuptools includes everything: both directories and files (see code).

While preparing the PR, I used my "custom" build_py, but it was based on the one available in distutils and the corresponding part there looks like:

            files.extend([fn for fn in filelist if fn not in files
                and os.path.isfile(fn)])

So considerying @tardyp's suggestion in PR, I'll update it and include a functionality to generate correct package_data content (files only).

I'll file a bug against setuptools.

Last edited 5 years ago by sa2ajj (previous) (diff)

comment:14 Changed 5 years ago by sa2ajj

Filed the bug.

comment:15 Changed 5 years ago by Mikhail Sobolev <mss@…>

  • Resolution set to fixed
  • Status changed from assigned to closed

In b33ae4076dfb5fbf3f469d8bda9d676977743f5a:

use package_data to bundle various data files

  • remove generation of MANIFEST.in (only helps for sdist command)
  • override setuptools' build_py class to filter out directories

Supersedes GH-1215
Fixes ticket:2883

Note: See TracTickets for help on using tickets.