Skip to content

Commit 9948d0e

Browse files
committed
refactor: Convert percent formatted strings to f-strings
find . -name '*.py' -exec pyupgrade --py39-plus {} + find . -name '*.py' -exec pyupgrade --py39-plus {} +
1 parent 79b85ba commit 9948d0e

18 files changed

Lines changed: 54 additions & 52 deletions

src/WebAppDIRAC/Core/App.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ def bootstrap(self):
146146
message += "The following protocols are provided: %s" % str(aviableProtocols)
147147
gLogger.warn(message)
148148

149-
self.log.debug(" - %s" % "\n - ".join(["%s = %s" % (k, sslops[k]) for k in sslops]))
149+
self.log.debug(" - %s" % "\n - ".join([f"{k} = {sslops[k]}" for k in sslops]))
150150
srv = tornado.httpserver.HTTPServer(self.__app, ssl_options=sslops, xheaders=True)
151151
port = Conf.HTTPSPort()
152152
srv.listen(port)
@@ -164,7 +164,7 @@ def run(self):
164164
bu = Conf.rootURL().strip("/")
165165
urls = []
166166
for proto, port in self.__servers:
167-
urls.append("%s://0.0.0.0:%s/%s/" % (proto, port, bu))
167+
urls.append(f"{proto}://0.0.0.0:{port}/{bu}/")
168168
self.log.always("Listening on %s" % " and ".join(urls))
169169
tornado.autoreload.add_reload_hook(self.__reloadAppCB)
170170
tornado.ioloop.IOLoop.instance().start()

src/WebAppDIRAC/Core/CoreHandler.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@ def get(self, setup, group, route):
1414
proto = self.request.protocol
1515
if "X-Scheme" in self.request.headers:
1616
proto = self.request.headers["X-Scheme"]
17-
nurl = "%s://%s%s/" % (proto, self.request.host, o.path)
17+
nurl = f"{proto}://{self.request.host}{o.path}/"
1818
if o.query:
19-
nurl = "%s?%s" % (nurl, o.query)
19+
nurl = f"{nurl}?{o.query}"
2020
self.redirect(nurl, permanent=True)
2121
elif self.__action == "sendToRoot":
2222
dest = "/"
2323
rootURL = Conf.rootURL()
2424
if rootURL:
2525
dest += "%s/" % rootURL.strip("/")
2626
if setup and group:
27-
dest += "s:%s/g:%s/" % (setup, group)
27+
dest += f"s:{setup}/g:{group}/"
2828
self.redirect(dest)

src/WebAppDIRAC/Lib/Conf.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ def getCSValue(opt, defValue=None):
1818
1919
:return: defValue type result
2020
"""
21-
return gConfig.getValue("%s/%s" % (BASECS, opt), defValue)
21+
return gConfig.getValue(f"{BASECS}/{opt}", defValue)
2222

2323

2424
def getCSSections(opt):
@@ -28,7 +28,7 @@ def getCSSections(opt):
2828
2929
:return: S_OK(list)/S_ERROR()
3030
"""
31-
return gConfig.getSections("%s/%s" % (BASECS, opt))
31+
return gConfig.getSections(f"{BASECS}/{opt}")
3232

3333

3434
def getCSOptions(opt):
@@ -38,7 +38,7 @@ def getCSOptions(opt):
3838
3939
:return: S_OK(list)/S_ERROR()
4040
"""
41-
return gConfig.getOptions("%s/%s" % (BASECS, opt))
41+
return gConfig.getOptions(f"{BASECS}/{opt}")
4242

4343

4444
def getCSOptionsDict(opt):
@@ -48,7 +48,7 @@ def getCSOptionsDict(opt):
4848
4949
:return: S_OK(dict)/S_ERROR()
5050
"""
51-
return gConfig.getOptionsDict("%s/%s" % (BASECS, opt))
51+
return gConfig.getOptionsDict(f"{BASECS}/{opt}")
5252

5353

5454
def getTitle():
@@ -235,7 +235,7 @@ def getAuthSectionForHandler(route):
235235
236236
:return: str
237237
"""
238-
return "%s/Access/%s" % (BASECS, route)
238+
return f"{BASECS}/Access/{route}"
239239

240240

241241
@deprecated("This funtion is deprecated, use 'tabs' instead.")
@@ -329,4 +329,4 @@ def getAppSettings(app):
329329
330330
:return: S_OK(dict)/S_ERROR
331331
"""
332-
return gConfig.getOptionsDictRecursively("%s/%s" % (BASECS, app))
332+
return gConfig.getOptionsDictRecursively(f"{BASECS}/{app}")

src/WebAppDIRAC/Lib/SessionData.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -89,11 +89,11 @@ def __isGroupAuthApp(self, appLoc):
8989
gLogger.error("Application handler does not exists:", appLoc)
9090
return False
9191
if handlerLoc not in self.__handlers:
92-
gLogger.error("Handler %s required by %s does not exist!" % (handlerLoc, appLoc))
92+
gLogger.error(f"Handler {handlerLoc} required by {appLoc} does not exist!")
9393
return False
9494
handler = self.__handlers[handlerLoc]
9595
auth = AuthManager(Conf.getAuthSectionForHandler(handlerLoc))
96-
gLogger.info("Authorization: %s -> %s" % (dict(self.__credDict), handler.AUTH_PROPS))
96+
gLogger.info(f"Authorization: {dict(self.__credDict)} -> {handler.AUTH_PROPS}")
9797
return auth.authQuery("", dict(self.__credDict), handler.AUTH_PROPS)
9898

9999
def __generateSchema(self, base, path):
@@ -106,21 +106,21 @@ def __generateSchema(self, base, path):
106106
"""
107107
# Calculate schema
108108
schema = []
109-
fullName = "%s/%s" % (base, path)
109+
fullName = f"{base}/{path}"
110110
result = gConfig.getSections(fullName)
111111
if not result["OK"]:
112112
return schema
113113
sectionsList = result["Value"]
114114
for sName in sectionsList:
115-
subSchema = self.__generateSchema(base, "%s/%s" % (path, sName))
115+
subSchema = self.__generateSchema(base, f"{path}/{sName}")
116116
if subSchema:
117117
schema.append((sName, subSchema))
118118
result = gConfig.getOptions(fullName)
119119
if not result["OK"]:
120120
return schema
121121
optionsList = result["Value"]
122122
for opName in optionsList:
123-
opVal = gConfig.getValue("%s/%s" % (fullName, opName))
123+
opVal = gConfig.getValue(f"{fullName}/{opName}")
124124
if opVal.startswith("link|"):
125125
schema.append(("link", opName, opVal[5:])) # pylint: disable=unsubscriptable-object
126126
continue

src/WebAppDIRAC/WebApp/handler/AccountingHandler.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ def __getUniqueKeyValues(self, typeName):
5858
siteLevel = {}
5959
for siteName in retVal["Value"]["Site"]:
6060
sitePrefix = siteName.split(".")[0].strip()
61-
level = gConfig.getValue("/Resources/Sites/%s/%s/MoUTierLevel" % (sitePrefix, siteName), 10)
61+
level = gConfig.getValue(f"/Resources/Sites/{sitePrefix}/{siteName}/MoUTierLevel", 10)
6262
if level not in siteLevel:
6363
siteLevel[level] = []
6464
siteLevel[level].append(siteName)

src/WebAppDIRAC/WebApp/handler/ComponentHistoryHandler.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,15 +118,15 @@ def __request(self):
118118
time = self.get_argument("startTime")
119119
else:
120120
time = "00:00"
121-
date = datetime.datetime.strptime("%s-%s" % (self.get_argument("startDate"), time), "%Y-%m-%d-%H:%M")
121+
date = datetime.datetime.strptime("{}-{}".format(self.get_argument("startDate"), time), "%Y-%m-%d-%H:%M")
122122
req["installation"]["InstallationTime.bigger"] = date
123123

124124
if "endDate" in self.request.arguments and len(self.get_argument("endDate")) > 0:
125125
if len(self.get_argument("endTime")) > 0:
126126
time = self.get_argument("endTime")
127127
else:
128128
time = "00:00"
129-
date = datetime.datetime.strptime("%s-%s" % (self.get_argument("endDate"), time), "%Y-%m-%d-%H:%M")
129+
date = datetime.datetime.strptime("{}-{}".format(self.get_argument("endDate"), time), "%Y-%m-%d-%H:%M")
130130
req["installation"]["UnInstallationTime.smaller"] = date
131131

132132
return req

src/WebAppDIRAC/WebApp/handler/ConfigurationManagerHandler.py

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ def __htmlComment(self, rawComment):
146146
continue
147147
commentLines.append(line)
148148
if commentLines or commiter:
149-
return "%s<small><strong>%s</strong></small>" % ("<br/>".join(commentLines), commiter)
149+
return "{}<small><strong>{}</strong></small>".format("<br/>".join(commentLines), commiter)
150150
return False
151151

152152
def __showConfigurationAsText(self):
@@ -174,7 +174,7 @@ def __setOptionValue(self, params):
174174
self.__configData["cfgData"].setOptionValue(optionPath, optionValue)
175175

176176
if self.__configData["cfgData"].getValue(optionPath) == optionValue:
177-
self.log.info("Set option value", "%s = %s" % (optionPath, optionValue))
177+
self.log.info("Set option value", f"{optionPath} = {optionValue}")
178178
return {"success": 1, "op": "setOptionValue", "parentNodeId": params["parentNodeId"], "value": optionValue}
179179
return {"success": 0, "op": "setOptionValue", "message": "Can't update %s" % optionPath}
180180

@@ -188,7 +188,7 @@ def __setComment(self, params):
188188
self.__setCommiter()
189189

190190
self.__configData["cfgData"].setComment(path, value)
191-
self.log.info("Set comment", "%s = %s" % (path, value))
191+
self.log.info("Set comment", f"{path} = {value}")
192192
return {
193193
"success": 1,
194194
"op": "setComment",
@@ -303,8 +303,8 @@ def __createOption(self, params):
303303
return {"success": 0, "op": "createOption", "message": "Options can't have a / in the name"}
304304
if len(optionValue) == 0:
305305
return {"success": 0, "op": "createOption", "message": "Options should have values!"}
306-
optionPath = "%s/%s" % (parentPath, optionName)
307-
self.log.info("Creating option", "%s = %s" % (optionPath, optionValue))
306+
optionPath = f"{parentPath}/{optionName}"
307+
self.log.info("Creating option", f"{optionPath} = {optionValue}")
308308
if not self.__configData["cfgData"].existsOption(optionPath):
309309
self.__setCommiter()
310310
self.__configData["cfgData"].setOptionValue(optionPath, optionValue)
@@ -336,9 +336,7 @@ def __moveNode(self, params):
336336
"oldIndex": params["oldIndex"],
337337
}
338338

339-
self.log.info(
340-
"Moving node", "Moving %s under %s before pos %s" % (nodePath, destinationParentPath, beforeOfIndex)
341-
)
339+
self.log.info("Moving node", f"Moving {nodePath} under {destinationParentPath} before pos {beforeOfIndex}")
342340
cfgData = self.__configData["cfgData"].getCFG()
343341

344342
nodeDict = cfgData.getRecursive(nodePath)
@@ -584,7 +582,7 @@ def __rollback(self, params):
584582
return {"success": 0, "op": "rollback", "message": retVal["Value"]}
585583

586584
def __setCommiter(self):
587-
commiter = "%s@%s - %s" % (
585+
commiter = "{}@{} - {}".format(
588586
self.getUserName(),
589587
self.getUserGroup(),
590588
datetime.datetime.utcnow().strftime("%Y-%m-%d %H:%M:%S"),
@@ -610,7 +608,7 @@ def __download(self):
610608

611609
version = str(self.__configData["cfgData"].getCFG()["DIRAC"]["Configuration"]["Version"])
612610
configName = str(self.__configData["cfgData"].getCFG()["DIRAC"]["Configuration"]["Name"])
613-
fileName = "cs.%s.%s" % (configName, version.replace(":", "").replace("-", "").replace(" ", ""))
611+
fileName = "cs.{}.{}".format(configName, version.replace(":", "").replace("-", "").replace(" ", ""))
614612

615613
return {"success": 1, "op": "download", "result": self.__configData["strCfgData"], "fileName": fileName}
616614

src/WebAppDIRAC/WebApp/handler/DowntimesHandler.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,11 +76,11 @@ def web_getDowntimesData(
7676

7777
requestParams["startDate"] = datetime.utcnow()
7878
if startDate and startTime:
79-
requestParams["startDate"] = datetime.strptime("%s %s" % (startDate, startTime), "%Y-%m-%d %H:%M")
79+
requestParams["startDate"] = datetime.strptime(f"{startDate} {startTime}", "%Y-%m-%d %H:%M")
8080

8181
requestParams["endDate"] = datetime.utcnow()
8282
if endDate and endTime:
83-
requestParams["endDate"] = datetime.strptime("%s %s" % (endDate, endTime), "%Y-%m-%d %H:%M")
83+
requestParams["endDate"] = datetime.strptime(f"{endDate} {endTime}", "%Y-%m-%d %H:%M")
8484

8585
gLogger.info("Request parameters:", requestParams)
8686

src/WebAppDIRAC/WebApp/handler/FileCatalogHandler.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ def web_getSelectedFiles(self, archivePath=None, lfnPath=None):
8080
pos_relative = absolutePath.find("/", pos_relative + 1)
8181
pos_relative = pos_relative + 1
8282
relativePath = absolutePath[pos_relative:]
83-
gLogger.always("relativePath %s, file %s" % (relativePath, filename))
83+
gLogger.always(f"relativePath {relativePath}, file {filename}")
8484
zFile.write(os.path.join(absolutePath, filename))
8585
zFile.close()
8686
shutil.rmtree(tmpdir)
@@ -239,7 +239,7 @@ def web_getFilesData(self, limit=25, start=0, lfnPath=None, **kwargs):
239239
meta = ""
240240
if "Metadata" in value:
241241
m = value["Metadata"]
242-
meta = "; ".join(["%s: %s" % (i, j) for (i, j) in m.items()])
242+
meta = "; ".join([f"{i}: {j}" for (i, j) in m.items()])
243243

244244
dirnameList = key.split("/")
245245
dirname = "/".join(dirnameList[: len(dirnameList) - 1])

src/WebAppDIRAC/WebApp/handler/JobLaunchpadHandler.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ def __getProxyStatus(self):
6161
defaultSeconds = 24 * 3600 + 60 # 24H + 1min
6262
validSeconds = gConfig.getValue("/Registry/DefaultProxyLifeTime", defaultSeconds)
6363

64-
gLogger.info("\033[0;31m userHasProxy(%s, %s, %s) \033[0m" % (userDN, group, validSeconds))
64+
gLogger.info(f"\033[0;31m userHasProxy({userDN}, {group}, {validSeconds}) \033[0m")
6565

6666
if (result := proxyManager.userHasProxy(userDN, group, validSeconds))["OK"]:
6767
return {"success": "true", "result": "true" if result["Value"] else "false"}

0 commit comments

Comments
 (0)