Commit Graph

19 Commits

Author SHA1 Message Date
Sebastian Poxhofer 97327c3d28 refactor(linters): add prefer-coerce-array rule (#45492)
* refactor(linters): add prefer-coerce-array rule

Refs #45217

`x ?? []` and `coerceArray(x)` say the same thing, but only the second
one is searchable and consistent. The rule flags a `??` whose default is
a bare `[]` literal; a non-empty default or an asserted `([] as Foo[])`
still passes.

Applying it across `lib/` surfaced three spots the helper cannot cover,
which keep `?? []` with a disable comment or a narrower fix:

- `package-files.ts` destructures a tuple, which `coerceArray()` widens
- `generate.spec.ts` defaults `matchAll()`, an iterator rather than an array
- `mise/upgradeable-tooling.ts` declares a `Record` return, so its
  `?? []` fallback was wrong to begin with and becomes `coerceObject()`

* refactor(platform/github): hoist the GHE version header lookup

`Object.entries(...).find()` returns a tuple, and defaulting it with
`?? []` only to destructure the second element reads as an array
default when it is not one. Name the found entry instead, which drops
the `?? []` rather than routing a tuple through `coerceArray()`.
2026-08-28 09:27:58 +00:00
Sebastian Poxhofer 4176a3bc3a test(linter): add renovate/no-stateful-global-regex rule (#44566)
ci(linter): add renovate/no-stateful-global-regex rule

Flag module-scope const/let bindings initialized with a g- or y-flagged
regex (regex literal, regEx('...', 'g'), or regEx(/.../g)) that are
later used with .test() or .exec() in the same file. Such regexes are
stateful (lastIndex) and shared across calls, causing intermittent
match failures. Uses via matchAll()/replace()/split() are not flagged.

Fix the four pre-existing violations:
- gitea/forgejo utils: drop the pointless g flag from
  reconfigurePrRegex, which made .test() alternate results.
- mix extract: convert module-scope exec() loops on g-flagged regexes
  to matchAll().

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-14 10:52:27 +00:00
Roshan Banisetti 5a8b5bbedd feat(platform/gitea,forgejo): use login instead of username for user handles (#43904)
refactor(platform/gitea,forgejo): replace username with login in User types
2026-06-10 06:10:43 +00:00
Adam Setch 579ff4c2ba feat: hyperlink warnings to dep dashboard (#40395)
* feat: hyperlink warnings to dep dashboard

Signed-off-by: Adam Setch <adam.setch@outlook.com>

* feat: hyperlink warnings to dep dashboard

Signed-off-by: Adam Setch <adam.setch@outlook.com>

* feat: hyperlink warnings to dep dashboard

Signed-off-by: Adam Setch <adam.setch@outlook.com>

* feat: hyperlink warnings to dep dashboard

Signed-off-by: Adam Setch <adam.setch@outlook.com>

* add tests

Signed-off-by: Adam Setch <adam.setch@outlook.com>

* update tests

Signed-off-by: Adam Setch <adam.setch@outlook.com>

* Merge branch 'main' into feat/hyperlink-dashboard

Signed-off-by: Adam Setch <adam.setch@outlook.com>

* updated forgejo smartLinks

Signed-off-by: Adam Setch <adam.setch@outlook.com>

---------

Signed-off-by: Adam Setch <adam.setch@outlook.com>
2026-02-20 15:19:35 +00:00
Sergei Zharinov 930cf6633c refactor: Rewrite imports with .ts extensions (#40700)
fix: Additional vi.mock path corrections and prettier formatting
2026-01-26 22:48:17 +00:00
RahulGautamSingh 76f911041a refactor: use named exports (#39196)
* use named exports

* fix test

* add missing imnport

* fix prettier
2025-11-10 12:00:35 +00:00
dh-seanmurphy 9096e55e3e fix(gitea): allow fallbacks in case default merge style not allowed (#37768)
Co-authored-by: RahulGautamSingh <rahultesnik@gmail.com>
2025-09-09 08:53:22 +00:00
Michael Kriese 6cc830a8d9 fix(gitea): wrong state for merged PR (#30398) 2024-07-26 10:39:04 +00:00
Michael Kriese 4140fe9beb feat(gitea): filter and abort unusable repos (#28063)
Co-authored-by: Rhys Arkins <rhys@arkins.net>
Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
2024-04-25 09:57:02 +00:00
RahulGautamSingh f8890796bf feat: update labels when config changes (#25340)
Co-authored-by: Rhys Arkins <rhys@arkins.net>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
2024-03-30 04:49:13 +00:00
Sergei Zharinov de68769fc2 feat(gitea): Add PR cache (#26451)
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2024-01-15 17:32:44 +00:00
Sergei Zharinov b69416ce17 refactor(prettier): Force trailing commas (#25631) 2023-11-07 15:50:29 +00:00
RahulGautamSingh d869c946d1 refactor: reduce debug metadata (#18737) 2022-11-07 11:29:02 +00:00
RahulGautamSingh c56588eaba refactor: convert PlatformmId to union (#18458) 2022-11-01 14:46:09 +00:00
Michael Kriese ababf34c7e refactor(gitea): cleanup types (#16968) 2022-08-04 12:00:48 +00:00
Michael Kriese ab7ddb5e3c feat(platform/gitea): support automergeStrategy (#16851)
* feat(platform/gitea): support `automergeStrategy`

* chore: revert change

* Update docs/usage/configuration-options.md

* Update docs/usage/configuration-options.md
2022-07-29 14:40:26 +02:00
Dominic Seitz 953ef18e87 feat(gitea): Support gitUrl (#14947)
* feat: Support gitUrl on gitea platform

* refactor: use query token instead of auth header

* refactor: debug message style

* refactor: use url property query

* refactor: use basic http auth for gitea

* test: add gitea tests for gitUrl property

* refactor: capitalising abbreviations

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* refactor: move getRepoUrl to utils

* fix: add missing property ssh_url to fix linting

* fix: utils strict mode issues

* Merge branch 'main' into main

* refactor: use endpoint without api path slicing

* refactor: use different null check

* refactor: make urls optional

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>

* test: prettier fix

* test: update test

* refactor: throw error if clone_url is missing

* test: refactor empty clone_url test

* refactor: change empty clone_url logic

* refactor: change imports

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>

* test: add token tests

* refactor: replace deprecated url module

* refactor: add null checks

* test: add tests for null checks

* test: use host rule implementation instead of mock

* refactor: remove explicit typing

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>

* test: update mocking

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>

* test: change dynamic imports

* Update lib/modules/platform/gitea/utils.ts

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
Co-authored-by: Rhys Arkins <rhys@arkins.net>
2022-06-09 13:48:40 +00:00
Dominic Seitz 292f144590 refactor(gitea): use env variable endpoint without api path appendix (#15055)
* refactor: use gitea env variable endpoint without api path appendix

* refactor: use regex for api path trimming

* refacotr: move api path constant to gitea-helper

* refactor: consider end of string for api path trimming

* refactor: use baseUrl in gitea helper tests

* test: use toEqual instead of snapshot test

* refactor: update gitea default endpoint

* test: update gitea base url

* test: update init platform test

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>

* test: fix linting

Co-authored-by: Rhys Arkins <rhys@arkins.net>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2022-05-24 18:32:45 +00:00
Rhys Arkins dca3418bbd refactor: lib/modules (#14488)
Moves datasource, manager, platform and versioning code from lib/ into new lib/modules/

BREAKING CHANGE: External tools must update paths to datasource, manager, platform and versioning
2022-03-04 09:04:02 +01:00