GNU bug report logs - #56426
[PATCH 0/6] Add Julia CSV

Previous Next

Package: guix-patches;

Reported by: zimoun <zimon.toutoune <at> gmail.com>

Date: Wed, 6 Jul 2022 18:06:02 UTC

Severity: normal

Tags: patch

Done: Efraim Flashner <efraim <at> flashner.co.il>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 56426 in the body.
You can then email your comments to 56426 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to efraim <at> flashner.co.il, guix-patches <at> gnu.org:
bug#56426; Package guix-patches. (Wed, 06 Jul 2022 18:06:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to zimoun <zimon.toutoune <at> gmail.com>:
New bug report received and forwarded. Copy sent to efraim <at> flashner.co.il, guix-patches <at> gnu.org. (Wed, 06 Jul 2022 18:06:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: guix-patches <at> gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 0/6] Add Julia CSV
Date: Wed,  6 Jul 2022 20:05:37 +0200
Hi,

This series adds Julia CSV reader/writer.  Well, 'CSV.Chunks' fails so then
the 2 related tests.  I have no clue what could be wrong.  Therefore, I have
disabled these two ones.

I am currently checking some packages for i686-linux but the issues, if any,
can be addressed later.  Having the feedback from the build will help.


Cheers,
simon



zimoun (6):
  gnu: julia-parsers: Update to 2.2.4.
  gnu: Add julia-inlinestrings.
  gnu: julia-json: Update to 0.21.3.
  gnu: julia-weakrefstrings: Update to 1.4.0.
  gnu: Add julia-sentinelarrays.
  gnu: Add julia-csv.

 gnu/packages/julia-xyz.scm | 103 ++++++++++++++++++++++++++++++++++---
 1 file changed, 97 insertions(+), 6 deletions(-)


base-commit: 111bdcff48902457a7218f7ef8a80ad3dfaac3d1
-- 
2.36.0





Information forwarded to guix-patches <at> gnu.org:
bug#56426; Package guix-patches. (Wed, 06 Jul 2022 18:08:02 GMT) Full text and rfc822 format available.

Message #8 received at 56426 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 56426 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 2/6] gnu: Add julia-inlinestrings.
Date: Wed,  6 Jul 2022 20:06:40 +0200
* gnu/packages/julia-xyz.scm (julia-inlinestrings): New variable.
---
 gnu/packages/julia-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index c6f3ad5d61..49816507bd 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -2847,6 +2847,32 @@ (define-public julia-inifile
 interfaces with @file{.ini} files.")
     (license license:expat)))
 
+(define-public julia-inlinestrings
+  (package
+    (name "julia-inlinestrings")
+    (version "1.1.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaStrings/InlineStrings.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1dcdpxlphjliqlnkcri7mhg9bqqzpsdj80h9gkw8xhzr3ls473zr"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     (list julia-parsers))
+    (home-page "https://github.com/JuliaStrings/InlineStrings.jl")
+    (synopsis "Fixed-width string types")
+    (description "This package provides a set of custom string types of
+various fixed sizes.  Each inline string is a custom primitive type and can
+benefit from being stack friendly by avoiding allocations/heap tracking in the
+GC.  When used in an array, the elements are able to be stored inline since
+each one has a fixed size.  Currently support inline strings from 1 byte up to
+255 bytes.")
+    (license license:expat)))
+
 (define-public julia-interpolations
   (package
     (name "julia-interpolations")
-- 
2.36.0





Information forwarded to guix-patches <at> gnu.org:
bug#56426; Package guix-patches. (Wed, 06 Jul 2022 18:08:02 GMT) Full text and rfc822 format available.

Message #11 received at 56426 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 56426 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 1/6] gnu: julia-parsers: Update to 2.2.4.
Date: Wed,  6 Jul 2022 20:06:39 +0200
* gnu/packages/julia-xyz.scm (julia-parsers): Update to 2.2.4.
---
 gnu/packages/julia-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 56cff1ea6f..c6f3ad5d61 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -3946,7 +3946,7 @@ (define-public julia-parameters
 (define-public julia-parsers
   (package
     (name "julia-parsers")
-    (version "1.1.0")
+    (version "2.2.4")
     (source
      (origin
        (method git-fetch)
@@ -3955,7 +3955,7 @@ (define-public julia-parsers
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1gz3drd5334xrbx2ms33hiifkd0q1in4ywc92xvrkq3xgzdjqjdk"))))
+        (base32 "09v2x9yd1wdp74hzsf6218dpamlf2hb5nkmixqb4bc53ll8hpw4i"))))
     (build-system julia-build-system)
     (home-page "https://github.com/JuliaData/Parsers.jl")
     (synopsis "Fast parsing machinery for basic types in Julia")
-- 
2.36.0





Information forwarded to guix-patches <at> gnu.org:
bug#56426; Package guix-patches. (Wed, 06 Jul 2022 18:08:02 GMT) Full text and rfc822 format available.

Message #14 received at 56426 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 56426 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 5/6] gnu: Add julia-sentinelarrays.
Date: Wed,  6 Jul 2022 20:06:43 +0200
* gnu/packages/julia-xyz.scm (julia-sentinelarrays): New variable.
---
 gnu/packages/julia-xyz.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 7491ee3f5d..c53efb3d76 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -4797,6 +4797,27 @@ (define-public julia-scratch
 files that the user must interact with through a file browser.")
     (license license:expat)))
 
+(define-public julia-sentinelarrays
+  (package
+    (name "julia-sentinelarrays")
+    (version "1.3.13")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaData/SentinelArrays.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1h3vpz7xskbf2a60imdg0irwh9bybkahjpnb6b3wyk0j9a97nqkr"))))
+    (build-system julia-build-system)
+    (home-page "https://github.com/JuliaData/SentinelArrays.jl")
+    (synopsis "Array types using sentinel values")
+    (description "This package provides @code{SentinelArray{T}} that wraps an
+@code{AbstractArray} of type @code{T}, and accepts a sentinel and value
+argument.")
+    (license license:expat)))
+
 (define-public julia-showoff
   (package
     (name "julia-showoff")
-- 
2.36.0





Information forwarded to guix-patches <at> gnu.org:
bug#56426; Package guix-patches. (Wed, 06 Jul 2022 18:08:03 GMT) Full text and rfc822 format available.

Message #17 received at 56426 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 56426 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 3/6] gnu: julia-json: Update to 0.21.3.
Date: Wed,  6 Jul 2022 20:06:41 +0200
* gnu/packages/julia-xyz.scm (julia-json): Update to 0.21.3.
---
 gnu/packages/julia-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 49816507bd..ac7d5fd07e 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -3112,7 +3112,7 @@ (define-public julia-jive
 (define-public julia-json
   (package
     (name "julia-json")
-    (version "0.21.1")
+    (version "0.21.3")
     (source
      (origin
        (method git-fetch)
@@ -3121,7 +3121,7 @@ (define-public julia-json
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1f9k613kbknmp4fgjxvjaw4d5sfbx8a5hmcszmp1w9rqfqngjx9m"))))
+        (base32 "1l2p852sxq6h5fif3dqshvbw17gb06jmq2nkr88spvp7s0n0nslz"))))
     (build-system julia-build-system)
     (propagated-inputs
      (list julia-datastructures
-- 
2.36.0





Information forwarded to guix-patches <at> gnu.org:
bug#56426; Package guix-patches. (Wed, 06 Jul 2022 18:08:03 GMT) Full text and rfc822 format available.

Message #20 received at 56426 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 56426 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 4/6] gnu: julia-weakrefstrings: Update to 1.4.0.
Date: Wed,  6 Jul 2022 20:06:42 +0200
* gnu/packages/julia-xyz.scm (julia-weakrefstrings): Update to 1.4.0.
---
 gnu/packages/julia-xyz.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index ac7d5fd07e..7491ee3f5d 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -5651,7 +5651,7 @@ (define-public julia-versionparsing
 (define-public julia-weakrefstrings
   (package
     (name "julia-weakrefstrings")
-    (version "1.1.0")
+    (version "1.4.0")
     (source
       (origin
         (method git-fetch)
@@ -5660,10 +5660,11 @@ (define-public julia-weakrefstrings
                (commit (string-append "v" version))))
         (file-name (git-file-name name version))
         (sha256
-         (base32 "14h1vdnc3rx87w6v2rr59lgb4kai2hd1wzqpxhmzsi8karg2z219"))))
+         (base32 "1ca94bpsjqrap2y9wlixspnisfkcms7aax0kpv7yn0v2vs9481wk"))))
     (build-system julia-build-system)
     (propagated-inputs
      (list julia-dataapi
+           julia-inlinestrings
            julia-parsers))
     (home-page "https://github.com/JuliaData/WeakRefStrings.jl")
     (synopsis "Efficient string representation and transfer in Julia")
-- 
2.36.0





Information forwarded to guix-patches <at> gnu.org:
bug#56426; Package guix-patches. (Wed, 06 Jul 2022 18:08:04 GMT) Full text and rfc822 format available.

Message #23 received at 56426 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 56426 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 6/6] gnu: Add julia-csv.
Date: Wed,  6 Jul 2022 20:06:44 +0200
* gnu/packages/julia-xyz.scm (julia-csv): New variable.
---
 gnu/packages/julia-xyz.scm | 43 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index c53efb3d76..e5b159245c 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -1119,6 +1119,49 @@ (define-public julia-crayons
 styles available to terminals.")
     (license license:expat)))
 
+(define-public julia-csv
+  (package
+    (name "julia-csv")
+    (version "0.10.4")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaData/CSV.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "15kjh5wa6ravb10n9n9bsh7ggmarqmw8s57p35l4b3dqk9d8qafh"))))
+    (build-system julia-build-system)
+    (arguments
+     (list #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'unpack 'fix-reference-to-cat
+                 (lambda _
+                   (substitute* "test/basics.jl"
+                     ;; XXXX: Test fail to read using CVS.Chunk; raising:
+                     ;; ArgumentError: unable to iterate chunks from input file source
+                     ;; Disable and the two tests using it.
+                     (("chunks = CSV.Chunks") "# chunks = CSV.Chunks")
+                     (("@test sum\\(length, chunks\\) == 10000")
+                      "# @test sum(length, chunks) == 10000")
+                     (("@test Tables.partitions\\(chunks\\) === chunks")
+                      "# @test Tables.partitions(chunks) === chunks")))))))
+    (propagated-inputs
+     (list julia-codeczlib
+           julia-filepathsbase
+           julia-inlinestrings
+           julia-parsers
+           julia-pooledarrays
+           julia-sentinelarrays
+           julia-tables
+           julia-weakrefstrings))
+    (home-page "https://github.com/JuliaData/CSV.jl")
+    (synopsis "Fast and flexible delimited-file reader/writer")
+    (description "This package provides reader/writer for delimited text data,
+as comma-delimited (csv), tab-delimited (tsv), or otherwise.")
+    (license license:expat)))
+
 (define-public julia-dataapi
   (package
     (name "julia-dataapi")
-- 
2.36.0





Information forwarded to guix-patches <at> gnu.org:
bug#56426; Package guix-patches. (Fri, 08 Jul 2022 07:53:02 GMT) Full text and rfc822 format available.

Message #26 received at 56426 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 56426 <at> debbugs.gnu.org
Cc: efraim <at> flashner.co.il
Subject: Re: bug#56426: [PATCH 0/6] Add Julia CSV
Date: Fri, 08 Jul 2022 09:51:59 +0200
Hi,

On Wed, 06 Jul 2022 at 20:05, zimoun <zimon.toutoune <at> gmail.com> wrote:

> This series adds Julia CSV reader/writer.  Well, 'CSV.Chunks' fails so then
> the 2 related tests.  I have no clue what could be wrong.  Therefore, I have
> disabled these two ones.

Well, I have no clue why CVS.Chunks fails:

--8<---------------cut here---------------start------------->8---
 :col1  PosLenStringCSV.File basics: Error During Test at
/gnu/store/…-julia-csv-0.10.4/share/julia/loadpath/CSV/test/basics.jl:20
  Got exception outside of a @test
  ArgumentError: unable to iterate chunks from input file source
  Stacktrace:
    [1] CSV.Chunks(source::String; header::Int64, normalizenames::Bool, datarow::Int64, skipto::Int64,
footerskip::Int64, transpose::Bool, comment::Nothing, ignoreemptyrows::Bool, ignoreemptylines::Nothing,
select::Nothing, drop::Nothing, limit::Nothing, buffer_in_memory::Bool, ntasks::Nothing, tasks::Nothing,
rows_to_check::Int64, lines_to_check::Nothing, missingstrings::Vector{String}, missingstring::String,
delim::Nothing, ignorerepeated::Bool, quoted::Bool, quotechar::Char, openquotechar::Nothing,
closequotechar::Nothing, escapechar::Char, dateformat::Nothing, dateformats::Nothing, decimal::UInt8,
truestrings::Vector{String}, falsestrings::Vector{String}, stripwhitespace::Bool, type::Nothing, types::Nothing,
typemap::Dict{Type, Type}, pool::Tuple{Float64, Int64}, downcast::Bool, lazystrings::Bool,
stringtype::Type{PosLenString}, strict::Bool, silencewarnings::Bool, maxwarnings::Int64, debug::Bool,
parsingdebug::Bool, validate::Bool)
      @ CSV /gnu/store/…-julia-csv-0.10.4/share/julia/loadpath/CSV/src/chunks.jl:81
    [2] macro expansion
      @ /gnu/store/…-julia-csv-0.10.4/share/julia/loadpath/CSV/test/basics.jl:510 [inlined]
--8<---------------cut here---------------end--------------->8---

because it just reads:

--8<---------------cut here---------------start------------->8---
510: chunks = CSV.Chunks(joinpath(dir, "promotions.csv"); stringtype=PosLenString)
511: @test sum(length, chunks) == 10000
512: @test Tables.partitions(chunks) === chunks
--8<---------------cut here---------------end--------------->8---

Well, these 3 lines and 2 tests are thus bypassed over the thousands of
other tests. :-)


> I am currently checking some packages for i686-linux but the issues, if any,
> can be addressed later.  Having the feedback from the build will help.

Well, the current situation of i686 is bad [1,2] but unrelated to this
patch series.  Let merge this series which is perfectly fine for x86_64
and then fix the other arch as i686.

1: <https://ci.guix.gnu.org/build/1089455/details>
2: <https://ci.guix.gnu.org/build/1089455/log/raw>


Cheers,
simon




Reply sent to Efraim Flashner <efraim <at> flashner.co.il>:
You have taken responsibility. (Mon, 11 Jul 2022 10:11:01 GMT) Full text and rfc822 format available.

Notification sent to zimoun <zimon.toutoune <at> gmail.com>:
bug acknowledged by developer. (Mon, 11 Jul 2022 10:11:01 GMT) Full text and rfc822 format available.

Message #31 received at 56426-done <at> debbugs.gnu.org (full text, mbox):

From: Efraim Flashner <efraim <at> flashner.co.il>
To: zimoun <zimon.toutoune <at> gmail.com>
Cc: 56426-done <at> debbugs.gnu.org
Subject: Re: [bug#56426] [PATCH 0/6] Add Julia CSV
Date: Mon, 11 Jul 2022 13:08:47 +0300
[Message part 1 (text/plain, inline)]
On Wed, Jul 06, 2022 at 08:05:37PM +0200, zimoun wrote:
> Hi,
> 
> This series adds Julia CSV reader/writer.  Well, 'CSV.Chunks' fails so then
> the 2 related tests.  I have no clue what could be wrong.  Therefore, I have
> disabled these two ones.
> 
> I am currently checking some packages for i686-linux but the issues, if any,
> can be addressed later.  Having the feedback from the build will help.
> 
> 
> Cheers,
> simon
> 
> 
> 
> zimoun (6):
>   gnu: julia-parsers: Update to 2.2.4.
>   gnu: Add julia-inlinestrings.
>   gnu: julia-json: Update to 0.21.3.
>   gnu: julia-weakrefstrings: Update to 1.4.0.
>   gnu: Add julia-sentinelarrays.
>   gnu: Add julia-csv.
> 
>  gnu/packages/julia-xyz.scm | 103 ++++++++++++++++++++++++++++++++++---
>  1 file changed, 97 insertions(+), 6 deletions(-)
> 
> 
> base-commit: 111bdcff48902457a7218f7ef8a80ad3dfaac3d1
> -- 
> 2.36.0
> 

It looks fine to me as it is. I'm also not sure why that particular test
is failing but I think it's fine to skip it for now.

I've pushed the patches.

-- 
Efraim Flashner   <efraim <at> flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#56426; Package guix-patches. (Mon, 11 Jul 2022 11:44:02 GMT) Full text and rfc822 format available.

Message #34 received at 56426-done <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Efraim Flashner <efraim <at> flashner.co.il>, zimoun <zimon.toutoune <at> gmail.com>,
 56426-done <at> debbugs.gnu.org
Subject: Re: [bug#56426] [PATCH 0/6] Add Julia CSV
Date: Mon, 11 Jul 2022 13:42:42 +0200
Hi,


On Mon, 11 Jul 2022 at 12:09, Efraim Flashner <efraim <at> flashner.co.il> wrote:

> I've pushed the patches.

Thanks.

Cheers,
simon

PS:
I have noticed the general status of Julia for i686-linux is really
bad; I do not have time to investigate more; maybe on spetember.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 09 Aug 2022 11:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.