summary refs log tree commit diff
path: root/pkgs/development/python-modules/arelle
diff options
context:
space:
mode:
authorSamuel Leathers <sam@appliedtrust.com>2017-09-15 15:59:12 -0400
committerSamuel Leathers <sam@appliedtrust.com>2017-09-16 09:01:48 -0400
commitd15c019edd15649fb9a48eb3b268dbc1056e0886 (patch)
treea27161094a69b49caaddbd89b0a9a61aeb616096 /pkgs/development/python-modules/arelle
parent2edb7e9b2d8ff5db64beb49353353887610d83fb (diff)
downloadnixpkgs-d15c019edd15649fb9a48eb3b268dbc1056e0886.tar
nixpkgs-d15c019edd15649fb9a48eb3b268dbc1056e0886.tar.gz
nixpkgs-d15c019edd15649fb9a48eb3b268dbc1056e0886.tar.bz2
nixpkgs-d15c019edd15649fb9a48eb3b268dbc1056e0886.tar.lz
nixpkgs-d15c019edd15649fb9a48eb3b268dbc1056e0886.tar.xz
nixpkgs-d15c019edd15649fb9a48eb3b268dbc1056e0886.tar.zst
nixpkgs-d15c019edd15649fb9a48eb3b268dbc1056e0886.zip
arelle: 2017-06-01 -> 2017-08-24
Diffstat (limited to 'pkgs/development/python-modules/arelle')
-rw-r--r--pkgs/development/python-modules/arelle/default.nix26
-rw-r--r--pkgs/development/python-modules/arelle/tests.patch32
2 files changed, 46 insertions, 12 deletions
diff --git a/pkgs/development/python-modules/arelle/default.nix b/pkgs/development/python-modules/arelle/default.nix
index 2cf14192d09..3c4d802718e 100644
--- a/pkgs/development/python-modules/arelle/default.nix
+++ b/pkgs/development/python-modules/arelle/default.nix
@@ -1,27 +1,27 @@
 { gui ? true,
   buildPythonPackage, fetchFromGitHub, lib,
   sphinx_1_2, lxml, isodate, numpy, pytest,
-  tkinter ? null, py3to2,
+  tkinter ? null, py3to2, isPy3k,
   ... }:
 
-let
+buildPythonPackage rec {
+  name = "arelle-${version}${lib.optionalString (!gui) "-headless"}";
+  version = "2017-08-24";
+
+  disabled = !isPy3k;
+
   # Releases are published at http://arelle.org/download/ but sadly no
   # tags are published on github.
-  version = "2017-06-01";
-
   src = fetchFromGitHub {
     owner = "Arelle";
     repo = "Arelle";
-    rev = "c883f843d55bb48f03a15afceb4cc823cd4601bd";
-    sha256 = "1h48qdj0anv541rd3kna8bmcwfrl1l3yw76wsx8p6hx5prbmzg4v";
+    rev = "cb24e35d57b562a864ae3dd4542c4d9fcf3865fe";
+    sha256 = "1sbvhb3xlfnyvf1xj9dxwpcrfiaf7ikkdwvvap7aaxfxgiz85ip2";
   };
-
-in
-
-buildPythonPackage {
-  name = "arelle-${version}${lib.optionalString (!gui) "-headless"}";
-  inherit src;
   outputs = ["out" "doc"];
+  patches = [
+    ./tests.patch
+  ];
   postPatch = "rm testParser2.py";
   buildInputs = [
     sphinx_1_2
@@ -46,6 +46,8 @@ buildPythonPackage {
     (cd apidocs && make html && cp -r _build $doc)
     '';
 
+  doCheck = if gui then true else false;
+
   meta = {
     description = "An open source facility for XBRL, the eXtensible Business Reporting Language supporting various standards, exposed through a python or REST API" + lib.optionalString gui " and a graphical user interface";
     homepage = http://arelle.org/;
diff --git a/pkgs/development/python-modules/arelle/tests.patch b/pkgs/development/python-modules/arelle/tests.patch
new file mode 100644
index 00000000000..3e4aa0cd94a
--- /dev/null
+++ b/pkgs/development/python-modules/arelle/tests.patch
@@ -0,0 +1,32 @@
+diff --git c/arelle/CntlrProfiler.py i/arelle/CntlrProfiler.py
+index a64bb1b..dc0299d 100644
+--- c/arelle/CntlrProfiler.py
++++ i/arelle/CntlrProfiler.py
+@@ -1,5 +1,6 @@
+ 
+-import Cntlr, ModelManager, FileSource, time
++from arelle import Cntlr, ModelManager, FileSource
++import time
+ from optparse import OptionParser
+ import cProfile
+ import gettext
+diff --git c/arelle/ValidateFilingText.py i/arelle/ValidateFilingText.py
+index 12dbbbb..c0e98c3 100644
+--- c/arelle/ValidateFilingText.py
++++ i/arelle/ValidateFilingText.py
+@@ -16,7 +16,7 @@ XMLdeclaration = re.compile(r"<\?xml.*\?>", re.DOTALL)
+ XMLpattern = re.compile(r".*(<|&lt;|&#x3C;|&#60;)[A-Za-z_]+[A-Za-z0-9_:]*[^>]*(/>|>|&gt;|/&gt;).*", re.DOTALL)
+ CDATApattern = re.compile(r"<!\[CDATA\[(.+)\]\]")
+ #EFM table 5-1 and all &xxx; patterns
+-docCheckPattern = re.compile(r"&\w+;|[^0-9A-Za-z`~!@#$%&\*\(\)\.\-+ \[\]\{\}\|\\:;\"'<>,_?/=\t\n\r\m\f]") # won't match &#nnn;
++docCheckPattern = re.compile(r"&\w+;|[^0-9A-Za-z`~!@#$%&\*\(\)\.\-+ \[\]\{\}\|\\:;\"'<>,_?/=\t\n\r\f]") # won't match &#nnn;
+ namedEntityPattern = re.compile("&[_A-Za-z\xC0-\xD6\xD8-\xF6\xF8-\xFF\u0100-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]"
+                                 r"[_\-\.:" 
+                                 "\xB7A-Za-z0-9\xC0-\xD6\xD8-\xF6\xF8-\xFF\u0100-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u0300-\u036F\u203F-\u2040]*;")
+@@ -904,4 +904,4 @@ def referencedFiles(modelXbrl, localFilesOnly=True):
+     # footnote or other elements
+     for elt in modelXbrl.modelDocument.xmlRootElement.iter("{http://www.w3.org/1999/xhtml}a", "{http://www.w3.org/1999/xhtml}img"):
+         addReferencedFile(elt, elt)
+-    return referencedFiles
+\ No newline at end of file
++    return referencedFiles