@@ -12,12 +12,10 @@ use std::path::Path;
12
12
use thiserror:: Error ;
13
13
use topological_sort:: TopologicalSort ;
14
14
15
- use super :: PackageName ;
16
-
17
15
/// Describes a set of packages to act upon.
18
16
///
19
17
/// This structure maps "package name" to "package"
20
- pub struct PackageMap < ' a > ( pub BTreeMap < & ' a PackageName , & ' a Package > ) ;
18
+ pub struct PackageMap < ' a > ( pub BTreeMap < & ' a String , & ' a Package > ) ;
21
19
22
20
// The name of a file which should be created by building a package.
23
21
#[ derive( Clone , Eq , Hash , Ord , PartialEq , PartialOrd ) ]
@@ -70,12 +68,12 @@ impl<'a> PackageMap<'a> {
70
68
///
71
69
/// Returns packages in batches that may be built concurrently.
72
70
pub struct PackageDependencyIter < ' a > {
73
- lookup_by_output : BTreeMap < OutputFile , ( & ' a PackageName , & ' a Package ) > ,
71
+ lookup_by_output : BTreeMap < OutputFile , ( & ' a String , & ' a Package ) > ,
74
72
outputs : TopologicalSort < OutputFile > ,
75
73
}
76
74
77
75
impl < ' a > Iterator for PackageDependencyIter < ' a > {
78
- type Item = Vec < ( & ' a PackageName , & ' a Package ) > ;
76
+ type Item = Vec < ( & ' a String , & ' a Package ) > ;
79
77
80
78
fn next ( & mut self ) -> Option < Self :: Item > {
81
79
if self . outputs . is_empty ( ) {
@@ -101,11 +99,11 @@ impl<'a> Iterator for PackageDependencyIter<'a> {
101
99
}
102
100
103
101
/// Describes the configuration for a set of packages.
104
- #[ derive( Clone , Deserialize , Debug ) ]
102
+ #[ derive( Deserialize , Debug ) ]
105
103
pub struct Config {
106
104
/// Packages to be built and installed.
107
105
#[ serde( default , rename = "package" ) ]
108
- pub packages : BTreeMap < PackageName , Package > ,
106
+ pub packages : BTreeMap < String , Package > ,
109
107
}
110
108
111
109
impl Config {
@@ -156,24 +154,22 @@ pub fn parse<P: AsRef<Path>>(path: P) -> Result<Config, ParseError> {
156
154
157
155
#[ cfg( test) ]
158
156
mod test {
159
- use crate :: config:: ServiceName ;
160
-
161
157
use super :: * ;
162
158
163
159
#[ test]
164
160
fn test_order ( ) {
165
- let pkg_a_name = PackageName :: new_const ( "pkg-a" ) ;
161
+ let pkg_a_name = String :: from ( "pkg-a" ) ;
166
162
let pkg_a = Package {
167
- service_name : ServiceName :: new_const ( "a" ) ,
163
+ service_name : String :: from ( "a" ) ,
168
164
source : PackageSource :: Manual ,
169
165
output : PackageOutput :: Tarball ,
170
166
only_for_targets : None ,
171
167
setup_hint : None ,
172
168
} ;
173
169
174
- let pkg_b_name = PackageName :: new_const ( "pkg-b" ) ;
170
+ let pkg_b_name = String :: from ( "pkg-b" ) ;
175
171
let pkg_b = Package {
176
- service_name : ServiceName :: new_const ( "b" ) ,
172
+ service_name : String :: from ( "b" ) ,
177
173
source : PackageSource :: Composite {
178
174
packages : vec ! [ pkg_a. get_output_file( & pkg_a_name) ] ,
179
175
} ,
@@ -202,10 +198,10 @@ mod test {
202
198
#[ test]
203
199
#[ should_panic( expected = "cyclic dependency in package manifest" ) ]
204
200
fn test_cyclic_dependency ( ) {
205
- let pkg_a_name = PackageName :: new_const ( "pkg-a" ) ;
206
- let pkg_b_name = PackageName :: new_const ( "pkg-b" ) ;
201
+ let pkg_a_name = String :: from ( "pkg-a" ) ;
202
+ let pkg_b_name = String :: from ( "pkg-b" ) ;
207
203
let pkg_a = Package {
208
- service_name : ServiceName :: new_const ( "a" ) ,
204
+ service_name : String :: from ( "a" ) ,
209
205
source : PackageSource :: Composite {
210
206
packages : vec ! [ String :: from( "pkg-b.tar" ) ] ,
211
207
} ,
@@ -214,7 +210,7 @@ mod test {
214
210
setup_hint : None ,
215
211
} ;
216
212
let pkg_b = Package {
217
- service_name : ServiceName :: new_const ( "b" ) ,
213
+ service_name : String :: from ( "b" ) ,
218
214
source : PackageSource :: Composite {
219
215
packages : vec ! [ String :: from( "pkg-a.tar" ) ] ,
220
216
} ,
@@ -240,9 +236,9 @@ mod test {
240
236
#[ test]
241
237
#[ should_panic( expected = "Could not find a package which creates 'pkg-b.tar'" ) ]
242
238
fn test_missing_dependency ( ) {
243
- let pkg_a_name = PackageName :: new_const ( "pkg-a" ) ;
239
+ let pkg_a_name = String :: from ( "pkg-a" ) ;
244
240
let pkg_a = Package {
245
- service_name : ServiceName :: new_const ( "a" ) ,
241
+ service_name : String :: from ( "a" ) ,
246
242
source : PackageSource :: Composite {
247
243
packages : vec ! [ String :: from( "pkg-b.tar" ) ] ,
248
244
} ,
0 commit comments