I’ve been using thePhysicalConstants.jl package for some time now, and greatly appreciate the ability to define CGS or MKS units. We use CGS units in astrophysics.
The PhysicalConstants package was developed about 3 years ago - I think Julia was in beta? I’ve been able to install and use it up to Julia 1.0.1.
However, I can’t seem to install it with Julia 1.0.1.1. Is there a way around this error? Also, I would appreciate any recommendations for similar packages.
This new package fully hooks into the Unitful.jl ecosystem, so it should be possible to convert the constants into whichever unit system suits you best.
It really, really, really, really would be a good idea to flag the specialist package registry to Juliapro users. I have just spent half a day wondering what had gone wrong.
I am a bit bewildered as to what the logic for a different registry is?
We do want JuliaPro to track the version of Julia it is bundled with, but yet also have something distinguish it from base Julia. Hence the slightly longer version number. But I’m happy to hear suggestions of doing that better – I realise four digits makes it a bit too long and awkward.
In Debian they usex.y.z-r, where x.y.z is the version of the unmodified upstream package, r is the Debian revision: 1.0.1-1. The - in place of the . makes it a bit clearer the difference. Another option, always stolen from Debian packages naming, is to append “+pro” and then the revision number: 1.0.1+pro1. A bit more verbose, but unambiguous.
What is nice is that, contrary to 1.0.1.1, both 1.0.1-1 and 1.0.1+pro1 are valid VersionNumber:
That package literally knows nothing of units, just provides the values of constants in different unit systems. You have to manually do any conversion.
PhysicalConstants.jl relies on Unitful.jl for dealing with units, which is more robust and less error-prone. Maybe within Unitful.jl there could be a way to choose a base unit system, but I don’t have a strong feeling about this. I just want to be able to use a constant without constantly checking that I’m not messing up units