Comments (10)
It should be
name: amethyst
version: 0.1.7
dependencies:
mime:
github: spalger/crystal-mime
branch: master
We still need to better validate the format.
from shards.
Yes, but reporting correct error messages is hard. Here we'd have "config for github dependency must be a hash", which is better than "cast to X error" but still kinda weird.
Unless we can have the code that failed parsing and pointing arrows, like crystal compiler errors? Maybe the experimental yaml_mapping
could help with that?
from shards.
Maybe we can track the rough section and provide generic error messages? Like
Invalid shard.yml: Invalid dependencies. Specifying dependencies should look like this:
dependencies:
example:
github: crystal-lang/example-shard
version: 0.1.0
from shards.
from shards.
Another idea is to use a pull parser, so you can access the line and column. I think the yaml format of shards is pretty simple and it could be done. With this, we can show errors like in the compiler. It shouldn't be that hard to do. If you want I can give it a try.
from shards.
Thanks @jhass
I also agree on more meaningful error message.
from shards.
Meanwhile does every shard.yml
have to have name and description in it?
Doing this also fails
dependencies:
mime:
github: spalger/crystal-mime
branch: master
from shards.
I think name and version is the minimum
from shards.
Yes, both name
and version
are required. Everything else is optional.
from shards.
Closing since 658da8a now displays nicer parse errors.
from shards.
Related Issues (20)
- Concurrent installs fail with "Failed to clone" HOT 1
- shards build --mcpu causes lookup of CPU arch as a target incorrectly HOT 3
- Add Pijul resolver HOT 2
- [Website] Could statistics be added? HOT 2
- Windows: A required privilege is not held by the client HOT 3
- Shards installs wrong version of lucky HOT 6
- branch master not satisfy condition >= HOT 5
- Tell why upgrading more
- Inconsistency in `~> x.y.z` requirement with pre-release HOT 1
- Unable to resolve dependency with pre-release version HOT 5
- Refactor resolver code
- `shards remove` command
- Prune command fails to remove symlink HOT 1
- Notify users of deprecated/outdated package HOT 8
- Different behavior between `shards run` and `crystal run` HOT 3
- Installed version in `lib` does not match version in `shard.lock` HOT 3
- verbose option should output also out and err from postinstall script
- `--local` flag doesn't respect CRYSTAL_PATH HOT 3
- FR: Option for out-of-source builds HOT 4
- Equivalent of "go mod vendor"? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from shards.