All Versions
35
Latest Version
Avg Release Cycle
105 days
Latest Release
572 days ago

Changelog History
Page 2

  • v0.10.0 Changes

    April 01, 2020

    ๐Ÿ”‹ Features:

    • ๐Ÿ‘‰ Use crystal-molinillo to resolve dependencies, drop the SAT solver. #322, #329, #336.
    • โšก๏ธ Automatic unlock on install and update. #337
    • ๐Ÿ‘‰ Show the shard's name when running scripts. #326
    • ๐Ÿ‘Œ Support shard renames. #327
    • โž• Add SPEC for repository, homepage, documentation properties. #265

    ๐Ÿ›  Fixes:

    • ๐Ÿ‘ Allow changes in the source protocol without triggering an actual change in the source. #315
    • Make shards reproducible via SOURCE_DATE_EPOCH environment variable. #314
    • Check non hidden files are not pruned. #330
    • Validation of changes in production mode for dependencies referenced by commit. #340

    Others:

  • v0.9.0 Changes

    June 12, 2019

    ๐Ÿ›  Fixes:

    • ๐Ÿ‘ Allow resolving pre-release when installing git refs;
    • Report all available versions (Git resolver);
    • Don't prune everything in lib directory.
  • v0.9.0.rc2 Changes

    May 07, 2019

    ๐Ÿ›  Fixes:

    • Exit with non-zero status on dependency resolve error;
    • Install dependency at HEAD when no version tags are defined;
    • Install executables using shard.yml at commit (not version).
  • v0.9.0.rc1 Changes

    February 09, 2019

    ๐Ÿ’ฅ Breaking changes:

    • Dependency solver was overhauled, it may resolve dependencies in a
      ๐Ÿ‘ completely different way, succeed better, or just fail;
    • Git tag refs that match a version number are now an actual version (i.e.
      tag: v1.0.0 is converted to version: 1.0.0).

    ๐Ÿ”‹ Features:

    • โšก๏ธ Update specified shards only, trying to keep other shards to their locked
      ๐Ÿ”– version if possible;
    • โž• Add --local argument to use the cache as-is, allowing to skip git fetches
      when you know the cache is up-to-date;
    • Add the outdated command to list dependencies that could be updated
      ๐Ÿš€ (matching constraints) as well as their latest version; including pre-release
      ๐Ÿ”– versions on demand.
    • ๐Ÿ”’ Add the lock command that behaves like the install and update commands
      but that only creates a lockfile, and doesn't install anything.

    ๐Ÿ›  Fixes:

    • Transitive dependencies are now available to all installed shards, allowing
      postinstall scripts to compile any Crystal application;
    • ๐Ÿš€ Don't consider metadata when considering a pre-release version number.
  • v0.9.0.beta Changes

    January 11, 2019

    ๐Ÿš€ This is pre-release for the next version of Shards that will support pre-releases! See the v0.9.0 milestone for what's still missing (e.g. --local and the outdated command).

    ๐Ÿ‘€ The version number resolver got an overhaul and fixed some issues (see below). Please check that everything is still working fine and report any issues you may have!

    ๐Ÿ’ฅ Breaking changes:

    • A shard.yml spec is now required in libraries.
    • โฌ‡๏ธ Drop support for obsolete Projectfile.

    ๐Ÿ”‹ Features:

    • ๐Ÿš€ Experimental support for prereleases. Add a letter to a version number to declare a pre-release. For example 1.2.3.alpha or 1.0.0-rc1. Note that semver whole number prereleases such as 1.0.0-1 aren't supported, and even have higher precedence (1.0-1 > 1.0).
    • ๐Ÿ“‡ Ignore semver metadata (1.0+abc has same precedence than 1.0).

    ๐Ÿ›  Fixes:

    • Approximate operator used to match invalid version numbers (e.g. ~> 0.1.0 wrongly matched 0.10.0).
    • Unbalanced version numbers, such as 1.0.0 and 1.0.0.1 are now correctly ordered and compared as 1.0.0.1 > 1.0.0.
    • ๐Ÿ‘ฎ Force the 'v' prefix in version tags.
    • ๐ŸŽ install -t isn't supported on macOS.
  • v0.8.1 Changes

    June 17, 2018

    ๐Ÿ›  Fixes:

    • โšก๏ธ Git repositories cloned with v0.8.0 can't fetch new remote refs anymore, which totally broke the update command.
    • The Path resolver incorrectly handled invalid symlinks.
  • v0.8.0 Changes

    June 05, 2018

    This release incorrectly clones Git repositories. Please upgrade to v0.8.1!

    ๐Ÿ”‹ Features:

    • Install shard executables inside project bin folder on shard install.
      ๐Ÿ‘€ See #126.

    ๐Ÿ”„ Changes:

    • ๐Ÿ‘ฏ Global cache for cloned Git repositories, aside crystal cache
      (e.g. ~/.cache/shards). Customizable with SHARDS_CACHE_PATH.
    • ๐Ÿ‘ฏ Clone bare Git repositories instead of creating mirrors (fetch should be
      faster, and less space required on disk).
    • Man pages are now in the man folder.
    • ๐Ÿ‘ Allow loose shard versioning, accepting semver-like versions and alternatives
      such as calver.

    ๐Ÿ›  Fixes:

    • Compatibility with Crystal 0.25.
  • v0.7.2 Changes

    November 16, 2017

    ๐Ÿ”‹ Features:

    • ๐Ÿ”– Version command to print-out the project's version, see #147

    ๐Ÿ›  Fixes:

    • ๐Ÿ‘€ Don't consider a Git refs to be a version number, see #169
    • ๐Ÿ‘€ Use installed spec for executing scripts, see #143
    • ๐Ÿ”’ Don't expect shard.lock when shard.yml has no dependencies, see #145
    • ๐Ÿš€ Compatibility with Crystal 0.24.0 (unreleased)
    • Harmonize error messages
    • ๐Ÿ“œ Correct shard.yml parse error line:column reporting
  • v0.7.1 Changes

    November 24, 2016

    ๐Ÿ›  Fixes:

    • โšก๏ธ correctly updates or keeps dependencies, see #107, #141
    • โฌ†๏ธ upgrades minitest dependency so test do run
  • v0.7.0 Changes

    November 18, 2016

    ๐Ÿ”‹ Features:

    • ๐Ÿ— Build command for targets entry in SPEC
    • ๐Ÿ†• New Crystal search path algorithm (see breaking changes below)
    • Informational crystal entry in SPEC
    • Informational libraries entry in SPEC
    • Shorthand for gitlab.com dependencies

    ๐Ÿ’ฅ Breaking Changes:

    • Dependencies are installed in the lib directory
    • Dependencies are now fully installed, instead of merely the src folder
    • postinstall scripts are now executed from the root of the dependency,
      not the src directory

    ๐Ÿ›  Fixes:

    • crash when dependency keys were unordered
    • tar command usage on OpenBSD
    • correctly report git errors
    • โšก๏ธ the update command created a lockfile for empty dependencies