diff --git a/testing/luacov/APKBUILD b/testing/luacov/APKBUILD
index d1ccf99af37467226b93a7ef8b30b00feb33ce05..7bdd95ecf7b0474023586c5be8b9ac95f8e1cd69 100644
--- a/testing/luacov/APKBUILD
+++ b/testing/luacov/APKBUILD
@@ -2,8 +2,8 @@
 # Maintainer: Hani Shawa <hani.shawa@ev-box.com>
 pkgname=luacov
 _rockname=${pkgname#lua-}
-pkgver=0.14.0
-pkgrel=1
+pkgver=0.15.0
+pkgrel=0
 pkgdesc="simple coverage analysis tool for Lua scripts"
 url="https://github.com/keplerproject/luacov"
 license="MIT"
@@ -51,6 +51,6 @@ _subpackage() {
 }
 
 sha512sums="
-44ea158ce597f705d80b9768676e401804daea91b9c2afb146a8d25aae612e895e4f42a29c4b7b3438659c596fa500af5d23b66b7f3477459747ad06ca9b7ffa  luacov-0.14.0.tar.gz
-c6896588a1baece398ceccc346f3481151a59d63cff2d5a10be7f14318a65727ba52cb0b5e5f517466d9cd61835bd7c5af4f1c8da9aedb18008a6042f9acd593  reporter_fix.lua.patch
+cab02c540aad905db1fecd7f62545157c8ff9ea82f9ea602bff7b6093e3940a3a316e212a2efe30fa2439435dae6cd4005c2ee41de6b937d3e5f447bc2128a59  luacov-0.15.0.tar.gz
+8694e1d5f72da049909d1a868c5b159721c81d20ce5cf9061069732cf6d52e24a9453ad172dec47baf605ed45a8501a7f5131d6bf7609d6b81d1e1eb451e5ce9  reporter_fix.lua.patch
 "
diff --git a/testing/luacov/reporter_fix.lua.patch b/testing/luacov/reporter_fix.lua.patch
index 1b172fcd9590803aa976883876570b607f54aee4..b97ccd1974ef3539b0d0e3f092324905710d5c25 100644
--- a/testing/luacov/reporter_fix.lua.patch
+++ b/testing/luacov/reporter_fix.lua.patch
@@ -1,7 +1,9 @@
+diff --git a/src/luacov/reporter.lua b/src/luacov/reporter.lua
+index 0aadce1..d041d10 100644
 --- a/src/luacov/reporter.lua
 +++ b/src/luacov/reporter.lua
-@@ -25,7 +25,7 @@
-                entry=directory.."/"..entry
+@@ -33,7 +33,7 @@ local function dirtree(dir)
+                entry=directory..dir_sep..entry
                 local attr=lfs.attributes(entry)
                 coroutine.yield(entry,attr)
 -               if attr.mode == "directory" then
@@ -9,12 +11,12 @@
                     yieldtree(entry)
                 end
             end
-@@ -95,7 +95,7 @@
-          os.exit(1)
-       end
-       for filename, attr in dirtree("./") do
--         if attr.mode == "file" and fileMatches(filename, '.%.lua$') then
-+         if attr and attr.mode == "file" and fileMatches(filename, '.%.lua$') then
-             local file_stats = {}
-             file_stats[0] = 0
-             if luacov.file_included(filename) then
+@@ -130,7 +130,7 @@ function ReporterBase:new(conf)
+       local function add_empty_dir_coverage_data(directory_path)
+ 
+          for filename, attr in dirtree(directory_path) do
+-            if attr.mode == "file" and fileMatches(filename, '.%.lua$') then
++            if attr and attr.mode == "file" and fileMatches(filename, '.%.lua$') then
+                add_empty_file_coverage_data(filename)
+             end
+          end