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

rm-hull / dot-block / 30498517512
67%

Build:
DEFAULT BRANCH: main
Ran 29 Jul 2026 11:09PM UTC
Jobs 1
Files 43
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

29 Jul 2026 11:07PM UTC coverage: 67.412% (+0.03%) from 67.378%
30498517512

push

github

web-flow
refactor: fetch blocklists asynchronously on startup (#258)

* refactor: fetch blocklists asynchronously on startup

- Run blocklist initial fetch in a background goroutine so the DNS
server starts immediately.
- Add `IsLoaded` and `AllLoaded` methods to track blocklist readiness.
- Add benchmark and unit tests for blocklist processing and update
states.
- Update integration tests with retry logic to handle asynchronous
blocklist loading.

* Optimize blocklist loader to reduce allocations and memory usage

* Remove unused IsLoaded and AllLoaded methods

* Refactor blocklist loader to use unified stream and count pattern

* refactor: optimize blocklist loader with streaming and buffering

- Replaced line counting with a fast `io.Reader` buffer scan to estimate
 bloom filter size.
- Refactored `stream` to accept `io.Reader`, decoupling file I/O from
parsing logic.
- Reduced memory overhead by processing blocklists in a single pass.

```mermaid
sequenceDiagram
    participant B as BlockList.processFile
    participant F as File (io.Reader)
    participant C as countNewlines
    participant S as stream

    B->>C: Read file to estimate size
    C->>B: Return line count
    B->>B: Seek(0, io.SeekStart)
    B->>S: Stream file with scanner
    S->>B: Return parsed metadata
    B->>B: Apply Bloom Filter
```

51 of 59 new or added lines in 3 files covered. (86.44%)

4 existing lines in 2 files now uncovered.

2141 of 3176 relevant lines covered (67.41%)

557.35 hits per line

Uncovered Changes

Lines Coverage ∆ File
5
92.55
0.65% internal/blocklist/blocklist.go
3
92.68
6.75% internal/blocklist/loader.go

Coverage Regressions

Lines Coverage ∆ File
2
92.55
0.65% internal/blocklist/blocklist.go
2
73.53
-2.94% internal/forwarder/cache.go
Jobs
ID Job ID Ran Files Coverage
1 30498517512.1 29 Jul 2026 11:09PM UTC 43
67.41
GitHub Action Run
Source Files on build 30498517512
  • Tree
  • List 43
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • b5ee9a54 on github
  • Prev Build on main (#30487056596)
  • Next Build on main (#30567973741)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc