Skip to content

Commit e738186

Browse files
committed
Add a timer and trace message to track DepCtrl initialization times
1 parent b678545 commit e738186

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

modules/DependencyControl.moon

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ ConfigHandler = require "l0.DependencyControl.ConfigHandler"
88
fileOps = require "l0.DependencyControl.FileOps"
99
Updater = require "l0.DependencyControl.Updater"
1010
DownloadManager = require "DM.DownloadManager"
11+
PreciseTimer = require "PT.PreciseTimer"
1112

1213

1314
class DependencyControl
@@ -43,6 +44,7 @@ class DependencyControl
4344
badNamespace: "Namespace '%s' failed validation. Namespace rules: must contain 1+ single dots, but not start or end with a dot; all other characters must be in [A-Za-z0-9-_]."
4445
badModuleTable: "Invalid required module table #%d (%s)."
4546
}
47+
timer: "DependencyControl initialization took %f seconds so far..."
4648
}
4749
uninstall: {
4850
noVirtualOrUnmanaged: "Can't uninstall %s %s '%s'. (Only installed scripts managed by #{@@_name} can be uninstalled)."
@@ -66,6 +68,7 @@ class DependencyControl
6668

6769
dlm = DownloadManager!
6870
platform, configDirExists, logsHaveBeenTrimmed, scheduledRemovalHasRun = "#{ffi.os}-#{ffi.arch}"
71+
cumInitTime = 0
6972
fileOps.mkdir depConf.file, true
7073

7174
@ConfigHandler = ConfigHandler
@@ -78,6 +81,7 @@ class DependencyControl
7881
modules: aegisub.decode_path("?user/automation/include")}
7982

8083
new: (args) =>
84+
timer = PreciseTimer!
8185
-- defaults
8286
args[k] = v for k, v in pairs {
8387
readGlobalScriptVars: true
@@ -168,6 +172,9 @@ class DependencyControl
168172
logsHaveBeenTrimmed or= @@logger\trimFiles!
169173
scheduledRemovalHasRun or= fileOps.runScheduledRemoval @configDir
170174

175+
cumInitTime += timer\timeElapsed!
176+
@@logger\trace msgs.new.timer, cumInitTime
177+
171178
createDummyRef: =>
172179
return nil unless @moduleName
173180
-- global module registry allows for circular dependencies:

0 commit comments

Comments
 (0)