2014-09-03 15 views
7

Come posso ottenere il numero di versione per un pacchetto specifico?Determinare la versione di un pacchetto specifico

Il modo più ovvio è quello di ottenere il dizionario con tutti i pacchetti installati, e quindi filtrare per quella di interesse:

pkgs = Pkg.installed(); 
pkgs["Datetime"] 

Ottenere l'elenco di tutti i pacchetti installati è molto lento, però, soprattutto se ci sono molti Pacchetti.

+0

'' pkgs [ "Datetime"] '' non fa nulla per me: la versione Julia '' 0.5.2''. – PatrickT

risposta

5

È possibile passare una stringa a Pkg.installed. Per esempio:

pkgs = Pkg.installed("JuMP") 

spesso controllare gli argomenti di chiamata disponibili con methods. Per esempio:

julia> methods(Pkg.installed) 
# 2 methods for generic function "installed": 
installed() at pkg/pkg.jl:122 
installed(pkg::AbstractString) at pkg/pkg.jl:129 

o

julia> Pkg.installed |> methods 
# 2 methods for generic function "installed": 
installed() at pkg/pkg.jl:122 
installed(pkg::AbstractString) at pkg/pkg.jl:129 
+1

Nel REPL è possibile utilizzare un modo più rapido, digitando TAB dopo la parentesi sinistra: '' julia> Pkg.installato (\ tab'' – ivarne

+0

@ivarne Cool! Non Grazie! Qualsiasi stregoneria REPL per 'methodswith'? – rickhg12hs

+1

Non che io sappia. – ivarne

4

vorrei provare Pkg.status("PackageName")

questo stampa un po 'blurb dando il nome del pacchetto.

Ecco un esempio

julia> Pkg.status("QuantEcon") 
- QuantEcon      0.0.1    master 
+0

'Pkg.status (" QuantEcon ")' mi dà 'ERRORE: 'stato' non ha lo stato di corrispondenza del metodo (:: ASCIIString)' in julia 0.3. Il metodo è parte di un particolare pacchetto? – Julian

+1

Oh interessante. Questo non è un metodo di quel pacchetto. Sono su 0.4dev quindi forse è una nuova funzione. – spencerlyon2

+0

Questo ha funzionato per me. Versione di Julia '' 0.5.2'' – PatrickT

Problemi correlati