Adding a new feature into shards package manager

I’m looking forward to see extended functionality for deps installation from source URL with shards in next release, i.e. shards install https://github.com/DFabric/dppm.git. or shards add https://github.com/DFabric/dppm.git.

1 Like

Related: shards add/get · Issue #144 · crystal-lang/shards · GitHub

2 Likes

I am surprised that Shards has a much smaller code base than I imagined.
It is less than 5000 lines, and only 3343 lines excluding comments.

tokei -e spec

===============================================================================
 Language            Files        Lines         Code     Comments       Blanks
===============================================================================
 AsciiDoc                2          657          557            0          100
 Crystal                37         4176         3343          144          689
 Makefile                2          101           72            0           29
 YAML                    1           17           12            0            5
-------------------------------------------------------------------------------
 Markdown                3          563            0          397          166
 |- YAML                 1           14           11            0            3
 (Total)                            577           11          397          169
===============================================================================
 Total                  45         5514         3984          541          989
===============================================================================

In Ruby, there are many packages that extend existing tools and libraries using “Monkey Patching” or “open classes”.

Crystal’s culture is a bit different from Ruby’s. For example, if we create an extension package, we need to recompile everything. But maybe we should feel free to create extension packages for Shards to meet our own personal needs…