Add benchmarking, perf gains, and better settings UI (#850)

This commit is contained in:
boatbomber 2024-02-12 15:58:35 -08:00 • committed by GitHub
parent cf25eb0833
commit 8ff064fe28
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 380 additions and 197 deletions

View file

@ -9,6 +9,7 @@ local Log = require(Packages.Log)
local Highlighter = require(Packages.Highlighter)
local StringDiff = require(script:FindFirstChild("StringDiff"))
local Timer = require(Plugin.Timer)
local Theme = require(Plugin.App.Theme)
local CodeLabel = require(Plugin.App.Components.CodeLabel)
@ -74,6 +75,7 @@ function StringDiffVisualizer:calculateContentSize()
end
function StringDiffVisualizer:calculateDiffLines()
Timer.start("StringDiffVisualizer:calculateDiffLines")
local oldString, newString = self.props.oldString, self.props.newString
-- Diff the two texts
@ -133,6 +135,7 @@ function StringDiffVisualizer:calculateDiffLines()
end
end
Timer.stop()
return add, remove
end

View file

@ -4,6 +4,7 @@ local Packages = Rojo.Packages
local Roact = require(Packages.Roact)
local Timer = require(Plugin.Timer)
local Assets = require(Plugin.Assets)
local Theme = require(Plugin.App.Theme)
@ -21,6 +22,7 @@ function Array:init()
end
function Array:calculateDiff()
Timer.start("Array:calculateDiff")
--[[
Find the indexes that are added or removed from the array,
and display them side by side with gaps for the indexes that
@ -63,6 +65,7 @@ function Array:calculateDiff()
j += 1
end
Timer.stop()
return diff
end

View file

@ -4,6 +4,7 @@ local Packages = Rojo.Packages
local Roact = require(Packages.Roact)
local Timer = require(Plugin.Timer)
local Assets = require(Plugin.Assets)
local Theme = require(Plugin.App.Theme)
@ -21,6 +22,7 @@ function Dictionary:init()
end
function Dictionary:calculateDiff()
Timer.start("Dictionary:calculateDiff")
local oldTable, newTable = self.props.oldTable or {}, self.props.newTable or {}
-- Diff the two tables and find the added keys, removed keys, and changed keys
@ -59,6 +61,7 @@ function Dictionary:calculateDiff()
return a.key < b.key
end)
Timer.stop()
return diff
end