by
Changes to 39 files · Browse files at 6f8ea4eab7f0 Showing diff from parent aff0628998c0 868ccf195869 Diff from another changeset...
@@ -51,7 +51,7 @@ # The short X.Y version.
version = '2.0'
# The full version, including alpha/beta/rc tags.
-release = '2.0.0'
+release = '2.0.3'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
|
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
This file's diff was not loaded because this changeset is very large. Load changes Loading... |
@@ -132,6 +132,7 @@
def setupUi(self, o):
self.editToolbar = QToolBar(self)
+ self.editToolbar.setContextMenuPolicy(Qt.PreventContextMenu)
self.addToolBar(Qt.ToolBarArea(Qt.TopToolBarArea), self.editToolbar)
self.actionClose = QAction(self, shortcut=QKeySequence.Close)
self.actionReload = QAction(self, shortcut=QKeySequence.Refresh)
@@ -264,6 +265,7 @@
def setupUi(self, o):
self.editToolbar = QToolBar(self)
+ self.editToolbar.setContextMenuPolicy(Qt.PreventContextMenu)
self.addToolBar(Qt.ToolBarArea(Qt.TopToolBarArea), self.editToolbar)
self.actionClose = QAction(self, shortcut=QKeySequence.Close)
self.actionReload = QAction(self, shortcut=QKeySequence.Refresh)
|
@@ -270,6 +270,7 @@ sw.outgoingNodes.connect(self.setOutgoingNodes)
sw.showMessage.connect(self.showMessage)
sw.incomingBundle.connect(self.setBundle)
+ sw.pullCompleted.connect(self.onPullCompleted)
sw.refreshTargets(self.rev)
return sw
@@ -312,24 +313,35 @@ self.revDetailsWidget.setRepo(self.repo)
self.manifestDemand.forward('setRepo', self.repo)
+ def onPullCompleted(self):
+ if self.bundle:
+ # create a new bundlerepo instance; revision numbers may change
+ brepo = thgrepo.repository(self.repo.ui, self.repo.root,
+ bundle=self.bundle)
+ repo = thgrepo.repository(self.repo.ui, self.repo.root)
+ if len(repo) == len(brepo):
+ # all bundle revisions pulled
+ self.clearBundle()
+ self.reload()
+ else:
+ # refresh revset with remaining revisions
+ self.revset = range(len(repo), len(brepo))
+ self.repo = brepo
+ self.repoview.setRepo(brepo)
+ self.revDetailsWidget.setRepo(brepo)
+ self.manifestDemand.forward('setRepo', brepo)
+ self.reload()
+ self.repomodel.revset = self.revset
+ self.repoview.resetBrowseHistory(self.revset)
+ self._reload_rev = self.revset[0]
+
def acceptBundle(self):
self.taskTabsWidget.setCurrentIndex(self.syncTabIndex)
self.syncDemand.pullBundle(self.bundle, None)
- self.clearBundle()
def pullBundleToRev(self):
self.taskTabsWidget.setCurrentIndex(self.syncTabIndex)
self.syncDemand.pullBundle(self.bundle, self.rev)
- removed = [self.repo[self.rev]]
- while removed:
- ctx = removed.pop()
- if ctx.rev() in self.revset:
- self.revset.remove(ctx.rev())
- removed.extend(ctx.parents())
- self.repomodel.revset = self.revset
- if not self.revset:
- self.clearBundle()
- self.refresh()
def rejectBundle(self):
self.clearBundle()
|
@@ -56,6 +56,7 @@ outgoingNodes = pyqtSignal(object)
incomingBundle = pyqtSignal(QString)
showMessage = pyqtSignal(unicode)
+ pullCompleted = pyqtSignal()
output = pyqtSignal(QString, QString)
progress = pyqtSignal(QString, object, QString, QString, object)
@@ -721,6 +722,7 @@ self.showMessage.emit(_('Pull from %s completed') % urlu)
else:
self.showMessage.emit(_('Pull from %s aborted, ret %d') % (urlu, ret))
+ self.pullCompleted.emit()
# handle file conflicts during rebase
if self.opts.get('rebase'):
if os.path.exists(self.repo.join('rebasestate')):
@@ -755,9 +757,14 @@ urlu = hglib.tounicode(url)
self.showMessage.emit(_('Finding outgoing changesets to %s...') % urlu)
if self.embedded and not self.opts.get('subrepos'):
+ def verifyhash(hash):
+ if len(hash) != 40:
+ return False
+ bad = [c for c in hash if c not in '0123456789abcdef']
+ return not bad
def outputnodes(ret, data):
if ret == 0:
- nodes = [n for n in data.splitlines() if len(n) == 40]
+ nodes = [n for n in data.splitlines() if verifyhash(n)]
if nodes:
self.outgoingNodes.emit(nodes)
self.showMessage.emit(_('%d outgoing changesets to %s') %
|
@@ -18,7 +18,7 @@ <?define helpFolder.guid = {4B71277D-72E9-48F2-8A06-C706E9C3B4C0} ?>
<!-- i18n.wxs -->
- <?define i18nFolder.guid = {F88D7B07-D61C-4EE8-9BE0-B8CB6E8A52DB} ?>
+ <?define i18nFolder.guid = {5191051C-742F-470E-AD76-D83C2F1EDE4E} ?>
<!-- templates.wxs -->
<?define templates.root.guid = {6A82D0BF-6878-42F3-92FD-AB39F7A97EEF} ?>
@@ -43,7 +43,7 @@ <?define Icons.guid = {34369923-9610-461C-9FB3-26CA3A139836} ?>
<!-- thg-i18n.wxs -->
- <?define thgI18nFolder.guid = {55DC742A-1E22-4A6C-B090-FD1E91AB8646} ?>
+ <?define thgI18nFolder.guid = {BC570E20-FB79-49B8-AFEF-B4BB867EE60F} ?>
<!-- tortoisehg.wxs -->
<?define ProductUpgradeCode = {838657CF-C9EC-452D-800D-0E70FC021D0A} ?>
|
@@ -5,7 +5,7 @@ <?include defines.wxi ?>
<?define hg_po_langs =
- da;de;el;fr;it;ja;pt_BR;sv;zh_CN;zh_TW
+ da;de;el;fr;it;ja;pt_BR;ro;sv;zh_CN;zh_TW
?>
<Fragment>
|
@@ -5,7 +5,7 @@ <?include defines.wxi ?>
<?define thg_po_langs =
- cs;da;de;en_GB;es;fa;fr;he;hr;hu;it;ja;ko;nl;nn;oc;pl;pt;pt_BR;ru;sv;tr;uk;zh_CN;zh_TW
+ cs;da;de;en_AU;en_GB;es;et;fa;fr;he;hr;hu;it;ja;ko;nb;nl;nn;oc;pl;pt;pt_BR;ru;sr;sv;tr;uk;zh_CN;zh_TW
?>
<!-- lang 'ca' is used for key path -->
|
Loading...