diff --git a/.forgejo/workflows/mirror.yml b/.forgejo/workflows/mirror.yml new file mode 100644 index 0000000..7a2a056 --- /dev/null +++ b/.forgejo/workflows/mirror.yml @@ -0,0 +1,23 @@ +name: Mirror to GitHub + +on: + push: + branches: [main] + tags: ['v*'] + +jobs: + mirror: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: https://github.com/actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Push to GitHub mirror + uses: https://github.com/ad-m/github-push-action@master + with: + github_token: ${{ secrets.GH_MIRROR_TOKEN }} + repository: metamorphosis-dev/gosearch + branch: ${{ github.ref_name }} + force: true diff --git a/cmd/searxng-go/main.go b/cmd/searxng-go/main.go index d6fcaf3..de3b98c 100644 --- a/cmd/searxng-go/main.go +++ b/cmd/searxng-go/main.go @@ -9,12 +9,12 @@ import ( "net/http" "os" - "github.com/ashie/gosearch/internal/cache" - "github.com/ashie/gosearch/internal/config" - "github.com/ashie/gosearch/internal/httpapi" - "github.com/ashie/gosearch/internal/middleware" - "github.com/ashie/gosearch/internal/search" - "github.com/ashie/gosearch/internal/views" + "github.com/metamorphosis-dev/kafka/internal/cache" + "github.com/metamorphosis-dev/kafka/internal/config" + "github.com/metamorphosis-dev/kafka/internal/httpapi" + "github.com/metamorphosis-dev/kafka/internal/middleware" + "github.com/metamorphosis-dev/kafka/internal/search" + "github.com/metamorphosis-dev/kafka/internal/views" ) func main() { diff --git a/go.mod b/go.mod index 81efe4a..f153b2d 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/ashie/gosearch +module github.com/metamorphosis-dev/kafka go 1.25.0 diff --git a/internal/cache/cache.go b/internal/cache/cache.go index 51d2cda..b0099f9 100644 --- a/internal/cache/cache.go +++ b/internal/cache/cache.go @@ -9,7 +9,7 @@ import ( "log/slog" "time" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" "github.com/redis/go-redis/v9" ) diff --git a/internal/cache/cache_test.go b/internal/cache/cache_test.go index e2e9594..3cbb9eb 100644 --- a/internal/cache/cache_test.go +++ b/internal/cache/cache_test.go @@ -3,7 +3,7 @@ package cache import ( "testing" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestKey_Deterministic(t *testing.T) { diff --git a/internal/engines/arxiv.go b/internal/engines/arxiv.go index 0c58d68..5565f7f 100644 --- a/internal/engines/arxiv.go +++ b/internal/engines/arxiv.go @@ -12,7 +12,7 @@ import ( "strings" "time" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) const ( diff --git a/internal/engines/arxiv_test.go b/internal/engines/arxiv_test.go index 276769d..a59fe3c 100644 --- a/internal/engines/arxiv_test.go +++ b/internal/engines/arxiv_test.go @@ -6,7 +6,7 @@ import ( "strings" "testing" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestArxivEngine_Search(t *testing.T) { diff --git a/internal/engines/bing.go b/internal/engines/bing.go index 1f091ca..ff1a5da 100644 --- a/internal/engines/bing.go +++ b/internal/engines/bing.go @@ -12,7 +12,7 @@ import ( "strconv" "strings" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) // BingEngine searches Bing via the public Bing API. diff --git a/internal/engines/bing_test.go b/internal/engines/bing_test.go index e5a043d..bb09c64 100644 --- a/internal/engines/bing_test.go +++ b/internal/engines/bing_test.go @@ -7,7 +7,7 @@ import ( "testing" "time" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestBingEngine_EmptyQuery(t *testing.T) { diff --git a/internal/engines/braveapi.go b/internal/engines/braveapi.go index 9b94722..2cb20ff 100644 --- a/internal/engines/braveapi.go +++ b/internal/engines/braveapi.go @@ -11,7 +11,7 @@ import ( "strings" "time" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) // BraveEngine implements the SearXNG `braveapi` engine (Brave Web Search API). diff --git a/internal/engines/braveapi_test.go b/internal/engines/braveapi_test.go index 7f43f68..13c7420 100644 --- a/internal/engines/braveapi_test.go +++ b/internal/engines/braveapi_test.go @@ -5,7 +5,7 @@ import ( "net/http" "testing" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestBraveEngine_GatingAndHeader(t *testing.T) { diff --git a/internal/engines/crossref.go b/internal/engines/crossref.go index f52f0cb..cdcc0b4 100644 --- a/internal/engines/crossref.go +++ b/internal/engines/crossref.go @@ -11,7 +11,7 @@ import ( "strings" "time" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) type CrossrefEngine struct { diff --git a/internal/engines/crossref_test.go b/internal/engines/crossref_test.go index 9d6c6b1..070e85b 100644 --- a/internal/engines/crossref_test.go +++ b/internal/engines/crossref_test.go @@ -5,7 +5,7 @@ import ( "net/http" "testing" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestCrossrefEngine_Search(t *testing.T) { diff --git a/internal/engines/duckduckgo.go b/internal/engines/duckduckgo.go index 3636275..28b4972 100644 --- a/internal/engines/duckduckgo.go +++ b/internal/engines/duckduckgo.go @@ -9,7 +9,7 @@ import ( "net/url" "strings" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) // DuckDuckGoEngine searches DuckDuckGo's Lite/HTML endpoint. diff --git a/internal/engines/duckduckgo_parse.go b/internal/engines/duckduckgo_parse.go index d98e3fa..b3935e4 100644 --- a/internal/engines/duckduckgo_parse.go +++ b/internal/engines/duckduckgo_parse.go @@ -5,7 +5,7 @@ import ( "net/url" "strings" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) // parseDuckDuckGoHTML parses DuckDuckGo Lite's HTML response for search results. diff --git a/internal/engines/duckduckgo_test.go b/internal/engines/duckduckgo_test.go index 43d1c5d..5379bf2 100644 --- a/internal/engines/duckduckgo_test.go +++ b/internal/engines/duckduckgo_test.go @@ -7,7 +7,7 @@ import ( "testing" "time" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestDuckDuckGoEngine_EmptyQuery(t *testing.T) { diff --git a/internal/engines/engine.go b/internal/engines/engine.go index bfc9dd0..d07aec9 100644 --- a/internal/engines/engine.go +++ b/internal/engines/engine.go @@ -3,7 +3,7 @@ package engines import ( "context" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) // Engine is a Go-native implementation of a SearXNG engine. diff --git a/internal/engines/github.go b/internal/engines/github.go index 8d86516..44102f0 100644 --- a/internal/engines/github.go +++ b/internal/engines/github.go @@ -11,7 +11,7 @@ import ( "strings" "time" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) // GitHubEngine searches GitHub repositories and code via the public search API. diff --git a/internal/engines/github_test.go b/internal/engines/github_test.go index 137c10b..9b569eb 100644 --- a/internal/engines/github_test.go +++ b/internal/engines/github_test.go @@ -6,7 +6,7 @@ import ( "testing" "time" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestGitHubEngine_EmptyQuery(t *testing.T) { diff --git a/internal/engines/planner.go b/internal/engines/planner.go index d18ecb0..66ff974 100644 --- a/internal/engines/planner.go +++ b/internal/engines/planner.go @@ -4,7 +4,7 @@ import ( "os" "strings" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) var defaultPortedEngines = []string{"wikipedia", "arxiv", "crossref", "braveapi", "qwant"} diff --git a/internal/engines/qwant.go b/internal/engines/qwant.go index 67b5b99..bb2a03c 100644 --- a/internal/engines/qwant.go +++ b/internal/engines/qwant.go @@ -10,7 +10,7 @@ import ( "net/url" "strings" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" "github.com/PuerkitoBio/goquery" ) diff --git a/internal/engines/qwant_lite_test.go b/internal/engines/qwant_lite_test.go index c81d1fc..63903a4 100644 --- a/internal/engines/qwant_lite_test.go +++ b/internal/engines/qwant_lite_test.go @@ -5,7 +5,7 @@ import ( "net/http" "testing" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestQwantEngine_WebLite(t *testing.T) { diff --git a/internal/engines/qwant_test.go b/internal/engines/qwant_test.go index b19d184..b3a5517 100644 --- a/internal/engines/qwant_test.go +++ b/internal/engines/qwant_test.go @@ -5,7 +5,7 @@ import ( "net/http" "testing" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestQwantEngine_Web(t *testing.T) { diff --git a/internal/engines/reddit.go b/internal/engines/reddit.go index 8388152..6ba98e4 100644 --- a/internal/engines/reddit.go +++ b/internal/engines/reddit.go @@ -10,7 +10,7 @@ import ( "net/url" "strings" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) // RedditEngine searches Reddit posts via the public JSON API. diff --git a/internal/engines/reddit_test.go b/internal/engines/reddit_test.go index b98b77f..fce61f3 100644 --- a/internal/engines/reddit_test.go +++ b/internal/engines/reddit_test.go @@ -6,7 +6,7 @@ import ( "testing" "time" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestRedditEngine_EmptyQuery(t *testing.T) { diff --git a/internal/engines/wikipedia.go b/internal/engines/wikipedia.go index 4e58a7a..bff708e 100644 --- a/internal/engines/wikipedia.go +++ b/internal/engines/wikipedia.go @@ -10,7 +10,7 @@ import ( "net/url" "strings" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) type WikipediaEngine struct { @@ -49,7 +49,7 @@ func (e *WikipediaEngine) Search(ctx context.Context, req contracts.SearchReques // Wikimedia APIs require a descriptive User-Agent. httpReq.Header.Set( "User-Agent", - "gosearch-go/0.1 (compatible; +https://github.com/ashie/gosearch)", + "gosearch-go/0.1 (compatible; +https://github.com/metamorphosis-dev/kafka)", ) // Best-effort: hint content language. if req.Language != "" && req.Language != "auto" { diff --git a/internal/engines/wikipedia_test.go b/internal/engines/wikipedia_test.go index b2dc230..592f427 100644 --- a/internal/engines/wikipedia_test.go +++ b/internal/engines/wikipedia_test.go @@ -5,7 +5,7 @@ import ( "net/http" "testing" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestWikipediaEngine_Search(t *testing.T) { diff --git a/internal/httpapi/handlers.go b/internal/httpapi/handlers.go index 5dbd579..21ad335 100644 --- a/internal/httpapi/handlers.go +++ b/internal/httpapi/handlers.go @@ -3,9 +3,9 @@ package httpapi import ( "net/http" - "github.com/ashie/gosearch/internal/contracts" - "github.com/ashie/gosearch/internal/search" - "github.com/ashie/gosearch/internal/views" + "github.com/metamorphosis-dev/kafka/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/search" + "github.com/metamorphosis-dev/kafka/internal/views" ) type Handler struct { diff --git a/internal/search/merge.go b/internal/search/merge.go index 344a78a..54ff9bb 100644 --- a/internal/search/merge.go +++ b/internal/search/merge.go @@ -5,7 +5,7 @@ import ( "net/url" "strings" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) // MergeResponses merges multiple SearXNG-compatible JSON responses. diff --git a/internal/search/merge_test.go b/internal/search/merge_test.go index 36850ca..7b54064 100644 --- a/internal/search/merge_test.go +++ b/internal/search/merge_test.go @@ -4,7 +4,7 @@ import ( "strings" "testing" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func TestMergeResponses_DedupResultsAndSets(t *testing.T) { diff --git a/internal/search/service.go b/internal/search/service.go index f6ca4fa..91fef2b 100644 --- a/internal/search/service.go +++ b/internal/search/service.go @@ -6,10 +6,10 @@ import ( "sync" "time" - "github.com/ashie/gosearch/internal/cache" - "github.com/ashie/gosearch/internal/contracts" - "github.com/ashie/gosearch/internal/engines" - "github.com/ashie/gosearch/internal/upstream" + "github.com/metamorphosis-dev/kafka/internal/cache" + "github.com/metamorphosis-dev/kafka/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/engines" + "github.com/metamorphosis-dev/kafka/internal/upstream" ) type ServiceConfig struct { diff --git a/internal/search/service_test.go b/internal/search/service_test.go index b47f2d8..6a9d1e6 100644 --- a/internal/search/service_test.go +++ b/internal/search/service_test.go @@ -6,8 +6,8 @@ import ( "testing" "time" - "github.com/ashie/gosearch/internal/contracts" - "github.com/ashie/gosearch/internal/engines" + "github.com/metamorphosis-dev/kafka/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/engines" ) // mockEngine is a test engine that returns a predefined response or error. diff --git a/internal/search/types.go b/internal/search/types.go index ff5a406..b4694bb 100644 --- a/internal/search/types.go +++ b/internal/search/types.go @@ -1,6 +1,6 @@ package search -import "github.com/ashie/gosearch/internal/contracts" +import "github.com/metamorphosis-dev/kafka/internal/contracts" // Re-export the JSON contract types so the rest of the code can stay in the // `internal/search` namespace without creating an import cycle. diff --git a/internal/upstream/client.go b/internal/upstream/client.go index 54c6685..3a11843 100644 --- a/internal/upstream/client.go +++ b/internal/upstream/client.go @@ -11,7 +11,7 @@ import ( "strings" "time" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) type Client struct { diff --git a/internal/views/views.go b/internal/views/views.go index 2626703..4b5c292 100644 --- a/internal/views/views.go +++ b/internal/views/views.go @@ -8,7 +8,7 @@ import ( "strconv" "strings" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) //go:embed all:templates diff --git a/internal/views/views_test.go b/internal/views/views_test.go index 2b206d9..1a38db4 100644 --- a/internal/views/views_test.go +++ b/internal/views/views_test.go @@ -3,7 +3,7 @@ package views import ( "testing" - "github.com/ashie/gosearch/internal/contracts" + "github.com/metamorphosis-dev/kafka/internal/contracts" ) func mockSearchResponse(query string, numResults int) contracts.SearchResponse {