diff --git a/pkgs/development/python-modules/scrapy/default.nix b/pkgs/development/python-modules/scrapy/default.nix index 2827f7151f4..177531e64f7 100644 --- a/pkgs/development/python-modules/scrapy/default.nix +++ b/pkgs/development/python-modules/scrapy/default.nix @@ -23,10 +23,11 @@ , sybil , pytest-twisted , botocore +, itemadapter }: buildPythonPackage rec { - version = "2.1.0"; + version = "2.2.1"; pname = "Scrapy"; disabled = isPy27; @@ -55,14 +56,7 @@ buildPythonPackage rec { w3lib zope_interface protego - ]; - - patches = [ - # Scrapy is usually installed via pip where copying all - # permissions makes sense. In Nix the files copied are owned by - # root and readonly. As a consequence scrapy can't edit the - # project templates. - ./permissions-fix.patch + itemadapter ]; LC_ALL = "en_US.UTF-8"; @@ -78,7 +72,7 @@ buildPythonPackage rec { src = fetchPypi { inherit pname version; - sha256 = "640aea0f9be9b055f5cfec5ab78ee88bb37a5be3809b138329bd2af51392ec7f"; + sha256 = "6a09beb5190bfdee2d72cf261822eae5d92fe8a86ac9ee1f55fc44b4864ca583"; }; postInstall = '' diff --git a/pkgs/development/python-modules/scrapy/permissions-fix.patch b/pkgs/development/python-modules/scrapy/permissions-fix.patch deleted file mode 100644 index 53038cf74e5..00000000000 --- a/pkgs/development/python-modules/scrapy/permissions-fix.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff --git a/scrapy/commands/startproject.py b/scrapy/commands/startproject.py -index 5941066..89f8edb 100644 ---- a/scrapy/commands/startproject.py -+++ b/scrapy/commands/startproject.py -@@ -4,7 +4,7 @@ import os - import string - from importlib import import_module - from os.path import join, exists, abspath --from shutil import ignore_patterns, move, copy2, copystat -+from shutil import ignore_patterns, move, copyfile, copystat - - import scrapy - from scrapy.commands import ScrapyCommand -@@ -76,8 +76,7 @@ class Command(ScrapyCommand): - if os.path.isdir(srcname): - self._copytree(srcname, dstname) - else: -- copy2(srcname, dstname) -- copystat(src, dst) -+ copyfile(srcname, dstname) - - def run(self, args, opts): - if len(args) not in (1, 2):