Home / Function/ filterPackages() — astro Function Reference

filterPackages() — astro Function Reference

Architecture documentation for the filterPackages() function in install.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  d696fad9_a3d4_3525_97fd_7ee935f31087["filterPackages()"]
  d4f6ce6d_9b1b_5434_0914_2c212e0aee90["install.ts"]
  d696fad9_a3d4_3525_97fd_7ee935f31087 -->|defined in| d4f6ce6d_9b1b_5434_0914_2c212e0aee90
  39ce6eb0_d5e5_44df_8a2f_689d819ba902["install()"]
  39ce6eb0_d5e5_44df_8a2f_689d819ba902 -->|calls| d696fad9_a3d4_3525_97fd_7ee935f31087
  style d696fad9_a3d4_3525_97fd_7ee935f31087 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/upgrade/src/actions/install.ts lines 88–103

function filterPackages(ctx: Pick<Context, 'packages'>) {
	const current: PackageInfo[] = [];
	const dependencies: PackageInfo[] = [];
	const devDependencies: PackageInfo[] = [];
	for (const packageInfo of ctx.packages) {
		const { currentVersion, targetVersion, isDevDependency } = packageInfo;
		// Remove prefix from version before comparing
		if (currentVersion.replace(/^\D+/, '') === targetVersion.replace(/^\D+/, '')) {
			current.push(packageInfo);
		} else {
			const arr = isDevDependency ? devDependencies : dependencies;
			arr.push(packageInfo);
		}
	}
	return { current, dependencies, devDependencies };
}

Domain

Subdomains

Called By

Frequently Asked Questions

What does filterPackages() do?
filterPackages() is a function in the astro codebase, defined in packages/upgrade/src/actions/install.ts.
Where is filterPackages() defined?
filterPackages() is defined in packages/upgrade/src/actions/install.ts at line 88.
What calls filterPackages()?
filterPackages() is called by 1 function(s): install.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free