Giter Club home page Giter Club logo

ex_guard's Introduction

Hi there, I'm Milad!


twitter ย ย  youtube

ex_guard's People

Contributors

andyl avatar carloslima avatar dependabot[bot] avatar drselump14 avatar hurrycaner avatar olejrosendahl avatar pragtob avatar slashmili avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

ex_guard's Issues

Todo

  • accept a file as argument and only run matched guard if that file is changed and ignore other files ex: mix guard test/users/ which only runs test if a file on that directory is changed

Stopped working for benchee / only runs one command

Hello there my old and trusty tool author! And thanks for ex_guard ๐Ÿ’š

I been getting back a bit into updating benchee but I noticed ex_guard doesn't work for me any more. I'm on all the most recent versions. Setup etc. over here: https://github.com/bencheeorg/benchee/blob/main/.exguard.exs

essentially this is my .exguard:

use ExGuard.Config

project_files = ~r{\.(erl|ex|exs|eex|xrl|yrl)\z}i
deps = ~r{deps}

guard("compile and warn", run_on_start: true)
|> command("MIX_ENV=test mix compile --warnings-as-errors")
|> watch(project_files)
|> ignore(deps)
|> notification(:auto)

guard("credo", run_on_start: true)
|> command("mix credo")
|> watch(project_files)
|> ignore(deps)
|> notification(:auto)

guard("mix format", run_on_start: true)
|> command("mix format --check-formatted")
|> watch(project_files)
|> ignore(deps)
|> notification(:auto)

guard("dialyzer", run_on_start: true)
|> command("mix dialyzer --halt-exit-status")
|> watch(project_files)
|> ignore(deps)
|> notification(:auto)

guard("test", run_on_start: true)
|> command("mix test --color")
|> watch(project_files)
|> ignore(deps)
|> notification(:auto)

it always ever only runs the tests, and not all the other tasks that I set it up for:

tobi@qiqi:~/github/benchee(minor-fixes)$ mix guard
ex_guard is executing mix test --color
Excluding tags: [needs_fast_function_repetition: true]

.....................................................................................................................................................................................................................................................................................................................................................................................................Failed to write log message to stdout, trying stderr

12:32:55.790 [info] Failed to write to standard out (:epipe)
......................*.............
Finished in 7.7 seconds (6.1s async, 1.5s sync)
128 doctests, 301 tests, 0 failures, 4 excluded, 1 skipped

Randomized with seed 908964
ex_guard is executing mix test --color
Compiling 7 files (.ex)
Compiling 6 files (.ex)
Excluding tags: [needs_fast_function_repetition: true]

...................................................................................................................................................................................................................................................................................................................................................................................Failed to write log message to stdout, trying stderr

12:34:40.114 [info] Failed to write to standard out (:epipe)
.......................*..............................
Finished in 8.0 seconds (6.4s async, 1.6s sync)
128 doctests, 301 tests, 0 failures, 4 excluded, 1 skipped

Randomized with seed 114835

Cheers,
Tobi

IEx.pry

I like the simplicity of ExGuard and am considering using it in one of my projects. I can't seem to get IEx.pry to work however. Is it possible to use pry with ExGuard?

is focus supported?

I have this guard

guard("unit-test", run_on_start: false)
|> command("mix test --color")
|> watch(~r{\.(erl|ex|exs|eex|xrl|yrl)\z}i)
|> ignore(~r{deps})
|> notification(:auto)

I'd like to run only the specs of the file I save (even better a tagged example), is it supported? Thanks for a great lib

Saving N files in a row during build triggers N sequential builds

Thanks for this awesome tool!

I noticed that when I save multiple files quickly, a guard run gets triggered for all of the files, rather than just two in a row like Ruby guard does. This is especially problematic when updating deps, as every file change changes seems to trigger the guard run.

Version 1.0.0

  • Execute command with filename option
  • Choose a license
  • Update mix setting
  • Register project in hex.pm
  • Support terminal notifier
  • Pass optional argument as ExGuardfile
  • Add module and function documentation
  • exclude watch path
  • Support libnotify
  • Support tmux notifier
  • Add Notifier behaviour and use it in Notification modules

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.