Skip to content

Commit

Permalink
refactor: Use null-safe Boolean filtering (#14039)
Browse files Browse the repository at this point in the history
* refactor: Use null-safe Boolean filtering

* Simplify and remove file
  • Loading branch information
zharinov committed Feb 6, 2022
1 parent f0a1b64 commit cdd9b44
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 26 deletions.
7 changes: 1 addition & 6 deletions lib/datasource/maven/index.ts
Expand Up @@ -292,12 +292,7 @@ async function addReleasesUsingHeadRequests(
}

function getReleasesFromMap(releaseMap: ReleaseMap): Release[] {
const releases: Release[] = [];
for (const release of Object.values(releaseMap)) {
if (release) {
releases.push(release);
}
}
const releases = Object.values(releaseMap).filter(is.truthy);
if (releases.length) {
return releases;
}
Expand Down
11 changes: 4 additions & 7 deletions lib/util/host-rules.ts
Expand Up @@ -151,13 +151,10 @@ export function find(search: HostRuleSearch): HostRule {
}

export function hosts({ hostType }: { hostType: string }): string[] {
const result: string[] = [];
for (const rule of hostRules) {
if (rule.hostType === hostType && rule.resolvedHost) {
result.push(rule.resolvedHost);
}
}
return result;
return hostRules
.filter((rule) => rule.hostType === hostType)
.map((rule) => rule.resolvedHost)
.filter(is.truthy);
}

export function findAll({ hostType }: { hostType: string }): HostRule[] {
Expand Down
21 changes: 8 additions & 13 deletions lib/versioning/regex/index.ts
Expand Up @@ -109,25 +109,17 @@ export class RegExpVersioningApi extends GenericVersioningApi<RegExpVersion> {
);
}

private _getSemverVersions(versions: string[]): string[] {
const parsedVersions: string[] = [];
versions.forEach((v) => {
const parsedVersion = this._parse(v);
if (parsedVersion) {
parsedVersions.push(asSemver(parsedVersion));
}
});
return parsedVersions;
}

override getSatisfyingVersion(
versions: string[],
range: string
): string | null {
const parsedRange = this._parse(range);
return parsedRange
? semver.maxSatisfying(
this._getSemverVersions(versions),
versions
.map((v) => this._parse(v))
.filter(is.truthy)
.map(asSemver),
asSemver(parsedRange)
)
: null;
Expand All @@ -140,7 +132,10 @@ export class RegExpVersioningApi extends GenericVersioningApi<RegExpVersion> {
const parsedRange = this._parse(range);
return parsedRange
? semver.minSatisfying(
this._getSemverVersions(versions),
versions
.map((v) => this._parse(v))
.filter(is.truthy)
.map(asSemver),
asSemver(parsedRange)
)
: null;
Expand Down

0 comments on commit cdd9b44

Please sign in to comment.