All Versions
28
Latest Version
Avg Release Cycle
78 days
Latest Release
205 days ago
Changelog History
Page 1
Changelog History
Page 1
-
v0.12.0
August 05, 2020๐ Fixes:
- Disable interactive credential prompt for git resolver. (#411, thanks @straight-shoota)
- ๐ Display dependency name on parsing errors of
shard.yml
. (#408, thanks @straight-shoota) - โก๏ธ Handle ambiguous dependencies and update
shard.lock
if source of dependency change. (#419, #429, thanks @bcardiff) - Reinstall when resolver changes. (#425, thanks @waj)
๐ Features:
- Shards overrides. (#422, #429, thanks @bcardiff)
- โ Add
--ignore-crystal-version
related suggestion and warnings to guide user. (#418, thanks @bcardiff) - ๐ Allow shards to read
SHARDS_OPTS
for addition command options. (#417, #420, thanks @bcardiff) - โ Add convenient makefile arguments for packaging. (#414, thanks @bcardiff)
Others:
- โฌ๏ธ Bump required Crystal to 0.35. (#424, thanks @bcardiff)
- โป๏ธ Refactor: Move install responsibilities from
Resolver
toPackage
. (#426, thanks @waj) - โป๏ธ Refactor: Use
Package
for locks and installed shards. (#428, thanks @waj) - Spec: Add
stdout
andstderr
toFailedCommand
message. (#410, thanks @straight-shoota) - ๐ง Spec: Fix failure under 32-bit Linux. (#416, thanks @lugia-kun)
- ๐ Fix builds. (#421, #423, thanks @bcardiff)
-
v0.11.0
June 05, 2020๐ Features:
- (breaking-change) Use
crystal:
property to filter candidates version. (#395, thanks @waj, @bcardiff) - ๐ Introduce
shard.lock
2.0 format, runshards install
to migrate. (#349, #400, thanks @waj) - ๐ Support intersection in requirements
version: >= 1.0.0, < 2.0
. (#394, thanks @waj) - Install dependencies in reverse topological order. (#369, thanks @waj)
- ๐ Use less bright colors for output. (#373, thanks @waj)
- โ Add error on duplicate arguments in
shard.yml
. (#387, thanks @straight-shoota) - Replace
.sha1
files with a single.shards.info
. (#349, #366, #368, #401, thanks @waj)
๐ Fixes:
- ๐ Improve
GitRef
dependencies and locks. (#388, #389, thanks @waj, @straight-shoota) - ๐ Fix crash when a shard version didn't contain a
shard.yml
. (#362, thanks @waj) - ๐ Avoid
shard.lock
being overwritten when dependencies are up to date. (#370, thanks @waj) - Detect version mismatches between
shard.yml
and git tags . (#341, thanks @RX14)
Others:
- โ Add compatibility with Crystal 0.35. Drop compatibility with < 0.34. (#379, #391, #397, thanks @waj, @bcardiff)
- ๐ Explicitly state build_options in help output. (#364, thanks @Darwinnn)
- ๐ Use YAML parser for
Dependency
andTarget
. (#306, thanks @straight-shoota) - โ Add lib to Makefile. (#344, #380, thanks @straight-shoota, @waj)
- ๐ Allow Makefile envvars to be overwritten from a command line. (#378, thanks @anatol)
- Rework of dependency and requirements. (#354, #358, thanks @waj)
- โ Add spec to check when there is a version mismatch. (#361, thanks @waj)
- ๐ Make sure tags in specs aren't signed. (#382, thanks @repomaa)
- Code clean-up. (#356, #375, thanks @straight-shoota)
- (breaking-change) Use
-
v0.10.0
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
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
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
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 toversion: 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.
- Dependency solver was overhauled, it may resolve dependencies in a
-
v0.9.0.beta
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 theoutdated
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
or1.0.0-rc1
. Note that semver whole number prereleases such as1.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 than1.0
).
๐ Fixes:
- Approximate operator used to match invalid version numbers (e.g.
~> 0.1.0
wrongly matched0.10.0
). - Unbalanced version numbers, such as
1.0.0
and1.0.0.1
are now correctly ordered and compared as1.0.0.1 > 1.0.0
. - ๐ฎ Force the 'v' prefix in version tags.
- ๐
install -t
isn't supported on macOS.
- A
-
v0.8.1
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.
- โก๏ธ Git repositories cloned with v0.8.0 can't fetch new remote refs anymore, which totally broke the
-
v0.8.0
June 05, 2018This 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 withSHARDS_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.
- Install shard executables inside project bin folder on shard install.