This doesn't make sense post triggers, removed.
authorScott Gasch <[email protected]>
Tue, 28 Feb 2023 01:09:50 +0000 (17:09 -0800)
committerScott Gasch <[email protected]>
Tue, 28 Feb 2023 01:10:24 +0000 (17:10 -0800)
chooser.py

index af2f761075c84a93cdb410050d1d06486da3e635..91746bdb3174067713fbe495e834a3e73bd78db9 100644 (file)
@@ -42,13 +42,9 @@ class chooser(ABC):
                     )
                     age = now - last_modified
                     if age > freshness_requirement:
-                        logger.warning(
-                            f'chooser: "{page}" is too old.'
-                        )
+                        logger.warning(f'chooser: "{page}" is too old.')
                         continue
-                logger.info(
-                    f'chooser: candidate page: "{page}"'
-                )
+                logger.info(f'chooser: candidate page: "{page}"')
                 filenames.append(page)
         return filenames
 
@@ -69,17 +65,10 @@ class weighted_random_chooser(chooser):
         self.filter_list: List[Callable[[str], bool]] = []
         if filter_list is not None:
             self.filter_list.extend(filter_list)
-        self.filter_list.append(self.dont_choose_page_twice_in_a_row_filter)
-
-    def dont_choose_page_twice_in_a_row_filter(self, choice: str) -> bool:
-        if self.last_choice is not None and choice == self.last_choice:
-            return False
-        self.last_choice = choice
-        return True
 
     def choose_next_page(self) -> Any:
         if self.pages is None or self.count % 100 == 0:
-            logger.info('chooser: refreshing the candidate pages list.')
+            logger.info("chooser: refreshing the candidate pages list.")
             self.pages = self.get_page_list()
 
         total_weight = 0
@@ -137,28 +126,28 @@ class weighted_random_chooser_with_triggers(weighted_random_chooser):
             if x is not None and len(x) > 0:
                 for y in x:
                     self.page_queue.add(y)
-                    logger.info(f'chooser: noticed active trigger {y}')
+                    logger.info(f"chooser: noticed active trigger {y}")
                     triggered = True
         return triggered
 
     def choose_next_page(self) -> Tuple[str, bool]:
         if self.pages is None or self.count % 100 == 0:
-            logger.info('chooser: refreshing the candidates page list')
+            logger.info("chooser: refreshing the candidates page list")
             self.pages = self.get_page_list()
 
         triggered = self.check_for_triggers()
 
         # First try to satisfy from the page queue.
         if len(self.page_queue) > 0:
-            logger.info('chooser: page queue has entries; pulling choice from there.')
+            logger.info("chooser: page queue has entries; pulling choice from there.")
             page = None
             priority = None
             for t in self.page_queue:
                 if priority is None or t[1] > priority:
                     page = t[0]
                     priority = t[1]
-            assert(page is not None)
-            assert(priority is not None)
+            assert page is not None
+            assert priority is not None
             self.page_queue.remove((page, priority))
             return (page, triggered)