-Cursor._changes = Cursor.changes
-function Cursor.changes(self, config)
- if config then
- return Cursor._changes(self, config)
- else
- local changes = Cursor._changes(self)
- util.copcall(function()
- for k,v in pairs(require "luci.fs".dir(self:get_savedir())) do
- if v ~= "." and v ~= ".." then
- util.update(changes, Cursor._changes(self, v))
+ local c = cursor()
+ c:load("ucitrack")
+
+ -- Resolve dependencies
+ local reloadlist = {}
+
+ local function _resolve_deps(name)
+ local reload = {name}
+ local deps = {}
+
+ c:foreach("ucitrack", name,
+ function(section)
+ if section.affects then
+ for i, aff in ipairs(section.affects) do
+ deps[#deps+1] = aff
+ end