Skip to content

Commit b4c76c3

Browse files
authored
Merge pull request #150 from scrapinghub/scrapy-210
Bugfix, compatibility with scrapy 2.10: Do not pass spider to engine crawl
2 parents 404b7b7 + 37d5710 commit b4c76c3

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

.github/workflows/main.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ jobs:
1313
runs-on: ubuntu-latest
1414
strategy:
1515
matrix:
16-
python-version: ["3.6", "3.7", "3.8", "3.9", "3.10"]
17-
scrapy-version: ["2.5.1", "2.1.0"]
16+
python-version: ["3.8", "3.9", "3.10", "3.11"]
17+
scrapy-version: ["2.10", "2.9"]
1818

1919
steps:
2020
- uses: actions/checkout@v2

scrapyrt/core.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ def spider_idle(self, spider):
178178
self.crawler.spider, "modify_realtime_request", None)
179179
if callable(modify_request):
180180
self.request = modify_request(self.request)
181-
spider.crawler.engine.crawl(self.request, spider)
181+
spider.crawler.engine.crawl(self.request)
182182
self._request_scheduled = True
183183
raise DontCloseSpider
184184

tests/test_crawl_manager.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ def test_spider_opened(self):
104104
self.assertIsNone(self.crawl_manager.request.callback)
105105
self._call_spider_idle()
106106
self.crawler.engine.crawl.assert_called_once_with(
107-
self.crawl_manager.request, self.spider)
107+
self.crawl_manager.request)
108108
self.assertNotEqual(self.request, self.crawl_manager.request)
109109
self.assertEquals(
110110
self.crawl_manager.request.callback, self.spider.parse_something)
@@ -127,15 +127,15 @@ def modify_realtime_request(request):
127127
self.spider.modify_realtime_request = modify_realtime_request
128128
self._call_spider_idle()
129129
self.crawler.engine.crawl.assert_called_once_with(
130-
self.crawl_manager.request, self.spider)
130+
self.crawl_manager.request)
131131
self.assertEqual(self.crawl_manager.request.method, 'POST')
132132
self.assertEqual(self.crawl_manager.request.meta['foo'], 'bar')
133133

134134
def test_modify_realtime_request_is_not_callable(self):
135135
self.spider.modify_realtime_request = None
136136
self._call_spider_idle()
137137
self.crawler.engine.crawl.assert_called_once_with(
138-
self.crawl_manager.request, self.spider)
138+
self.crawl_manager.request)
139139
self.assertNotEqual(self.request, self.crawl_manager.request)
140140

141141
def test_pass_wrong_spider_errback(self):

0 commit comments

Comments
 (0)