Xpra: Ticket #529: not including all the modules breaks the osx build in all sorts of "interesting" ways

Since r5716, we don't include all the modules by default. This is the only sane way of avoiding the codecs loading errors on startup.

The problem is that it completely breaks the OSX build which relied heavily on everything being included... sigh.

Fri, 07 Mar 2014 14:08:18 GMT - Antoine Martin: owner changed

After many (completely wasted) hours tweaking, it seems that maybe my whole build system is screwed. I get an image, but none of the Cython modules work (no video encodings, no rencode, etc..)

Even reverting to r5000 or r5500 doesn't fix my build problem :(

Please confirm that your builds are still OK.

Mon, 10 Mar 2014 18:11:50 GMT - alas:

Our osx r5711 build is good, our osx r5722 build is broken.

xpra client version 0.12.0
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "xpra/scripts/main.pyc", line 74, in main
  File "xpra/scripts/main.pyc", line 611, in run_mode
  File "xpra/scripts/main.pyc", line 928, in run_client
  File "xpra/scripts/main.pyc", line 1002, in make_client
  File "xpra/client/gtk2/client.pyc", line 25, in <module>
  File "xpra/client/gtk_base/gtk_client_base.pyc", line 23, in <module>
  File "xpra/client/ui_client_base.pyc", line 24, in <module>
  File "xpra/client/client_tray.pyc", line 10, in <module>
  File "xpra/client/gtk_base/gtk_window_backing_base.pyc", line 11, in <module>
  File "xpra/client/window_backing_base.pyc", line 16, in <module>
ImportError: No module named codecs.codec_constants

Same error you're getting, I assume?

Tue, 11 Mar 2014 02:21:52 GMT - Antoine Martin:

What about latest? (r5724) I'm slightly ahead of that, but it should be ok on OSX (broken on win32..).

Wed, 12 Mar 2014 02:46:34 GMT - Smo:

Here is the error i'm seeing. Seems to compile fine.

running build_scripts
creating build/bdist.macosx-10.6-i386/scripts-2.7
copying and adjusting scripts/xpra -> build/bdist.macosx-10.6-i386/scripts-2.7
copying and adjusting scripts/xpra_launcher -> build/bdist.macosx-10.6-i386/scripts-2.7
changing mode of build/bdist.macosx-10.6-i386/scripts-2.7/xpra from 644 to 755
changing mode of build/bdist.macosx-10.6-i386/scripts-2.7/xpra_launcher from 644 to 755
creating /Users/user1/xpra-src/trunk/src/build/bdist.macosx-10.6-i386/python2.7-standalone
creating /Users/user1/xpra-src/trunk/src/build/bdist.macosx-10.6-i386/python2.7-standalone/app
creating /Users/user1/xpra-src/trunk/src/build/bdist.macosx-10.6-i386/python2.7-standalone/app/collect
creating /Users/user1/xpra-src/trunk/src/build/bdist.macosx-10.6-i386/python2.7-standalone/app/temp
creating build/bdist.macosx-10.6-i386/python2.7-standalone/app/lib-dynload
creating build/bdist.macosx-10.6-i386/python2.7-standalone/app/Frameworks
error: You must specify either app or plugin
ERROR: py2app failed

Wed, 12 Mar 2014 03:23:49 GMT - Antoine Martin:

The logging just before that should look like this:

* name=xpra
* author=Antoine Martin
* author_email=antoine@devloop.org.uk
* app=['osxxpra/osx_xpra_launcher.py']
* download_url=http://xpra.org/src/
* url=http://xpra.org/
* version=0.12.0
* data_files=[('share/man/man1', ['../src/man/xpra.1', '../src/man/xpra_launcher.1']), ('share/xpra', ['../src/README', '../src/COPYING']), ('share/xpra/icons', ['../src/icons/browse.png', '../src/icons/clipboard.png', '../src/icons/close.png', '../src/icons/compressed.png', '../src/icons/connect.png', '../src/icons/encoding.png', '../src/icons/features.png', '../src/icons/information.png', '../src/icons/keyboard.png', '../src/icons/microphone.png', '../src/icons/numlock.png', '../src/icons/opengl.png', '../src/icons/package.png', '../src/icons/quit.png', '../src/icons/raise.png', '../src/icons/retry.png', '../src/icons/slider.png', '../src/icons/speaker.png', '../src/icons/speed.png', '../src/icons/statistics.png', '../src/icons/ticked-small.png', '../src/icons/unticked-small.png', '../src/icons/xpra.png']), ('share/applications', ['../src/xdg/xpra_launcher.desktop']), ('share/applications', ['../src/xdg/xpra.desktop']), ('share/icons', ['../src/xdg/xpra.png']), ('share/xpra/webm', ['../src/xpra/codecs/webm/LICENSE'])]
* packages=['osxxpra']
* long_description='screen for X' -- a tool to detach/reattach running X programs
* description=Xpra: 'screen for X' utility
py2app options:
frameworks : ['CoreFoundation', 'Foundation', 'AppKit']
packages : ['osxxpra']
iconfile : ./xpra.icns
strip : False
site_packages : False
includes : ['glib', 'gio', 'cairo', 'pango', 'pangocairo', 'atk', 'gobject', 'gtk.keysyms', 'osxxpra', 'hashlib', 'PIL']
plist : {'CFBundleDocumentTypes': [{'CFBundleTypeName': 'Xpra Session Config File', 'CFBundleTypeRole': 'Viewer', 'CFBundleName': 'Xpra', 'CFBundleTypeExtensions': ['Xpra']}]}
argv_emulation : True

And you can see that app is defined in setup_options.

Wed, 12 Mar 2014 05:37:15 GMT - Antoine Martin:

The problem above was fixed in r5739.

More improvements for builds on all platforms in r5740 + r5742. The benefit of those changes is that we can now include just the modules we care about, and no more than that.

All builds now use the same file, and almost the same code paths.

Please verify that all the platforms you care about still build OK.

Tue, 18 Mar 2014 19:54:02 GMT - Smo:

Win32 - Builds and Packages Fedora 19, 20 Builds and Packages OSX 10.5.8, 10.6.8 Build and Packages

Looks good!

Wed, 19 Mar 2014 01:08:47 GMT - Antoine Martin: status changed; resolution set


Sat, 23 Jan 2021 04:58:28 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/529