juliaastro / erfa.jl Goto Github PK
View Code? Open in Web Editor NEWJulia wrapper for liberfa
License: Other
Julia wrapper for liberfa
License: Other
$ julia test/runtests.jl
ERROR: LoadError: ccall: could not find function eraAb in library /usr/lib/x86_64-linux-gnu/liberfa.so.1
It would be good to get tests passing on Julia v0.4+ and tag a new version, if anyone wants to take responsibility for this package.
I just realised that we have had a licensing problem for a while:
The docstrings are copied from ERFA and thus are covered by ERFA's modified BSD-license which is less permissive than ERFA.jl's MIT license and thus incompatible. I see two possibilities:
Due to Julia having proper namespaces, the era
prefixes and resulting non-conforming camel-case function names are not necessary.
This could be done during the incoming Julia 1.0 overhaul. Thoughts?
ERFA.jl lacks documentation. with the code below, extracting the corresponding documentation from the liberfa C source is fairly straightforward. but the result needs to be refactored to be compliant with Julia, and i cannot see an easy way to do this; especially reformatting the 0-index array to 1-index one.
after running the code, and after invoking using ERFA
, you can include("erfa_doc.jl")
and do something like ?eraPn06a
## generate erfa doc
# erfa version
erfa_version = "1.2.0"
deps_src = joinpath("deps", "src", "erfa-$erfa_version","src")
# erfa source directory
erfa_dir = Pkg.dir("ERFA")
erfa_c_src = joinpath(erfa_dir, deps_src)
d = open("erfa_doc.jl", "w")
for c in readdir(erfa_c_src)
if endswith(c, ".c") && !startswith(c, "t_erfa_c")
write(d, "@doc \"\"\"##")
for r in readlines(open(joinpath(erfa_c_src,c)))
n = "era"*ucfirst(split(c,".")[1])
if startswith(r, "** Copyright ")
write(d, "\"\"\" "*n*"\n\n")
break
elseif contains(r, "- - - - ")
continue
elseif startswith(r, "**")
l = replace(r, "**", "") ##lstrip(r, '*')
for s in ("Given","Returned","Called","Reference","Notes","Given and returned","Returned (argument)","Returned (function value)")
l = replace(l, "$s:", "$s:\n")
end
##l = replace(l, " - - - - - -", "")
write(d, l) ##, replace(l, "\"", "''"))
end
end
end
end
close(d)
I got an error, starting normal, then the following, then some kind of garbled text (show in full leer below):
Updating `~/.julia/environments/v1.6/Project.toml`
Revise [944b1d66] .↓ CodecZlib v0.7.0 ⇒ v0.6.0LogRecord
( Error [17511681] , + ERFA v0.6.3evaluation error starting at /home/pharaldsson_sym/.julia/packages/Plots/FYxdA/src/utils.jl:153
I was just testing this package, no more than this (still seemingly works, I didn't have to restart Juno's REPL):
julia> @time using ERFA
[ Info: Precompiling ERFA [17511681-8477-586a-8d98-4cfd5a1f2ec3]
2.746254 seconds (771.32 k allocations: 40.198 MiB, 1.76% gc time)
julia> @time using ERFA
0.000452 seconds (302 allocations: 18.297 KiB)
julia> @time using ERFA
0.000270 seconds (302 allocations: 18.297 KiB)
I do see in Revise in the text, which I have installed, no issues so far (just slow startup), and e.g. CodecZlib.
and e.g.:
exception =
│ cannot assign a value to variable Zlib_jll.libz from module CodecZlib
In full:
(@v1.6) pkg> add ERFA
Updating registry at `~/.julia/registries/General`
Updating git-repo `https://github.com/JuliaRegistries/General.git`
Resolving package versions...
Installed Zstd_jll ── v1.4.5+0
Installed PlotUtils ─ v1.0.4
Installed ERFA ────── v0.6.3
Installed Plots ───── v1.3.3
Installed Colors ──── v0.12.1
Downloading artifact: Zstd
--2020-05-26 13:34:27-- https://pkg.julialang.org/artifact/fe796155110584ef8fadb469ba19b8a4910177b6
Resolving pkg.julialang.org (pkg.julialang.org)... 52.186.83.14
Connecting to pkg.julialang.org (pkg.julialang.org)|52.186.83.14|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 554115 (541K) [application/octet-stream]
Saving to: ‘/tmp/jl_d5I3L2-download.gz’
/tmp/jl_d5I3L2-download.gz 100%[===========================================>] 541,13K 117KB/s in 4,6s
2020-05-26 13:34:32 (117 KB/s) - ‘/tmp/jl_d5I3L2-download.gz’ saved [554115/554115]
Updating `~/.julia/environments/v1.6/Project.toml`
Revise [944b1d66] .↓ CodecZlib v0.7.0 ⇒ v0.6.0LogRecord
( Error [17511681] , + ERFA v0.6.3evaluation error starting at /home/pharaldsson_sym/.julia/packages/Plots/FYxdA/src/utils.jl:153
, lowered [91a5bcdd] , ↑ Plots v1.3.2 ⇒ v1.3.3Revise_e943ed8b
, "Updating/home/pharaldsson_sym/.julia/packages/Revise/cRcnK/src/lowered.jl", 106, ( `~/.julia/environments/v1.6/Manifest.toml`
[944b1d66] mod↓ CodecZlib v0.7.0 ⇒ v0.6.0=
Plots , [5ae59095] ex↑ Colors v0.12.0 ⇒ v0.12.1=
begin
[864edb3b] ↑ DataStructures v0.17.16 ⇒ v0.17.17#=
/home/pharaldsson_sym/.julia/packages/Plots/FYxdA/src/utils.jl : [17511681] 152+ ERFA v0.6.3 =#
[1a297f60] for↑ FillArrays v0.8.9 ⇒ v0.8.10
i = [995b91a9] 2↑ PlotUtils v1.0.3 ⇒ v1.0.4:
4
[91a5bcdd] ↑ Plots v1.3.2 ⇒ v1.3.3#=
/home/pharaldsson_sym/.julia/packages/Plots/FYxdA/src/utils.jl : [df47a6cb] 153↑ RData v0.6.3 ⇒ v0.7.1 =#
[3161d3a3] #= ↑ Zstd_jll v1.4.4+1 ⇒ v1.4.5+0/home/pharaldsson_sym/.julia/packages/Plots/FYxdA/src/utils.jl
: Building153 =# @eval begin
#= /home/pharaldsson_sym/.julia/packages/Plots/FYxdA/src/utils.jl:154 =#
RecipesPipeline.unzip(v::Union{AVec{<:Tuple{Vararg{T, $i} where T}}, AVec{<:GeometryTypes.Point{$i}}}) = begin
#= /home/pharaldsson_sym/.julia/packages/Plots/FYxdA/src/utils.jl:155 =#
$(Expr(:tuple, (:([t[$j] for t = v]) for j = 1:i)...))
end
end
end
end) MethodError: no method matching (::Plots.var"#530#531")(::Int64)
The applicable method may be too new: running in world age 27766, while current world is 29222.
Closest candidates are:
#530(::Any) at none:0 (method too new to be called from this world context.)ERFA ─→ `~/.julia/packages/ERFA/2XJBu/deps/build.log`
Stacktrace:
[1] iterate(::Base.Generator{UnitRange{Int64},Plots.var"#530#531"}) at ./generator.jl:47
[2] append_any(::Any, ::Vararg{Any,N} where N) at /home/pharaldsson_sym/.julia/packages/JuliaInterpreter/sZur5/src/JuliaInterpreter.jl:34) Building Plots → `~/.julia/packages/Plots/ninUP/deps/build.log`
┌ Warning: /home/pharaldsson_sym/.julia/packages/Plots/ninUP/src/init.jl__@require__ no longer exists, deleting
all methods
└ @ Revise ~/.julia/packages/Revise/cRcnK/src/Revise.jl:694
Revise.LogRecord(Error, (compiled mode) evaluation error starting at /home/pharaldsson_sym/.julia/packages/CodecZlib/5t9zO/src/CodecZlib.jl:37, lowered, Revise_fb86e9d0, "/home/pharaldsson_sym/.julia/packages/Revise/cRcnK/src/lowered.jl", 85, (mod=CodecZlib, ex=begin
#= /home/pharaldsson_sym/.julia/packages/CodecZlib/5t9zO/src/CodecZlib.jl:37 =#
check_deps()
end)UndefVarError: check_deps not defined
Stacktrace:
[1] top-level scope at /home/pharaldsson_sym/.julia/packages/CodecZlib/5t9zO/src/CodecZlib.jl:37)┌ Error: (compiled mode) evaluation error starting at /home/pharaldsson_sym/.julia/packages/CodecZlib/5t9zO/deps/deps.jl:12
│ mod = CodecZlib
│ ex =
│ quote
│ #= /home/pharaldsson_sym/.julia/packages/CodecZlib/5t9zO/src/../deps/deps.jl:12 =#
│ const libz = joinpath(dirname(#= /home/pharaldsson_sym/.julia/packages/CodecZlib/5t9zO/src/../deps/deps.jl:12 =# @__FILE__()), "usr/lib/libz.so")
│ end
│ exception =
│ cannot assign a value to variable Zlib_jll.libz from module CodecZlib
│ Stacktrace:
│ [1] top-level scope at /home/pharaldsson_sym/.julia/packages/CodecZlib/5t9zO/src/../deps/deps.jl:12
└ @ Revise ~/.julia/packages/Revise/cRcnK/src/lowered.jl:85
sepp
(separation angle from position vectors) blindly passes the two input vectors as Ptr{Cdouble}
without first ensuring they are dense Vector{Float64}
. This leads to incorrect results when a Vector{Int}
is passed in or when a non-dense AbstractVector{Float64}
is passed in.
julia> sepp([1.0, 0.0, 0.0], [0.0, 1.0, 0.0]) # Pass Vector{Float64}: OK
1.5707963267948966
julia> sepp([1, 0, 0], [0, 1, 0]) # Pass Vector{Int}: BAD
0.0
julia> v=collect(1.0:6.0) # Generate test vector
6-element Vector{Float64}:
1.0
2.0
3.0
4.0
5.0
6.0
julia> sepp(v[1:2:5], v[2:2:6]) # Pass dense Vector{Float64}: OK
0.1108837504822524
julia> @views sepp(v[1:2:5], v[2:2:6]) # Pass non-dense AbstractVector{Float64}: BAD
0.12186756768575521
julia> sepp(v[1:3], v[2:4]) # What the previous BAD example actually computes
0.12186756768575521
I think one fix would be to pass convert(Vector{Float64}, a)
instead of just a
(and likewise for b
).
Maybe there's a good reason for this, but in functions like eraPn06a
, which returns a few 3x3 rotation matrices, they're instead returned as 9-element vectors, which must be reshaped. Would it be better to just return them as a matrix, instead?
some constants have their values changed in the last SOFA release, and will be updated with the future liberfa release:
https://github.com/nirinA/ERFA.jl/blob/IAU2012/src/erfa_common.jl
running the current runtests.jl
, it doesn't fail as it should do. for instance:
julia> @test_approx_eq_eps(4.289638913597693e-5, 4.28963889781338e-5, 1.0e-16)
WARNING: @test_approx_eq_eps is deprecated, use `@test 4.289638913597693e-5 ≈ 4.28963889781338e-5 atol=1.0e-16` instead
Stacktrace:
[1] depwarn(::String, ::Symbol) at ./deprecated.jl:64
[2] @test_approx_eq_eps(::ANY, ::ANY, ::ANY) at ./deprecated.jl:1031
[3] eval(::Module, ::Any) at ./boot.jl:235
[4] eval_user_input(::Any, ::Base.REPL.REPLBackend) at ./REPL.jl:66
[5] macro expansion at ./REPL.jl:97 [inlined]
[6] (::Base.REPL.##1#2{Base.REPL.REPLBackend})() at ./event.jl:73
while loading no file, in expression starting on line 0
ERROR: assertion failed: |4.289638913597693e-5 - 4.28963889781338e-5| <= 1.0e-16
4.289638913597693e-5 = 4.289638913597693e-5
4.28963889781338e-5 = 4.28963889781338e-5
difference = 1.578431328241696e-13 > 1.0e-16
whereas:
julia> @test isapprox(4.289638913597693e-5, 4.28963889781338e-5, atol=1e-16)
Test Passed
The following worked in version 0.5.0:
using ERFA
using StaticArrays
@show ERFA.gc2gde(6378.137 * 1000,
1 / 298.257223563,
@SVector [6378.137 * 1000 + 100,
0,
0])
But in 0.6.1, I get the following error:
ERROR: LoadError: conversion to pointer not defined for SArray{Tuple{3},Float64,1,3}
Stacktrace:
[1] error(::String) at ./error.jl:33
[2] unsafe_convert(::Type{Ptr{Float64}}, ::SArray{Tuple{3},Float64,1,3}) at ./pointer.jl:67
[3] pointer at ./abstractarray.jl:936 [inlined]
[4] unsafe_convert(::Type{Ptr{Float64}}, ::Base.RefArray{Float64,SArray{Tuple{3},Float64,1,3},Nothing}) at ./refpointer.jl:78
[5] unsafe_convert(::Type{Ref{Float64}}, ::Base.RefArray{Float64,SArray{Tuple{3},Float64,1,3},Nothing}) at ./refpointer.jl:60
[6] gc2gde(::Float64, ::Float64, ::SArray{Tuple{3},Float64,1,3}) at /Users/dmatz/.julia/packages/ERFA/d2A3Y/src/g.jl:113
[7] top-level scope at show.jl:613
[8] include(::Module, ::String) at ./Base.jl:377
[9] exec_options(::Base.JLOptions) at ./client.jl:288
[10] _start() at ./client.jl:484
I noticed you switched from using Ref
to Ptr
for the array arguments. I wasn't sure if that was the problem, or if this was a StaticArrays issue, but I thought I'd start here.
PackageEvaluator.jl is a script that runs nightly. It attempts to load all Julia packages and run their tests (if available) on both the stable version of Julia (0.3) and the nightly build of the unstable version (0.4). The results of this script are used to generate a package listing enhanced with testing results.
Tests pass.
Tests fail, but package loads.
Tests pass.
means that PackageEvaluator found the tests for your package, executed them, and they all passed.
Tests fail, but package loads.
means that PackageEvaluator found the tests for your package, executed them, and they didn't pass. However, trying to load your package with using
worked.
This issue was filed because your testing status became worse. No additional issues will be filed if your package remains in this state, and no issue will be filed if it improves. If you'd like to opt-out of these status-change messages, reply to this message saying you'd like to and @IainNZ will add an exception. If you'd like to discuss PackageEvaluator.jl please file an issue at the repository. For example, your package may be untestable on the test machine due to a dependency - an exception can be added.
Test log:
>>> 'Pkg.add("ERFA")' log
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 343 0 343 0 0 2212 0 --:--:-- --:--:-- --:--:-- 2212
12 566k 12 71437 0 0 68843 0 0:00:08 0:00:01 0:00:07 68843
100 566k 100 566k 0 0 345k 0 0:00:01 0:00:01 --:--:-- 824k
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
... truncated ...
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
make[2]: Leaving directory '/home/idunning/pkgtest/.julia/v0.4/ERFA/deps/builds/liberfa/src'
make[1]: Leaving directory '/home/idunning/pkgtest/.julia/v0.4/ERFA/deps/builds/liberfa/src'
make[1]: Entering directory '/home/idunning/pkgtest/.julia/v0.4/ERFA/deps/builds/liberfa'
make[2]: Entering directory '/home/idunning/pkgtest/.julia/v0.4/ERFA/deps/builds/liberfa'
make[2]: Nothing to be done for 'install-exec-am'.
/usr/bin/mkdir -p '/home/idunning/pkgtest/.julia/v0.4/ERFA/deps/usr/lib/pkgconfig'
/usr/bin/install -c -m 644 erfa.pc '/home/idunning/pkgtest/.julia/v0.4/ERFA/deps/usr/lib/pkgconfig'
make[2]: Leaving directory '/home/idunning/pkgtest/.julia/v0.4/ERFA/deps/builds/liberfa'
make[1]: Leaving directory '/home/idunning/pkgtest/.julia/v0.4/ERFA/deps/builds/liberfa'
INFO: Installing BinDeps v0.3.0
INFO: Installing ERFA v0.0.0
INFO: Installing SHA v0.0.2
INFO: Installing URIParser v0.0.2
INFO: Building ERFA
INFO: Attempting to Create directory /home/idunning/pkgtest/.julia/v0.4/ERFA/deps/downloads
INFO: Downloading file https://github.com/liberfa/erfa/releases/download/v1.0.1/erfa-1.0.1.tar.gz
INFO: Done downloading file https://github.com/liberfa/erfa/releases/download/v1.0.1/erfa-1.0.1.tar.gz
INFO: Attempting to Create directory /home/idunning/pkgtest/.julia/v0.4/ERFA/deps/src
INFO: Attempting to Create directory /home/idunning/pkgtest/.julia/v0.4/ERFA/deps
INFO: Directory /home/idunning/pkgtest/.julia/v0.4/ERFA/deps already created
INFO: Attempting to Create directory /home/idunning/pkgtest/.julia/v0.4/ERFA/deps/src/erfa-1.0.1
INFO: Attempting to Create directory /home/idunning/pkgtest/.julia/v0.4/ERFA/deps/builds/liberfa
INFO: Changing Directory to /home/idunning/pkgtest/.julia/v0.4/ERFA/deps/builds/liberfa
INFO: Changing Directory to /home/idunning/pkgtest/.julia/v0.4/ERFA/deps/builds/liberfa
INFO: Changing Directory to /home/idunning/pkgtest/.julia/v0.4/ERFA/deps/builds/liberfa
INFO: Package database updated
>>> 'using ERFA' log
>>> test log
ERROR: type: ccall: expected Symbol, got Array{Any,1}
in include at ./boot.jl:245
in include_from_node1 at ./loading.jl:128
in include at ./boot.jl:245
in include_from_node1 at loading.jl:128
in process_options at ./client.jl:285
in _start at ./client.jl:354
in _start_3B_3500 at /home/idunning/julia04/usr/bin/../lib/julia/sys.so
while loading /home/idunning/pkgtest/.julia/v0.4/ERFA/src/test.jl, in expression starting on line 5
while loading /home/idunning/pkgtest/.julia/v0.4/ERFA/runtests.jl, in expression starting on line 1
>>> end of log
Column-major vs. row-major and all that 🙈
See e.g. here: https://github.com/JuliaAstro/ERFA.jl/blob/master/src/n.jl#L42
That function should return permutedims(rmatn)
.
Maintaining wrappers for basic linear algebra functions does not make sense. Use the approach from SPICE.jl: Deprecate the functions and point towards sensible pure-Julia alternatives.
On windows I have found ~2-3X worse performance compared to pyerfa. Using cmakelists (liberfa/erfa#75) and a clang compiler I was able to substitute the dll resulting in comparative (slightly better) performance.
Has anyone successfully built this on a Windows machine? If not, what's required to be able to do this?
$ julia
_
_ _ _(_)_ | A fresh approach to technical computing
(_) | (_) (_) | Documentation: http://docs.julialang.org
_ _ _| |_ __ _ | Type "?help" for help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 0.4.3 (2016-01-12 21:37 UTC)
_/ |\__'_|_|_|\__'_| | Official http://julialang.org/ release
|__/ | x86_64-w64-mingw32
julia> Pkg.add("ERFA")
INFO: Cloning cache of ERFA from git://github.com/JuliaAstro/ERFA.jl.git
INFO: Installing ERFA v0.1.1
INFO: Building ERFA
================================[ ERROR: ERFA ]=================================
LoadError: None of the selected providers can install dependency liberfa.
Use BinDeps.debug(package_name) to see available providers
while loading C:\Users\cbinz\.julia\v0.4\ERFA\deps\build.jl, in expression starting on line 19
================================================================================
================================[ BUILD ERRORS ]================================
WARNING: ERFA had build errors.
- packages with build errors remain installed in C:\Users\cbinz\.julia\v0.4
- build the package(s) and all dependencies with `Pkg.build("ERFA")`
- build a single package by running its `deps/build.jl` script
================================================================================
Thanks,
Chris
It should be a tuple of vectors instead of a 2x3 matrix.
PackageEvaluator.jl is a script that runs nightly. It attempts to load all Julia packages and run their tests (if available) on both the stable version of Julia (0.3) and the nightly build of the unstable version (0.4). The results of this script are used to generate a package listing enhanced with testing results.
Tests pass.
Tests fail, but package loads.
Tests pass.
means that PackageEvaluator found the tests for your package, executed them, and they all passed.
Tests fail, but package loads.
means that PackageEvaluator found the tests for your package, executed them, and they didn't pass. However, trying to load your package with using
worked.
This issue was filed because your testing status became worse. No additional issues will be filed if your package remains in this state, and no issue will be filed if it improves. If you'd like to opt-out of these status-change messages, reply to this message saying you'd like to and @IainNZ will add an exception. If you'd like to discuss PackageEvaluator.jl please file an issue at the repository. For example, your package may be untestable on the test machine due to a dependency - an exception can be added.
Test log:
>>> 'Pkg.add("ERFA")' log
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 343 100 343 0 0 3643 0 --:--:-- --:--:-- --:--:-- 3688
9 566k 9 53437 0 0 74277 0 0:00:07 --:--:-- 0:00:07 74277
100 566k 100 566k 0 0 389k 0 0:00:01 0:00:01 --:--:-- 699k
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
... truncated ...
----------------------------------------------------------------------
make[2]: Leaving directory '/home/idunning/pkgtest/.julia/v0.3/ERFA/deps/builds/liberfa/src'
make[1]: Leaving directory '/home/idunning/pkgtest/.julia/v0.3/ERFA/deps/builds/liberfa/src'
make[1]: Entering directory '/home/idunning/pkgtest/.julia/v0.3/ERFA/deps/builds/liberfa'
make[2]: Entering directory '/home/idunning/pkgtest/.julia/v0.3/ERFA/deps/builds/liberfa'
make[2]: Nothing to be done for 'install-exec-am'.
/usr/bin/mkdir -p '/home/idunning/pkgtest/.julia/v0.3/ERFA/deps/usr/lib/pkgconfig'
/usr/bin/install -c -m 644 erfa.pc '/home/idunning/pkgtest/.julia/v0.3/ERFA/deps/usr/lib/pkgconfig'
make[2]: Leaving directory '/home/idunning/pkgtest/.julia/v0.3/ERFA/deps/builds/liberfa'
make[1]: Leaving directory '/home/idunning/pkgtest/.julia/v0.3/ERFA/deps/builds/liberfa'
INFO: Cloning cache of ERFA from git://github.com/JuliaAstro/ERFA.jl.git
INFO: Installing BinDeps v0.3.0
INFO: Installing ERFA v0.0.0
INFO: Installing SHA v0.0.2
INFO: Installing URIParser v0.0.2
INFO: Building ERFA
INFO: Attempting to Create directory /home/idunning/pkgtest/.julia/v0.3/ERFA/deps/downloads
INFO: Downloading file https://github.com/liberfa/erfa/releases/download/v1.0.1/erfa-1.0.1.tar.gz
INFO: Done downloading file https://github.com/liberfa/erfa/releases/download/v1.0.1/erfa-1.0.1.tar.gz
INFO: Attempting to Create directory /home/idunning/pkgtest/.julia/v0.3/ERFA/deps/src
INFO: Attempting to Create directory /home/idunning/pkgtest/.julia/v0.3/ERFA/deps
INFO: Directory /home/idunning/pkgtest/.julia/v0.3/ERFA/deps already created
INFO: Attempting to Create directory /home/idunning/pkgtest/.julia/v0.3/ERFA/deps/src/erfa-1.0.1
INFO: Attempting to Create directory /home/idunning/pkgtest/.julia/v0.3/ERFA/deps/builds/liberfa
INFO: Changing Directory to /home/idunning/pkgtest/.julia/v0.3/ERFA/deps/builds/liberfa
INFO: Changing Directory to /home/idunning/pkgtest/.julia/v0.3/ERFA/deps/builds/liberfa
INFO: Changing Directory to /home/idunning/pkgtest/.julia/v0.3/ERFA/deps/builds/liberfa
INFO: Package database updated
INFO: METADATA is out-of-date a you may not have the latest version of ERFA
INFO: Use `Pkg.update()` to get the latest versions of your packages
>>> 'using ERFA' log
>>> test log
ERROR: type: ccall: expected Symbol, got Array{Any,1}
in include at ./boot.jl:245
in include_from_node1 at ./loading.jl:128
in include at ./boot.jl:245
in include_from_node1 at loading.jl:128
in process_options at ./client.jl:285
in _start at ./client.jl:354
in _start_3B_1699 at /home/idunning/julia03/usr/bin/../lib/julia/sys.so
while loading /home/idunning/pkgtest/.julia/v0.3/ERFA/src/test.jl, in expression starting on line 5
while loading /home/idunning/pkgtest/.julia/v0.3/ERFA/runtests.jl, in expression starting on line 1
>>> end of log
This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml
to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix
on this issue.
I'll open a PR within a few hours, please be patient!
ERFA.jl is now almost seven years old (first commit was on 2014-02-26) and deserves a stable 1.0 release. I want to complete the following tasks beforehand:
Did I forget anything? Do we need another 0.7 release before 1.0?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.