- Jun 01, 2023
-
-
juga authored
as well as contents and modindex to body too. search! \o/
-
juga authored
-
juga authored
-
juga authored
and add python 3.11
-
juga authored
-
juga authored
-
juga authored
-
juga authored
with it's new module's path
-
juga authored
-
juga authored
-
juga authored
for addresses and ports
-
juga authored
-
juga authored
by removing support for Python versions < 3.
-
juga authored
-
juga authored
Seems to close #129
-
juga authored
Applied patch from https://salsa.debian.org/debian/python-stem/-/commit/4b02051b35418a45b045379f69c59cd8904eade4 Author: Bas Couwenberg <sebastic@debian.org> 2023-01-19 09:03:34 Path b8063b3b isn't applicable as it is this maint branch. Closes #130
-
juga authored
Apply patch from https://salsa.debian.org/debian/python-stem/-/commit/46e214c62b08493086729d780e1e7840b8392bb8. Description: Make the build reproducible Author: Chris Lamb <lamby@debian.org> Last-Update: 2020-06-23
-
juga authored
Apply patch https://salsa.debian.org/debian/python-stem/-/commit/dd1b86f174e948b04821d7d897cdd15bbb79b6f4 Author: Federico Ceratto <federico@debian.org> 2023-01-14 11:49:58 Patch 56f3daa4 isn't applicable as it is in maint branch. Closes #105
- May 30, 2023
-
-
Fix from nyxnor... https://github.com/torproject/stem/pull/113
-
- Oct 06, 2022
-
-
juga authored
-
- Oct 03, 2022
-
-
juga authored
-
-
Correcting outdated links for downloading stem as a tarball. Caught thanks to Thomas.
-
- Sep 27, 2022
- Sep 26, 2022
-
-
juga authored
to be able to check tests at gitlab.tpo, instead of updating travis configuration.
-
Closes issue #109. Long story short: a few names from collection are now moved to collection.abc exclusively starting in Python 3.10. The only name this app uses from there that was moved is `collections.Iterable`. Python versions starting from 3.3 support both `collections.Iterable` and `collections.abc.Iterable` as the way to refer to this class, which Python 3.10 being the first one to drop `collections.Iterable`. So.. we just work around this API quirk and always refer ot it as `collections.abc.Iterable`.
-
juga authored
from 1.9.0 to 1.8.1, since it was probably an error.
-
- May 11, 2021
-
-
Damian Johnson authored
Usually we add a '-dev' suffix, so opting for '-maint' to differentiate our 1.8 and 2.0 banches.
-
- May 06, 2021
- May 05, 2021
-
-
mig5 authored
Use assert_in() on the test_tor_version test, to accommodate for the very verbose version string in Tor 0.4.7-alpha-dev
-
mig5 authored
Sets some v2 tests to require older Tor versions so that tests for Client Auth on v3 onions pass on newer Tor without failing tests where v2 support has been dropped.
-
- Dec 29, 2019
-
-
Damian Johnson authored
-
Damian Johnson authored
The example we provided did not deduplicate relays, causing us to cite relays repeatedly for each descriptor they published.
-
- Dec 28, 2019
-
-
Damian Johnson authored
-
- Dec 27, 2019
-
-
Damian Johnson authored
When I first wrote this module I played fast and lose with the 'start' and 'end' parameters, guessing relevance purely based on filenames. When Karsten added timestamps to the index he better defined the relevant timestamp to be a descriptor's publication, which everything except microdescriptors contains. Interestingly, archives can contain publications both before and after its filename date. For example... recent/relay-descriptors/server-descriptors/2019-12-27-22-04-59-server-descriptors Old filename derived timestamps: start: 2019-12-27 22:04:59 end: 2019-12-27 23:04:59 Index's publication timpestamps: start: 2019-12-27 20:30:00 end: 2019-12-27 22:45:00 If the file was created at 22:04 how does it contain something published at 22:45? Regardless, now that the index contains publication times for our purposes filenames dates are moot. Our 'start' and 'end' arguments provide the subset of archives that reside within the given publication range. For example, the following downloads descriptors that were published up to two hours ago... recent = datetime.datetime.utcnow() - datetime.timedelta(minutes = 120) descriptors = stem.descriptor.collector.get_server_descriptors(start = recent) If we make this more sophisticated we can demonstrate how many descriptors we pull from each archive... import datetime import stem.descriptor.collector collector = stem.descriptor.collector.get_instance() recent = datetime.datetime.utcnow() - datetime.timedelta(minutes = 120) # This effectively does the same thing as get_server_descriptors(), # but in a way we can also determine the full counts. for f in collector.files('server-descriptor', start = recent): all_desc = list(f.read()) recent_desc = list(f.read(start = recent)) print('%s (%s => %s)' % (f.path, f.start, f.end)) print(' %i of %i descriptors were published recently' % (len(recent_desc), len(all_desc))) # Download them again, but through our more prevalently used # get_server_descriptors() method. print('\nIn total there are %i server descriptors published recently' % len(list(collector.get_server_descriptors(start = recent)))) ---------------------------------------------------------------------- % python demo.py recent/relay-descriptors/server-descriptors/2019-12-27-21-04-59-server-descriptors (2019-12-27 17:59:00 => 2019-12-27 22:13:00) 3 of 817 descriptors were published recently recent/relay-descriptors/server-descriptors/2019-12-27-22-04-59-server-descriptors (2019-12-27 20:30:00 => 2019-12-27 22:45:00) 297 of 776 descriptors were published recently recent/relay-descriptors/server-descriptors/2019-12-27-23-04-59-server-descriptors (2019-12-27 21:49:00 => 2019-12-27 23:01:00) 800 of 800 descriptors were published recently In total there are 1100 server descriptors published recently
-
Damian Johnson authored
Minor fix for three online tests... ====================================================================== FAIL: test_index_plaintext ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/atagar/Desktop/stem/test/require.py", line 43, in wrapped return func(self, *args, **kwargs) File "/home/atagar/Desktop/stem/test/require.py", line 58, in wrapped return func(self, *args, **kwargs) File "/home/atagar/Desktop/stem/test/integ/descriptor/collector.py", line 22, in test_index_plaintext self._test_index(None) File "/home/atagar/Desktop/stem/test/integ/descriptor/collector.py", line 98, in _test_index self.assertEqual(['archive', 'contrib', 'recent'], [entry['path'] for entry in index['directories']]) AssertionError: Lists differ: ['archive', 'contrib', 'recent... != [u'archive', u'recent'] First differing element 1: 'contrib' u'recent' First list contains 1 additional elements. First extra element 2: 'recent' - ['archive', 'contrib', 'recent'] ? ^^^^^^^^^^^ + [u'archive', u'recent'] ? + ^
-