Skip to content

Upgrading tsdown 0.18 to 0.19

Breaking0.18.4 → 0.19.0Breaking6New6Changed3Fixed3

BreakingUpgrade verdict

4 breaking changes.

  • Rename debugLogs to debug  -  (bb4e7).
  • Remove deprecated silent option  -  (59015).
  • exports.
  • devtools.
Top 3 of 4 that need code or config changes

Moves @oxc-project/types 0.103.0, 0.127.0 → 0.107.0, 0.127.0, @rolldown/binding-android-arm64 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-darwin-arm64 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-darwin-x64 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-freebsd-x64 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-linux-arm-gnueabihf 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-linux-arm64-gnu 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-linux-arm64-musl 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-linux-x64-gnu 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-linux-x64-musl 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-openharmony-arm64 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-wasm32-wasi 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-win32-arm64-msvc 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/binding-win32-x64-msvc 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17, @rolldown/pluginutils 1.0.0-beta.57, 1.0.0-rc.17 → 1.0.0-beta.59, 1.0.0-rc.17 and 1 more. Your build may pick other versions.

Breaking4
Rename debugLogs to debug  -  (bb4e7).
debugLogsdebug
Remove deprecated silent option  -  (59015).
silent
exports.
legacymainmoduleexports.excludetypesexports.legacy
devtools.
debugdevtoolsdebug.devtoolsdevtools.ui

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

  • added: function r(userConfig: UserConfig, inlineConfig: InlineConfig): Promise<ResolvedConfig[]>
  • removed: export { DebugOptions }
  • added: export { DevtoolsOptions }
  • added: export { resolveUserConfig }
  • added: function buildWithConfigs(configs: ResolvedConfig[], configFiles: string[]): Promise<TsdownBundle[]>
  • added: function enableDebug(debug?: boolean | Arrayable<string>): void
  • removed: const S: Logger
  • removed: export { DtsOptions as n }
  • removed: export { TreeshakingOptions as l }
  • removed: export { UnusedOptions as d }
  • removed: function v(userOptions: ReportOptions, logger: Logger, cwd: string, cjsDts?: boolean, nameLabel?: string, isDualFormat?: boolean): Plugin
  • removed: interface F
  • removed: interface I
  • removed: interface L extends NonNullable<InputOptions['debug']>
  • removed: interface M extends PackageJson
  • removed: interface O
  • removed: interface P
  • removed: interface R
  • removed: interface T extends CheckPackageOptions
  • removed: interface _
  • removed: interface b
  • removed: interface f
  • removed: interface g
  • removed: interface i extends UserConfig
  • removed: interface j
  • removed: interface k
  • removed: interface w extends AsyncDisposable
  • removed: interface x
  • removed: interface y extends Options
  • removed: interface z
  • removed: property F.buildOptions: BuildOptions
  • removed: property I.'build:before': (ctx: BuildContext & RolldownContext) => void | Promise<void>
  • removed: property I.'build:done': (ctx: BuildContext & { chunks: RolldownChunk[] }) => void | Promise<void>
  • removed: property I.'build:prepare': (ctx: BuildContext) => void | Promise<void>
  • removed: property L.clean?: boolean
  • removed: property L.devtools?: boolean | Partial<StartOptions>
  • removed: property M.packageJsonPath: string
  • removed: property O.css?: string
  • removed: property O.dts?: string
  • removed: property O.js?: string
  • removed: property P.hooks: Hookable<TsdownHooks>
  • removed: property P.options: ResolvedConfig
  • removed: property R.fileName?: string
  • removed: property R.splitting?: boolean
  • removed: property T.ignoreRules?: string[]
  • removed: property T.level?: 'error' | 'warn'
  • removed: property T.profile?: 'strict' | 'node16' | 'esm-only'
  • removed: property _.brotli?: boolean
  • removed: property _.gzip?: boolean
  • removed: property _.maxCompressSize?: number
  • removed: property b.all?: boolean
  • removed: property b.customExports?: (exports: Record<string, any>, context: { pkg: PackageJson; chunks: ChunksByFormat; isPublish: boolean }) => Awaitable<Record<string, any>>
  • removed: property b.devExports?: boolean | string
  • removed: property b.exclude?: (RegExp | string)[]
  • removed: property b.packageJson?: boolean
  • removed: property f.alias?: Record<string, string>
  • removed: property f.attw?: WithEnabled<AttwOptions>
  • removed: property f.banner?: ChunkAddon
  • removed: property f.bundle?: boolean
  • removed: property f.cjsDefault?: boolean
  • removed: property f.clean?: boolean | string[]
  • removed: property f.copy?: CopyOptions | CopyOptionsFn
  • removed: property f.css?: CssOptions
  • removed: property f.customLogger?: Logger
  • removed: property f.cwd?: string
  • removed: property f.debug?: WithEnabled<DebugOptions>
  • removed: property f.define?: Record<string, string>
  • removed: property f.dts?: WithEnabled<DtsOptions>
  • removed: property f.entry?: TsdownInputOption
  • removed: property f.env?: Record<string, any>
  • removed: property f.envFile?: string
  • removed: property f.envPrefix?: string | string[]
  • removed: property f.exports?: WithEnabled<ExportsOptions>
  • removed: property f.external?: ExternalOption
  • removed: property f.failOnWarn?: boolean | CIOption
  • removed: property f.fixedExtension?: boolean
  • removed: property f.footer?: ChunkAddon
  • removed: property f.format?: Format | Format[] | Partial<Record<Format, Partial<ResolvedConfig>>>
  • removed: property f.fromVite?: boolean | 'vitest'
  • removed: property f.globImport?: boolean
  • removed: property f.globalName?: string
  • removed: property f.hash?: boolean
  • removed: property f.hooks?: Partial<TsdownHooks> | ((hooks: Hookable<TsdownHooks>) => Awaitable<void>)
  • removed: property f.ignoreWatch?: Arrayable<string | RegExp>
  • removed: property f.inlineOnly?: Arrayable<string | RegExp>
  • removed: property f.inputOptions?: InputOptions | ((options: InputOptions, format: NormalizedFormat, context: { cjsDts: boolean }) => Awaitable<InputOptions | void | null>)
  • removed: property f.loader?: ModuleTypes
  • removed: property f.logLevel?: LogLevel
  • removed: property f.minify?: boolean | 'dce-only' | MinifyOptions
  • removed: property f.name?: string
  • removed: property f.noExternal?: Arrayable<string | RegExp> | NoExternalFn
  • removed: property f.nodeProtocol?: 'strip' | boolean
  • removed: property f.onSuccess?: string | ((config: ResolvedConfig, signal: AbortSignal) => void | Promise<void>)
  • removed: property f.outDir?: string
  • removed: property f.outExtensions?: OutExtensionFactory
  • removed: property f.outputOptions?: OutputOptions | ((options: OutputOptions, format: NormalizedFormat, context: { cjsDts: boolean }) => Awaitable<OutputOptions | void | null>)
  • removed: property f.platform?: 'node' | 'neutral' | 'browser'
  • removed: property f.plugins?: InputOptions['plugins']
  • removed: property f.publicDir?: CopyOptions | CopyOptionsFn
  • removed: property f.publint?: WithEnabled<PublintOptions>
  • removed: property f.removeNodeProtocol?: boolean
  • removed: property f.report?: WithEnabled<ReportOptions>
  • removed: property f.shims?: boolean
  • removed: property f.silent?: boolean
  • removed: property f.skipNodeModulesBundle?: boolean
  • removed: property f.sourcemap?: Sourcemap
  • removed: property f.target?: string | string[] | false
  • removed: property f.treeshake?: boolean | TreeshakingOptions
  • removed: property f.tsconfig?: string | boolean
  • removed: property f.unbundle?: boolean
  • removed: property f.unused?: WithEnabled<UnusedOptions>
  • removed: property f.watch?: boolean | Arrayable<string>
  • removed: property f.workspace?: Workspace | Arrayable<string> | true
  • removed: property f.write?: boolean
  • removed: property g.config?: boolean | string
  • removed: property g.exclude?: Arrayable<string>
  • removed: property g.include?: Arrayable<string> | 'auto'
  • removed: property i.config?: boolean | string
  • removed: property i.configLoader?: 'auto' | 'native' | 'unrun'
  • removed: property i.filter?: RegExp | Arrayable<string>
  • removed: property j.dts?: string
  • removed: property j.js?: string
  • removed: property k.format: NormalizedFormat
  • removed: property k.options: InputOptions
  • removed: property k.pkgType?: PackageType
  • removed: property w.chunks: RolldownChunk[]
  • removed: property w.config: ResolvedConfig
  • removed: property x.error: (...args: any[]) => void
  • removed: property x.info: (...args: any[]) => void
  • removed: property x.level: LogLevel
  • removed: property x.success: (...args: any[]) => void
  • removed: property x.warn: (...args: any[]) => void
  • removed: property x.warnOnce: (...args: any[]) => void
  • removed: property z.flatten?: boolean
  • removed: property z.from: string | string[]
  • removed: property z.rename?: string | ((name: string, extension: string, fullPath: string) => string)
  • removed: property z.to?: string
  • removed: property z.verbose?: boolean
  • removed: type A = (context: OutExtensionContext) => OutExtensionObject | undefined
  • removed: type B = Arrayable<string | CopyEntry>
  • removed: type C = (OutputChunk | OutputAsset) & { outDir: string }
  • removed: type D = (ctx: { format: Format; fileName: string }) => ChunkAddonObject | string | undefined
  • removed: type E = ChunkAddonObject | ChunkAddonFunction | string
  • removed: type N = 'module' | 'commonjs' | undefined
  • removed: type V = (options: ResolvedConfig) => Awaitable<CopyOptions>
  • removed: type a = (id: string, importer: string | undefined) => boolean | null | undefined | void
  • removed: type c = boolean | 'inline' | 'hidden'
  • removed: type h<T> = boolean | undefined | CIOption | (T & { enabled?: boolean | CIOption })
  • removed: type m = (inlineConfig: InlineConfig, context: { ci: boolean }) => Awaitable<Arrayable<UserConfig>>
  • removed: type o = InternalModuleFormat
  • removed: type p = Awaitable<Arrayable<UserConfig> | UserConfigFn>
  • removed: type r = ModuleFormat
  • removed: type s = Overwrite<MarkPartial<Omit<UserConfig, 'workspace' | 'fromVite' | 'publicDir' | 'silent' | 'bundle' | 'removeNodeProtocol' | 'logLevel' | 'failOnWarn' | 'custo…
  • removed: type t = 'ci-only' | 'local-only'
  • removed: type u = string | string[] | Record<string, string | string[]>
  • added: const b: Logger
  • added: export { DtsOptions as n }
  • added: export { TreeshakingOptions as l }
  • added: export { UnusedOptions as d }
  • added: function v(userOptions: ReportOptions, logger: Logger, cwd: string, cjsDts?: boolean, nameLabel?: string, isDualFormat?: boolean): Plugin
  • added: interface F
  • added: interface I
  • added: interface L extends NonNullable<InputOptions['devtools']>
  • added: interface M extends PackageJson
  • added: interface O
  • added: interface P
  • added: interface R
  • added: interface S
  • added: interface T extends CheckPackageOptions
  • added: interface _
  • added: interface f
  • added: interface g
  • added: interface i extends UserConfig
  • added: interface j
  • added: interface k
  • added: interface w extends AsyncDisposable
  • added: interface x extends Options
  • added: interface y
  • added: interface z
  • added: property F.buildOptions: BuildOptions
  • added: property I.'build:before': (ctx: BuildContext & RolldownContext) => void | Promise<void>
  • added: property I.'build:done': (ctx: BuildContext & { chunks: RolldownChunk[] }) => void | Promise<void>
  • added: property I.'build:prepare': (ctx: BuildContext) => void | Promise<void>
  • added: property L.clean?: boolean
  • added: property L.ui?: boolean | Partial<StartOptions>
  • added: property M.packageJsonPath: string
  • added: property O.css?: string
  • added: property O.dts?: string
  • added: property O.js?: string
  • added: property P.hooks: Hookable<TsdownHooks>
  • added: property P.options: ResolvedConfig
  • added: property R.fileName?: string
  • added: property R.splitting?: boolean
  • added: property S.all?: boolean
  • added: property S.customExports?: (exports: Record<string, any>, context: { pkg: PackageJson; chunks: ChunksByFormat; isPublish: boolean }) => Awaitable<Record<string, any>>
  • added: property S.devExports?: boolean | string
  • added: property S.exclude?: (RegExp | string)[]
  • added: property S.legacy?: boolean
  • added: property S.packageJson?: boolean
  • added: property T.ignoreRules?: string[]
  • added: property T.level?: 'error' | 'warn'
  • added: property T.profile?: 'strict' | 'node16' | 'esm-only'
  • added: property _.brotli?: boolean
  • added: property _.gzip?: boolean
  • added: property _.maxCompressSize?: number
  • added: property f.alias?: Record<string, string>
  • added: property f.attw?: WithEnabled<AttwOptions>
  • added: property f.banner?: ChunkAddon
  • added: property f.bundle?: boolean
  • added: property f.cjsDefault?: boolean
  • added: property f.clean?: boolean | string[]
  • added: property f.copy?: CopyOptions | CopyOptionsFn
  • added: property f.css?: CssOptions
  • added: property f.customLogger?: Logger
  • added: property f.cwd?: string
  • added: property f.define?: Record<string, string>
  • added: property f.devtools?: WithEnabled<DevtoolsOptions>
  • added: property f.dts?: WithEnabled<DtsOptions>
  • added: property f.entry?: TsdownInputOption
  • added: property f.env?: Record<string, any>
  • added: property f.envFile?: string
  • added: property f.envPrefix?: string | string[]
  • added: property f.exports?: WithEnabled<ExportsOptions>
  • added: property f.external?: ExternalOption
  • added: property f.failOnWarn?: boolean | CIOption
  • added: property f.fixedExtension?: boolean
  • added: property f.footer?: ChunkAddon
  • added: property f.format?: Format | Format[] | Partial<Record<Format, Partial<ResolvedConfig>>>
  • added: property f.fromVite?: boolean | 'vitest'
  • added: property f.globImport?: boolean
  • added: property f.globalName?: string
  • added: property f.hash?: boolean
  • added: property f.hooks?: Partial<TsdownHooks> | ((hooks: Hookable<TsdownHooks>) => Awaitable<void>)
  • added: property f.ignoreWatch?: Arrayable<string | RegExp>
  • added: property f.inlineOnly?: Arrayable<string | RegExp>
  • added: property f.inputOptions?: InputOptions | ((options: InputOptions, format: NormalizedFormat, context: { cjsDts: boolean }) => Awaitable<InputOptions | void | null>)
  • added: property f.loader?: ModuleTypes
  • added: property f.logLevel?: LogLevel
  • added: property f.minify?: boolean | 'dce-only' | MinifyOptions
  • added: property f.name?: string
  • added: property f.noExternal?: Arrayable<string | RegExp> | NoExternalFn
  • added: property f.nodeProtocol?: 'strip' | boolean
  • added: property f.onSuccess?: string | ((config: ResolvedConfig, signal: AbortSignal) => void | Promise<void>)
  • added: property f.outDir?: string
  • added: property f.outExtensions?: OutExtensionFactory
  • added: property f.outputOptions?: OutputOptions | ((options: OutputOptions, format: NormalizedFormat, context: { cjsDts: boolean }) => Awaitable<OutputOptions | void | null>)
  • added: property f.platform?: 'node' | 'neutral' | 'browser'
  • added: property f.plugins?: InputOptions['plugins']
  • added: property f.publicDir?: CopyOptions | CopyOptionsFn
  • added: property f.publint?: WithEnabled<PublintOptions>
  • added: property f.removeNodeProtocol?: boolean
  • added: property f.report?: WithEnabled<ReportOptions>
  • added: property f.shims?: boolean
  • added: property f.skipNodeModulesBundle?: boolean
  • added: property f.sourcemap?: Sourcemap
  • added: property f.target?: string | string[] | false
  • added: property f.treeshake?: boolean | TreeshakingOptions
  • added: property f.tsconfig?: string | boolean
  • added: property f.unbundle?: boolean
  • added: property f.unused?: WithEnabled<UnusedOptions>
  • added: property f.watch?: boolean | Arrayable<string>
  • added: property f.workspace?: Workspace | Arrayable<string> | true
  • added: property f.write?: boolean
  • added: property g.config?: boolean | string
  • added: property g.exclude?: Arrayable<string>
  • added: property g.include?: Arrayable<string> | 'auto'
  • added: property i.config?: boolean | string
  • added: property i.configLoader?: 'auto' | 'native' | 'unrun'
  • added: property i.filter?: RegExp | Arrayable<string>
  • added: property j.dts?: string
  • added: property j.js?: string
  • added: property k.format: NormalizedFormat
  • added: property k.options: InputOptions
  • added: property k.pkgType?: PackageType
  • added: property w.chunks: RolldownChunk[]
  • added: property w.config: ResolvedConfig
  • added: property y.clearScreen: (type: LogType) => void
  • added: property y.error: (...args: any[]) => void
  • added: property y.info: (...args: any[]) => void
  • added: property y.level: LogLevel
  • added: property y.success: (...args: any[]) => void
  • added: property y.warn: (...args: any[]) => void
  • added: property y.warnOnce: (...args: any[]) => void
  • added: property z.flatten?: boolean
  • added: property z.from: string | string[]
  • added: property z.rename?: string | ((name: string, extension: string, fullPath: string) => string)
  • added: property z.to?: string
  • added: property z.verbose?: boolean
  • added: type A = (context: OutExtensionContext) => OutExtensionObject | undefined
  • added: type B = Arrayable<string | CopyEntry>
  • added: type C = (OutputChunk | OutputAsset) & { outDir: string }
  • added: type D = (ctx: { format: Format; fileName: string }) => ChunkAddonObject | string | undefined
  • added: type E = ChunkAddonObject | ChunkAddonFunction | string
  • added: type H<T> = T | T[]
  • added: type N = 'module' | 'commonjs' | undefined
  • added: type V = (options: ResolvedConfig) => Awaitable<CopyOptions>
  • added: type a = (id: string, importer: string | undefined) => boolean | null | undefined | void
  • added: type c = boolean | 'inline' | 'hidden'
  • added: type h<T> = boolean | undefined | CIOption | (T & { enabled?: boolean | CIOption })
  • added: type m = (inlineConfig: InlineConfig, context: { ci: boolean }) => Awaitable<Arrayable<UserConfig>>
  • added: type o = InternalModuleFormat
  • added: type p = Awaitable<Arrayable<UserConfig> | UserConfigFn>
  • added: type r = ModuleFormat
  • added: type s = Overwrite<MarkPartial<Omit<UserConfig, 'workspace' | 'fromVite' | 'publicDir' | 'bundle' | 'removeNodeProtocol' | 'logLevel' | 'failOnWarn' | 'customLogger' |…
  • added: type t = 'ci-only' | 'local-only'
  • added: type u = string | string[] | Record<string, string | string[]>