mirror of
				https://github.com/Swatinem/rust-cache.git
				synced 2025-10-31 19:13:50 +00:00 
			
		
		
		
	fix src/config.ts: Remove sort_object (#152)
				
					
				
			Fixed #151 I've tried running manually load and parse `Cargo.lock` and it runs fine until `sort_object` is called. Since `Cargo.lock` is auto-generated and usually sorted, I think there is no need for sorting. Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
This commit is contained in:
		
							parent
							
								
									2656b87321
								
							
						
					
					
						commit
						be7377e68e
					
				
							
								
								
									
										21
									
								
								dist/restore/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										21
									
								
								dist/restore/index.js
									
									
									
									
										vendored
									
									
								
							| @ -64224,7 +64224,7 @@ class CacheConfig { | ||||
|                             } | ||||
|                         } | ||||
|                     } | ||||
|                     hasher.update(JSON.stringify(sort_object(parsed))); | ||||
|                     hasher.update(JSON.stringify(parsed)); | ||||
|                     parsedKeyFiles.push(cargo_manifest); | ||||
|                 } | ||||
|                 catch (_e) { // Fallback to caching them as regular file
 | ||||
| @ -64247,7 +64247,7 @@ class CacheConfig { | ||||
|                     const packages = parsed.package.filter((p) => { | ||||
|                         "source" in p || "checksum" in p; | ||||
|                     }); | ||||
|                     hasher.update(JSON.stringify(sort_object(packages))); | ||||
|                     hasher.update(JSON.stringify(packages)); | ||||
|                     parsedKeyFiles.push(cargo_lock); | ||||
|                 } | ||||
|                 catch (_e) { // Fallback to caching them as regular file
 | ||||
| @ -64387,23 +64387,6 @@ function sort_and_uniq(a) { | ||||
|         return accumulator; | ||||
|     }, []); | ||||
| } | ||||
| function sort_object(o) { | ||||
|     if (Array.isArray(o)) { | ||||
|         return o.sort().map(sort_object); | ||||
|     } | ||||
|     else if (typeof o === 'object' && o != null) { | ||||
|         return Object | ||||
|             .keys(o) | ||||
|             .sort() | ||||
|             .reduce(function (a, k) { | ||||
|             a[k] = sort_object(o[k]); | ||||
|             return a; | ||||
|         }, {}); | ||||
|     } | ||||
|     else { | ||||
|         return o; | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| ;// CONCATENATED MODULE: ./src/cleanup.ts
 | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										21
									
								
								dist/save/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										21
									
								
								dist/save/index.js
									
									
									
									
										vendored
									
									
								
							| @ -64224,7 +64224,7 @@ class CacheConfig { | ||||
|                             } | ||||
|                         } | ||||
|                     } | ||||
|                     hasher.update(JSON.stringify(sort_object(parsed))); | ||||
|                     hasher.update(JSON.stringify(parsed)); | ||||
|                     parsedKeyFiles.push(cargo_manifest); | ||||
|                 } | ||||
|                 catch (_e) { // Fallback to caching them as regular file
 | ||||
| @ -64247,7 +64247,7 @@ class CacheConfig { | ||||
|                     const packages = parsed.package.filter((p) => { | ||||
|                         "source" in p || "checksum" in p; | ||||
|                     }); | ||||
|                     hasher.update(JSON.stringify(sort_object(packages))); | ||||
|                     hasher.update(JSON.stringify(packages)); | ||||
|                     parsedKeyFiles.push(cargo_lock); | ||||
|                 } | ||||
|                 catch (_e) { // Fallback to caching them as regular file
 | ||||
| @ -64387,23 +64387,6 @@ function sort_and_uniq(a) { | ||||
|         return accumulator; | ||||
|     }, []); | ||||
| } | ||||
| function sort_object(o) { | ||||
|     if (Array.isArray(o)) { | ||||
|         return o.sort().map(sort_object); | ||||
|     } | ||||
|     else if (typeof o === 'object' && o != null) { | ||||
|         return Object | ||||
|             .keys(o) | ||||
|             .sort() | ||||
|             .reduce(function (a, k) { | ||||
|             a[k] = sort_object(o[k]); | ||||
|             return a; | ||||
|         }, {}); | ||||
|     } | ||||
|     else { | ||||
|         return o; | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| ;// CONCATENATED MODULE: ./src/cleanup.ts
 | ||||
| 
 | ||||
|  | ||||
| @ -172,7 +172,7 @@ export class CacheConfig { | ||||
|             } | ||||
|           } | ||||
| 
 | ||||
|           hasher.update(JSON.stringify(sort_object(parsed))); | ||||
|           hasher.update(JSON.stringify(parsed)); | ||||
| 
 | ||||
|           parsedKeyFiles.push(cargo_manifest); | ||||
|         } catch (_e) { // Fallback to caching them as regular file
 | ||||
| @ -200,7 +200,7 @@ export class CacheConfig { | ||||
|             "source" in p || "checksum" in p | ||||
|           }); | ||||
| 
 | ||||
|           hasher.update(JSON.stringify(sort_object(packages))); | ||||
|           hasher.update(JSON.stringify(packages)); | ||||
| 
 | ||||
|           parsedKeyFiles.push(cargo_lock); | ||||
|         } catch (_e) { // Fallback to caching them as regular file
 | ||||
| @ -367,20 +367,3 @@ function sort_and_uniq(a: string[]) { | ||||
|         [] | ||||
|       ); | ||||
| } | ||||
| 
 | ||||
| function sort_object(o: any): any { | ||||
|   if (Array.isArray(o)) { | ||||
|     return o.sort().map(sort_object); | ||||
|   } else if (typeof o === 'object' && o != null) { | ||||
|     return Object | ||||
|       .keys(o) | ||||
|       .sort() | ||||
|       .reduce(function(a: any, k) { | ||||
|         a[k] = sort_object(o[k]); | ||||
|    | ||||
|         return a; | ||||
|       }, {}); | ||||
|   } else { | ||||
|     return o; | ||||
|   } | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user