harryscholes / EffectSizes.jl

Effect size measures
MIT License
4 stars 2 forks source link

This package needs maintenance #17

Closed rikhuijzer closed 3 years ago

rikhuijzer commented 3 years ago

Hi @harryscholes,

this package looks really great but it's a real struggle to get it to work. I also get some internal errors because the eval in https://github.com/harryscholes/EffectSizes.jl/blob/d3db45ea51bd26658a4501b0835a563c9868e5f5/src/effect_size.jl#L214-L239 doesn't seem to be evaluated.

Hereby a friendly request to pickup maintance again or give me (or someone else that you like) administration access to this repo. For me, maintaining the repo wouldn't be so much work. I'll leave you as the first author. Or, I could fork your repo and move the EffectSizes.jl name to my fork if you agree :slightly_smiling_face:

harryscholes commented 3 years ago

Hi, thanks for your issue! Why do you think the @eval block isn't being evaluated? On a fresh installation of the package, I see those constructors that are defined by metaprogramming:

julia> using EffectSizes

julia> methods(CohenD)
# 3 methods for type constructor:
[1] CohenD(xs::AbstractVector{T}, ys::AbstractVector{T}; quantile) where T<:Real in EffectSizes at /Users/harry/.julia/packages/EffectSizes/Qfr3N/src/effect_size.jl:217
[2] CohenD(xs::AbstractVector{T}, ys::AbstractVector{T}, bootstrap::Integer; quantile) where T<:Real in EffectSizes at /Users/harry/.julia/packages/EffectSizes/Qfr3N/src/effect_size.jl:228
[3] CohenD(d::T, ci::CI) where {T<:Real, CI<:AbstractConfidenceInterval{T}} in EffectSizes at /Users/harry/.julia/packages/EffectSizes/Qfr3N/src/effect_size.jl:106

More than happy for you to take over maintenance! I've moved on from statistics, so don't have any time to dedicate to this package anymore.

rikhuijzer commented 3 years ago

I think that I was wrong about it. I got:

ERROR: MethodError: no method matching EffectSizes.ConfidenceInterval(::Vector{Int64}, ::Vector{Int64}, ::Float64; quantile=0.95)
Closest candidates are:
  EffectSizes.ConfidenceInterval(::AbstractVector{T}, ::AbstractVector{T}, ::T; quantile) where T<:Real at /home/rik/.julia/packages/EffectSizes/Qfr3N/src/confidence_interval.jl:76
  EffectSizes.ConfidenceInterval(::T, ::T, ::Float64) where T<:Real at /home/rik/.julia/packages/EffectSizes/Qfr3N/src/confidence_interval.jl:69 got unsupported keyword argument "quantile"
Stacktrace:
 [1] EffectSizes.CohenD(xs::Vector{Int64}, ys::Vector{Int64}; quantile::Float64)
   @ EffectSizes ~/.julia/packages/EffectSizes/Qfr3N/src/effect_size.jl:223
 [2] EffectSizes.CohenD(xs::Vector{Int64}, ys::Vector{Int64})
   @ EffectSizes ~/.julia/packages/EffectSizes/Qfr3N/src/effect_size.jl:222
 [3] es(A::Vector{Int64}, B::Vector{Int64})
   @ Personality ~/git/personality-md/src/tables.jl:5

but cannot reproduce it currently. Indeed, I also get your output for methods. I'll look into it further.

More than happy for you to take over maintenance! I've moved on from statistics, so don't have any time to dedicate to this package anymore.

Awesome! Very nice, it would be awesome if people can keep using the work you've put into the package. Could you make me admin?

harryscholes commented 3 years ago

Ahh yes that's because of this method signature

https://github.com/harryscholes/EffectSizes.jl/blob/d3db45ea51bd26658a4501b0835a563c9868e5f5/src/confidence_interval.jl#L76-L81

It might be more helpful if it was:

function ConfidenceInterval(
    xs::AbstractVector{<:Real},
    ys::AbstractVector{<:Real},
    es::Real;
    quantile::AbstractFloat,
)

but I'll leave that up to you :)

I've added you to the repo

rikhuijzer commented 3 years ago

Thank you for your trust :smile:!

rikhuijzer commented 3 years ago

Hmm sorry that I have to bother you one more time. What is the name of the environment variable that holds the private key? I think that you have set one in the Travis repository settings.

harryscholes commented 3 years ago

Do you mean DOCUMENTER_KEY?

rikhuijzer commented 3 years ago

I just solved the Documenter build by only using GITHUB_TOKEN. For CompatHelper, it would be nice if there is a SSH key with write permissions (https://juliaregistries.github.io/CompatHelper.jl/dev/#Installation,-step-2:-Set-up-the-SSH-deploy-key). Then, for updated packages, CompatHelper will automatically open a PR and run tests on the PR.

But, it will also work without :+1: So, if you can setup a token with the manual from the link above, then that would be great. Otherwise, I'll manage too

harryscholes commented 3 years ago

done