Skip to content

Upgrading tsdown 0.4 to 0.5

Review needed0.4.4 → 0.5.10New7Changed13Fixed6

Review neededUpgrade verdict

9 behavior changes.

  • Brings in the latest minor and patch versions of the project's dependencies.
  • Makes the tool faster when handling dynamic imports.
  • The command-line interface has been migrated.
  • Routine dependency updates that stay within the same major versions.
Nothing to change

No breaking, platform, security or deprecated items in this range.

Adds diff ^7.0.0, publint ^0.3.5, rollup ^4.34.8, rollup-plugin-dts ^6.1.1.

Installs 107 packages in all (was 124).

Also installs @babel/code-frame, @babel/helper-validator-identifier, @napi-rs/lzma-linux-x64-gnu, @publint/pack, @quansync/fs, @rolldown/binding-android-arm-eabi, @rolldown/binding-android-arm64, @rolldown/binding-linux-ppc64-gnu, @rolldown/binding-linux-s390x-gnu, @rolldown/binding-openharmony-arm64, @rolldown/pluginutils, @rollup/rollup-android-arm-eabi, @rollup/rollup-android-arm64, @rollup/rollup-android-x64, @rollup/rollup-darwin-arm64 and 31 more.

No longer installs @antfu/utils, @emnapi/core, @emnapi/runtime, @emnapi/wasi-threads, @esbuild/aix-ppc64, @esbuild/android-arm, @esbuild/android-arm64, @esbuild/android-x64, @esbuild/darwin-arm64, @esbuild/darwin-x64, @esbuild/freebsd-arm64, @esbuild/freebsd-x64, @esbuild/linux-arm, @esbuild/linux-arm64, @esbuild/linux-ia32 and 28 more.

Moves @oxc-parser/binding-darwin-arm64 0.39.0 → 0.51.0, @oxc-parser/binding-darwin-x64 0.39.0 → 0.51.0, @oxc-parser/binding-linux-arm64-gnu 0.39.0 → 0.51.0, @oxc-parser/binding-linux-arm64-musl 0.39.0 → 0.51.0, @oxc-parser/binding-linux-x64-gnu 0.39.0 → 0.51.0, @oxc-parser/binding-linux-x64-musl 0.39.0 → 0.51.0, @oxc-parser/binding-win32-arm64-msvc 0.39.0 → 0.51.0, @oxc-parser/binding-win32-x64-msvc 0.39.0 → 0.51.0, @oxc-project/types 0.39.0 → 0.156.0, 0.51.0, @rolldown/binding-darwin-arm64 0.15.0-snapshot-64a831c-20241207003504 → 1.2.16, @rolldown/binding-darwin-x64 0.15.0-snapshot-64a831c-20241207003504 → 1.2.16, @rolldown/binding-freebsd-x64 0.15.0-snapshot-64a831c-20241207003504 → 1.2.16, @rolldown/binding-linux-arm-gnueabihf 0.15.0-snapshot-64a831c-20241207003504 → 1.2.16, @rolldown/binding-linux-arm64-gnu 0.15.0-snapshot-64a831c-20241207003504 → 1.2.16, @rolldown/binding-linux-arm64-musl 0.15.0-snapshot-64a831c-20241207003504 → 1.2.16 and 13 more. Your build may pick other versions.

Nothing in this upgrade needs a code or configuration change.

Generated by DepDelta from published .d.ts files. Not mixed with prose notes.

  • removed: function runCLI(): Promise<void>
  • added: export { d as defineConfig } from './config.d-[hash]'
  • added: function d(options: Config): Config
  • added: interface O
  • added: property O.alias?: Record<string, string>
  • added: property O.bundleDts?: boolean
  • added: property O.clean?: boolean | string[]
  • added: property O.config?: boolean | string
  • added: property O.define?: Record<string, string>
  • added: property O.dts?: boolean | Options$1
  • added: property O.entry?: InputOptions['input']
  • added: property O.external?: External
  • added: property O.fixedExtension?: boolean
  • added: property O.format?: ModuleFormat | ModuleFormat[]
  • added: property O.globalName?: string
  • added: property O.inputOptions?: InputOptions | ((options: InputOptions, format: ModuleFormat) => MaybePromise<InputOptions | void | null>)
  • added: property O.minify?: boolean
  • added: property O.onSuccess?: () => void | Promise<void>
  • added: property O.outDir?: string
  • added: property O.outputOptions?: OutputOptions | ((options: OutputOptions, format: ModuleFormat) => MaybePromise<OutputOptions | void | null>)
  • added: property O.platform?: 'node' | 'neutral' | 'browser'
  • added: property O.plugins?: InputOptions['plugins']
  • added: property O.publint?: boolean | Options$3
  • added: property O.shims?: boolean
  • added: property O.silent?: boolean
  • added: property O.skipNodeModulesBundle?: boolean
  • added: property O.sourcemap?: Sourcemap
  • added: property O.target?: string | string[]
  • added: property O.treeshake?: boolean
  • added: property O.unused?: boolean | Options$2
  • added: property O.watch?: boolean | string | string[]
  • added: type C = Arrayable<Omit<Options, 'config'>>
  • added: type R = Omit<Overwrite<MarkPartial<Options, 'globalName' | 'inputOptions' | 'outputOptions' | 'minify' | 'target' | 'define' | 'alias' | 'external' | 'onSuccess' | 'dt…
  • removed: function cleanOutDir(cwd: string, patterns: string[]): Promise<void>
  • removed: function resolveEntry(entry: Options['entry']): Promise<string[] | Record<string, string>>
  • removed: function ExternalPlugin(pkg: PackageJson, skipNodeModulesBundle?: boolean): Plugin
  • removed: function getProductionDeps(pkg: PackageJson): Set<string>
  • removed: type External = InputOptions['external']
  • removed: function resolveOutputExtension(pkg: any, format: NormalizedFormat): 'mjs' | 'cjs' | 'js'
  • removed: function getShimsInject(format: NormalizedFormat, platform: ResolvedOptions['platform']): Record<string, [string, string]> | undefined
  • removed: function shortcuts(restart: () => void): void
  • removed: interface Shortcut
  • removed: property Shortcut.action: () => void | Promise<void>
  • removed: property Shortcut.description: string
  • removed: property Shortcut.key: string
  • removed: function watchBuild(options: ResolvedOptions, rebuild: () => void): Promise<FSWatcher>
  • removed: export { Config }
  • removed: export { logger }
  • removed: function defineConfig(options: Config): Config
  • changed: function build(userOptions?: Omit<Options, 'silent'>): Promise<void> → function build(userOptions?: Options): Promise<void>
  • added: const logger: ConsolaInstance
  • added: export { C as Config } from './config.d-[hash]'
  • added: export { d as defineConfig } from './config.d-[hash]'
  • removed: function normalizeFormat(format: ModuleFormat | ModuleFormat[]): NormalizedFormat[]
  • removed: function resolveOptions(options: Options): Promise<[configs: ResolvedOptions[], configFile?: string]>
  • removed: interface Options
  • removed: property Options.alias?: Record<string, string>
  • removed: property Options.clean?: boolean | string[]
  • removed: property Options.config?: boolean | string
  • removed: property Options.define?: Record<string, string>
  • removed: property Options.dts?: boolean | IsolatedDeclOptions
  • removed: property Options.entry?: InputOptions['input']
  • removed: property Options.external?: External
  • removed: property Options.format?: ModuleFormat | ModuleFormat[]
  • removed: property Options.globalName?: string
  • removed: property Options.inputOptions?: InputOptions
  • removed: property Options.minify?: boolean
  • removed: property Options.onSuccess?: () => void | Promise<void>
  • removed: property Options.outDir?: string
  • removed: property Options.outputOptions?: OutputOptions | ((options: OutputOptions, format: ModuleFormat) => MaybePromise<OutputOptions | void | null>)
  • removed: property Options.platform?: 'node' | 'neutral' | 'browser'
  • removed: property Options.plugins?: InputOptions['plugins']
  • removed: property Options.shims?: boolean
  • removed: property Options.silent?: boolean
  • removed: property Options.skipNodeModulesBundle?: boolean
  • removed: property Options.sourcemap?: Sourcemap
  • removed: property Options.target?: string | string[]
  • removed: property Options.treeshake?: boolean
  • removed: property Options.unused?: boolean | UnusedOptions
  • removed: property Options.watch?: boolean | string | string[]
  • removed: type Config = Arrayable<Omit<Options, 'config'>>
  • removed: type NormalizedFormat = Exclude<InternalModuleFormat, 'app'> | 'experimental-app'
  • removed: type ResolvedConfig = Extract<Config, any[]>
  • removed: type ResolvedOptions = Omit<Overwrite<MarkPartial<Options, 'globalName' | 'inputOptions' | 'outputOptions' | 'minify' | 'target' | 'define' | 'alias' | 'external' | 'onSuccess'>, { f…
  • removed: type Sourcemap = boolean | 'inline' | 'hidden'
  • removed: export { ExternalPlugin } from './features/external'
  • added: export { a as ExternalPlugin } from './plugins.d-[hash]'
  • added: function a(pkg?: PackageJson, skipNodeModulesBundle?: boolean): Plugin
  • added: type E = InputOptions['external']
  • removed: function fsExists(path: string): Promise<boolean>
  • removed: function lowestCommonAncestor(...filepaths: string[]): string
  • removed: function debounce<T extends (...args: any[]) => any>(fn: T, wait: number): T
  • removed: function toArray<T>(val: T | T[] | null | undefined, defaultValue?: T): T[]
  • removed: const debug: Debug.Debugger
  • removed: const logger: ConsolaInstance
  • removed: function getPackageType(pkg: PackageJson | undefined): 'module' | 'commonjs'
  • removed: function readPackageJson(dir: string): Promise<PackageJson | undefined>
  • removed: type Arrayable<T> = T | T[]
  • removed: type MarkPartial<T, K extends keyof T> = Omit<Required<T>, K> & Partial<Pick<T, K>>
  • removed: type MaybePromise<T> = T | Promise<T>
  • removed: type Overwrite<T, U> = Omit<T, keyof U> & U