commit/galaxy-central: 2 new changesets
2 new commits in galaxy-central: https://bitbucket.org/galaxy/galaxy-central/commits/ff5c0b7bb315/ Changeset: ff5c0b7bb315 User: jmchilton Date: 2014-12-14 04:04:00+00:00 Summary: Remove another incorrect lock statement. Affected #: 1 file diff -r 6db06b5b370ae0c955c66d6e2668aaf6260fe221 -r ff5c0b7bb3152804fa88454bee5f3c777a1b525e lib/galaxy/datatypes/registry.py --- a/lib/galaxy/datatypes/registry.py +++ b/lib/galaxy/datatypes/registry.py @@ -184,9 +184,8 @@ if ok: datatype_class = None if proprietary_path and proprietary_datatype_module and datatype_class_name: - # We need to change the value of sys.path, so do it in a way that is thread-safe. - lock = threading.Lock() - lock.acquire( True ) + # TODO: previously comments suggested this needs to be locked because it modifys + # the sys.path, probably true but the previous lock wasn't doing that. try: imported_module = __import_module( proprietary_path, proprietary_datatype_module, @@ -198,8 +197,6 @@ except Exception, e: full_path = os.path.join( proprietary_path, proprietary_datatype_module ) self.log.debug( "Exception importing proprietary code file %s: %s" % ( str( full_path ), str( e ) ) ) - finally: - lock.release() # Either the above exception was thrown because the proprietary_datatype_module is not derived from a class # in the repository, or we are loading Galaxy's datatypes. In either case we'll look in the registry. if datatype_class is None: https://bitbucket.org/galaxy/galaxy-central/commits/1422966f1ca8/ Changeset: 1422966f1ca8 User: jmchilton Date: 2014-12-14 04:04:00+00:00 Summary: Fix bug in registry.py requiring the odd relative import of locally defined data type modules. So many times I helped people get stuff working by telling them to stick the import in this file without ever understanding why the import needed to be there, the answer would appear to be - because there was a bug. Kanwei Li fixed the same bug in the sniffer code in d7c529f. Fixing this bug should allow dynamically injecting datatypes (outside context of tool shed) without modifying Galaxy's source - important for OS packages and planemo. Affected #: 1 file diff -r ff5c0b7bb3152804fa88454bee5f3c777a1b525e -r 1422966f1ca88472b8685015f5a8cdd3dd0f1db9 lib/galaxy/datatypes/registry.py --- a/lib/galaxy/datatypes/registry.py +++ b/lib/galaxy/datatypes/registry.py @@ -203,7 +203,7 @@ try: # The datatype class name must be contained in one of the datatype modules in the Galaxy distribution. fields = datatype_module.split( '.' ) - module = __import__( fields.pop( 0 ) ) + module = __import__( datatype_module ) for mod in fields: module = getattr( module, mod ) datatype_class = getattr( module, datatype_class_name ) Repository URL: https://bitbucket.org/galaxy/galaxy-central/ -- This is a commit notification from bitbucket.org. You are receiving this because you have the service enabled, addressing the recipient of this email.
participants (1)
-
commits-noreply@bitbucket.org