@@ -7,6 +7,7 @@ const path = require('path')
7
7
const semver = require ( 'semver' )
8
8
const ethUtil = require ( 'ethereumjs-util' )
9
9
const swarmhash = require ( 'swarmhash' )
10
+ const solc = require ( 'solc/wrapper' )
10
11
11
12
// This script updates the index files list.js and list.txt in the bin directory,
12
13
// as well as the soljson-latest.js files.
@@ -31,6 +32,10 @@ fs.readdir(path.join(__dirname, '/bin'), function (err, files) {
31
32
return fs . readFileSync ( path . join ( __dirname , '/bin' , file ) )
32
33
}
33
34
35
+ function readBuiltinVersion ( file ) {
36
+ return solc ( require ( path . join ( __dirname , '/bin' , file ) ) ) . version ( )
37
+ }
38
+
34
39
// ascending list (oldest version first)
35
40
const parsedList = files
36
41
. map ( function ( file ) { return file . match ( / ^ s o l j s o n - v ( [ 0 - 9 . ] * ) ( - ( [ ^ + ] * ) ) ? ( \+ ( .* ) ) ? .j s $ / ) } )
@@ -40,6 +45,7 @@ fs.readdir(path.join(__dirname, '/bin'), function (err, files) {
40
45
console . log ( 'Processing ' + pars . path )
41
46
const fileContent = readFile ( pars . path )
42
47
pars . longVersion = buildVersion ( pars )
48
+ pars . reportedVersion = readBuiltinVersion ( pars . path )
43
49
pars . keccak256 = '0x' + ethUtil . sha3 ( fileContent ) . toString ( 'hex' )
44
50
pars . urls = [ 'bzzr://' + swarmhash ( fileContent ) . toString ( 'hex' ) ]
45
51
return pars
0 commit comments