Marcin Kuzminski  committed dd240b2

Added optional flag to make_ui to not clean sqlalchemy Session.
Don't clear sqlalchemy session when using make_ui in admin repo form

  • Participants
  • Parent commits 4c71667

Comments (0)

Files changed (2)

File rhodecode/lib/

                 'ui', 'web', ]
-def make_ui(read_from='file', path=None, checkpaths=True):
+def make_ui(read_from='file', path=None, checkpaths=True, clear_session=True):
     A function that will read python rc files or database
     and make an mercurial ui object from read options
                 # force set push_ssl requirement to False, rhodecode
                 # handles that
                 baseui.setconfig(ui_.ui_section, ui_.ui_key, False)
-        meta.Session.remove()
+        if clear_session:
+            meta.Session.remove()
     return baseui

File rhodecode/model/

                 ## initially check if it's at least the proper URL
                 ## or does it pass basic auth
-                httppeer(make_ui('db'), url)._capabilities()
+                httppeer(ui, url)._capabilities()
             elif url.startswith('svn+http'):
                 from hgsubversion.svnrepo import svnremoterepo
-                svnremoterepo(make_ui('db'), url).capabilities
+                svnremoterepo(ui, url).capabilities
             elif url.startswith('git+http'):
                 raise NotImplementedError()
-                    url_handler(repo_type, url, make_ui('db'))
+                    url_handler(repo_type, url, make_ui('db', clear_session=False))
                 except Exception:
                     log.exception('Url validation failed')
                     msg = M(self, 'clone_uri')