mirror of
https://github.com/scrapy/scrapy.git
synced 2025-02-24 22:23:46 +00:00
fix ITEM_PIPELINES setting handling
* item_pipelines variable was unused so the fallback didn't work; * added support for fallback in case of ITEM_PIPELINIES defined as set.
This commit is contained in:
parent
61e89d8247
commit
b74e5aa551
@ -14,15 +14,14 @@ class ItemPipelineManager(MiddlewareManager):
|
||||
@classmethod
|
||||
def _get_mwlist_from_settings(cls, settings):
|
||||
item_pipelines = settings['ITEM_PIPELINES']
|
||||
if isinstance(item_pipelines, (tuple, list)):
|
||||
if isinstance(item_pipelines, (tuple, list, set, frozenset)):
|
||||
from scrapy.exceptions import ScrapyDeprecationWarning
|
||||
import warnings
|
||||
warnings.warn('ITEM_PIPELINES defined as a list is deprecated, switch to a dict',
|
||||
warnings.warn('ITEM_PIPELINES defined as a list or a set is deprecated, switch to a dict',
|
||||
category=ScrapyDeprecationWarning, stacklevel=1)
|
||||
# convert old ITEM_PIPELINE list to a dict with order 500
|
||||
item_pipelines = dict(zip(item_pipelines, range(500, 500+len(item_pipelines))))
|
||||
return build_component_list(settings['ITEM_PIPELINES_BASE'],
|
||||
settings['ITEM_PIPELINES'])
|
||||
return build_component_list(settings['ITEM_PIPELINES_BASE'], item_pipelines)
|
||||
|
||||
def _add_middleware(self, pipe):
|
||||
super(ItemPipelineManager, self)._add_middleware(pipe)
|
||||
|
Loading…
x
Reference in New Issue
Block a user