Gibt es in Julia eine gute Möglichkeit, mehrere Versionen eines Pakets in verschiedenen Versionen zu verwalten?

8

Im Moment gibt es zwei relevante Versionen von Julia: die letzte stabile 0.3-Version und die 0.4-Version, die sich in der Entwicklung befindet (mit nächtlichen Builds).

Gibt es derzeit eine gute Möglichkeit, Julia 0.3 und 0.4 Versionen desselben Pakets zu haben, um Syntax & amp; andere Änderungen, die zwischen Julia-Versionen auftreten?

Ist beispielsweise eine dieser Optionen für Pakete auf METADATA möglich?

  • Mit Julia 0.3 einen Zweig installieren und Julia 0.4 einen weiteren
  • installieren
  • Code-Flags für Julia 0.3 oder 0.4 in den relevanten Abschnitten
Ben Hamner 27.11.2014, 02:29
quelle

1 Antwort

4

Es gibt nichts, was Sie daran hindern könnte, Ihr Paket für beide Julia-Versionen außer Ihrer Geduld zu warten.

Sie könnten beispielsweise master Ihres Pakets GitHub repository als Julia 0.4 kompatible Version haben und einen separaten julia03 Zweig für Julia 0.3 beibehalten.

In METADATA würden Sie zwei "Serien" von Veröffentlichungen pflegen, z. Die 0.1.x -Serie würde alle auf Commits im Zweig julia03 verweisen, und die 0.2.x -Reihe würde alle auf Commits auf master verweisen. Alle diese Releases hätten entsprechende Zeilen in ihrer REQUIRE / requires ( julia 0.3 0.4- in einer und julia 0.4 in der anderen).

Eine andere Möglichkeit, darüber nachzudenken, besteht darin, jedes Mal, wenn Sie eine Hauptversion markieren, eine Verzweigung in Ihrem Paket zu erstellen. Zum Beispiel hat JuMP einen release06 Zweig, wo wir kleine Korrekturen an die 0.6 Serie von Releases zurückportieren können, während wir an neuen Funktionen in master arbeiten.

Schließlich hat Compat.jl viele hilfreiche Tools, um Code für Julia 0.3 und Julia 0.4 zu verwenden.

>     
IainDunning 27.11.2014 03:07
quelle

Tags und Links