missionpanel 1.2.1__tar.gz → 1.2.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. {missionpanel-1.2.1 → missionpanel-1.2.3}/PKG-INFO +1 -1
  2. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/example/ttrss.py +14 -7
  3. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel.egg-info/PKG-INFO +1 -1
  4. {missionpanel-1.2.1 → missionpanel-1.2.3}/setup.py +1 -1
  5. {missionpanel-1.2.1 → missionpanel-1.2.3}/LICENSE +0 -0
  6. {missionpanel-1.2.1 → missionpanel-1.2.3}/README.md +0 -0
  7. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/__init__.py +0 -0
  8. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/example/__init__.py +0 -0
  9. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/example/rsshub.py +0 -0
  10. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/handler/__init__.py +0 -0
  11. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/handler/handler.py +0 -0
  12. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/orm/__init__.py +0 -0
  13. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/orm/core.py +0 -0
  14. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/orm/handler.py +0 -0
  15. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/submitter/__init__.py +0 -0
  16. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/submitter/abc.py +0 -0
  17. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/submitter/asynchronous.py +0 -0
  18. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel/submitter/submitter.py +0 -0
  19. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel.egg-info/SOURCES.txt +0 -0
  20. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel.egg-info/dependency_links.txt +0 -0
  21. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel.egg-info/requires.txt +0 -0
  22. {missionpanel-1.2.1 → missionpanel-1.2.3}/missionpanel.egg-info/top_level.txt +0 -0
  23. {missionpanel-1.2.1 → missionpanel-1.2.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: missionpanel
3
- Version: 1.2.1
3
+ Version: 1.2.3
4
4
  Summary: A mission panel
5
5
  Home-page: https://github.com/yindaheng98/missionpanel
6
6
  Author: yindaheng98
@@ -69,6 +69,7 @@ class TTRSSClient(httpx.AsyncClient):
69
69
 
70
70
 
71
71
  class TTRSSSubmitter(AsyncSubmitter, metaclass=abc.ABCMeta):
72
+ logger = logging.getLogger("TTRSSSubmitter")
72
73
 
73
74
  @abc.abstractmethod
74
75
  async def parse_content(self, feed: dict, content: dict) -> AsyncGenerator[dict, Any]:
@@ -103,16 +104,22 @@ class TTRSSSubmitter(AsyncSubmitter, metaclass=abc.ABCMeta):
103
104
  await mission_content_queue.put(mission_content)
104
105
 
105
106
  async def mission_task():
106
- for _ in range(len(feeds)):
107
+ while True:
107
108
  mission_content = await mission_content_queue.get()
108
- matchers = await self.derive_matcher(mission_content)
109
- await self.create_mission(mission_content, matchers)
110
- tags = await self.derive_tags(mission_content)
111
- if len(tags) > 0:
112
- await self.add_tags(matchers, tags)
109
+ try:
110
+ matchers = await self.derive_matcher(mission_content)
111
+ await self.create_mission(mission_content, matchers)
112
+ tags = await self.derive_tags(mission_content)
113
+ if len(tags) > 0:
114
+ await self.add_tags(matchers, tags)
115
+ except Exception as e:
116
+ self.logger.warning(f'create mission failed, error: {e}')
113
117
  mission_content_queue.task_done()
114
118
 
115
- await asyncio.gather(mission_task(), *[feed_task(feed) for feed in feeds])
119
+ mission_task_ = asyncio.create_task(mission_task())
120
+ await asyncio.gather(*[feed_task(feed) for feed in feeds]) # wait for all feed tasks to finish
121
+ await mission_content_queue.join() # wait for all missions to be done
122
+ mission_task_.cancel() # cancel the while True in mission task
116
123
 
117
124
 
118
125
  class TTRSSHubSubmitter(TTRSSSubmitter):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: missionpanel
3
- Version: 1.2.1
3
+ Version: 1.2.3
4
4
  Summary: A mission panel
5
5
  Home-page: https://github.com/yindaheng98/missionpanel
6
6
  Author: yindaheng98
@@ -12,7 +12,7 @@ package_dir = {
12
12
 
13
13
  setup(
14
14
  name='missionpanel',
15
- version='1.2.1',
15
+ version='1.2.3',
16
16
  author='yindaheng98',
17
17
  author_email='yindaheng98@gmail.com',
18
18
  url='https://github.com/yindaheng98/missionpanel',
File without changes
File without changes
File without changes