Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jan 28 21:02
    Blacksmoke16 labeled #13025
  • Jan 28 21:02
    Blacksmoke16 labeled #13025
  • Jan 28 21:02
    Blacksmoke16 labeled #13024
  • Jan 28 21:02
    Blacksmoke16 labeled #13024
  • Jan 28 18:45
    asterite opened #13025
  • Jan 28 16:23
    meatball133 synchronize #13024
  • Jan 28 15:53
    meatball133 edited #13024
  • Jan 28 15:51
    meatball133 opened #13024
  • Jan 28 15:10
    meatball133 ready_for_review #13008
  • Jan 28 13:24
    straight-shoota closed #13014
  • Jan 28 02:34
    Blacksmoke16 labeled #13023
  • Jan 28 02:19
    cyangle labeled #13023
  • Jan 28 02:19
    cyangle opened #13023
  • Jan 28 00:41
    devnote-dev labeled #13022
  • Jan 28 00:41
    devnote-dev opened #13022
  • Jan 27 23:05
    straight-shoota labeled #13021
  • Jan 27 23:05
    straight-shoota labeled #13021
  • Jan 27 23:05
    straight-shoota labeled #13021
  • Jan 27 23:05
    straight-shoota labeled #13021
  • Jan 27 23:05
    straight-shoota opened #13021
George Dietrich
@Blacksmoke16
that doesn't seem right...
duplicate of crystal-lang/crystal#8093 prob
Quinton Miller
@HertzDevil
InnerClass must also be a generic
Taupiqueur
@alexherbo2
how about adding path.match?(pattern) to wrap around File.match?(pattern, path)? https://crystal-lang.org/api/1.0.0/File.html#match?(pattern:String,path:Path%7CString)-class-method
From IRC (bridge bot)
@FromIRC
<mfiano> Hi again. I spent the last couple days reading the language reference and stdlib api docs. I think I could really become comfortable with this as a secondary language.
Taupiqueur
@alexherbo2
how to get the mime type from a file content?
George Dietrich
@Blacksmoke16
mfiano glad to hear
@alexherbo2 there's a MIME module you can use to get it from the filename/ext
but there isn't a method to do that based on content
From IRC (bridge bot)
@FromIRC
<mfiano> Thanks, it really is nice, and seems to borrow a lot from my primary language, yet seems to check off the items I'm looking for
George Dietrich
@Blacksmoke16
primary lang being Ruby?
Taupiqueur
@alexherbo2
I'm having issues with file without extensions, like bash scripts, using shebangs.
From IRC (bridge bot)
@FromIRC
<mfiano> No, Lisp :⁠)
George Dietrich
@Blacksmoke16
(()ah i see)()()
From IRC (bridge bot)
@FromIRC
<mfiano> I tried Nim a couple years ago, but the compiler was very buggy for a 1.0 release, and the community was quite toxic.
George Dietrich
@Blacksmoke16
@alexherbo2 is a method that you can specify a default for those cases
if that helps
Taupiqueur
@alexherbo2
how to return from a capturing block?, I'm using next in my block, but would like to allow return
George Dietrich
@Blacksmoke16
did you try break?
From IRC (bridge bot)
@FromIRC
<mfiano> I thought break and return cant be used
George Dietrich
@Blacksmoke16
yea, next is the thing to return from a block
Taupiqueur
@alexherbo2
I implemented a filter iterator, taking a block for filtering, but it looks odd that I can't use return in it
emanzx
@emanzx
Hi guys..
today Im trying to learn about crystal Process
puts "Spawning watcher.."
        args = ["-q", "-r", "-m", "-e moved_to", "-e create", "-e delete", "-e modify", "--timeout #{watcher_timeout}", "-o #{watch_log_path}", "#{watch_path}"]
        inotify = Process.new("inotifywait",args: ["-q", "-r", "-m", "-e moved_to", "-e create", "-e delete", "-e modify", "--timeout #{watcher_timeout}", "-o #{watch_log_path}", "#{watch_path}"])
        puts "Inotify is running on PID: #{inotify.pid}"
        sleep watcher_timeout
        watcher_status = false
        if inotify.exists?
            puts "Killing inotify with PID:#{inotify.pid}"
            Process.kill(Signal::KILL,inotify.pid)
        end
it seem like the inotifywait does not run.. maybe exited
but it works ok if I used backtick
try to use Process.new as it will not wait for the process to finish.. I do this as sometimes.. inotifywait just freeze.. and I would force kill it with kill -9
George Dietrich
@Blacksmoke16
might be worth trying like "-e", "create", not sure if that would make a diff tho
versus "-e create"
emanzx
@emanzx
oh.. so I need to split all the args?
ok I test first
George Dietrich
@Blacksmoke16
maybe? could also define the output/error IOs to be the parent process which might give a clue
Process.new("inotifywait", args: args, output: :inherit, error: :inherit)
emanzx
@emanzx
deng it works.. hahaha
thanks @Blacksmoke16 I will add the extra for error checking
George Dietrich
@Blacksmoke16
:thumbsup: can also pass any IO for them
like if you wanted to capture it in an IO::Memory or something
emanzx
@emanzx
noted. for now I just read the process output from file. I think its okay for now..
but I will keep in mind about the IO::Memory
Benjamin Wade
@RespiteSage
What's up with 1.1.0? It looks like there's a GitHub release, but no blog post or forum thread.
From IRC (bridge bot)
@FromIRC
<mfiano> I'm confused about "require" and the default directory structure of "crystal init"
Benjamin Wade
@RespiteSage
What about it?
From IRC (bridge bot)
@FromIRC
<mfiano> The language reference says the typical project layout is to have project/src/file.cr with: require "mylib", and project/lib/mylib/mylib.cr would get loaded. Why then, is lib/ added to the git ignore file? Also why can't I just resolve my own code in the src directory?
George Dietrich
@Blacksmoke16
lib directory is for dependencies
Benjamin Wade
@RespiteSage
^
Your own code should go in src/, just like you want to.