#1392 closed defect (worksforme)
moduleset error horror
Reported by: | Antoine Martin | Owned by: | Antoine Martin |
---|---|---|---|
Priority: | critical | Milestone: | 2.0 |
Component: | packaging | Version: | trunk |
Keywords: | osx | Cc: |
Description
It started with some updates from trunk that should be applied to v1.0.x (see #840):
- r14657: libpng
- r14658 + r14661: mpfr
- r14659: opus (+r14662 which is buggy)
- r14663: switch all moduleset links to "tags/v1.0.x"
jhbuild was then failing with the totally unhelpful:
jhbuild update: failed to parse /Users/osx/Source/jhbuild/modulesets/http:/xpra.org/svn/Xpra/tags/v1.0.x/osx/jhbuild/xpra.modules: \ [Errno 2] No such file or directory: \ u'/Users/osx/Source/jhbuild/modulesets/http:/xpra.org/svn/Xpra/tags/v1.0.x/osx/jhbuild/xpra.modules'
So r14664 moved "xpra.modules" to "modulesets-stable", which allowed me to continue (after downloading it into "~/Source/jhbuild/modulesets" by hand).
This uncovered an error in the r14662 changeset, fixed in r14665.
r14666 moved "xpra.modules" back to where it was (a URL link) but unfortunately it still fails with the same error.
Whatever the problem is, it's really not obvious to me.
Change History (6)
comment:1 Changed 4 years ago by
Owner: | changed from Antoine Martin to Smo |
---|
comment:2 Changed 4 years ago by
Owner: | changed from Smo to Antoine Martin |
---|
Okay I've updated the other ticket.
comment:3 Changed 4 years ago by
Resolution: | → worksforme |
---|---|
Status: | new → closed |
Rebuild from scratch with the updates from ticket:1404#comment:9 worked OK.
Closing.
comment:4 Changed 4 years ago by
Hit it again after r15394 which had some small mistakes in it:
Tried moving things around (r15397), no help.
Then digging into the jhbuild code in ~/Source/jhbuild/jhbuild//moduleset.py
, I find that they're swallowing the exception details (PITA), so I replaced the exception code with this:
def _parse_module_set(config, uri): try: filename = httpcache.load(uri, nonetwork=config.nonetwork, age=0) except Exception as e: raise FatalError(_('could not download %s: %s') % (uri, e)) filename = os.path.normpath(filename) try: document = xml.dom.minidom.parse(filename) except IOError as e: import traceback traceback.print_stack() #raise FatalError(_('failed to parse %s: %s') % (filename, e)) raise except xml.parsers.expat.ExpatError as e: #raise FatalError(_('failed to parse %s: %s') % (uri, e)) import traceback traceback.print_stack() raise
And got the details needed instead of the utterly useless original exception message. Immediately found the problem, fixed in r15398. (could also have been found by opening the file with a validating XML parser)
Why on earth isn't this the default??
comment:6 Changed 3 months ago by
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1392
@smo: please advise on which updates from trunk (#1404) are applicable to the 1.x branch.
Then I'll give this another go, copying the module files by hand if needed.