[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [stem/master] Test real CollecTor index
commit e0b4e2d8bf6c0c31e64a167c2e96e845185ddff5
Author: Damian Johnson <atagar@xxxxxxxxxxxxxx>
Date: Sat Jul 6 15:38:04 2019 -0700
Test real CollecTor index
Adding a CollecTor index, truncated to three files per directory. Even with
this truncation this is *way* too big for this unit test assertion, but
starting with the whole shebang as I make sense of how I'm gonna work with it.
---
test/unit/descriptor/collector.py | 539 +++++++++++++++++++++++++
test/unit/descriptor/data/collector_index.json | 1 +
2 files changed, 540 insertions(+)
diff --git a/test/unit/descriptor/collector.py b/test/unit/descriptor/collector.py
index 260e246b..e1ff4bdb 100644
--- a/test/unit/descriptor/collector.py
+++ b/test/unit/descriptor/collector.py
@@ -9,6 +9,7 @@ import stem.prereq
from stem.descriptor import Compression
from stem.descriptor.collector import CollecTor
+from test.unit.descriptor import get_resource
try:
# added in python 3.3
@@ -26,6 +27,535 @@ MINIMAL_INDEX = {
MINIMAL_INDEX_JSON = b'{"index_created":"2017-12-25 21:06","build_revision":"56a303e","path":"https://collector.torproject.org"}'
+EXAMPLE_INDEX = {
+ 'index_created': '2019-07-06 01:54',
+ 'build_revision': 'df98ac79',
+ 'path': 'https://collector.torproject.org',
+ 'directories': [
+ {
+ 'path': 'archive',
+ 'directories': [
+ {
+ 'path': 'bridge-descriptors',
+ 'directories': [
+ {
+ 'path': 'extra-infos',
+ 'files': [
+ {
+ 'path': 'bridge-extra-infos-2008-05.tar.xz',
+ 'size': 377644,
+ 'last_modified': '2016-09-04 09:21'
+ }, {
+ 'path': 'bridge-extra-infos-2008-06.tar.xz',
+ 'size': 600484,
+ 'last_modified': '2016-09-04 09:21'
+ }, {
+ 'path': 'bridge-extra-infos-2008-07.tar.xz',
+ 'size': 716320,
+ 'last_modified': '2016-09-04 09:21'
+ }
+ ]
+ }, {
+ 'path': 'server-descriptors',
+ 'files': [
+ {
+ 'path': 'bridge-server-descriptors-2008-05.tar.xz',
+ 'size': 205348,
+ 'last_modified': '2016-09-09 14:13'
+ }, {
+ 'path': 'bridge-server-descriptors-2008-06.tar.xz',
+ 'size': 342828,
+ 'last_modified': '2016-09-09 14:13'
+ }, {
+ 'path': 'bridge-server-descriptors-2008-07.tar.xz',
+ 'size': 374848,
+ 'last_modified': '2016-09-09 14:13'
+ }
+ ]
+ }, {
+ 'path': 'statuses',
+ 'files': [
+ {
+ 'path': 'bridge-statuses-2008-05.tar.xz',
+ 'size': 74792,
+ 'last_modified': '2016-09-14 21:11'
+ }, {
+ 'path': 'bridge-statuses-2008-06.tar.xz',
+ 'size': 123488,
+ 'last_modified': '2016-09-14 21:11'
+ }, {
+ 'path': 'bridge-statuses-2008-07.tar.xz',
+ 'size': 143836,
+ 'last_modified': '2016-09-14 21:11'
+ }
+ ]
+ }
+ ]
+ }, {
+ 'path': 'bridge-pool-assignments',
+ 'files': [
+ {
+ 'path': 'bridge-pool-assignments-2010-09.tar.xz',
+ 'size': 32804,
+ 'last_modified': '2012-05-31 10:21'
+ }, {
+ 'path': 'bridge-pool-assignments-2010-10.tar.xz',
+ 'size': 304684,
+ 'last_modified': '2012-05-31 10:21'
+ }, {
+ 'path': 'bridge-pool-assignments-2010-11.tar.xz',
+ 'size': 292228,
+ 'last_modified': '2012-05-31 10:21'
+ }
+ ]
+ }, {
+ 'path': 'exit-lists',
+ 'files': [
+ {
+ 'path': 'exit-list-2010-02.tar.xz',
+ 'size': 272008,
+ 'last_modified': '2012-05-31 18:57'
+ }, {
+ 'path': 'exit-list-2010-03.tar.xz',
+ 'size': 1247484,
+ 'last_modified': '2012-05-31 18:57'
+ }, {
+ 'path': 'exit-list-2010-04.tar.xz',
+ 'size': 1139896,
+ 'last_modified': '2012-05-31 18:57'
+ }
+ ]
+ }, {
+ 'path': 'relay-descriptors',
+ 'files': [
+ {
+ 'path': 'certs.tar.xz',
+ 'size': 144696,
+ 'last_modified': '2019-07-03 03:29'
+ }
+ ],
+ 'directories': [
+ {
+ 'path': 'bandwidths',
+ 'files': [
+ {
+ 'path': 'bandwidths-2019-05.tar.xz',
+ 'size': 50385816,
+ 'last_modified': '2019-06-07 08:05'
+ }, {
+ 'path': 'bandwidths-2019-06.tar.xz',
+ 'size': 105881156,
+ 'last_modified': '2019-07-03 07:30'
+ }, {
+ 'path': 'bandwidths-2019-07.tar.xz',
+ 'size': 11374436,
+ 'last_modified': '2019-07-03 07:12'
+ }
+ ]
+ }, {
+ 'path': 'consensuses',
+ 'files': [
+ {
+ 'path': 'consensuses-2007-10.tar.xz',
+ 'size': 1061648,
+ 'last_modified': '2012-05-15 14:35'
+ }, {
+ 'path': 'consensuses-2007-11.tar.xz',
+ 'size': 6810308,
+ 'last_modified': '2012-05-15 14:35'
+ }, {
+ 'path': 'consensuses-2007-12.tar.xz',
+ 'size': 8106968,
+ 'last_modified': '2012-05-15 14:35'
+ }
+ ]
+ }, {
+ 'path': 'extra-infos',
+ 'files': [
+ {
+ 'path': 'extra-infos-2007-08.tar.xz',
+ 'size': 3016916,
+ 'last_modified': '2016-06-23 09:53'
+ }, {
+ 'path': 'extra-infos-2007-09.tar.xz',
+ 'size': 6459884,
+ 'last_modified': '2016-06-23 09:54'
+ }, {
+ 'path': 'extra-infos-2007-10.tar.xz',
+ 'size': 7326564,
+ 'last_modified': '2016-06-23 09:54'
+ }
+ ]
+ }, {
+ 'path': 'microdescs',
+ 'files': [
+ {
+ 'path': 'microdescs-2014-01.tar.xz',
+ 'size': 7515396,
+ 'last_modified': '2014-02-07 03:59'
+ }, {
+ 'path': 'microdescs-2014-02.tar.xz',
+ 'size': 21822944,
+ 'last_modified': '2014-03-07 04:54'
+ }, {
+ 'path': 'microdescs-2014-03.tar.xz',
+ 'size': 24201436,
+ 'last_modified': '2014-04-07 03:54'
+ }
+ ]
+ }, {
+ 'path': 'server-descriptors',
+ 'files': [
+ {
+ 'path': 'server-descriptors-2005-12.tar.xz',
+ 'size': 1348620,
+ 'last_modified': '2016-06-24 08:12'
+ }, {
+ 'path': 'server-descriptors-2006-02.tar.xz',
+ 'size': 28625408,
+ 'last_modified': '2016-06-24 08:14'
+ }, {
+ 'path': 'server-descriptors-2006-03.tar.xz',
+ 'size': 49548736,
+ 'last_modified': '2016-06-24 08:17'
+ }
+ ]
+ }, {
+ 'path': 'statuses',
+ 'files': [
+ {
+ 'path': 'statuses-2005-12.tar.xz',
+ 'size': 1468844,
+ 'last_modified': '2016-06-25 11:50'
+ }, {
+ 'path': 'statuses-2006-01.tar.xz',
+ 'size': 3344280,
+ 'last_modified': '2016-06-25 11:52'
+ }, {
+ 'path': 'statuses-2006-02.tar.xz',
+ 'size': 4006336,
+ 'last_modified': '2016-06-25 11:54'
+ }
+ ]
+ }, {
+ 'path': 'tor',
+ 'files': [
+ {
+ 'path': 'tor-2004-05.tar.xz',
+ 'size': 386672,
+ 'last_modified': '2012-05-18 14:26'
+ }, {
+ 'path': 'tor-2004-06.tar.xz',
+ 'size': 1087980,
+ 'last_modified': '2012-05-18 14:26'
+ }, {
+ 'path': 'tor-2004-07.tar.xz',
+ 'size': 1366568,
+ 'last_modified': '2012-05-18 14:26'
+ }
+ ]
+ }, {
+ 'path': 'votes',
+ 'files': [
+ {
+ 'path': 'votes-2007-10.tar.xz',
+ 'size': 1356504,
+ 'last_modified': '2012-05-15 14:51'
+ }, {
+ 'path': 'votes-2007-11.tar.xz',
+ 'size': 10641492,
+ 'last_modified': '2012-05-15 14:51'
+ }, {
+ 'path': 'votes-2007-12.tar.xz',
+ 'size': 14712136,
+ 'last_modified': '2012-05-15 14:52'
+ }
+ ]
+ }
+ ]
+ }, {
+ 'path': 'torperf',
+ 'files': [
+ {
+ 'path': 'torperf-2009-07.tar.xz',
+ 'size': 182712,
+ 'last_modified': '2012-05-30 07:23'
+ }, {
+ 'path': 'torperf-2009-08.tar.xz',
+ 'size': 203236,
+ 'last_modified': '2012-05-30 07:23'
+ }, {
+ 'path': 'torperf-2009-09.tar.xz',
+ 'size': 193832,
+ 'last_modified': '2012-05-30 07:23'
+ }
+ ]
+ }, {
+ 'path': 'webstats',
+ 'files': [
+ {
+ 'path': 'webstats-2015-01.tar',
+ 'size': 30720,
+ 'last_modified': '2018-03-19 16:07'
+ }, {
+ 'path': 'webstats-2015-02.tar',
+ 'size': 20480,
+ 'last_modified': '2018-03-19 16:07'
+ }, {
+ 'path': 'webstats-2015-03.tar',
+ 'size': 20480,
+ 'last_modified': '2018-03-19 16:07'
+ }
+ ]
+ }
+ ]
+ }, {
+ 'path': 'contrib'
+ }, {
+ 'path': 'recent',
+ 'directories': [
+ {
+ 'path': 'bridge-descriptors',
+ 'directories': [
+ {
+ 'path': 'extra-infos',
+ 'files': [
+ {
+ 'path': '2019-07-03-02-09-00-extra-infos',
+ 'size': 507816,
+ 'last_modified': '2019-07-03 02:09'
+ }, {
+ 'path': '2019-07-03-03-09-00-extra-infos',
+ 'size': 558790,
+ 'last_modified': '2019-07-03 03:09'
+ }, {
+ 'path': '2019-07-03-04-09-05-extra-infos',
+ 'size': 592279,
+ 'last_modified': '2019-07-03 04:09'
+ }
+ ]
+ }, {
+ 'path': 'server-descriptors',
+ 'files': [
+ {
+ 'path': '2019-07-03-02-09-00-server-descriptors',
+ 'size': 274355,
+ 'last_modified': '2019-07-03 02:09'
+ }, {
+ 'path': '2019-07-03-03-09-00-server-descriptors',
+ 'size': 295671,
+ 'last_modified': '2019-07-03 03:09'
+ }, {
+ 'path': '2019-07-03-04-09-05-server-descriptors',
+ 'size': 312822,
+ 'last_modified': '2019-07-03 04:09'
+ }
+ ]
+ }, {
+ 'path': 'statuses',
+ 'files': [
+ {
+ 'path': '20190703-011231-BA44A889E64B93FAA2B114E02C2A279A8555C533',
+ 'size': 238340,
+ 'last_modified': '2019-07-03 02:09'
+ }, {
+ 'path': '20190703-014231-BA44A889E64B93FAA2B114E02C2A279A8555C533',
+ 'size': 238147,
+ 'last_modified': '2019-07-03 02:09'
+ }, {
+ 'path': '20190703-021231-BA44A889E64B93FAA2B114E02C2A279A8555C533',
+ 'size': 238231,
+ 'last_modified': '2019-07-03 03:09'
+ }
+ ]
+ }
+ ]
+ }, {
+ 'path': 'exit-lists',
+ 'files': [
+ {
+ 'path': '2019-07-03-02-02-00',
+ 'size': 158516,
+ 'last_modified': '2019-07-03 02:02'
+ }, {
+ 'path': '2019-07-03-03-02-00',
+ 'size': 158830,
+ 'last_modified': '2019-07-03 03:02'
+ }, {
+ 'path': '2019-07-03-04-02-00',
+ 'size': 158831,
+ 'last_modified': '2019-07-03 04:02'
+ }
+ ]
+ }, {
+ 'path': 'relay-descriptors',
+ 'directories': [
+ {
+ 'path': 'bandwidths',
+ 'files': [
+ {
+ 'path': '2019-07-03-00-30-57-bandwidth-616DF2278EE2C90F475E4EA2562E2C00EB9F10E517FB901229F331AEB70B8AD7',
+ 'size': 2580044,
+ 'last_modified': '2019-07-03 02:35'
+ }, {
+ 'path': '2019-07-03-01-35-02-bandwidth-2A5B679E9AA2D5C903CD16C00E16FEFA3E21E38AB3DE338941AE4AC13FD505DE',
+ 'size': 4210146,
+ 'last_modified': '2019-07-03 02:35'
+ }, {
+ 'path': '2019-07-03-01-35-03-bandwidth-3B06DAD9EDE8E1D08CC494E856AFD9D49256ECC2D68456799DD1EC7ED3436875',
+ 'size': 4249699,
+ 'last_modified': '2019-07-03 02:35'
+ }
+ ]
+ }, {
+ 'path': 'consensuses',
+ 'files': [
+ {
+ 'path': '2019-07-03-02-00-00-consensus',
+ 'size': 2211265,
+ 'last_modified': '2019-07-03 02:05'
+ }, {
+ 'path': '2019-07-03-03-00-00-consensus',
+ 'size': 2204478,
+ 'last_modified': '2019-07-03 03:05'
+ }, {
+ 'path': '2019-07-03-04-00-00-consensus',
+ 'size': 2202554,
+ 'last_modified': '2019-07-03 04:05'
+ }
+ ]
+ }, {
+ 'path': 'extra-infos',
+ 'files': [
+ {
+ 'path': '2019-07-03-02-05-00-extra-infos',
+ 'size': 1162899,
+ 'last_modified': '2019-07-03 02:05'
+ }, {
+ 'path': '2019-07-03-03-05-00-extra-infos',
+ 'size': 1133425,
+ 'last_modified': '2019-07-03 03:05'
+ }, {
+ 'path': '2019-07-03-04-05-00-extra-infos',
+ 'size': 1153793,
+ 'last_modified': '2019-07-03 04:05'
+ }
+ ]
+ }, {
+ 'path': 'microdescs',
+ 'directories': [
+ {
+ 'path': 'consensus-microdesc',
+ 'files': [
+ {
+ 'path': '2019-07-03-02-00-00-consensus-microdesc',
+ 'size': 2028994,
+ 'last_modified': '2019-07-03 02:05'
+ }, {
+ 'path': '2019-07-03-03-00-00-consensus-microdesc',
+ 'size': 2022808,
+ 'last_modified': '2019-07-03 03:05'
+ }, {
+ 'path': '2019-07-03-04-00-00-consensus-microdesc',
+ 'size': 2020751,
+ 'last_modified': '2019-07-03 04:05'
+ }
+ ]
+ }, {
+ 'path': 'micro',
+ 'files': [
+ {
+ 'path': '2019-07-02-23-05-00-micro',
+ 'size': 19934,
+ 'last_modified': '2019-07-02 23:05'
+ }, {
+ 'path': '2019-07-03-00-05-00-micro',
+ 'size': 12030,
+ 'last_modified': '2019-07-03 00:05'
+ }, {
+ 'path': '2019-07-03-01-05-00-micro',
+ 'size': 14850,
+ 'last_modified': '2019-07-03 01:05'
+ }
+ ]
+ }
+ ]
+ }, {
+ 'path': 'server-descriptors',
+ 'files': [
+ {
+ 'path': '2019-07-03-02-05-00-server-descriptors',
+ 'size': 1374587,
+ 'last_modified': '2019-07-03 02:05'
+ }, {
+ 'path': '2019-07-03-03-05-00-server-descriptors',
+ 'size': 1353286,
+ 'last_modified': '2019-07-03 03:05'
+ }, {
+ 'path': '2019-07-03-04-05-00-server-descriptors',
+ 'size': 1336125,
+ 'last_modified': '2019-07-03 04:05'
+ }
+ ]
+ }, {
+ 'path': 'votes',
+ 'files': [
+ {
+ 'path': '2019-07-03-02-00-00-vote-0232AF901C31A04EE9848595AF9BB7620D4C5B2E-D9B6923A3AF9FB5DB3CD30191BCBD29A7A936D86',
+ 'size': 3449707,
+ 'last_modified': '2019-07-03 02:05'
+ }, {
+ 'path': '2019-07-03-02-00-00-vote-14C131DFC5C6F93646BE72FA1401C02A8DF2E8B4-39429F0789A9EC07A2A8754C4C449CCABAB787CC',
+ 'size': 3435482,
+ 'last_modified': '2019-07-03 02:05'
+ }, {
+ 'path': '2019-07-03-02-00-00-vote-23D15D965BC35114467363C165C4F724B64B4F66-4337842B697467123B5351E1E8EB64ED497C0EDA',
+ 'size': 3571106,
+ 'last_modified': '2019-07-03 02:05'
+ }
+ ]
+ }
+ ]
+ }, {
+ 'path': 'torperf',
+ 'files': [
+ {
+ 'path': 'op-ab-1048576-2019-07-03.tpf',
+ 'size': 39152,
+ 'last_modified': '2019-07-04 00:01'
+ }, {
+ 'path': 'op-ab-51200-2019-07-03.tpf',
+ 'size': 248173,
+ 'last_modified': '2019-07-04 00:01'
+ }, {
+ 'path': 'op-ab-5242880-2019-07-03.tpf',
+ 'size': 15900,
+ 'last_modified': '2019-07-04 00:01'
+ }
+ ]
+ }, {
+ 'path': 'webstats',
+ 'files': [
+ {
+ 'path': '2019.www.torproject.org_hetzner-hel1-03.torproject.org_access.log_20190620.xz',
+ 'size': 8872,
+ 'last_modified': '2019-07-03 04:21'
+ }, {
+ 'path': '2019.www.torproject.org_hetzner-hel1-03.torproject.org_access.log_20190621.xz',
+ 'size': 9312,
+ 'last_modified': '2019-07-04 04:21'
+ }, {
+ 'path': '2019.www.torproject.org_hetzner-hel1-03.torproject.org_access.log_20190622.xz',
+ 'size': 9836,
+ 'last_modified': '2019-07-05 04:21'
+ }
+ ]
+ }
+ ]
+ }
+ ]
+}
+
class TestCollector(unittest.TestCase):
@patch(URL_OPEN)
@@ -111,3 +641,12 @@ class TestCollector(unittest.TestCase):
with patch(URL_OPEN, Mock(return_value = io.BytesIO(b'not compressed'))):
collector = CollecTor(compression = compression)
self.assertRaisesRegexp(IOError, 'Unable to decompress %s response' % compression, collector.index)
+
+ @patch(URL_OPEN)
+ def test_real_index(self, urlopen_mock):
+ with open(get_resource('collector_index.json'), 'rb') as index_file:
+ urlopen_mock.return_value = io.BytesIO(index_file.read())
+
+ self.maxDiff = None
+ collector = CollecTor(compression = Compression.PLAINTEXT)
+ self.assertEqual(EXAMPLE_INDEX, collector.index())
diff --git a/test/unit/descriptor/data/collector_index.json b/test/unit/descriptor/data/collector_index.json
new file mode 100644
index 00000000..c6528f23
--- /dev/null
+++ b/test/unit/descriptor/data/collector_index.json
@@ -0,0 +1 @@
+{"index_created":"2019-07-06 01:54","build_revision":"df98ac79","path":"https://collector.torproject.org","directories":[{"path":"archive","directories":[{"path":"bridge-descriptors","directories":[{"path":"extra-infos","files":[{"path":"bridge-extra-infos-2008-05.tar.xz","size":377644,"last_modified":"2016-09-04 09:21"},{"path":"bridge-extra-infos-2008-06.tar.xz","size":600484,"last_modified":"2016-09-04 09:21"},{"path":"bridge-extra-infos-2008-07.tar.xz","size":716320,"last_modified":"2016-09-04 09:21"}]},{"path":"server-descriptors","files":[{"path":"bridge-server-descriptors-2008-05.tar.xz","size":205348,"last_modified":"2016-09-09 14:13"},{"path":"bridge-server-descriptors-2008-06.tar.xz","size":342828,"last_modified":"2016-09-09 14:13"},{"path":"bridge-server-descriptors-2008-07.tar.xz","size":374848,"last_modified":"2016-09-09 14:13"}]},{"path":"statuses","files":[{"path":"bridge-statuses-2008-05.tar.xz","size":74792,"last_modified":"2016-09-14 21:11"},{"path":"bridge-statuse
s-2008-06.tar.xz","size":123488,"last_modified":"2016-09-14 21:11"},{"path":"bridge-statuses-2008-07.tar.xz","size":143836,"last_modified":"2016-09-14 21:11"}]}]},{"path":"bridge-pool-assignments","files":[{"path":"bridge-pool-assignments-2010-09.tar.xz","size":32804,"last_modified":"2012-05-31 10:21"},{"path":"bridge-pool-assignments-2010-10.tar.xz","size":304684,"last_modified":"2012-05-31 10:21"},{"path":"bridge-pool-assignments-2010-11.tar.xz","size":292228,"last_modified":"2012-05-31 10:21"}]},{"path":"exit-lists","files":[{"path":"exit-list-2010-02.tar.xz","size":272008,"last_modified":"2012-05-31 18:57"},{"path":"exit-list-2010-03.tar.xz","size":1247484,"last_modified":"2012-05-31 18:57"},{"path":"exit-list-2010-04.tar.xz","size":1139896,"last_modified":"2012-05-31 18:57"}]},{"path":"relay-descriptors","files":[{"path":"certs.tar.xz","size":144696,"last_modified":"2019-07-03 03:29"}],"directories":[{"path":"bandwidths","files":[{"path":"bandwidths-2019-05.tar.xz","size":50385
816,"last_modified":"2019-06-07 08:05"},{"path":"bandwidths-2019-06.tar.xz","size":105881156,"last_modified":"2019-07-03 07:30"},{"path":"bandwidths-2019-07.tar.xz","size":11374436,"last_modified":"2019-07-03 07:12"}]},{"path":"consensuses","files":[{"path":"consensuses-2007-10.tar.xz","size":1061648,"last_modified":"2012-05-15 14:35"},{"path":"consensuses-2007-11.tar.xz","size":6810308,"last_modified":"2012-05-15 14:35"},{"path":"consensuses-2007-12.tar.xz","size":8106968,"last_modified":"2012-05-15 14:35"}]},{"path":"extra-infos","files":[{"path":"extra-infos-2007-08.tar.xz","size":3016916,"last_modified":"2016-06-23 09:53"},{"path":"extra-infos-2007-09.tar.xz","size":6459884,"last_modified":"2016-06-23 09:54"},{"path":"extra-infos-2007-10.tar.xz","size":7326564,"last_modified":"2016-06-23 09:54"}]},{"path":"microdescs","files":[{"path":"microdescs-2014-01.tar.xz","size":7515396,"last_modified":"2014-02-07 03:59"},{"path":"microdescs-2014-02.tar.xz","size":21822944,"last_modified"
:"2014-03-07 04:54"},{"path":"microdescs-2014-03.tar.xz","size":24201436,"last_modified":"2014-04-07 03:54"}]},{"path":"server-descriptors","files":[{"path":"server-descriptors-2005-12.tar.xz","size":1348620,"last_modified":"2016-06-24 08:12"},{"path":"server-descriptors-2006-02.tar.xz","size":28625408,"last_modified":"2016-06-24 08:14"},{"path":"server-descriptors-2006-03.tar.xz","size":49548736,"last_modified":"2016-06-24 08:17"}]},{"path":"statuses","files":[{"path":"statuses-2005-12.tar.xz","size":1468844,"last_modified":"2016-06-25 11:50"},{"path":"statuses-2006-01.tar.xz","size":3344280,"last_modified":"2016-06-25 11:52"},{"path":"statuses-2006-02.tar.xz","size":4006336,"last_modified":"2016-06-25 11:54"}]},{"path":"tor","files":[{"path":"tor-2004-05.tar.xz","size":386672,"last_modified":"2012-05-18 14:26"},{"path":"tor-2004-06.tar.xz","size":1087980,"last_modified":"2012-05-18 14:26"},{"path":"tor-2004-07.tar.xz","size":1366568,"last_modified":"2012-05-18 14:26"}]},{"path":"v
otes","files":[{"path":"votes-2007-10.tar.xz","size":1356504,"last_modified":"2012-05-15 14:51"},{"path":"votes-2007-11.tar.xz","size":10641492,"last_modified":"2012-05-15 14:51"},{"path":"votes-2007-12.tar.xz","size":14712136,"last_modified":"2012-05-15 14:52"}]}]},{"path":"torperf","files":[{"path":"torperf-2009-07.tar.xz","size":182712,"last_modified":"2012-05-30 07:23"},{"path":"torperf-2009-08.tar.xz","size":203236,"last_modified":"2012-05-30 07:23"},{"path":"torperf-2009-09.tar.xz","size":193832,"last_modified":"2012-05-30 07:23"}]},{"path":"webstats","files":[{"path":"webstats-2015-01.tar","size":30720,"last_modified":"2018-03-19 16:07"},{"path":"webstats-2015-02.tar","size":20480,"last_modified":"2018-03-19 16:07"},{"path":"webstats-2015-03.tar","size":20480,"last_modified":"2018-03-19 16:07"}]}]},{"path":"contrib"},{"path":"recent","directories":[{"path":"bridge-descriptors","directories":[{"path":"extra-infos","files":[{"path":"2019-07-03-02-09-00-extra-infos","size":50781
6,"last_modified":"2019-07-03 02:09"},{"path":"2019-07-03-03-09-00-extra-infos","size":558790,"last_modified":"2019-07-03 03:09"},{"path":"2019-07-03-04-09-05-extra-infos","size":592279,"last_modified":"2019-07-03 04:09"}]},{"path":"server-descriptors","files":[{"path":"2019-07-03-02-09-00-server-descriptors","size":274355,"last_modified":"2019-07-03 02:09"},{"path":"2019-07-03-03-09-00-server-descriptors","size":295671,"last_modified":"2019-07-03 03:09"},{"path":"2019-07-03-04-09-05-server-descriptors","size":312822,"last_modified":"2019-07-03 04:09"}]},{"path":"statuses","files":[{"path":"20190703-011231-BA44A889E64B93FAA2B114E02C2A279A8555C533","size":238340,"last_modified":"2019-07-03 02:09"},{"path":"20190703-014231-BA44A889E64B93FAA2B114E02C2A279A8555C533","size":238147,"last_modified":"2019-07-03 02:09"},{"path":"20190703-021231-BA44A889E64B93FAA2B114E02C2A279A8555C533","size":238231,"last_modified":"2019-07-03 03:09"}]}]},{"path":"exit-lists","files":[{"path":"2019-07-03-02-
02-00","size":158516,"last_modified":"2019-07-03 02:02"},{"path":"2019-07-03-03-02-00","size":158830,"last_modified":"2019-07-03 03:02"},{"path":"2019-07-03-04-02-00","size":158831,"last_modified":"2019-07-03 04:02"}]},{"path":"relay-descriptors","directories":[{"path":"bandwidths","files":[{"path":"2019-07-03-00-30-57-bandwidth-616DF2278EE2C90F475E4EA2562E2C00EB9F10E517FB901229F331AEB70B8AD7","size":2580044,"last_modified":"2019-07-03 02:35"},{"path":"2019-07-03-01-35-02-bandwidth-2A5B679E9AA2D5C903CD16C00E16FEFA3E21E38AB3DE338941AE4AC13FD505DE","size":4210146,"last_modified":"2019-07-03 02:35"},{"path":"2019-07-03-01-35-03-bandwidth-3B06DAD9EDE8E1D08CC494E856AFD9D49256ECC2D68456799DD1EC7ED3436875","size":4249699,"last_modified":"2019-07-03 02:35"}]},{"path":"consensuses","files":[{"path":"2019-07-03-02-00-00-consensus","size":2211265,"last_modified":"2019-07-03 02:05"},{"path":"2019-07-03-03-00-00-consensus","size":2204478,"last_modified":"2019-07-03 03:05"},{"path":"2019-07-03-04
-00-00-consensus","size":2202554,"last_modified":"2019-07-03 04:05"}]},{"path":"extra-infos","files":[{"path":"2019-07-03-02-05-00-extra-infos","size":1162899,"last_modified":"2019-07-03 02:05"},{"path":"2019-07-03-03-05-00-extra-infos","size":1133425,"last_modified":"2019-07-03 03:05"},{"path":"2019-07-03-04-05-00-extra-infos","size":1153793,"last_modified":"2019-07-03 04:05"}]},{"path":"microdescs","directories":[{"path":"consensus-microdesc","files":[{"path":"2019-07-03-02-00-00-consensus-microdesc","size":2028994,"last_modified":"2019-07-03 02:05"},{"path":"2019-07-03-03-00-00-consensus-microdesc","size":2022808,"last_modified":"2019-07-03 03:05"},{"path":"2019-07-03-04-00-00-consensus-microdesc","size":2020751,"last_modified":"2019-07-03 04:05"}]},{"path":"micro","files":[{"path":"2019-07-02-23-05-00-micro","size":19934,"last_modified":"2019-07-02 23:05"},{"path":"2019-07-03-00-05-00-micro","size":12030,"last_modified":"2019-07-03 00:05"},{"path":"2019-07-03-01-05-00-micro","si
ze":14850,"last_modified":"2019-07-03 01:05"}]}]},{"path":"server-descriptors","files":[{"path":"2019-07-03-02-05-00-server-descriptors","size":1374587,"last_modified":"2019-07-03 02:05"},{"path":"2019-07-03-03-05-00-server-descriptors","size":1353286,"last_modified":"2019-07-03 03:05"},{"path":"2019-07-03-04-05-00-server-descriptors","size":1336125,"last_modified":"2019-07-03 04:05"}]},{"path":"votes","files":[{"path":"2019-07-03-02-00-00-vote-0232AF901C31A04EE9848595AF9BB7620D4C5B2E-D9B6923A3AF9FB5DB3CD30191BCBD29A7A936D86","size":3449707,"last_modified":"2019-07-03 02:05"},{"path":"2019-07-03-02-00-00-vote-14C131DFC5C6F93646BE72FA1401C02A8DF2E8B4-39429F0789A9EC07A2A8754C4C449CCABAB787CC","size":3435482,"last_modified":"2019-07-03 02:05"},{"path":"2019-07-03-02-00-00-vote-23D15D965BC35114467363C165C4F724B64B4F66-4337842B697467123B5351E1E8EB64ED497C0EDA","size":3571106,"last_modified":"2019-07-03 02:05"}]}]},{"path":"torperf","files":[{"path":"op-ab-1048576-2019-07-03.tpf","size":3
9152,"last_modified":"2019-07-04 00:01"},{"path":"op-ab-51200-2019-07-03.tpf","size":248173,"last_modified":"2019-07-04 00:01"},{"path":"op-ab-5242880-2019-07-03.tpf","size":15900,"last_modified":"2019-07-04 00:01"}]},{"path":"webstats","files":[{"path":"2019.www.torproject.org_hetzner-hel1-03.torproject.org_access.log_20190620.xz","size":8872,"last_modified":"2019-07-03 04:21"},{"path":"2019.www.torproject.org_hetzner-hel1-03.torproject.org_access.log_20190621.xz","size":9312,"last_modified":"2019-07-04 04:21"},{"path":"2019.www.torproject.org_hetzner-hel1-03.torproject.org_access.log_20190622.xz","size":9836,"last_modified":"2019-07-05 04:21"}]}]}]}
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits