chore: update module path to gitea.dockr.co/kev/go-jdenticon
Some checks failed
CI / Test (Go 1.24.x, ubuntu-latest) (push) Successful in 1m53s
CI / Code Quality (push) Failing after 26s
CI / Security Scan (push) Failing after 11s
CI / Test Coverage (push) Successful in 1m13s
CI / Benchmarks (push) Failing after 10m22s
CI / Build CLI (push) Failing after 8s
Benchmarks / Run Benchmarks (push) Failing after 10m13s
Release / Test (push) Successful in 55s
Release / Build (amd64, darwin, ) (push) Failing after 12s
Release / Build (amd64, linux, ) (push) Failing after 6s
Release / Build (amd64, windows, .exe) (push) Failing after 12s
Release / Build (arm64, darwin, ) (push) Failing after 12s
Release / Build (arm64, linux, ) (push) Failing after 12s
Release / Release (push) Has been skipped
CI / Test (Go 1.24.x, macos-latest) (push) Has been cancelled
CI / Test (Go 1.24.x, windows-latest) (push) Has been cancelled
Some checks failed
CI / Test (Go 1.24.x, ubuntu-latest) (push) Successful in 1m53s
CI / Code Quality (push) Failing after 26s
CI / Security Scan (push) Failing after 11s
CI / Test Coverage (push) Successful in 1m13s
CI / Benchmarks (push) Failing after 10m22s
CI / Build CLI (push) Failing after 8s
Benchmarks / Run Benchmarks (push) Failing after 10m13s
Release / Test (push) Successful in 55s
Release / Build (amd64, darwin, ) (push) Failing after 12s
Release / Build (amd64, linux, ) (push) Failing after 6s
Release / Build (amd64, windows, .exe) (push) Failing after 12s
Release / Build (arm64, darwin, ) (push) Failing after 12s
Release / Build (arm64, linux, ) (push) Failing after 12s
Release / Release (push) Has been skipped
CI / Test (Go 1.24.x, macos-latest) (push) Has been cancelled
CI / Test (Go 1.24.x, windows-latest) (push) Has been cancelled
Move hosting from GitHub to private Gitea instance.
This commit is contained in:
6
Makefile
6
Makefile
@@ -52,9 +52,9 @@ COMMIT ?= $(shell git rev-parse --short HEAD 2>/dev/null || echo "unknown")
|
|||||||
BUILD_DATE ?= $(shell date -u +"%Y-%m-%dT%H:%M:%SZ")
|
BUILD_DATE ?= $(shell date -u +"%Y-%m-%dT%H:%M:%SZ")
|
||||||
|
|
||||||
# Build flags for version injection
|
# Build flags for version injection
|
||||||
LDFLAGS=-ldflags "-X github.com/ungluedlabs/go-jdenticon/cmd/jdenticon.Version=$(VERSION) \
|
LDFLAGS=-ldflags "-X gitea.dockr.co/kev/go-jdenticon/cmd/jdenticon.Version=$(VERSION) \
|
||||||
-X github.com/ungluedlabs/go-jdenticon/cmd/jdenticon.Commit=$(COMMIT) \
|
-X gitea.dockr.co/kev/go-jdenticon/cmd/jdenticon.Commit=$(COMMIT) \
|
||||||
-X github.com/ungluedlabs/go-jdenticon/cmd/jdenticon.BuildDate=$(BUILD_DATE)"
|
-X gitea.dockr.co/kev/go-jdenticon/cmd/jdenticon.BuildDate=$(BUILD_DATE)"
|
||||||
|
|
||||||
# Build targets
|
# Build targets
|
||||||
CLI_BINARY=jdenticon-cli
|
CLI_BINARY=jdenticon-cli
|
||||||
|
|||||||
75
PRIVATE_GO_REPO.md
Normal file
75
PRIVATE_GO_REPO.md
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
# Making This Go Repository Private
|
||||||
|
|
||||||
|
Notes on what changes when converting this public GitHub repo to private.
|
||||||
|
|
||||||
|
## CI/CD - No Changes Required
|
||||||
|
|
||||||
|
GitHub Actions workflows continue to work because:
|
||||||
|
- `actions/checkout@v4` uses the built-in `GITHUB_TOKEN` which has access to its own repo
|
||||||
|
- No external private dependencies are required
|
||||||
|
|
||||||
|
## Local Development
|
||||||
|
|
||||||
|
### Configure Go for Private Repos
|
||||||
|
|
||||||
|
Tell Go to bypass the public module proxy:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
go env -w GOPRIVATE=github.com/yourusername/go-jdenticon
|
||||||
|
```
|
||||||
|
|
||||||
|
### Git Authentication
|
||||||
|
|
||||||
|
Ensure one of these is configured:
|
||||||
|
- SSH key linked to your GitHub account
|
||||||
|
- Personal Access Token (PAT) in git credential helper
|
||||||
|
- `~/.netrc` file with GitHub credentials
|
||||||
|
|
||||||
|
## Using as a Dependency in Other Projects
|
||||||
|
|
||||||
|
Any project that imports this module needs:
|
||||||
|
|
||||||
|
1. Set `GOPRIVATE`:
|
||||||
|
```bash
|
||||||
|
go env -w GOPRIVATE=github.com/yourusername/go-jdenticon
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Configure git authentication (see above)
|
||||||
|
|
||||||
|
3. For CI in other repos, add to workflow:
|
||||||
|
```yaml
|
||||||
|
- name: Configure git for private modules
|
||||||
|
run: git config --global url."https://${{ secrets.GH_PAT }}@github.com/".insteadOf "https://github.com/"
|
||||||
|
```
|
||||||
|
(Requires a `GH_PAT` secret with `repo` scope)
|
||||||
|
|
||||||
|
## What Breaks
|
||||||
|
|
||||||
|
| Feature | Status | Notes |
|
||||||
|
|---------|--------|-------|
|
||||||
|
| pkg.go.dev documentation | Unavailable | Public proxy can't access private repos |
|
||||||
|
| "Go Reference" badges | Broken | Remove from README or accept 404 |
|
||||||
|
| Codecov | May need token | Add `CODECOV_TOKEN` secret if uploads fail |
|
||||||
|
| Anonymous `go get` | Blocked | Users need authentication |
|
||||||
|
|
||||||
|
## Codecov Fix (If Needed)
|
||||||
|
|
||||||
|
If coverage uploads fail after going private:
|
||||||
|
|
||||||
|
1. Get token from codecov.io for the repo
|
||||||
|
2. Add as repository secret: `CODECOV_TOKEN`
|
||||||
|
3. Update `.github/workflows/ci.yml`:
|
||||||
|
```yaml
|
||||||
|
- name: Upload coverage to Codecov
|
||||||
|
uses: codecov/codecov-action@v4
|
||||||
|
with:
|
||||||
|
file: ./coverage.txt
|
||||||
|
token: ${{ secrets.CODECOV_TOKEN }} # Add this line
|
||||||
|
flags: unittests
|
||||||
|
name: codecov-umbrella
|
||||||
|
fail_ci_if_error: false
|
||||||
|
```
|
||||||
|
|
||||||
|
## Reverting to Public
|
||||||
|
|
||||||
|
Simply change the repository visibility back to public in GitHub settings. No code changes required.
|
||||||
@@ -17,7 +17,7 @@ import (
|
|||||||
"github.com/mattn/go-isatty"
|
"github.com/mattn/go-isatty"
|
||||||
"github.com/schollz/progressbar/v3"
|
"github.com/schollz/progressbar/v3"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
"github.com/ungluedlabs/go-jdenticon/jdenticon"
|
"gitea.dockr.co/kev/go-jdenticon/jdenticon"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/jdenticon"
|
"gitea.dockr.co/kev/go-jdenticon/jdenticon"
|
||||||
)
|
)
|
||||||
|
|
||||||
// benchmarkSizes defines different test scenarios for batch processing
|
// benchmarkSizes defines different test scenarios for batch processing
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ import (
|
|||||||
|
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
"github.com/spf13/viper"
|
"github.com/spf13/viper"
|
||||||
"github.com/ungluedlabs/go-jdenticon/jdenticon"
|
"gitea.dockr.co/kev/go-jdenticon/jdenticon"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TestBatchCommand tests the batch command functionality
|
// TestBatchCommand tests the batch command functionality
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
"github.com/ungluedlabs/go-jdenticon/jdenticon"
|
"gitea.dockr.co/kev/go-jdenticon/jdenticon"
|
||||||
)
|
)
|
||||||
|
|
||||||
// isRootPath checks if the given path is a filesystem root.
|
// isRootPath checks if the given path is a filesystem root.
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import (
|
|||||||
|
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
"github.com/spf13/viper"
|
"github.com/spf13/viper"
|
||||||
"github.com/ungluedlabs/go-jdenticon/jdenticon"
|
"gitea.dockr.co/kev/go-jdenticon/jdenticon"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TestGenerateCommand tests the generate command functionality
|
// TestGenerateCommand tests the generate command functionality
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/jdenticon"
|
"gitea.dockr.co/kev/go-jdenticon/jdenticon"
|
||||||
)
|
)
|
||||||
|
|
||||||
// testBinaryName returns the correct test binary name for the current OS.
|
// testBinaryName returns the correct test binary name for the current OS.
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import (
|
|||||||
|
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
"github.com/spf13/viper"
|
"github.com/spf13/viper"
|
||||||
"github.com/ungluedlabs/go-jdenticon/jdenticon"
|
"gitea.dockr.co/kev/go-jdenticon/jdenticon"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/jdenticon"
|
"gitea.dockr.co/kev/go-jdenticon/jdenticon"
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
|
|||||||
2
go.mod
2
go.mod
@@ -1,4 +1,4 @@
|
|||||||
module github.com/ungluedlabs/go-jdenticon
|
module gitea.dockr.co/kev/go-jdenticon
|
||||||
|
|
||||||
go 1.24.0
|
go 1.24.0
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import (
|
|||||||
"sync/atomic"
|
"sync/atomic"
|
||||||
|
|
||||||
lru "github.com/hashicorp/golang-lru/v2"
|
lru "github.com/hashicorp/golang-lru/v2"
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/constants"
|
"gitea.dockr.co/kev/go-jdenticon/internal/constants"
|
||||||
)
|
)
|
||||||
|
|
||||||
// CacheMetrics holds cache performance metrics using atomic operations for efficiency
|
// CacheMetrics holds cache performance metrics using atomic operations for efficiency
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import (
|
|||||||
"math"
|
"math"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/util"
|
"gitea.dockr.co/kev/go-jdenticon/internal/util"
|
||||||
)
|
)
|
||||||
|
|
||||||
// FuzzGeneratorGenerate tests the internal engine generator with arbitrary inputs
|
// FuzzGeneratorGenerate tests the internal engine generator with arbitrary inputs
|
||||||
|
|||||||
@@ -7,8 +7,8 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
lru "github.com/hashicorp/golang-lru/v2"
|
lru "github.com/hashicorp/golang-lru/v2"
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/constants"
|
"gitea.dockr.co/kev/go-jdenticon/internal/constants"
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/util"
|
"gitea.dockr.co/kev/go-jdenticon/internal/util"
|
||||||
"golang.org/x/sync/singleflight"
|
"golang.org/x/sync/singleflight"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/util"
|
"gitea.dockr.co/kev/go-jdenticon/internal/util"
|
||||||
)
|
)
|
||||||
|
|
||||||
var benchmarkHashes = []string{
|
var benchmarkHashes = []string{
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/util"
|
"gitea.dockr.co/kev/go-jdenticon/internal/util"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestNewGenerator(t *testing.T) {
|
func TestNewGenerator(t *testing.T) {
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/constants"
|
"gitea.dockr.co/kev/go-jdenticon/internal/constants"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TestResourceExhaustionProtection tests that the generator properly blocks
|
// TestResourceExhaustionProtection tests that the generator properly blocks
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/util"
|
"gitea.dockr.co/kev/go-jdenticon/internal/util"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Generate creates an identicon with the specified hash and size
|
// Generate creates an identicon with the specified hash and size
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import (
|
|||||||
"os"
|
"os"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/perfsuite"
|
"gitea.dockr.co/kev/go-jdenticon/internal/perfsuite"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TestPerformanceRegressionSuite can be called from a regular Go test
|
// TestPerformanceRegressionSuite can be called from a regular Go test
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/jdenticon"
|
"gitea.dockr.co/kev/go-jdenticon/jdenticon"
|
||||||
)
|
)
|
||||||
|
|
||||||
// PerformanceBenchmark represents a single performance test case
|
// PerformanceBenchmark represents a single performance test case
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ package renderer
|
|||||||
import (
|
import (
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Benchmark optimized renderer to compare against baseline (958,401 B/op)
|
// Benchmark optimized renderer to compare against baseline (958,401 B/op)
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import (
|
|||||||
"image/png"
|
"image/png"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TestPNGRenderer_VisualRegression tests that PNG output matches expected characteristics
|
// TestPNGRenderer_VisualRegression tests that PNG output matches expected characteristics
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Benchmark optimized PNG renderer vs original FastPNG renderer
|
// Benchmark optimized PNG renderer vs original FastPNG renderer
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import (
|
|||||||
"math"
|
"math"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
// PNG rendering constants
|
// PNG rendering constants
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import (
|
|||||||
"image/png"
|
"image/png"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestNewPNGRenderer(t *testing.T) {
|
func TestNewPNGRenderer(t *testing.T) {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package renderer
|
package renderer
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Renderer defines the interface for rendering identicons to various output formats.
|
// Renderer defines the interface for rendering identicons to various output formats.
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ package renderer
|
|||||||
import (
|
import (
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
var benchmarkSizes = []int{
|
var benchmarkSizes = []int{
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ package renderer
|
|||||||
import (
|
import (
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestNewBaseRenderer(t *testing.T) {
|
func TestNewBaseRenderer(t *testing.T) {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
// SVG rendering constants
|
// SVG rendering constants
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TestSVGRenderer_SecurityValidation tests defense-in-depth color validation
|
// TestSVGRenderer_SecurityValidation tests defense-in-depth color validation
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestSVGPath_AddPolygon(t *testing.T) {
|
func TestSVGPath_AddPolygon(t *testing.T) {
|
||||||
|
|||||||
@@ -4,8 +4,8 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"regexp"
|
"regexp"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/constants"
|
"gitea.dockr.co/kev/go-jdenticon/internal/constants"
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
// hexColorRegex validates hex color strings in #RGB or #RRGGBB format.
|
// hexColorRegex validates hex color strings in #RGB or #RRGGBB format.
|
||||||
|
|||||||
@@ -4,8 +4,8 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/util"
|
"gitea.dockr.co/kev/go-jdenticon/internal/util"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Generator provides thread-safe identicon generation with caching.
|
// Generator provides thread-safe identicon generation with caching.
|
||||||
|
|||||||
@@ -3,8 +3,8 @@ package jdenticon
|
|||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/renderer"
|
"gitea.dockr.co/kev/go-jdenticon/internal/renderer"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Icon represents a generated identicon that can be rendered as SVG or PNG.
|
// Icon represents a generated identicon that can be rendered as SVG or PNG.
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/constants"
|
"gitea.dockr.co/kev/go-jdenticon/internal/constants"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TestDoSProtection_InputLength tests protection against large input strings.
|
// TestDoSProtection_InputLength tests protection against large input strings.
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package jdenticon
|
package jdenticon
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/ungluedlabs/go-jdenticon/internal/engine"
|
"gitea.dockr.co/kev/go-jdenticon/internal/engine"
|
||||||
)
|
)
|
||||||
|
|
||||||
// validation.go contains helper functions for input validation and DoS protection.
|
// validation.go contains helper functions for input validation and DoS protection.
|
||||||
|
|||||||
Reference in New Issue
Block a user