Compare commits

...

13 Commits
main ... stack

Author SHA1 Message Date
Paul Wells
684bc665f4 wip
Some checks failed
Generate / generate (push) Has been cancelled
2026-02-21 02:54:39 -08:00
Paul Wells
e9d78d5f46 Merge remote-tracking branch 'origin/main' into stack 2026-02-20 20:40:13 -08:00
Paul Wells
86487220bd Merge remote-tracking branch 'origin/main' into stack 2026-02-18 07:58:02 -08:00
Paul Wells
a404aaa991 Merge remote-tracking branch 'origin/main' into stack 2026-02-13 16:44:22 -08:00
Paul Wells
386e55747c Merge remote-tracking branch 'origin/main' into stack 2026-02-06 02:54:46 -08:00
github-actions
c83bfb037b generated protobuf 2026-02-04 22:47:28 +00:00
Paul Wells
0f8bed63ef Merge remote-tracking branch 'origin/main' into stack 2026-02-04 14:46:26 -08:00
Paul Wells
632f936abb Merge remote-tracking branch 'origin/main' into stack 2026-02-02 23:52:17 -08:00
Paul Wells
8ac0f55c6b Merge remote-tracking branch 'origin/main' into stack 2026-02-02 05:17:38 -08:00
Paul Wells
640940af27 wip 2026-01-27 21:39:47 -08:00
Paul Wells
3f935a2b4d Merge remote-tracking branch 'origin/main' into stack 2026-01-23 23:34:28 -08:00
Paul Wells
5ba8b0ec94 Create gold-fishes-smash.md 2026-01-17 04:25:24 -08:00
Paul Wells
da84faf41f add stack utility 2026-01-17 04:24:45 -08:00
4 changed files with 45 additions and 12 deletions

View File

@@ -0,0 +1,5 @@
---
"@livekit/protocol": patch
---
add stack utility

View File

@@ -1,6 +1,9 @@
package observability
import (
"github.com/go-logr/logr"
"github.com/livekit/protocol/logger"
"github.com/livekit/protocol/observability/agentsobs"
"github.com/livekit/protocol/observability/egressobs"
"github.com/livekit/protocol/observability/gatewayobs"
@@ -13,15 +16,16 @@ import (
const Project = "livekit"
var discardLogger = logger.LogRLogger(logr.Discard())
type Reporter interface {
Logger(projectID string) (logger.Logger, error)
Room() roomobs.Reporter
Agent() agentsobs.Reporter
Gateway() gatewayobs.Reporter
Telephony() telephonyobs.Reporter
Connector() any // any is a placeholder for the connector type
Egress() egressobs.Reporter
Ingress() ingressobs.Reporter
GatewayMetrics() any // any is a placeholder for the gateway metrics type
TelephonyCall() telephonycallobs.Reporter
Storage() storageobs.Reporter
Close()
@@ -33,6 +37,10 @@ func NewReporter() Reporter {
type reporter struct{}
func (reporter) Logger(projectID string) (logger.Logger, error) {
return discardLogger, nil
}
func (reporter) Room() roomobs.Reporter {
return roomobs.NewNoopReporter()
}
@@ -49,10 +57,6 @@ func (reporter) Telephony() telephonyobs.Reporter {
return telephonyobs.NewNoopReporter()
}
func (reporter) Connector() any {
return nil
}
func (reporter) Egress() egressobs.Reporter {
return egressobs.NewNoopReporter()
}
@@ -61,15 +65,13 @@ func (reporter) Ingress() ingressobs.Reporter {
return ingressobs.NewNoopReporter()
}
func (reporter) GatewayMetrics() any {
return nil
}
func (reporter) TelephonyCall() telephonycallobs.Reporter {
return telephonycallobs.NewNoopReporter()
}
func (reporter) Storage() storageobs.Reporter { return storageobs.NewNoopReporter() }
func (reporter) Storage() storageobs.Reporter {
return storageobs.NewNoopReporter()
}
func (reporter) Close() {
}

View File

@@ -16,6 +16,7 @@ package utils
import (
"io"
"slices"
"go.uber.org/multierr"
)
@@ -28,7 +29,7 @@ func CombineClosers(cs ...io.Closer) Closers {
func (s *Closers) Close() error {
var err error
for _, c := range *s {
for _, c := range slices.Backward(*s) {
if c != nil {
err = multierr.Append(err, c.Close())
}

25
utils/stack/stack.go Normal file
View File

@@ -0,0 +1,25 @@
package stack
type Stack[T any] []T
func (s Stack[T]) Empty() bool {
return len(s) == 0
}
func (s *Stack[T]) Reset() {
*s = (*s)[:0]
}
func (s *Stack[T]) Push(v T) {
*s = append(*s, v)
}
func (s *Stack[T]) Pop() T {
v := (*s)[len(*s)-1]
*s = (*s)[:len(*s)-1]
return v
}
func (s Stack[T]) Peek() T {
return s[len(s)-1]
}