Popularity
4.1
Growing
Activity
0.0
Stable
11
3
3

Programming language: Crystal
License: MIT License
Tags: Development Tools    
Latest version: v0.3.0

sentry-run alternatives and similar shards

Based on the "Development Tools" category.
Alternatively, view sentry-run alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of sentry-run or a related project?

Add another 'Development Tools' Shard

README

Build Status

A shard using Sentry for reload code changes with Sentry.run.

Installation

Add this to your application's shard.yml:

development_dependencies:
  sentry-run:
    github: faustinoaq/sentry-run

Then run shards update.

Usage

  1. Create a new process with process = Sentry.config(...)
  2. Execute Sentry.run(process) do ... end
require "kemal"
require "sentry-run"

get "/" do
  "Hello world"
end

process = Sentry.config(
  process_name: "App",
  build_command: "crystal",
  run_command: "./bin/app",
  build_args: ["build", "src/app.cr", "-o", "bin/app"],
  run_args: ["-p", "9000"])

Sentry.run(process) do
  Kemal.run
end

You can use Sentry.run for recompile and reload your code without external sentry.cr.

Default values:

process_name : String
build_command : String
run_command : String
build_args = [] of String
run_args = [] of String
files = ["src/**/*.cr", "src/**/*.ecr"]
should_build = true

How does it work?

Basically this shard checks a sentry.lock file.

When you run your code Sentry.run create a sentry.lock and then yield a block. After a code change Sentry recompiles your file and rerun a new app instance with run_command in Sentry.config.

Contributing

  1. Fork it ( https://github.com/faustinoaq/sentry-run/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Disclaimer

Sentry.run is intended for use in a development environment.

Contributors

  • faustinoaq Faustino Aguilar - creator, maintainer