Abhängigkeitsmanager für die Crystal-Sprache.
Von Crystal-Anwendungen und -Bibliotheken wird erwartet, dass sie im Stammverzeichnis eine shard.yml
Datei haben, die wie folgt aussieht:
name : shards
version : 0.1.0
dependencies :
openssl :
github : datanoise/openssl.cr
branch : master
development_dependencies :
minitest :
git : https://github.com/ysbaddaden/minitest.cr.git
version : ~> 0.3.1
license : MIT
Wenn Bibliotheken aus Git-Repositorys installiert werden, wird erwartet, dass das Repository Versions-Tags hat, die einem Semver-ähnlichen Format folgen und dem ein v
vorangestellt ist. Beispiele: v1.2.3
, v2.0.0-rc1
oder v2017.04.1
.
Weitere Informationen zum shard.yml
-Format finden Sie in der SPEC.
Shards werden normalerweise mit Crystal selbst verteilt (z. B. Homebrew- und Debian-Pakete). Alternativ ist möglicherweise ein shards
-Paket für Ihr System verfügbar.
Sie können einen Quell-Tarball von derselben Seite herunterladen (oder das Repository klonen), dann make release=1
ausführen und bin/shards
in Ihren PATH
kopieren. Zum Beispiel /usr/local/bin
.
Sie können nun eine shard.yml
für Ihre Projekte erstellen (siehe Details in SPEC). Sie können shards init
eingeben, um eine Beispieldatei shard.yml
für Ihr Projekt zu erstellen.
Führen Sie shards install
aus, um Ihre Abhängigkeiten zu installieren. Dadurch werden Ihre Abhängigkeiten in einer shard.lock
Datei gesperrt. Sie sollten sowohl shard.yml
als auch shard.lock
in die Versionskontrolle einchecken, damit bei der weiteren shards install
immer gesperrte Versionen installiert werden und reproduzierbare Installationen auf allen Computern erreicht werden.
Führen Sie shards --help
aus, um andere Befehle mit ihren Optionen aufzulisten.
Viel Spaß beim Hacken!
Diese Anforderungen sind nur für die Kompilierung von Shards erforderlich.
Kristall
Anweisungen für Ihr Betriebssystem finden Sie unter https://crystal-lang.org/install/.
molinillo
Der Shard molinillo
muss sich im Kristallpfad befinden. Es ist unter https://github.com/crystal-lang/crystal-molinillo verfügbar. Sie können es entweder mit einer bereits vorhandenen shards
-Binärdatei installieren ( shards install
ausführen) oder sich einfach das Repository unter lib/crystal-molinillo
( make lib
).
Libyen
Unter Debian/Ubuntu Linux können Sie das Paket libyaml-dev
installieren.
/usr/local/lib
brew install libyaml
LIBRARY_PATH
export LIBRARY_PATH="/usr/local/lib:$LIBRARY_PATH"
Bitte passen Sie den Pfad entsprechend Ihrer Homebrew-Installation an.
Asciidoctor
Wird zum Erstellen von Manpages benötigt.
Es wird dringend empfohlen, make
zum Erstellen und Entwickeln von Shards zu verwenden. Das Makefile
enthält Rezepte zum Kompilieren und Testen. Durch das Erstellen mit make
wird außerdem sichergestellt, dass die Quellabhängigkeit molinillo
installiert wird. Sie müssen sich nicht selbst darum kümmern.
Führen Sie make bin/shards
aus, um die Binärdatei zu erstellen.
release=1
für einen Release-Build (wendet Optimierungen an)static=1
für statische Verknüpfung (funktioniert nur mit musl-libc)debug=1
für vollständige symbolische Debug-Informationen Führen Sie make install
um die Binärdatei zu installieren. Zielpfad kann mit PREFIX
angepasst werden (Standard: PREFIX=/usr/bin
).
Führen Sie make test
aus, um die Testsuiten auszuführen:
make test_unit
führt Unit-Tests aus ( ./spec/unit
)make test_integration
führt Integrationstests ( ./spec/integration
) auf bin/shards
aus Führen Sie make docs
aus, um die Manpages zu erstellen.
Dieses Repository enthält eine Konfiguration für devenv.sh, die es einfach macht, eine reproduzierbare Umgebung mit allen notwendigen Tools zum Erstellen und Testen einzurichten.
devenv shell
aus, um eine Shell mit Entwicklungsumgebung zu erhalten Ein Haken zur automatischen Shell-Aktivierung ist ebenfalls enthalten. Wenn Sie direnv
installiert haben, wird die devenv-Umgebung automatisch geladen, wenn Sie den Repo-Ordner aufrufen.
Lizenziert unter der Apache-Lizenz, Version 2.0. Weitere Informationen finden Sie unter LIZENZ.