Hello everyone,

I built the golang-github-marusama-semaphore package and created a
repository on Salsa (command "dh-make-golang create-salsa-project
golang-github-marusama-semaphore").
However, I couldn't push it because I don't have enough permissions.
Who should I contact to get permissions?
The same thing happened with package
golang-github-bobusumisu-aho-corasick (Bug #1128093).

пн, 16 февр. 2026 г. в 19:20, Mikhail Potemkin <[email protected]>:
>
> Package: wnpp
> Severity: wishlist
> Owner: Mikhail Potemkin <[email protected]>
>
> * Package name    : golang-github-marusama-semaphore
>   Version         : 2.5.0-1
>   Upstream Author : Bator Tsyrendylykov
> * URL             : https://github.com/marusama/semaphore
> * License         : MIT
>   Programming Lang: Go
>   Description     : Fast resizable golang semaphore primitive
>
>  semaphore
>  .
>  Awesome (https://github.com/avelino/awesome-go#goroutines) Build Status
>  (https://travis-ci.org/marusama/semaphore) Go Report Card
>  (https://goreportcard.com/report/github.com/marusama/semaphore) Coverage
>  Status (https://coveralls.io/github/marusama/semaphore?branch=master)
>  GoDoc (https://godoc.org/github.com/marusama/semaphore) License
>  (/LICENSE)
>  .
>  Fast resizable golang semaphore based on CAS
>  .
>   * allows weighted acquire/release;
>   * supports cancellation via context;
>   * allows change semaphore limit after creation;
>   * faster than channel based semaphores.
>  .
>  Usage
>  .
>  Initiate
>  .
>    import "github.com/marusama/semaphore/v2"
>    ...
>    sem := semaphore.New(5) // new semaphore with limit = 5
>  .
>  Acquire
>  .
>    sem.Acquire(ctx, n)     // acquire n with context
>    sem.TryAcquire(n)       // try acquire n without blocking
>    ...
>    ctx := context.WithTimeout(context.Background(), time.Second)
>    sem.Acquire(ctx, n)     // acquire n with timeout
>  .
>  Release
>  .
>    sem.Release(n)          // release n
>  .
>  Change semaphore limit
>  .
>    sem.SetLimit(new_limit) // set new semaphore limit
>  .
>  Some benchmarks
>  .
>  Run on MacBook Pro (2017) with 3,1GHz Core i5 cpu and 8GB DDR3 ram,
>  macOS High Sierra, go version go1.11.4 darwin/amd64:
>  .
>    // this semaphore:
>    BenchmarkSemaphore_Acquire_Release_under_limit_simple-4
>  20000000               98.6 ns/op            96 B/op          1 allocs/op
>    BenchmarkSemaphore_Acquire_Release_under_limit-4
>  1000000              1593 ns/op             960 B/op         10 allocs/op
>    BenchmarkSemaphore_Acquire_Release_over_limit-4
>  100000      20760 ns/op            9600 B/op        100 allocs/op
>  .
>  .
>    // some other implementations:
>  .
>    // golang.org/x/sync/semaphore:
>    BenchmarkXSyncSemaphore_Acquire_Release_under_limit_simple-4
>  50000000               34.9 ns/op             0 B/op          0 allocs/op
>    BenchmarkXSyncSemaphore_Acquire_Release_under_limit-4
>  1000000              1103 ns/op               0 B/op          0 allocs/op
>    BenchmarkXSyncSemaphore_Acquire_Release_over_limit-4
>  30000       65927 ns/op           15985 B/op        299 allocs/op
>  .
>    // github.com/abiosoft/semaphore:
>    BenchmarkAbiosoftSemaphore_Acquire_Release_under_limit_simple-4
>  10000000              208 ns/op               0 B/op          0 allocs/op
>    BenchmarkAbiosoftSemaphore_Acquire_Release_under_limit-4
>  500000       3147 ns/op               0 B/op          0 allocs/op
>    BenchmarkAbiosoftSemaphore_Acquire_Release_over_limit-4
>  50000       37148 ns/op               0 B/op          0 allocs/op
>  .
>    // github.com/dropbox/godropbox
>    BenchmarkDropboxBoundedSemaphore_Acquire_Release_under_limit_simple-4
>  20000000               75.9 ns/op             0 B/op          0 allocs/op
>    BenchmarkDropboxBoundedSemaphore_Acquire_Release_under_limit-4
>  2000000               629 ns/op               0 B/op          0 allocs/op
>    BenchmarkDropboxBoundedSemaphore_Acquire_Release_over_limit-4
>  200000      27308 ns/op               0 B/op          0 allocs/op
>    BenchmarkDropboxUnboundedSemaphore_Acquire_Release_under_limit_simple-4
>  50000000               39.7 ns/op             0 B/op          0 allocs/op
>    BenchmarkDropboxUnboundedSemaphore_Acquire_Release_under_limit-4
>  1000000              1170 ns/op               0 B/op          0 allocs/op
>    BenchmarkDropboxUnboundedSemaphore_Acquire_Release_over_limit-4
>  100000      21013 ns/op               0 B/op          0 allocs/op
>  .
>    // github.com/kamilsk/semaphore
>    BenchmarkKamilskSemaphore_Acquire_Release_under_limit_simple-4
>  20000000              110 ns/op              16 B/op          1 allocs/op
>    BenchmarkKamilskSemaphore_Acquire_Release_under_limit-4
>  1000000              1520 ns/op             160 B/op         10 allocs/op
>    BenchmarkKamilskSemaphore_Acquire_Release_over_limit-4
>  50000       42693 ns/op            1600 B/op        100 allocs/op
>  .
>    // github.com/pivotal-golang/semaphore
>    BenchmarkPivotalGolangSemaphore_Acquire_Release_under_limit_simple-4
>  3000000               558 ns/op             136 B/op          2 allocs/op
>    BenchmarkPivotalGolangSemaphore_Acquire_Release_under_limit-4
>  200000       9530 ns/op            1280 B/op         20 allocs/op
>    BenchmarkPivotalGolangSemaphore_Acquire_Release_over_limit-4
>  10000      111264 ns/op           12801 B/op        200 allocs/op
>  .
>  .
>  You can rerun these benchmarks, just checkout benchmarks branch and run
>  go test -bench=. -benchmem ./bench/...
>
>
> Needed by trufflehog
>

Reply via email to