This will make my next patch simpler.
Details
Details
Diff Detail
Diff Detail
- Repository
- rHG Mercurial
- Lint
Automatic diff as part of commit; lint not applicable. - Unit
Automatic diff as part of commit; unit tests not applicable.
This will make my next patch simpler.
| Automatic diff as part of commit; lint not applicable. |
| Automatic diff as part of commit; unit tests not applicable. |
| Path | Packages | |||
|---|---|---|---|---|
| M | hgext/fsmonitor/__init__.py (2 lines) | |||
| M | hgext/fsmonitor/watchmanclient.py (8 lines) |
| if repo_has_depth_one_nested_repo(repo): | if repo_has_depth_one_nested_repo(repo): | ||||
| return | return | ||||
| fsmonitorstate = state.state(repo) | fsmonitorstate = state.state(repo) | ||||
| if fsmonitorstate.mode == 'off': | if fsmonitorstate.mode == 'off': | ||||
| return | return | ||||
| try: | try: | ||||
| client = watchmanclient.client(repo) | client = watchmanclient.client(repo.ui, repo._root) | ||||
| except Exception as ex: | except Exception as ex: | ||||
| _handleunavailable(ui, fsmonitorstate, ex) | _handleunavailable(ui, fsmonitorstate, ex) | ||||
| return | return | ||||
| repo._fsmonitorstate = fsmonitorstate | repo._fsmonitorstate = fsmonitorstate | ||||
| repo._watchmanclient = client | repo._watchmanclient = client | ||||
| dirstate, cached = localrepo.isfilecached(repo, 'dirstate') | dirstate, cached = localrepo.isfilecached(repo, 'dirstate') | ||||
| return 'Watchman unavailable: %s' % self.msg | return 'Watchman unavailable: %s' % self.msg | ||||
| class WatchmanNoRoot(Unavailable): | class WatchmanNoRoot(Unavailable): | ||||
| def __init__(self, root, msg): | def __init__(self, root, msg): | ||||
| self.root = root | self.root = root | ||||
| super(WatchmanNoRoot, self).__init__(msg) | super(WatchmanNoRoot, self).__init__(msg) | ||||
| class client(object): | class client(object): | ||||
| def __init__(self, repo, timeout=1.0): | def __init__(self, ui, root, timeout=1.0): | ||||
| err = None | err = None | ||||
| if not self._user: | if not self._user: | ||||
| err = "couldn't get user" | err = "couldn't get user" | ||||
| warn = True | warn = True | ||||
| if self._user in repo.ui.configlist('fsmonitor', 'blacklistusers'): | if self._user in ui.configlist('fsmonitor', 'blacklistusers'): | ||||
| err = 'user %s in blacklist' % self._user | err = 'user %s in blacklist' % self._user | ||||
| warn = False | warn = False | ||||
| if err: | if err: | ||||
| raise Unavailable(err, warn) | raise Unavailable(err, warn) | ||||
| self._timeout = timeout | self._timeout = timeout | ||||
| self._watchmanclient = None | self._watchmanclient = None | ||||
| self._root = repo.root | self._root = root | ||||
| self._ui = repo.ui | self._ui = ui | ||||
| self._firsttime = True | self._firsttime = True | ||||
| def settimeout(self, timeout): | def settimeout(self, timeout): | ||||
| self._timeout = timeout | self._timeout = timeout | ||||
| if self._watchmanclient is not None: | if self._watchmanclient is not None: | ||||
| self._watchmanclient.setTimeout(timeout) | self._watchmanclient.setTimeout(timeout) | ||||
| def getcurrentclock(self): | def getcurrentclock(self): | ||||