Comments (7)
@Sija this looks like a separate issue. See the difference between config file path and a file to check.
from ameba.
Yeah, I originally considered adding to the other issue, but thought maybe they'd be different enough where one is
./bin/ameba -c not_there.yml
and this is
./bin/ameba not_there.cr
I guess another option could be to combine them in to a single issue that's like "passing file paths that don't exist should raise an error in all cases"?
from ameba.
You're right, I was trigger happy 😅
from ameba.
Duplicate of #362
from ameba.
This is an interesting one to implement because the command line arguments can be a single file or a glob. In glob_utils.cr#expand the list of arguments are expanded and only file paths which exist are returned from Dir[glob]
.
This makes it hard to catch non-existent files anywhere else in the code base after the globs have been expanded, which is why I'm thinking to implement this in GlobUtils#expand
.
My idea is to raise an exception if a particular glob doesn't return any results from Dir[glob]
. This would raise in both the below examples:
> ./bin/ameba not_there.cr
Error: No files found matching not_there.cr
> ./bin/ameba not_there/**/*.cr
Error: No files found matching not_there/**/*.cr
I'll make a PR using this approach, but I'm open to feedback on different approaches.
from ameba.
@stufro thanks for taking a look.
This is what I would expect, however, need to understand if there are non-intuitive edge cases.
from ameba.
Thanks - #394. I've tried all the edge cases I can think of and it work as I would expect.
from ameba.
Related Issues (20)
- `--only` CLI flag appears to ignore excluded files within config HOT 1
- BUG: trying to downcast (Slice(UInt8) | Nil) (Crystal::MixedUnionType) <- Slice(UInt8) (Crystal::GenericClassInstanceType) (Exception) HOT 2
- `Lint/LiteralsComparison`: false positive when comparing tuple
- Failing spec on crystal master
- Replace `Performance/AnyInsteadOfEmpty` with `Style/EmptyInsteadOfPresent` HOT 9
- Regression in `Lint/ShadowingOuterLocalVar`
- Configure skipping directories HOT 3
- warn on redundant use of `.try` HOT 3
- Recognize unused variable from type declaration HOT 2
- ComparisonToBoolean with Bool unions HOT 2
- exception names are too limited HOT 7
- A dedicated `rules` command HOT 1
- `Lint/UselessAssign` reports type declarations within `lib` definitions
- Add lsp server option HOT 1
- `Lint/UselessAssign` when using generics HOT 9
- `Lint/UselessAssign` reports macros accepting `Crystal::Macros::TypeDeclaration` HOT 16
- Avoid annoyance from new rules HOT 4
- Naming/BlockParameterName + stdlib methods like sort HOT 4
- spec helpers getting flagged HOT 1
- Custom macro generates "Useless assignment to variable" HOT 3
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 ameba.