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

ghettovoice / gosip / 20275641102

16 Dec 2025 04:42PM UTC coverage: 40.889% (-33.6%) from 74.523%
20275641102

push

github

ghettovoice
Refactor SIP stack with transaction/transport layers and improved API

- Implement TransactionLayer with request/response routing and graceful shutdown
- Add TransportLayer for centralized transport management
- Client/server transaction implementation with persistence support
- Add transaction factories and automatic cleanup on termination
- Introduce InboundMessage/OutboundMessage wrappers with type-safe accessors
- Add StatsRecorder interface for transport statistics
- Consolidate Send/Render/NewResponse methods with optional options
- Add log package with context-based logger
- Support compact header rendering
- Message RTT calculation
- Optimization: upgrade abnf lib, fix race conditions, read timeouts
- Improve error handling and validation
- Add comprehensive test coverage

7324 of 19365 new or added lines in 110 files covered. (37.82%)

19 existing lines in 3 files now uncovered.

8439 of 20639 relevant lines covered (40.89%)

8.25 hits per line

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

0.0
/internal/errorutil/utils.go
1
package errorutil
2

3
import (
4
        "errors"
5
        "net"
6
        "syscall"
7
)
8

9
// IsTemporaryErr returns true if the error is temporary.
NEW
10
func IsTemporaryErr(err error) bool {
×
NEW
11
        var e interface{ Temporary() bool }
×
NEW
12
        return errors.As(err, &e) && e.Temporary()
×
NEW
13
}
×
14

15
// IsTimeoutErr returns true if the error is a timeout error.
NEW
16
func IsTimeoutErr(err error) bool {
×
NEW
17
        var e interface{ Timeout() bool }
×
NEW
18
        return errors.As(err, &e) && e.Timeout()
×
NEW
19
}
×
20

21
// IsGrammarErr returns true if the error is a grammar error.
NEW
22
func IsGrammarErr(err error) bool {
×
NEW
23
        var e interface{ Grammar() bool }
×
NEW
24
        return errors.As(err, &e) && e.Grammar()
×
NEW
25
}
×
26

27
// IsNetError returns true if the error is a network error.
NEW
28
func IsNetError(err error) bool {
×
NEW
29
        var e *net.OpError
×
NEW
30
        return errors.Is(err, syscall.EINVAL) || errors.As(err, &e)
×
NEW
31
}
×
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

© 2026 Coveralls, Inc