From 3ca691490cb2247cabb2c4b8fe6e160d9d14fb3b Mon Sep 17 00:00:00 2001 From: Wanderson Policarpo Date: Thu, 14 May 2020 16:41:49 +0100 Subject: [PATCH] Enable frozen string in all remaining files --- CHANGELOG.md | 1 + .../sqlserver/database_limits.rb | 2 ++ .../sqlserver/database_statements.rb | 4 +++- .../sqlserver/database_tasks.rb | 2 ++ .../connection_adapters/sqlserver/errors.rb | 2 ++ .../connection_adapters/sqlserver/quoting.rb | 2 ++ .../sqlserver/schema_creation.rb | 2 ++ .../sqlserver/schema_dumper.rb | 2 ++ .../sqlserver/schema_statements.rb | 21 +++++++++++-------- .../connection_adapters/sqlserver/showplan.rb | 2 ++ .../sqlserver/sql_type_metadata.rb | 2 ++ .../sqlserver/table_definition.rb | 2 ++ .../sqlserver/transaction.rb | 2 ++ .../connection_adapters/sqlserver/type.rb | 2 ++ .../connection_adapters/sqlserver/utils.rb | 2 ++ .../connection_adapters/sqlserver/version.rb | 2 ++ .../connection_adapters/sqlserver_adapter.rb | 2 ++ .../connection_adapters/sqlserver_column.rb | 2 ++ lib/active_record/sqlserver_base.rb | 2 ++ .../tasks/sqlserver_database_tasks.rb | 2 ++ lib/activerecord-sqlserver-adapter.rb | 2 ++ lib/arel/visitors/sqlserver.rb | 2 ++ lib/arel_sqlserver.rb | 2 ++ 23 files changed, 56 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ef6c03e98..a51153243 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,6 +17,7 @@ - [#820](https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/pull/820) Enable frozen strings for tests - [#821](https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/pull/821) Enable frozen strings - part 1 - [#822](https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/pull/822) Enable frozen strings - part 2 +- [#823](https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/pull/823) Enable frozen strings - final #### Added diff --git a/lib/active_record/connection_adapters/sqlserver/database_limits.rb b/lib/active_record/connection_adapters/sqlserver/database_limits.rb index f52ffdf39..14ad94865 100644 --- a/lib/active_record/connection_adapters/sqlserver/database_limits.rb +++ b/lib/active_record/connection_adapters/sqlserver/database_limits.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionAdapters module SQLServer diff --git a/lib/active_record/connection_adapters/sqlserver/database_statements.rb b/lib/active_record/connection_adapters/sqlserver/database_statements.rb index 68813c489..0bcff16ed 100644 --- a/lib/active_record/connection_adapters/sqlserver/database_statements.rb +++ b/lib/active_record/connection_adapters/sqlserver/database_statements.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionAdapters module SQLServer @@ -342,7 +344,7 @@ def sp_executesql_sql(sql, types, params, name) types = quote(types.join(', ')) params = params.map.with_index{ |p, i| "@#{i} = #{p}" }.join(', ') # Only p is needed, but with @i helps explain regexp. sql = "EXEC sp_executesql #{quote(sql)}" - sql << ", #{types}, #{params}" unless params.empty? + sql += ", #{types}, #{params}" unless params.empty? end sql end diff --git a/lib/active_record/connection_adapters/sqlserver/database_tasks.rb b/lib/active_record/connection_adapters/sqlserver/database_tasks.rb index e1ab94871..687773806 100644 --- a/lib/active_record/connection_adapters/sqlserver/database_tasks.rb +++ b/lib/active_record/connection_adapters/sqlserver/database_tasks.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionAdapters module SQLServer diff --git a/lib/active_record/connection_adapters/sqlserver/errors.rb b/lib/active_record/connection_adapters/sqlserver/errors.rb index 70f64cefc..3ff5faec0 100644 --- a/lib/active_record/connection_adapters/sqlserver/errors.rb +++ b/lib/active_record/connection_adapters/sqlserver/errors.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord class DeadlockVictim < WrappedDatabaseException diff --git a/lib/active_record/connection_adapters/sqlserver/quoting.rb b/lib/active_record/connection_adapters/sqlserver/quoting.rb index 0d95202c8..ad11c4900 100644 --- a/lib/active_record/connection_adapters/sqlserver/quoting.rb +++ b/lib/active_record/connection_adapters/sqlserver/quoting.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionAdapters module SQLServer diff --git a/lib/active_record/connection_adapters/sqlserver/schema_creation.rb b/lib/active_record/connection_adapters/sqlserver/schema_creation.rb index 670d77379..361e7bc53 100644 --- a/lib/active_record/connection_adapters/sqlserver/schema_creation.rb +++ b/lib/active_record/connection_adapters/sqlserver/schema_creation.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionAdapters module SQLServer diff --git a/lib/active_record/connection_adapters/sqlserver/schema_dumper.rb b/lib/active_record/connection_adapters/sqlserver/schema_dumper.rb index d801d1d86..bd5d746c9 100644 --- a/lib/active_record/connection_adapters/sqlserver/schema_dumper.rb +++ b/lib/active_record/connection_adapters/sqlserver/schema_dumper.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionAdapters module SQLServer diff --git a/lib/active_record/connection_adapters/sqlserver/schema_statements.rb b/lib/active_record/connection_adapters/sqlserver/schema_statements.rb index 94f7dcfdc..cc0f87e1a 100644 --- a/lib/active_record/connection_adapters/sqlserver/schema_statements.rb +++ b/lib/active_record/connection_adapters/sqlserver/schema_statements.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionAdapters module SQLServer @@ -152,8 +154,9 @@ def change_column(table_name, column_name, type, options = {}) remove_indexes(table_name, column_name) end sql_commands << "UPDATE #{quote_table_name(table_name)} SET #{quote_column_name(column_name)}=#{quote_default_expression(options[:default], column_object)} WHERE #{quote_column_name(column_name)} IS NULL" if !options[:null].nil? && options[:null] == false && !options[:default].nil? - sql_commands << "ALTER TABLE #{quote_table_name(table_name)} ALTER COLUMN #{quote_column_name(column_name)} #{type_to_sql(type, limit: options[:limit], precision: options[:precision], scale: options[:scale])}" - sql_commands.last << ' NOT NULL' if !options[:null].nil? && options[:null] == false + alter_command = "ALTER TABLE #{quote_table_name(table_name)} ALTER COLUMN #{quote_column_name(column_name)} #{type_to_sql(type, limit: options[:limit], precision: options[:precision], scale: options[:scale])}" + alter_command += ' NOT NULL' if !options[:null].nil? && options[:null] == false + sql_commands << alter_command if without_constraints default = quote_default_expression(default, column_object || column_for(table_name, column_name)) sql_commands << "ALTER TABLE #{quote_table_name(table_name)} ADD CONSTRAINT #{default_constraint_name(table_name, column_name)} DEFAULT #{default} FOR #{quote_column_name(column_name)}" @@ -267,7 +270,7 @@ def change_column_null(table_name, column_name, allow_null, default = nil) do_execute("UPDATE #{table_id} SET #{column_id}=#{quote(default)} WHERE #{column_id} IS NULL") end sql = "ALTER TABLE #{table_id} ALTER COLUMN #{column_id} #{type_to_sql column.type, limit: column.limit, precision: column.precision, scale: column.scale}" - sql << ' NOT NULL' if !allow_null.nil? && allow_null == false + sql += ' NOT NULL' if !allow_null.nil? && allow_null == false do_execute sql end @@ -281,12 +284,12 @@ def data_source_sql(name = nil, type: nil) scope = quoted_scope name, type: type table_name = lowercase_schema_reflection_sql 'TABLE_NAME' sql = "SELECT #{table_name}" - sql << ' FROM INFORMATION_SCHEMA.TABLES WITH (NOLOCK)' - sql << ' WHERE TABLE_CATALOG = DB_NAME()' - sql << " AND TABLE_SCHEMA = #{quote(scope[:schema])}" - sql << " AND TABLE_NAME = #{quote(scope[:name])}" if scope[:name] - sql << " AND TABLE_TYPE = #{quote(scope[:type])}" if scope[:type] - sql << " ORDER BY #{table_name}" + sql += ' FROM INFORMATION_SCHEMA.TABLES WITH (NOLOCK)' + sql += ' WHERE TABLE_CATALOG = DB_NAME()' + sql += " AND TABLE_SCHEMA = #{quote(scope[:schema])}" + sql += " AND TABLE_NAME = #{quote(scope[:name])}" if scope[:name] + sql += " AND TABLE_TYPE = #{quote(scope[:type])}" if scope[:type] + sql += " ORDER BY #{table_name}" sql end diff --git a/lib/active_record/connection_adapters/sqlserver/showplan.rb b/lib/active_record/connection_adapters/sqlserver/showplan.rb index 33839ca1e..1891cb588 100644 --- a/lib/active_record/connection_adapters/sqlserver/showplan.rb +++ b/lib/active_record/connection_adapters/sqlserver/showplan.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'active_record/connection_adapters/sqlserver/showplan/printer_table' require 'active_record/connection_adapters/sqlserver/showplan/printer_xml' diff --git a/lib/active_record/connection_adapters/sqlserver/sql_type_metadata.rb b/lib/active_record/connection_adapters/sqlserver/sql_type_metadata.rb index f5640ca68..09b59ebd2 100644 --- a/lib/active_record/connection_adapters/sqlserver/sql_type_metadata.rb +++ b/lib/active_record/connection_adapters/sqlserver/sql_type_metadata.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionAdapters module SQLServer diff --git a/lib/active_record/connection_adapters/sqlserver/table_definition.rb b/lib/active_record/connection_adapters/sqlserver/table_definition.rb index 878f09e4f..244f33295 100644 --- a/lib/active_record/connection_adapters/sqlserver/table_definition.rb +++ b/lib/active_record/connection_adapters/sqlserver/table_definition.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionAdapters module SQLServer diff --git a/lib/active_record/connection_adapters/sqlserver/transaction.rb b/lib/active_record/connection_adapters/sqlserver/transaction.rb index 251193337..baba63859 100644 --- a/lib/active_record/connection_adapters/sqlserver/transaction.rb +++ b/lib/active_record/connection_adapters/sqlserver/transaction.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'active_record/connection_adapters/abstract/transaction' module ActiveRecord diff --git a/lib/active_record/connection_adapters/sqlserver/type.rb b/lib/active_record/connection_adapters/sqlserver/type.rb index bbb74266a..59121074a 100644 --- a/lib/active_record/connection_adapters/sqlserver/type.rb +++ b/lib/active_record/connection_adapters/sqlserver/type.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'active_record/type' # Behaviors require 'active_record/connection_adapters/sqlserver/type/data' diff --git a/lib/active_record/connection_adapters/sqlserver/utils.rb b/lib/active_record/connection_adapters/sqlserver/utils.rb index e6eedc94e..bd2a6fdf9 100644 --- a/lib/active_record/connection_adapters/sqlserver/utils.rb +++ b/lib/active_record/connection_adapters/sqlserver/utils.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'strscan' module ActiveRecord diff --git a/lib/active_record/connection_adapters/sqlserver/version.rb b/lib/active_record/connection_adapters/sqlserver/version.rb index 3692bdc20..4ab6f0bf4 100644 --- a/lib/active_record/connection_adapters/sqlserver/version.rb +++ b/lib/active_record/connection_adapters/sqlserver/version.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionAdapters module SQLServer diff --git a/lib/active_record/connection_adapters/sqlserver_adapter.rb b/lib/active_record/connection_adapters/sqlserver_adapter.rb index 86fc2c19a..8c017ccc2 100644 --- a/lib/active_record/connection_adapters/sqlserver_adapter.rb +++ b/lib/active_record/connection_adapters/sqlserver_adapter.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'base64' require 'active_record' require 'arel_sqlserver' diff --git a/lib/active_record/connection_adapters/sqlserver_column.rb b/lib/active_record/connection_adapters/sqlserver_column.rb index 7d0547344..535a75967 100644 --- a/lib/active_record/connection_adapters/sqlserver_column.rb +++ b/lib/active_record/connection_adapters/sqlserver_column.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionAdapters class SQLServerColumn < Column diff --git a/lib/active_record/sqlserver_base.rb b/lib/active_record/sqlserver_base.rb index 0b86358f4..7dcf2765d 100644 --- a/lib/active_record/sqlserver_base.rb +++ b/lib/active_record/sqlserver_base.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ActiveRecord module ConnectionHandling def sqlserver_connection(config) #:nodoc: diff --git a/lib/active_record/tasks/sqlserver_database_tasks.rb b/lib/active_record/tasks/sqlserver_database_tasks.rb index cd10b87c2..0e7231dda 100644 --- a/lib/active_record/tasks/sqlserver_database_tasks.rb +++ b/lib/active_record/tasks/sqlserver_database_tasks.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'active_record/tasks/database_tasks' require 'shellwords' require 'ipaddr' diff --git a/lib/activerecord-sqlserver-adapter.rb b/lib/activerecord-sqlserver-adapter.rb index b420ca178..bfcdd0347 100644 --- a/lib/activerecord-sqlserver-adapter.rb +++ b/lib/activerecord-sqlserver-adapter.rb @@ -1 +1,3 @@ +# frozen_string_literal: true + require 'active_record/connection_adapters/sqlserver_adapter' diff --git a/lib/arel/visitors/sqlserver.rb b/lib/arel/visitors/sqlserver.rb index 190239192..82b77d99e 100644 --- a/lib/arel/visitors/sqlserver.rb +++ b/lib/arel/visitors/sqlserver.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module Arel module Visitors class SQLServer < Arel::Visitors::ToSql diff --git a/lib/arel_sqlserver.rb b/lib/arel_sqlserver.rb index d437be596..f271dbb02 100644 --- a/lib/arel_sqlserver.rb +++ b/lib/arel_sqlserver.rb @@ -1,2 +1,4 @@ +# frozen_string_literal: true + require 'arel' require 'arel/visitors/sqlserver'