You're right. The mail by Wojtek mentions that stem fails to parse the exit-lists.
But, knowing the bug the descriptors could easily be pre-processed by the downloading party.
Thus, no immediate changes to any CollecTor mirror necessary.
For what it's worth the trouble here for stem is simply that it uses the @type to infer the descriptor type. If they specify a 'descriptor_type' argument when they parse the descriptors stem will ignore the @type field and should be happy with these...
My branch is ready for review.
There are three commits: one for the fix, one for a possible unclosed reader (which could be omitted), and one for the shell script.
The fix is running on mirror collector.sky-ip.org and the files there were fixed with the provided script.
Documentation is added as comment in the script.
5bc248e looks good and works, though I have two tweaks:
@@ -2,7 +2,7 @@ # # Only for upgrading from 1.1.0 or 1.1.1!!! #-# Script for correcting ext-list annotations.+# Script for correcting exit-list annotations. # See task-21195 for details. # Replaces 'torperf' with 'tordnsel' in files # and archives.@@ -36,7 +36,8 @@ tar xf $ARC; fix $TEMP exit-list-$ym mv $ARC $ARC-old;- tar --remove-files -cJf exit-list-$ym.tar.xz exit-list-$ym+ tar --remove-files -cf exit-list-$ym.tar exit-list-$ym+ xz -9e exit-list-$ym.tar mv $TEMP/exit-list-$ym.tar.xz $ARC echo "--> $ARC is done." done;
The idea is to use xz -9e just like we used that option when creating original tarballs. Not that it matters much, but why not be consistent.
Okay, how do we proceed? Should I merge your commits (with the tweak) and put out 1.1.2? And would you want to announce it when it's out?
There, you'll find the tarball and signature in the usual place, and all exit lists provided by https://collector.torproject.org/ contains the correct @type annotation. Please announce when you're ready, and please close this ticket afterwards. Thanks!