Details
Details
- Reviewers
durin42 - Group Reviewers
hg-reviewers - Commits
- rHG9365b8cb90e0: histedit: use context manager for locks
Diff Detail
Diff Detail
- Repository
- rHG Mercurial
- Lint
Lint Skipped - Unit
Unit Tests Skipped
( )
| durin42 |
| hg-reviewers |
| Lint Skipped |
| Unit Tests Skipped |
| Path | Packages | |||
|---|---|---|---|---|
| M | hgext/histedit.py (10 lines) |
| Commit | Parents | Author | Summary | Date |
|---|---|---|---|---|
| Martin von Zweigbergk | Jan 9 2019, 6:34 PM |
| Status | Author | Revision | |
|---|---|---|---|
| Closed | martinvonz | ||
| Closed | martinvonz |
| context, | context, | ||||
| copies, | copies, | ||||
| destutil, | destutil, | ||||
| discovery, | discovery, | ||||
| error, | error, | ||||
| exchange, | exchange, | ||||
| extensions, | extensions, | ||||
| hg, | hg, | ||||
| lock, | |||||
| logcmdutil, | logcmdutil, | ||||
| merge as mergemod, | merge as mergemod, | ||||
| mergeutil, | mergeutil, | ||||
| node, | node, | ||||
| obsolete, | obsolete, | ||||
| pycompat, | pycompat, | ||||
| registrar, | registrar, | ||||
| repair, | repair, | ||||
| scmutil, | scmutil, | ||||
| state as statemod, | state as statemod, | ||||
| util, | util, | ||||
| ) | ) | ||||
| from mercurial.utils import ( | from mercurial.utils import ( | ||||
| stringutil, | stringutil, | ||||
| ) | ) | ||||
| pickle = util.pickle | pickle = util.pickle | ||||
| release = lock.release | |||||
| cmdtable = {} | cmdtable = {} | ||||
| command = registrar.command(cmdtable) | command = registrar.command(cmdtable) | ||||
| configtable = {} | configtable = {} | ||||
| configitem = registrar.configitem(configtable) | configitem = registrar.configitem(configtable) | ||||
| configitem('experimental', 'histedit.autoverb', | configitem('experimental', 'histedit.autoverb', | ||||
| default=False, | default=False, | ||||
| ) | ) | ||||
| conflicts). | conflicts). | ||||
| """ | """ | ||||
| if ui.interface('histedit') == 'curses': | if ui.interface('histedit') == 'curses': | ||||
| return _chistedit(ui, repo, *freeargs, **opts) | return _chistedit(ui, repo, *freeargs, **opts) | ||||
| return _texthistedit(ui, repo, *freeargs, **opts) | return _texthistedit(ui, repo, *freeargs, **opts) | ||||
| def _texthistedit(ui, repo, *freeargs, **opts): | def _texthistedit(ui, repo, *freeargs, **opts): | ||||
| state = histeditstate(repo) | state = histeditstate(repo) | ||||
| try: | with repo.wlock() as wlock, repo.lock() as lock: | ||||
| state.wlock = repo.wlock() | state.wlock = wlock | ||||
| state.lock = repo.lock() | state.lock = lock | ||||
| _histedit(ui, repo, state, *freeargs, **opts) | _histedit(ui, repo, state, *freeargs, **opts) | ||||
| finally: | |||||
| release(state.lock, state.wlock) | |||||
| goalcontinue = 'continue' | goalcontinue = 'continue' | ||||
| goalabort = 'abort' | goalabort = 'abort' | ||||
| goaleditplan = 'edit-plan' | goaleditplan = 'edit-plan' | ||||
| goalnew = 'new' | goalnew = 'new' | ||||
| def _getgoal(opts): | def _getgoal(opts): | ||||
| if opts.get('continue'): | if opts.get('continue'): | ||||