@@ -4,7 +4,7 @@ import { getVersions, extractMcVersion, extractModuleVersion } from "../utils/ve
44import { detectPackageManager , installPackage } from "../utils/package-manager.js" ;
55import * as logger from "../utils/logger.js" ;
66
7- export async function stable ( ) : Promise < void > {
7+ export async function stable ( options : { force ?: boolean } = { } ) : Promise < void > {
88 const spinner = ora ( "Fetching Minecraft version..." ) . start ( ) ;
99
1010 const mcVersion = await getStableMinecraftVersion ( ) ;
@@ -24,6 +24,8 @@ export async function stable(): Promise<void> {
2424 const dependencies = manifest . dependencies ?. filter ( isManifestModuleDependency ) ?? [ ] ;
2525
2626 for ( const dependency of dependencies ) {
27+ const isBeta = String ( dependency . version ) === "beta" ;
28+
2729 const versions = await getVersions ( dependency . module_name ) ;
2830 const matched = versions . find ( ( v ) => v . includes ( mcVersion ) ) ;
2931
@@ -32,8 +34,10 @@ export async function stable(): Promise<void> {
3234 process . exit ( 1 ) ;
3335 }
3436
35- dependency . version = extractModuleVersion ( matched ) ;
36- logger . log ( `${ dependency . module_name } : ${ matched } ` ) ;
37+ if ( ! isBeta || options . force ) {
38+ dependency . version = extractModuleVersion ( matched ) ;
39+ }
40+ logger . log ( `${ dependency . module_name } : ${ matched } ${ isBeta && ! options . force ? " (manifest not updated, current version is beta)" : "" } ` ) ;
3741
3842 modules . push ( { name : dependency . module_name , version : matched } ) ;
3943 }
0 commit comments