Skip to content
Snippets Groups Projects
  1. Nov 24, 2017
    • Marek Vavruša's avatar
      daemon/lua: fixed unused variables, whitespace, cleanup · 3162da83
      Marek Vavruša authored
      Also fixed improper promotion of `ffi` to global variable.
      
      ```
      $ luacheck --codes daemon/lua/
      Checking daemon/lua/config.lua                    OK
      Checking daemon/lua/kres-gen.lua                  OK
      Checking daemon/lua/kres.lua                      OK
      Checking daemon/lua/sandbox.lua                   OK
      Checking daemon/lua/trust_anchors.lua             OK
      Checking daemon/lua/zonefile.lua                  OK
      
      Total: 0 warnings / 0 errors in 6 files
      ```
      3162da83
    • Marek Vavruša's avatar
      added basic config test for consts, depend on knot >= 2.4, cleanup · b90e6c71
      Marek Vavruša authored
      The library now depends on libknot >= 2.4.0 (in Debian stable),
      this allows us to remove a dead code and sed-ing of the kres.lua
      
      Added a basic config tests to check that constants still work,
      and basic interface to rrsets still works after the change.
      b90e6c71
    • Petr Špaček's avatar
      Merge branch 'fix-predict-module' into 'master' · 8f6e74cd
      Petr Špaček authored
      Fixed predict module, config tests, cleanup
      
      See merge request !399
      8f6e74cd
    • Marek Vavruša's avatar
      modules/predict: added test for prediction process · a395e9a2
      Marek Vavruša authored
      this tests that:
      * sampling frequent queries works
      * the code to find periodic appearences of the same name and type
      * resolving predicted queries works
      
      it doesn't test pessimistic cases or failure modes
      a395e9a2
    • Marek Vavruša's avatar
      tests/config: added basic assert support (compatible with busted) · 14a0a181
      Marek Vavruša authored
      There is no dependency on a testing library yet, so I added a
      basic interface for mocking and asserting test values to get
      something to start with. I'll probably replace it with busted
      or telescope later on to get nicer testing output.
      14a0a181
    • Marek Vavruša's avatar
      95a6fdf7
    • Marek Vavruša's avatar
      converted constant tables, support kres.type.TYPE1234 · 0ec11416
      Marek Vavruša authored
      The difficulty with using structs as constant tables is that access
      to non-existent fields throws an error. This is difficult to handle
      without wrapping every access in a pcall, for example in predict module:
      
      ```
      error: /usr/local/lib/kdns_modules/predict.lua:34: 'struct rr_type' has no member named 'TYPE65535'
      ```
      
      So I converted the constant tables into regular Lua tables,
      and added a metatable for RR types to allow looking up unnamed types,
      in the TYPE%d format. Looking up non-existent fields will now
      return nil instead of throwing an error.
      0ec11416
    • Marek Vavruša's avatar
      modules/predict: cleaned up unused function, variables, trailing whitespace · 1ea9ebce
      Marek Vavruša authored
      The `stats` module is now also included if not exists.
      
      ```
      $ luacheck modules/predict
      Checking modules/predict/predict.lua              OK
      
      Total: 0 warnings / 0 errors in 1 file
      ```
      1ea9ebce
    • Marek Vavruša's avatar
      tests: fixed config tests locking up on error, added test for predict · 52d4f519
      Marek Vavruša authored
      The config tests locked up on error as if error was raised from the
      event callback, it would never reach the `quit()` statement, so
      server would never close on error.
      
      Added a script to make running these types of tests a little bit nicer
      and to allow concurrent execution of config tests.
      
      Added a test for the predict module, that fails on prediction
      of unknown types:
      
      ```
      error: /usr/local/lib/kdns_modules/predict.lua:34: 'struct rr_type' has no member named 'TYPE65535'
      ```
      52d4f519
  2. Nov 23, 2017
    • Petr Špaček's avatar
      Merge branch 'add-lua-linter' into 'master' · f60e0a53
      Petr Špaček authored
      Added luacheck for linting Lua files and static analysis
      
      See merge request !398
      f60e0a53
    • Marek Vavruša's avatar
      Added luacheck for linting Lua files and static analysis · 0e2ffb5d
      Marek Vavruša authored
      This is super useful for checking things like misusing undefined
      variables or modifying globals, especially in modules when it's
      not immediately visible which variables are in the global
      namespace and which are not.
      
      I added several exceptions for files in daemon/lua and tests,
      as for example sandbox module needs to legitimately modify
      global namespace.
      
      There's a lot of things failing, so I didn't make it part of the
      standard `make check`, but we should eventually enable it to
      improve code quality and spot problems with CI.
      0e2ffb5d
  3. Nov 20, 2017
  4. Nov 16, 2017
  5. Nov 15, 2017
  6. Nov 13, 2017
  7. Nov 06, 2017
  8. Nov 02, 2017