import { deduplicateArray } from '../../../util/array.ts'; import { CrateDatasource } from '../../datasource/crate/index.ts'; import { GitRefsDatasource } from '../../datasource/git-refs/index.ts'; import { GitTagsDatasource } from '../../datasource/git-tags/index.ts'; import { GithubReleasesDatasource } from '../../datasource/github-releases/index.ts'; import { GithubTagsDatasource } from '../../datasource/github-tags/index.ts'; import { GitlabReleasesDatasource } from '../../datasource/gitlab-releases/index.ts'; import { GoDatasource } from '../../datasource/go/index.ts'; import { JavaVersionDatasource } from '../../datasource/java-version/index.ts'; import { NodeVersionDatasource } from '../../datasource/node-version/index.ts'; import { NpmDatasource } from '../../datasource/npm/index.ts'; import { NugetDatasource } from '../../datasource/nuget/index.ts'; import { PypiDatasource } from '../../datasource/pypi/index.ts'; import { RubyVersionDatasource } from '../../datasource/ruby-version/index.ts'; import { RubygemsDatasource } from '../../datasource/rubygems/index.ts'; import { RustVersionDatasource } from '../../datasource/rust-version/index.ts'; import { supportedDatasources as asdfSupportedDatasources } from '../asdf/index.ts'; export { updateArtifacts } from './artifacts.ts'; export { knownDepTypes, supportsDynamicDepTypesNote } from './dep-types.ts'; export { extractPackageFile } from './extract.ts'; export { updateLockedDependency } from './update-locked.ts'; export const displayName = 'mise-en-place'; export const supportsLockFileMaintenance = true; export const lockFileNames = ['mise.lock']; export const lockFileMaintenanceIsDelegatedToPackageManager = true; export const url = 'https://mise.jdx.dev'; export const defaultConfig = { managerFilePatterns: [ '**/{,.}mise{,.*}.toml', '**/{,.}mise/config{,.*}.toml', '**/.config/mise{,.*}.toml', '**/.config/mise/{mise,config}{,.*}.toml', '**/.config/mise/conf.d/*.toml', '**/.rtx{,.*}.toml', ], pinDigests: false, }; const backendDatasources = { core: [ GithubReleasesDatasource.id, GithubTagsDatasource.id, JavaVersionDatasource.id, NodeVersionDatasource.id, RubyVersionDatasource.id, RustVersionDatasource.id, ], // Re-use the asdf datasources, as mise and asdf support the same plugins. asdf: asdfSupportedDatasources, aqua: [GithubTagsDatasource.id], cargo: [CrateDatasource.id, GitTagsDatasource.id, GitRefsDatasource.id], dotnet: [NugetDatasource.id], gem: [RubygemsDatasource.id], github: [GithubReleasesDatasource.id], gitlab: [GitlabReleasesDatasource.id], go: [GoDatasource.id], npm: [NpmDatasource.id], pipx: [PypiDatasource.id, GithubTagsDatasource.id, GitRefsDatasource.id], spm: [GithubReleasesDatasource.id], ubi: [GithubReleasesDatasource.id], // not supported vfox: [], }; /** * Backends that are definitely supported out-of-the-box with Renovate. */ export const supportedBackendDatasources = new Set( Object.keys(backendDatasources).filter((key) => key !== 'vfox'), ); /** * Backends that may require some additional work for users to configure Renovate to update them. */ export const maybeSupportedBackendDatasources = new Set( Object.keys(backendDatasources).filter( (key) => key === 'vfox' || key === 'aqua', ), ); export const supportedDatasources = deduplicateArray( Object.values(backendDatasources).flat(), ).sort();