eric6/Plugins/VcsPlugins/vcsMercurial/hg.py

changeset 7785
9978016560ec
parent 7759
51aa6c6b66f7
child 7790
32b8db5a1fb4
equal deleted inserted replaced
7784:3257703e10c5 7785:9978016560ec
1706 error) 1706 error)
1707 return 1707 return
1708 name2 = "{0} (rev. {1})".format(name, rev2) 1708 name2 = "{0} (rev. {1})".format(name, rev2)
1709 else: 1709 else:
1710 try: 1710 try:
1711 f1 = open(name, "r", encoding="utf-8") 1711 with open(name, "r", encoding="utf-8") as f1:
1712 output2 = f1.read() 1712 output2 = f1.read()
1713 f1.close()
1714 name2 = "{0} (Work)".format(name) 1713 name2 = "{0} (Work)".format(name)
1715 except IOError: 1714 except IOError:
1716 E5MessageBox.critical( 1715 E5MessageBox.critical(
1717 self.__ui, 1716 self.__ui,
1718 self.tr("Mercurial Side-by-Side Difference"), 1717 self.tr("Mercurial Side-by-Side Difference"),
2138 if withLargefiles: 2137 if withLargefiles:
2139 lfMinSize, lfPattern = dlg.getLargefilesData() 2138 lfMinSize, lfPattern = dlg.getLargefilesData()
2140 else: 2139 else:
2141 createContents = False 2140 createContents = False
2142 try: 2141 try:
2143 cfg = open(cfgFile, "w") 2142 with open(cfgFile, "w") as cfg:
2144 if createContents: 2143 if createContents:
2145 # write the data entered 2144 # write the data entered
2146 cfg.write("[paths]\n") 2145 cfg.write("[paths]\n")
2147 if defaultUrl: 2146 if defaultUrl:
2148 cfg.write("default = {0}\n".format(defaultUrl)) 2147 cfg.write("default = {0}\n".format(defaultUrl))
2149 if defaultPushUrl: 2148 if defaultPushUrl:
2150 cfg.write("default-push = {0}\n".format( 2149 cfg.write("default-push = {0}\n".format(
2151 defaultPushUrl)) 2150 defaultPushUrl))
2152 if ( 2151 if (
2153 withLargefiles and 2152 withLargefiles and
2154 (lfMinSize, lfPattern) != (None, None) 2153 (lfMinSize, lfPattern) != (None, None)
2155 ): 2154 ):
2156 cfg.write("\n[largefiles]\n") 2155 cfg.write("\n[largefiles]\n")
2157 if lfMinSize is not None: 2156 if lfMinSize is not None:
2158 cfg.write("minsize = {0}\n".format(lfMinSize)) 2157 cfg.write("minsize = {0}\n".format(lfMinSize))
2159 if lfPattern is not None: 2158 if lfPattern is not None:
2160 cfg.write("patterns =\n") 2159 cfg.write("patterns =\n")
2161 cfg.write(" {0}\n".format( 2160 cfg.write(" {0}\n".format(
2162 "\n ".join(lfPattern))) 2161 "\n ".join(lfPattern)))
2163 cfg.close()
2164 self.__monitorRepoIniFile(repodir) 2162 self.__monitorRepoIniFile(repodir)
2165 self.__iniFileChanged(cfgFile) 2163 self.__iniFileChanged(cfgFile)
2166 except IOError: 2164 except IOError:
2167 pass 2165 pass
2168 self.repoEditor = MiniEditor(cfgFile, "Properties") 2166 self.repoEditor = MiniEditor(cfgFile, "Properties")
2323 else: 2321 else:
2324 res = True 2322 res = True
2325 if res: 2323 if res:
2326 try: 2324 try:
2327 # create a .hgignore file 2325 # create a .hgignore file
2328 ignore = open(ignoreName, "w") 2326 with open(ignoreName, "w") as ignore:
2329 ignore.write("\n".join(ignorePatterns)) 2327 ignore.write("\n".join(ignorePatterns))
2330 ignore.write("\n") 2328 ignore.write("\n")
2331 ignore.close()
2332 status = True 2329 status = True
2333 except IOError: 2330 except IOError:
2334 status = False 2331 status = False
2335 2332
2336 if status and autoAdd: 2333 if status and autoAdd:
3060 contents = [] 3057 contents = []
3061 if os.path.isfile(hgsub): 3058 if os.path.isfile(hgsub):
3062 # file exists; check, if such an entry exists already 3059 # file exists; check, if such an entry exists already
3063 needsAdd = False 3060 needsAdd = False
3064 try: 3061 try:
3065 f = open(hgsub, "r") 3062 with open(hgsub, "r") as f:
3066 contents = f.readlines() 3063 contents = f.readlines()
3067 f.close()
3068 except IOError as err: 3064 except IOError as err:
3069 E5MessageBox.critical( 3065 E5MessageBox.critical(
3070 self.__ui, 3066 self.__ui,
3071 self.tr("Add Sub-repository"), 3067 self.tr("Add Sub-repository"),
3072 self.tr( 3068 self.tr(
3089 3085
3090 if contents and not contents[-1].endswith("\n"): 3086 if contents and not contents[-1].endswith("\n"):
3091 contents[-1] = contents[-1] + "\n" 3087 contents[-1] = contents[-1] + "\n"
3092 contents.append(entry) 3088 contents.append(entry)
3093 try: 3089 try:
3094 f = open(hgsub, "w") 3090 with open(hgsub, "w") as f:
3095 f.writelines(contents) 3091 f.writelines(contents)
3096 f.close()
3097 except IOError as err: 3092 except IOError as err:
3098 E5MessageBox.critical( 3093 E5MessageBox.critical(
3099 self.__ui, 3094 self.__ui,
3100 self.tr("Add Sub-repository"), 3095 self.tr("Add Sub-repository"),
3101 self.tr( 3096 self.tr(
3122 self.tr("""<p>The sub-repositories file .hgsub does not""" 3117 self.tr("""<p>The sub-repositories file .hgsub does not"""
3123 """ exist. Aborting...</p>""")) 3118 """ exist. Aborting...</p>"""))
3124 return 3119 return
3125 3120
3126 try: 3121 try:
3127 f = open(hgsub, "r") 3122 with open(hgsub, "r") as f:
3128 subrepositories = [line.strip() for line in f.readlines()] 3123 subrepositories = [line.strip() for line in f.readlines()]
3129 f.close()
3130 except IOError as err: 3124 except IOError as err:
3131 E5MessageBox.critical( 3125 E5MessageBox.critical(
3132 self.__ui, 3126 self.__ui,
3133 self.tr("Remove Sub-repositories"), 3127 self.tr("Remove Sub-repositories"),
3134 self.tr("""<p>The sub-repositories file .hgsub could not""" 3128 self.tr("""<p>The sub-repositories file .hgsub could not"""
3142 dlg = HgRemoveSubrepositoriesDialog(subrepositories) 3136 dlg = HgRemoveSubrepositoriesDialog(subrepositories)
3143 if dlg.exec() == QDialog.Accepted: 3137 if dlg.exec() == QDialog.Accepted:
3144 subrepositories, removedSubrepos, deleteSubrepos = dlg.getData() 3138 subrepositories, removedSubrepos, deleteSubrepos = dlg.getData()
3145 contents = "\n".join(subrepositories) + "\n" 3139 contents = "\n".join(subrepositories) + "\n"
3146 try: 3140 try:
3147 f = open(hgsub, "w") 3141 with open(hgsub, "w") as f:
3148 f.write(contents) 3142 f.write(contents)
3149 f.close()
3150 except IOError as err: 3143 except IOError as err:
3151 E5MessageBox.critical( 3144 E5MessageBox.critical(
3152 self.__ui, 3145 self.__ui,
3153 self.tr("Remove Sub-repositories"), 3146 self.tr("Remove Sub-repositories"),
3154 self.tr( 3147 self.tr(

eric ide

mercurial