-
Notifications
You must be signed in to change notification settings - Fork 10.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
move item loaders to a separate library #4005
Comments
Hi @kmike , if all goes well on this plan, I'd love to merge my https://github.com/BurnzZ/scrapy-loader-upkeep into the separate repo as it would make sense to combine them there. We'll probably need to refactor it a bit but I'm happy to work on it nonetheless. |
Ahh yes preserving the history would bit of a challenge. Thanks for linking it up @kmike! I'll read that up and see what we can do for this. :) |
Started this extraction here https://github.com/ejulio/scrapy-itemloaders
|
@ejulio it seems history before move from scrapy.contrib.loader to scrapy.loader is not preserved. Do you think there is a wayto keep it? |
@kmike , I guess not. I'll check if it is possible.. |
You can get the history for previous folder e.g. here https://github.com/scrapy/scrapy/commits/569156be190fb7e86108c29001d6233a6698a510/scrapy/contrib/loader. But yeah, I understand this can be complicated. |
@kmike , I managed to keep both commit histories https://github.com/ejulio/scrapy-itemloaders/commits/master |
Summary
Move item loaders to a separate repository, similar to parsel.
Motivation
There are two main reasons for doing so:
On a first sight, most of the item loaders code is not tied to Scrapy already.
Previous attempts
We tried to move itemloaders in past, by copying the current implementation. Decision was not to go with this, as Scrapy will have to depend on scrapy-itemloaders, and scrapy-itemloaders will have to depend on Scrapy. In this proposal Scrapy depends on a new package, but package can be used without Scrapy - it depends on parsel only.
How to do it
Other considerations
Optional scrapy.Item support in the library itself can be fine.
The text was updated successfully, but these errors were encountered: