Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch fossil-2.0 Excluding Merge-Ins
This is equivalent to a diff from d9a9e08362 to 0e121167b8
2017-03-13
| ||
21:22 | For the design-time components installer tool, make sure that verbose mode is honored for mock registry keys even in the event that a parameter has an invalid value. check-in: d1111b2d68 user: mistachkin tags: trunk | |
2017-03-08
| ||
03:41 | Partially reverse changes from the previous check-in on this branch because Fossil 2.x is going to return the first 40 characters of SHA3 hashes. Closed-Leaf check-in: 0e121167b8 user: mistachkin tags: fossil-2.0 | |
2017-02-27
| ||
17:56 | Prepare for the proposed hash algorithm changes in Fossil 2.0. check-in: 5c2462c16b user: mistachkin tags: fossil-2.0 | |
17:20 | Make PATH handling more robust in the batch tools for MSBuild. check-in: d9a9e08362 user: mistachkin tags: trunk | |
2017-02-18
| ||
00:56 | Feature the link to the news page more prominently on the landing page. check-in: ee8701edb5 user: mistachkin tags: trunk | |
Changes to Setup/updateFileInfo.tcl.
︙ | ︙ | |||
32 33 34 35 36 37 38 | # decimal. # return [format %.2f [expr {[file size $fileName] / 1048576.0}]] } proc getFileHash { fileName } { # | | | | | 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | # decimal. # return [format %.2f [expr {[file size $fileName] / 1048576.0}]] } proc getFileHash { fileName } { # # NOTE: Return the SHA3 hash of the file, making use of Fossil via [exec] to # actually calculate it. # return [string trim [lindex [regexp -inline -nocase -- {[0-9A-F]{56} } \ [exec fossil sha3sum $fileName]] 0]] } # # NOTE: Grab the fully qualified directory name of the directory containing # this script file. # set path [file normalize [file dirname [info script]]] |
︙ | ︙ | |||
81 82 83 84 85 86 87 | [string length $outputDirectory] == 0} then { set outputDirectory [file join $path Output] } # # NOTE: Setup the regular expression patterns with the necessary captures. # These patterns are mostly non-greedy; however, at the end we need to | | | | | | | 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 | [string length $outputDirectory] == 0} then { set outputDirectory [file join $path Output] } # # NOTE: Setup the regular expression patterns with the necessary captures. # These patterns are mostly non-greedy; however, at the end we need to # match exactly 56 hexadecimal characters. In theory, in Tcl, this could # have an undefined result due to the mixing of greedy and non-greedy # quantifiers; however, in practice, this seems to work properly. Also, # this pattern assumes a particular structure for the [HTML] file to be # updated. # set pattern1 {<a\ href=".*?/(.*?\.(?:exe|zip|nupkg))">.*?\((\d+?\.\d+?) MiB\).*?sha3:\ ([0-9A-F]{56})} set pattern2 {<a\ href=".*?/package/.*?/\d+\.\d+\.\d+\.\d+">(.*?)</a>.*?\((\d+?\.\d+?)\ MiB\).*?sha3: ([0-9A-F]{56})} set pattern3 {href="/downloads/(.*?)"} set pattern4 {\(sha3: ([0-9A-F]{56})\)} set pattern5 {\((\d+?\.\d+?) MiB\)} # # NOTE: Grab all the data from the file to be updated. # set data [readFile $updateFileName] |
︙ | ︙ | |||
181 182 183 184 185 186 187 | incr start [string length $fileHash] } } } # | | | 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 | incr start [string length $fileHash] } } } # # NOTE: Attempt to verify that each file name now has the correct SHA3 hash # associated with it on the page. # foreach {dummy3 fileName} [regexp -all -inline -nocase -- $pattern3 $data] \ {dummy4 fileHash} [regexp -all -inline -nocase -- $pattern4 $data] \ {dummy5 fileSize} [regexp -all -inline -nocase -- $pattern5 $data] { # # NOTE: Get the fully qualified file name based on the configured |
︙ | ︙ | |||
208 209 210 211 212 213 214 | # # NOTE: Make sure the file hash from the [modified] data matches the # calculated hash for the file. If not, fail. # set fullFileHash [getFileHash $fullFileName] if {$fileHash ne $fullFileHash} then { | | | 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 | # # NOTE: Make sure the file hash from the [modified] data matches the # calculated hash for the file. If not, fail. # set fullFileHash [getFileHash $fullFileName] if {$fileHash ne $fullFileHash} then { puts stdout "ERROR: SHA3 hash mismatch for\ file \"$fullFileName\", have \"$fileHash\" (from data),\ need \"$fullFileHash\" (calculated)." } set fullFileSize [getFileSize $fullFileName] if {$fileSize ne $fullFileSize} then { |
︙ | ︙ |