Opened 3 years ago

Last modified 2 years ago

#22182 needs_review defect

Revision of perl script for updating mirror page on website

Reported by: Samdney Owned by: Samdney
Priority: Medium Milestone:
Component: Community/Mirrors Version:
Severity: Normal Keywords:
Cc: phoul, alison, arma Actual Points:
Parent ID: #22150 Points:
Reviewer: Sponsor:


Revision of perl script which pulls in the entries from include/tor-mirrors.csv and put the entries on

In #22150 arma wrote:

"A) We should think about ways to automate the script. Maybe we shouldn't spend too much energy on this one until we've thought about how the mirror pages will fit into the future website redo."


Topics after a first review of the existing script:

  1. I found several small perl bugs (or better, "not a nice coding style", not really bugs) in the existing script
  2. The current way how the script is checking the mirror sites, isn't the best (it is looking for existing .xpi, .dmg, .exe, .tar.gz files)
  3. The script has to be run manually at the moment. Can this be done automatically in the future (without creating security issues)? Have also attention here on the existing mailing list (

Child Tickets

#27998closedhiroFind automatic solution to run the mirror scriptCommunity/Mirrors
#28083needs_reviewtraumschuleSort website mirror list by regionCommunity/Mirrors

Change History (3)

comment:1 Changed 3 years ago by dgoulet

Component: - Select a componentCommunity/Outreach

(Putting that in Community/Outreach so we don't lose this ticket with no component. It's probably a bad category but it definitely falls into Community.)

comment:2 Changed 2 years ago by teor

Component: Community/OutreachCommunity/Mirrors

Move to Community/Mirrors, see #27583

comment:3 Changed 2 years ago by traumschule

Status: newneeds_review


  • use Getopt::Long
  • use tor (requires LWP::Protocol::socks, disable with --no-proxy)
  • verify file signatures only when --verify-files is set
  • remove defunct mirrors when --remove-failing is provided
  • use Time::Piece instead of Date::Parse and Date::Format
  • resort to Last-Modified header when trace url gives 404
  • automatically unify boolean values
  • check offered Tor Browser version
  • print list of errors at the end
  • improve perl style
Last edited 2 years ago by traumschule (previous) (diff)
Note: See TracTickets for help on using tickets.