From 9d8f05201e35a6b24c6585de0d273bf296c5066d Mon Sep 17 00:00:00 2001 From: Vitalii Elenhaupt Date: Sat, 4 Nov 2017 13:17:26 +0200 Subject: [PATCH 1/2] Crystal next support --- src/amber.cr | 2 +- src/amber/cli/commands/run.cr | 2 +- src/amber/cli/templates/app/.amber_secret_key.ecr | 2 +- .../cli/templates/app/config/environments/development.yml.ecr | 2 +- .../cli/templates/app/config/environments/production.yml.ecr | 2 +- src/amber/cli/templates/app/config/environments/test.yml.ecr | 2 +- src/amber/cli/templates/template.cr | 2 +- src/amber/router/cookies.cr | 2 +- src/amber/router/pipe/csrf.cr | 4 ++-- src/amber/router/pipe/static.cr | 2 +- src/amber/router/session/cookie_store.cr | 2 +- src/amber/router/session/redis_store.cr | 2 +- src/amber/scripts/environment_loader.cr | 4 ++-- src/amber/websockets/client_socket.cr | 2 +- 14 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/amber.cr b/src/amber.cr index b3fd20b8c..994c6dd38 100644 --- a/src/amber.cr +++ b/src/amber.cr @@ -2,7 +2,7 @@ require "http" require "logger" require "json" require "colorize" -require "secure_random" +require "random/secure" require "kilt" require "kilt/slang" require "redis" diff --git a/src/amber/cli/commands/run.cr b/src/amber/cli/commands/run.cr index eadefb6ef..45e8acea3 100644 --- a/src/amber/cli/commands/run.cr +++ b/src/amber/cli/commands/run.cr @@ -26,7 +26,7 @@ module Amber::CLI puts colorize("💎 Crystalization complete!", :dark_gray) Process.run( "PORT=#{options.p} AMBER_ENV=#{options.e} ./app", - shell: true, output: true, error: true + shell: true, output: Process::Redirect::Inherit, error: Process::Redirect::Inherit ) end end diff --git a/src/amber/cli/templates/app/.amber_secret_key.ecr b/src/amber/cli/templates/app/.amber_secret_key.ecr index 9c0f7e25f..403921acc 100644 --- a/src/amber/cli/templates/app/.amber_secret_key.ecr +++ b/src/amber/cli/templates/app/.amber_secret_key.ecr @@ -1 +1 @@ -<%= SecureRandom.urlsafe_base64(32) %> +<%= Random::Secure.urlsafe_base64(32) %> diff --git a/src/amber/cli/templates/app/config/environments/development.yml.ecr b/src/amber/cli/templates/app/config/environments/development.yml.ecr index 7e88598d4..712d0d6ca 100644 --- a/src/amber/cli/templates/app/config/environments/development.yml.ecr +++ b/src/amber/cli/templates/app/config/environments/development.yml.ecr @@ -1,4 +1,4 @@ -secret_key_base: <%= SecureRandom.urlsafe_base64(32) %> +secret_key_base: <%= Random::Secure.urlsafe_base64(32) %> port: 3000 name: <%= @name %> log: "::Logger.new(STDOUT)" diff --git a/src/amber/cli/templates/app/config/environments/production.yml.ecr b/src/amber/cli/templates/app/config/environments/production.yml.ecr index 8e305b8a0..90aa582cd 100644 --- a/src/amber/cli/templates/app/config/environments/production.yml.ecr +++ b/src/amber/cli/templates/app/config/environments/production.yml.ecr @@ -1,4 +1,4 @@ -secret_key_base: <%= SecureRandom.urlsafe_base64(32) %> +secret_key_base: <%= Random::Secure.urlsafe_base64(32) %> port: 80 name: <%= @name %> log: "::Logger.new(STDOUT)" diff --git a/src/amber/cli/templates/app/config/environments/test.yml.ecr b/src/amber/cli/templates/app/config/environments/test.yml.ecr index 2cd29b2d9..d8be18e4b 100644 --- a/src/amber/cli/templates/app/config/environments/test.yml.ecr +++ b/src/amber/cli/templates/app/config/environments/test.yml.ecr @@ -1,4 +1,4 @@ -secret_key_base: <%= SecureRandom.urlsafe_base64(32) %> +secret_key_base: <%= Random::Secure.urlsafe_base64(32) %> port: 3000 name: <%= @name %> log: "::Logger.new(STDOUT)" diff --git a/src/amber/cli/templates/template.cr b/src/amber/cli/templates/template.cr index 1a01588dd..ad2d9235a 100644 --- a/src/amber/cli/templates/template.cr +++ b/src/amber/cli/templates/template.cr @@ -1,5 +1,5 @@ require "teeplate" -require "secure_random" +require "random/secure" require "./helpers.cr" require "./app" require "./migration" diff --git a/src/amber/router/cookies.cr b/src/amber/router/cookies.cr index 1c9140104..e12369f01 100644 --- a/src/amber/router/cookies.cr +++ b/src/amber/router/cookies.cr @@ -33,7 +33,7 @@ module Amber::Router property host : String? property secure : Bool = false - def initialize(@host = nil, @secret = SecureRandom.urlsafe_base64(32), @secure = false) + def initialize(@host = nil, @secret = Random::Secure.urlsafe_base64(32), @secure = false) @cookies = {} of String => String @set_cookies = {} of String => HTTP::Cookie @delete_cookies = {} of String => HTTP::Cookie diff --git a/src/amber/router/pipe/csrf.cr b/src/amber/router/pipe/csrf.cr index 6f62a1ef4..632217bbd 100644 --- a/src/amber/router/pipe/csrf.cr +++ b/src/amber/router/pipe/csrf.cr @@ -1,4 +1,4 @@ -require "secure_random" +require "random/secure" module Amber module Pipe @@ -27,7 +27,7 @@ module Amber end def self.token(context) - context.session[CSRF_KEY] ||= SecureRandom.urlsafe_base64(32) + context.session[CSRF_KEY] ||= Random::Secure.urlsafe_base64(32) end def self.tag(context) diff --git a/src/amber/router/pipe/static.cr b/src/amber/router/pipe/static.cr index 12cbe0c06..031c960e8 100644 --- a/src/amber/router/pipe/static.cr +++ b/src/amber/router/pipe/static.cr @@ -98,7 +98,7 @@ module Amber end elsif request_headers.includes_word?("Accept-Encoding", "deflate") && config.is_a?(Hash) && config["gzip"]? == true && filesize > minsize && Support::MimeTypes.zip_types(file_path) env.response.headers["Content-Encoding"] = "deflate" - Flate::Writer.new(env.response) do |deflate| + Flate::Writer.open(env.response) do |deflate| IO.copy(file, deflate) end else diff --git a/src/amber/router/session/cookie_store.cr b/src/amber/router/session/cookie_store.cr index 9ab47ec6c..fb9f3dc14 100644 --- a/src/amber/router/session/cookie_store.cr +++ b/src/amber/router/session/cookie_store.cr @@ -44,7 +44,7 @@ module Amber::Router::Session end def id - session["id"] ||= SecureRandom.uuid + session["id"] ||= Random::Secure.uuid end def changed? diff --git a/src/amber/router/session/redis_store.cr b/src/amber/router/session/redis_store.cr index 79153bada..37a5b48a2 100644 --- a/src/amber/router/session/redis_store.cr +++ b/src/amber/router/session/redis_store.cr @@ -17,7 +17,7 @@ module Amber::Router::Session end def id - @id ||= SecureRandom.uuid + @id ||= Random::Secure.uuid end def changed? diff --git a/src/amber/scripts/environment_loader.cr b/src/amber/scripts/environment_loader.cr index e8242903d..b99a4b7b0 100644 --- a/src/amber/scripts/environment_loader.cr +++ b/src/amber/scripts/environment_loader.cr @@ -1,5 +1,5 @@ require "yaml" -require "secure_random" +require "random/secure" require "../support/message_encryptor" environment = ARGV[0]? || ENV["AMBER_ENV"]? || "development" @@ -43,7 +43,7 @@ str = String.build do |s| s.puts %(@@redis_url = "#{settings["redis_url"]? || "redis://localhost:6379"}") s.puts %(@@port = #{settings["port"]? || 3000}) s.puts %(@@host = "#{settings["host"]? || "127.0.0.1"}") - s.puts %(@@secret_key_base = "#{settings["secret_key_base"]? || SecureRandom.urlsafe_base64(32)}") + s.puts %(@@secret_key_base = "#{settings["secret_key_base"]? || Random::Secure.urlsafe_base64(32)}") unless settings["ssl_key_file"]?.to_s.empty? s.puts %(@@ssl_key_file = "#{settings["ssl_key_file"]?}") diff --git a/src/amber/websockets/client_socket.cr b/src/amber/websockets/client_socket.cr index d5ddb5e95..b67bb7d76 100644 --- a/src/amber/websockets/client_socket.cr +++ b/src/amber/websockets/client_socket.cr @@ -63,7 +63,7 @@ module Amber end def initialize(@socket, @context) - @id = SecureRandom.uuid + @id = Random::Secure.uuid @subscription_manager = SubscriptionManager.new @raw_params = @context.params @params = Amber::Validators::Params.new(@raw_params) From bb2525b3e46a579865d225e42a5faf45998ef916 Mon Sep 17 00:00:00 2001 From: Vitalii Elenhaupt Date: Sat, 4 Nov 2017 13:29:29 +0200 Subject: [PATCH 2/2] Crystal version in shard.yml --- shard.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shard.yml b/shard.yml index f90772a6c..8cc366f7d 100644 --- a/shard.yml +++ b/shard.yml @@ -8,7 +8,7 @@ authors: - Nick Franken <> - Benoit de Chezelles <> -crystal: 0.23.1 +crystal: 0.24.0 license: MIT