From 03716c1ee450e1a54c55f2c621f75aa9eda0253d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikl=C3=B3s=20Fazekas?= Date: Sun, 12 Mar 2023 09:54:30 +0100 Subject: 7.1.0 release prepare --- CHANGES.txt | 4 +++ Rakefile | 69 +++++++++++++++++++++++++++++++++----------------- lib/net/ssh/version.rb | 2 +- 3 files changed, 51 insertions(+), 24 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 24540ec..5af3146 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,8 @@ +=== 7.1.0 + + * Accept pubkey_algorithms option when starting a new connection [#891] + === 7.1.0 beta1 * Don't use the deprecated set_XXX methods on RSA keys. [#875] diff --git a/Rakefile b/Rakefile index 103a295..e6f3ed8 100644 --- a/Rakefile +++ b/Rakefile @@ -55,33 +55,56 @@ namespace :cert do end end +def change_version(&block) + version_file = 'lib/net/ssh/version.rb' + require_relative version_file + pre = Net::SSH::Version::PRE + result = block[pre: pre] + raise "Version change logic should always return a pre", ArgumentError unless result.key?(:pre) + + new_pre = result[:pre] + found = false + File.open("#{version_file}.new", "w") do |f| + File.readlines(version_file).each do |line| + match = /^(\s+PRE\s+=\s+")#{pre}("\s*)$/.match(line) + if match + prefix = match[1] + postfix = match[2] + if new_pre.nil? + prefix.delete_suffix!('"') + postfix.delete_prefix!('"') + end + new_line = "#{prefix}#{new_pre.inspect}#{postfix}" + puts "Changing:\n - #{line} + #{new_line}" + line = new_line + found = true + end + f.write(line) + end + raise ArugmentError, "Cound not find line: PRE = \"#{pre}\" in #{version_file}" unless found + end + + FileUtils.mv version_file, "#{version_file}.old" + FileUtils.mv "#{version_file}.new", version_file +end + namespace :vbump do + desc "Final release" + task :final do + change_version do |pre:| + raise ArgumentError, "Unexpected pre: #{pre}" if pre.nil? + + { pre: nil } + end + end + desc "Increment prerelease" task :pre do - version_file = 'lib/net/ssh/version.rb' - require_relative version_file - pre = Net::SSH::Version::PRE - if pre =~ /^([a-z]+)(\d+)/ - new_pre = "#{$1}#{$2.to_i+1}" - found = false - - File.open("#{version_file}.new", "w") do |f| - File.readlines(version_file).each do |line| - if line =~ /^(\s+PRE\s+=\s+")#{pre}("\s*)$/ - new_line = "#{$1}#{new_pre}#{$2}" - puts "Changing:\n - #{line} + #{new_line}" - line = new_line - found = true - end - f.write(line) - end - raise ArugmentError, 'Cound not find line: PRE = \"#{pre}\" in #{version_file}"' unless found - end + change_version do |pre:| + match = /^([a-z]+)(\d+)/.match(pre) + raise ArgumentError, "Unexpected pre: #{pre}" if match.nil? - FileUtils.mv version_file, "#{version_file}.old" - FileUtils.mv "#{version_file}.new", version_file - else - raise ArgumentError, "Unepexeted pre string: #{pre}" + { pre: "#{match[1]}#{match[2].to_i + 1}" } end end end diff --git a/lib/net/ssh/version.rb b/lib/net/ssh/version.rb index 3755ca7..e4bb306 100644 --- a/lib/net/ssh/version.rb +++ b/lib/net/ssh/version.rb @@ -56,7 +56,7 @@ module Net # The prerelease component of this version of the Net::SSH library # nil allowed - PRE = "beta2" + PRE = nil # The current version of the Net::SSH library as a Version instance CURRENT = new(*[MAJOR, MINOR, TINY, PRE].compact) -- cgit v1.2.1