1
- use std:: { env :: current_dir , fs } ;
1
+ use std:: fs ;
2
2
3
3
use colored:: * ;
4
4
use dialoguer:: { theme:: ColorfulTheme , Select } ;
5
5
use regex:: Regex ;
6
6
use semver:: { Prerelease , Version } ;
7
- use snm_core:: model:: { PackageJson , SnmError } ;
7
+ use snm_core:: { model:: PackageJson , utils :: get_current_dir :: get_current_dir } ;
8
8
9
- pub fn bump_impl ( ) -> Result < ( ) , SnmError > {
10
- let package_json = PackageJson :: from_here ( ) ? ;
9
+ pub fn bump_impl ( ) -> ( ) {
10
+ let package_json = PackageJson :: from_here ( ) ;
11
11
let current_version =
12
12
Version :: parse ( package_json. version . unwrap_or ( "0.0.0" . to_string ( ) ) . as_str ( ) )
13
13
. expect ( "parse version error" ) ;
@@ -20,18 +20,18 @@ pub fn bump_impl() -> Result<(), SnmError> {
20
20
let zero_pre_release = Prerelease :: new ( "0" ) . expect ( "create prerelease error 0" ) ;
21
21
22
22
let versions_and_strings = vec ! [
23
- create_version_and_string( "major" , major + 1 , 0 , 0 , None ) ? ,
24
- create_version_and_string( "minor" , major, minor + 1 , 0 , None ) ? ,
25
- create_version_and_string( "patch" , major, minor, patch + 1 , None ) ? ,
26
- create_version_and_string( "premajor" , major + 1 , 0 , 0 , Some ( zero_pre_release. clone( ) ) ) ? ,
23
+ create_version_and_string( "major" , major + 1 , 0 , 0 , None ) ,
24
+ create_version_and_string( "minor" , major, minor + 1 , 0 , None ) ,
25
+ create_version_and_string( "patch" , major, minor, patch + 1 , None ) ,
26
+ create_version_and_string( "premajor" , major + 1 , 0 , 0 , Some ( zero_pre_release. clone( ) ) ) ,
27
27
create_version_and_string(
28
28
"preminor" ,
29
29
major,
30
30
minor + 1 ,
31
31
0 ,
32
32
Some ( zero_pre_release. clone( ) ) ,
33
- ) ? ,
34
- create_version_and_string( "prepatch" , major, minor, patch + 1 , Some ( zero_pre_release) ) ? ,
33
+ ) ,
34
+ create_version_and_string( "prepatch" , major, minor, patch + 1 , Some ( zero_pre_release) ) ,
35
35
create_version_and_string(
36
36
"prerelease" ,
37
37
major,
@@ -41,7 +41,7 @@ pub fn bump_impl() -> Result<(), SnmError> {
41
41
Prerelease :: new( prerelease_number. to_string( ) . as_str( ) )
42
42
. expect( format!( "create prerelease error {}" , prerelease_number) . as_str( ) ) ,
43
43
) ,
44
- ) ? ,
44
+ ) ,
45
45
] ;
46
46
47
47
let selections: Vec < String > = versions_and_strings
@@ -58,7 +58,7 @@ pub fn bump_impl() -> Result<(), SnmError> {
58
58
. interact ( )
59
59
. expect ( "bump_impl Select error" ) ;
60
60
61
- let dir = current_dir ( ) . expect ( "get current dir failed" ) ;
61
+ let dir = get_current_dir ( ) ;
62
62
63
63
let c = fs:: read_to_string ( dir. join ( "package.json" ) ) . expect (
64
64
format ! (
@@ -88,8 +88,6 @@ pub fn bump_impl() -> Result<(), SnmError> {
88
88
"您选择了: {} , {:?}" ,
89
89
selections[ selection] , versions_and_strings[ selection] . 0
90
90
) ;
91
-
92
- Ok ( ( ) )
93
91
}
94
92
95
93
fn create_version_and_string (
@@ -98,7 +96,7 @@ fn create_version_and_string(
98
96
minor : u64 ,
99
97
patch : u64 ,
100
98
pre : Option < Prerelease > ,
101
- ) -> Result < ( Version , String ) , SnmError > {
99
+ ) -> ( Version , String ) {
102
100
let mut new_version = Version :: new ( major, minor, patch) ;
103
101
if let Some ( p) = pre {
104
102
new_version. pre = p. clone ( ) ;
@@ -108,5 +106,5 @@ fn create_version_and_string(
108
106
version_type,
109
107
new_version. to_string( ) . bright_black( )
110
108
) ;
111
- Ok ( ( new_version, version_string) )
109
+ ( new_version, version_string)
112
110
}
0 commit comments