• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

sile-typesetter / sile / 6713098919

31 Oct 2023 10:21PM UTC coverage: 52.831% (-21.8%) from 74.636%
6713098919

push

github

web-flow
Merge d0a2a1ee9 into b185d4972

45 of 45 new or added lines in 3 files covered. (100.0%)

8173 of 15470 relevant lines covered (52.83%)

6562.28 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/core/makedeps.lua
1
local makeDeps = {
×
2
  _deps = {},
3

4
  add = function (self, filename)
5
    SU.debug("makedeps", "Adding:", filename)
×
6
    local resolvedFile, msg = package.searchpath(filename:gsub("^@?%./", ""), "?;"..package.path, "/")
×
7
    if not resolvedFile then
×
8
      SU.error("Cannot resolve file '" .. filename .. "' as a dependency:" .. msg)
×
9
    end
10
    self._deps[resolvedFile] = true
×
11
  end,
12

13
  add_modules = function (self)
14
    for dep, _ in pairs(package.loaded) do
×
15
      if dep ~= "_G" then
×
16
        SU.debug("makedeps", "Adding if module is loadable file:", dep)
×
17
        local resolvedFile = package.searchpath(dep:gsub("%.", "/"), package.path, "/")
×
18
        if resolvedFile then
×
19
          self._deps[resolvedFile] = true
×
20
        end
21
      end
22
    end
23
  end,
24

25
  write = function (self)
26
    self:add_modules()
×
27
    if type(self.filename) ~= "string" then
×
28
      self.filename = pl.path.splitext(SILE.input.filenames[1]) .. ".d"
×
29
    end
30
    local depfile, err = io.open(self.filename, "w")
×
31
    if not depfile then return SU.error(err) end
×
32
    depfile:write(SILE.outputter:getOutputFilename() .. ": " .. tostring(self._deps) .. "\n")
×
33
    depfile:close()
×
34
  end
35
}
36

37
setmetatable(makeDeps._deps, {
×
38
    __tostring = function(self)
39
      local deps = {}
×
40
      for dep, _ in pairs(self) do
×
41
        deps[#deps+1] = dep
×
42
      end
43
      table.sort(deps, function (a, b) return a < b end)
×
44
      return table.concat(deps, " ")
×
45
    end
46
  })
47

48
return makeDeps
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc