Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rename libRmath to libRmath-julia #5524

Closed
ViralBShah opened this issue Jan 25, 2014 · 20 comments
Closed

Rename libRmath to libRmath-julia #5524

ViralBShah opened this issue Jan 25, 2014 · 20 comments
Labels
building Build system, or building Julia or its dependencies

Comments

@ViralBShah
Copy link
Member

I would like to remove the Rmath build to be removed from julia. Eventually, Rmath dependency can be completely removed as discussed in this PR, but until then, it can be made available through RmathDist.jl.

JuliaStats/Distributions.jl#138

[ViralBShah: Originally this discussion started with removing Rmath, but we decided to just change the filename and remove Rmath in 0.4]

@ViralBShah
Copy link
Member Author

Cc: @johnmyleswhite @dmbates

This should make it easier to ship julia in linux distros by avoiding the conflict with R's libRmath.

Cc: @nalimilan @sebastien-villemot

@staticfloat staticfloat mentioned this issue Jan 25, 2014
21 tasks
@staticfloat
Copy link
Member

+1

I'm impressed that I had the reflexes to reference this issue immediately. Good work, me. ;)

@JeffBezanson
Copy link
Member

+1

It would be great to remove this ASAP.

@johnmyleswhite
Copy link
Member

I'm cool with this if @simonbyrne is willing to have Distributions depend on RMathDist until we finish our work to remove all dependency on Rmath.

@simonbyrne
Copy link
Contributor

@johnmyleswhite As it stands, RmathDist.jl actually depends on Distriibutions.jl (as it borrows its interface). My thought was that perhaps users who need the functionality that has yet to be finished (such as noncentral distributions) could use that until we're up to speed. I think doing it the other way around (i.e. making Distributions.jl depend on RmathDist.jl) would be a lot of extra hassle, especially since its only meant to be a temporary measure.

@stevengj
Copy link
Member

Would be nice to have a checklist of functions from libRmath that need to be replaced... I don't see any usages in Base?

@simonbyrne
Copy link
Contributor

@stevengj As far as I know, it isn't used Base at all, and the only package to use it is Distributions.jl.

@ViralBShah
Copy link
Member Author

I propose that we rename libRmath.jl to libRmath-julia.jl since it is a customized build. What all packages would be affected with this renaming change?

@johnmyleswhite Will this lead to an extra barrier in terms of adoption of Julia for stats? Building something through BinDeps is something that only a small percentage of our users will be able to do successfully. Thinking about this a bit more, I think that renaming the file will fix the conflict with R on various distros, but we should only remove it from Base once Distributions stops using it completely.

@johnmyleswhite
Copy link
Member

Shipping a renamed libRmath seems like a great solution to me. I think we can probably get rid of Rmath by the 0.4 release.

@ViralBShah
Copy link
Member Author

@johnmyleswhite If I just rename it - could you update any packages that depend on it?

@ViralBShah
Copy link
Member Author

Fixed in 94ebea0

@ViralBShah
Copy link
Member Author

@sebastien-villemot @staticfloat @nalimilan The renaming of libRmath to libRmath-julia should remove any conflicts that the julia installation has with any other system provided files.

@ViralBShah
Copy link
Member Author

@johnmyleswhite I have updated Distributions. Perhaps we need to do a version bump? Would be great if you can try it out and bump.

@johnmyleswhite
Copy link
Member

Thanks, Viral!

This seems to work except for some weird warnings about nnz. I want to figure out what's causing them before releasing this.

@rickhg12hs
Copy link
Contributor

$ grep -C 3 nnz base/deprecated.jl 

# 0.3 discontinued functions

function nnz(X)
    depwarn("nnz has been renamed to countnz and is no longer computed in constant time for sparse matrices. Instead, use nfilled() for the number of elements in a sparse matrix.", :nnz)
    countnz(X)
end
export nnz

@nalimilan
Copy link
Member

@ViralBShah Actually I don't really care about the name of the library since it's installed in a private dir. (Of course it's cleaner to change the name since the code is slightly different from upstream.)

@staticfloat
Copy link
Member

I think the big compatibility problem is the header names. And those are
due to my Ubuntu package. I should probably just delete them since we don't
use the headers at all.
On Feb 8, 2014 10:49 AM, "Milan Bouchet-Valat" [email protected]
wrote:

@ViralBShah https://github.com/ViralBShah Actually I don't really care
about the name of the library since it's installed in a private dir. (Of
course it's cleaner to change the name since the code is slightly different
from upstream.)

Reply to this email directly or view it on GitHubhttps://github.com//issues/5524#issuecomment-34552182
.

@lindahua
Copy link
Contributor

lindahua commented Feb 8, 2014

@johnmyleswhite I have taken care of the nnz warnings. It is due to a recent renaming from nnz to countnz in the Base.

@johnmyleswhite
Copy link
Member

Should I bump the Distributions version number?

@ViralBShah
Copy link
Member Author

@nalimilan Good to know that it is in a private place, but I think this makes things clearer.
@johnmyleswhite I think it is safe to bump the version number.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
building Build system, or building Julia or its dependencies
Projects
None yet
Development

No branches or pull requests

9 participants