From f44bb8248251fffea6b600c48c279f7557787f63 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Thu, 24 Nov 2022 18:03:22 +0100 Subject: [PATCH 01/22] Chore: Update project metadata --- crate_ruby.gemspec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/crate_ruby.gemspec b/crate_ruby.gemspec index 5a98693..4ce29cb 100644 --- a/crate_ruby.gemspec +++ b/crate_ruby.gemspec @@ -29,9 +29,9 @@ Gem::Specification.new do |spec| spec.version = CrateRuby::VERSION spec.authors = ['Christoph Klocker', 'CRATE Technology GmbH'] spec.email = ['office@crate.io'] - spec.summary = 'A simple interface for the Crate.IO database.' - spec.description = 'A Ruby interface for Crate.IO. Put your data to work. Simply.' - spec.homepage = 'http://crate.io' + spec.summary = 'CrateDB HTTP client library for Ruby' + spec.description = 'A Ruby interface for CrateDB featuring query support, DDL command shortcuts, and support for BLOB tables' + spec.homepage = 'https://crate.io' spec.license = 'Apache-2.0' spec.required_ruby_version = '>= 2.6' From 61280e2b47f6d78668f70477afce6927755feaea Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Thu, 24 Nov 2022 18:03:40 +0100 Subject: [PATCH 02/22] Chore: Update Gemfile.lock --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 408be8e..c795060 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - crate_ruby (0.2.0) + crate_ruby (0.2.1) GEM remote: https://rubygems.org/ From 5704c6991038073a4947be490c648236689b5ac7 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Thu, 24 Nov 2022 18:04:31 +0100 Subject: [PATCH 03/22] Fix `devtools/create_tag.sh` Where `history.txt` was used beforehand, there is now `CHANGES.rst`, also having a different format. --- devtools/create_tag.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/devtools/create_tag.sh b/devtools/create_tag.sh index 39ef751..4cf0781 100755 --- a/devtools/create_tag.sh +++ b/devtools/create_tag.sh @@ -62,10 +62,10 @@ then fi # check if VERSION is in head of CHANGES.txt -REV_NOTE=`grep "=== $VERSION" history.txt` +REV_NOTE=`grep "$VERSION" CHANGES.rst` if [ -z "$REV_NOTE" ] then - echo "No notes for revision $VERSION found in history.txt" + echo "No notes for revision $VERSION found in CHANGES.rst" echo "Aborting." exit -1 fi From f7149c595f1e86233433306d7e791cca173673ff Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Thu, 24 Nov 2022 18:47:37 +0100 Subject: [PATCH 04/22] Chore: More updates to project metadata --- crate_ruby.gemspec | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/crate_ruby.gemspec b/crate_ruby.gemspec index 4ce29cb..eec00dd 100644 --- a/crate_ruby.gemspec +++ b/crate_ruby.gemspec @@ -35,10 +35,26 @@ Gem::Specification.new do |spec| spec.license = 'Apache-2.0' spec.required_ruby_version = '>= 2.6' - spec.files = `git ls-files -z`.split("\x0") + spec.files = Dir['lib/**/*'] spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) } spec.test_files = spec.files.grep(%r{^(test|spec|features)/}) - spec.require_paths = ['lib'] + spec.require_paths = %w[lib] + spec.extra_rdoc_files = Dir['README.rst', 'CHANGES.rst', 'LICENSE', 'NOTICE'] + spec.rdoc_options += [ + '--title', 'CrateDB HTTP client library for Ruby', + '--main', 'README.rst', + '--line-numbers', + '--inline-source', + '--quiet' + ] + + spec.metadata = { + 'bug_tracker_uri' => 'https://github.com/crate/crate_ruby/issues', + 'changelog_uri' => 'https://github.com/crate/crate_ruby/blob/main/CHANGES.rst', + 'documentation_uri' => 'https://www.rubydoc.info/gems/crate_ruby/0.2.0', + 'homepage_uri' => spec.homepage, + 'source_code_uri' => 'https://github.com/crate/crate_ruby' + } spec.add_development_dependency 'os' spec.add_development_dependency 'rake' From 94a9d1b3a2a0a88a2552541af03cec6b05f8c94a Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Thu, 24 Nov 2022 18:48:38 +0100 Subject: [PATCH 05/22] Chore: Remove badge for "Code Climate" --- README.rst | 4 ---- 1 file changed, 4 deletions(-) diff --git a/README.rst b/README.rst index fd47335..8c71ac1 100644 --- a/README.rst +++ b/README.rst @@ -6,10 +6,6 @@ CrateDB Ruby Client :target: https://github.com/crate/crate_ruby/actions?workflow=Tests :alt: Build Status -.. image:: https://codeclimate.com/github/crate/crate_ruby.png - :target: https://codeclimate.com/github/crate/crate_ruby - :alt: Code Climate - .. image:: https://badge.fury.io/rb/crate_ruby.svg :target: https://rubygems.org/gems/crate_ruby :alt: Gem Version From a5edb12a79e4c43aeeddd338b8941be5881052d6 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Thu, 24 Nov 2022 18:53:28 +0100 Subject: [PATCH 06/22] Chore: Update company name (Crate.IO GmbH) --- crate_ruby.gemspec | 4 ++-- lib/crate_ruby.rb | 2 +- lib/crate_ruby/client.rb | 2 +- lib/crate_ruby/error.rb | 2 +- lib/crate_ruby/result_set.rb | 2 +- lib/crate_ruby/version.rb | 2 +- spec/bootstrap.rb | 2 +- spec/crate_ruby/client_spec.rb | 2 +- spec/crate_ruby/result_set_spec.rb | 2 +- spec/spec_helper.rb | 2 +- spec/support/test_cluster.rb | 2 +- 11 files changed, 12 insertions(+), 12 deletions(-) diff --git a/crate_ruby.gemspec b/crate_ruby.gemspec index eec00dd..674d913 100644 --- a/crate_ruby.gemspec +++ b/crate_ruby.gemspec @@ -1,7 +1,7 @@ # frozen_string_literal: true # -# Licensed to CRATE Technology GmbH ("Crate") under one or more contributor +# Licensed to Crate.IO GmbH ("Crate") under one or more contributor # license agreements. See the NOTICE file distributed with this work for # additional information regarding copyright ownership. Crate licenses # this file to you under the Apache License, Version 2.0 (the "License"); @@ -27,7 +27,7 @@ require 'crate_ruby/version' Gem::Specification.new do |spec| spec.name = 'crate_ruby' spec.version = CrateRuby::VERSION - spec.authors = ['Christoph Klocker', 'CRATE Technology GmbH'] + spec.authors = ['Christoph Klocker', 'Crate.IO GmbH'] spec.email = ['office@crate.io'] spec.summary = 'CrateDB HTTP client library for Ruby' spec.description = 'A Ruby interface for CrateDB featuring query support, DDL command shortcuts, and support for BLOB tables' diff --git a/lib/crate_ruby.rb b/lib/crate_ruby.rb index c366d34..5371901 100644 --- a/lib/crate_ruby.rb +++ b/lib/crate_ruby.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true # -# Licensed to CRATE Technology GmbH ("Crate") under one or more contributor +# Licensed to Crate.IO GmbH ("Crate") under one or more contributor # license agreements. See the NOTICE file distributed with this work for # additional information regarding copyright ownership. Crate licenses # this file to you under the Apache License, Version 2.0 (the "License"); diff --git a/lib/crate_ruby/client.rb b/lib/crate_ruby/client.rb index b532c2d..75b7d42 100644 --- a/lib/crate_ruby/client.rb +++ b/lib/crate_ruby/client.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true # -# Licensed to CRATE Technology GmbH ("Crate") under one or more contributor +# Licensed to Crate.IO GmbH ("Crate") under one or more contributor # license agreements. See the NOTICE file distributed with this work for # additional information regarding copyright ownership. Crate licenses # this file to you under the Apache License, Version 2.0 (the "License"); diff --git a/lib/crate_ruby/error.rb b/lib/crate_ruby/error.rb index c9b0b7e..f07f2ae 100644 --- a/lib/crate_ruby/error.rb +++ b/lib/crate_ruby/error.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true # -# Licensed to CRATE Technology GmbH ("Crate") under one or more contributor +# Licensed to Crate.IO GmbH ("Crate") under one or more contributor # license agreements. See the NOTICE file distributed with this work for # additional information regarding copyright ownership. Crate licenses # this file to you under the Apache License, Version 2.0 (the "License"); diff --git a/lib/crate_ruby/result_set.rb b/lib/crate_ruby/result_set.rb index 8b88ab2..5d4827b 100644 --- a/lib/crate_ruby/result_set.rb +++ b/lib/crate_ruby/result_set.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true # -# Licensed to CRATE Technology GmbH ("Crate") under one or more contributor +# Licensed to Crate.IO GmbH ("Crate") under one or more contributor # license agreements. See the NOTICE file distributed with this work for # additional information regarding copyright ownership. Crate licenses # this file to you under the Apache License, Version 2.0 (the "License"); diff --git a/lib/crate_ruby/version.rb b/lib/crate_ruby/version.rb index 4db729c..28ee2ee 100644 --- a/lib/crate_ruby/version.rb +++ b/lib/crate_ruby/version.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true # -# Licensed to CRATE Technology GmbH ("Crate") under one or more contributor +# Licensed to Crate.IO GmbH ("Crate") under one or more contributor # license agreements. See the NOTICE file distributed with this work for # additional information regarding copyright ownership. Crate licenses # this file to you under the Apache License, Version 2.0 (the "License"); diff --git a/spec/bootstrap.rb b/spec/bootstrap.rb index de17304..e7eab94 100755 --- a/spec/bootstrap.rb +++ b/spec/bootstrap.rb @@ -2,7 +2,7 @@ # frozen_string_literal: true # -# Licensed to CRATE Technology GmbH ("Crate") under one or more contributor +# Licensed to Crate.IO GmbH ("Crate") under one or more contributor # license agreements. See the NOTICE file distributed with this work for # additional information regarding copyright ownership. Crate licenses # this file to you under the Apache License, Version 2.0 (the "License"); diff --git a/spec/crate_ruby/client_spec.rb b/spec/crate_ruby/client_spec.rb index 8810c0f..1ea93d1 100644 --- a/spec/crate_ruby/client_spec.rb +++ b/spec/crate_ruby/client_spec.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true # -# Licensed to CRATE Technology GmbH ("Crate") under one or more contributor +# Licensed to Crate.IO GmbH ("Crate") under one or more contributor # license agreements. See the NOTICE file distributed with this work for # additional information regarding copyright ownership. Crate licenses # this file to you under the Apache License, Version 2.0 (the "License"); diff --git a/spec/crate_ruby/result_set_spec.rb b/spec/crate_ruby/result_set_spec.rb index 5858402..e77e64e 100644 --- a/spec/crate_ruby/result_set_spec.rb +++ b/spec/crate_ruby/result_set_spec.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true # -# Licensed to CRATE Technology GmbH ("Crate") under one or more contributor +# Licensed to Crate.IO GmbH ("Crate") under one or more contributor # license agreements. See the NOTICE file distributed with this work for # additional information regarding copyright ownership. Crate licenses # this file to you under the Apache License, Version 2.0 (the "License"); diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 890accb..495debc 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true # -# Licensed to CRATE Technology GmbH ("Crate") under one or more contributor +# Licensed to Crate.IO GmbH ("Crate") under one or more contributor # license agreements. See the NOTICE file distributed with this work for # additional information regarding copyright ownership. Crate licenses # this file to you under the Apache License, Version 2.0 (the "License"); diff --git a/spec/support/test_cluster.rb b/spec/support/test_cluster.rb index b06b29f..31adc87 100755 --- a/spec/support/test_cluster.rb +++ b/spec/support/test_cluster.rb @@ -2,7 +2,7 @@ # frozen_string_literal: true # -# Licensed to CRATE Technology GmbH ("Crate") under one or more contributor +# Licensed to Crate.IO GmbH ("Crate") under one or more contributor # license agreements. See the NOTICE file distributed with this work for # additional information regarding copyright ownership. Crate licenses # this file to you under the Apache License, Version 2.0 (the "License"); From 221d960812efcc22c9f50a61b892e12b8841fa17 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 25 Nov 2022 16:20:45 +0100 Subject: [PATCH 07/22] Chore: Fix `documentation_uri` in project metadata --- crate_ruby.gemspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crate_ruby.gemspec b/crate_ruby.gemspec index 674d913..da4e087 100644 --- a/crate_ruby.gemspec +++ b/crate_ruby.gemspec @@ -51,7 +51,7 @@ Gem::Specification.new do |spec| spec.metadata = { 'bug_tracker_uri' => 'https://github.com/crate/crate_ruby/issues', 'changelog_uri' => 'https://github.com/crate/crate_ruby/blob/main/CHANGES.rst', - 'documentation_uri' => 'https://www.rubydoc.info/gems/crate_ruby/0.2.0', + 'documentation_uri' => 'https://www.rubydoc.info/gems/crate_ruby', 'homepage_uri' => spec.homepage, 'source_code_uri' => 'https://github.com/crate/crate_ruby' } From 456933a2de7b645e4ae60277704e4fd7c08d48dc Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 25 Nov 2022 16:21:12 +0100 Subject: [PATCH 08/22] Chore: Add `bundler` as development dependency --- Gemfile.lock | 1 + crate_ruby.gemspec | 1 + 2 files changed, 2 insertions(+) diff --git a/Gemfile.lock b/Gemfile.lock index c795060..170a8f4 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -54,6 +54,7 @@ PLATFORMS x86_64-darwin-20 DEPENDENCIES + bundler crate_ruby! os rake diff --git a/crate_ruby.gemspec b/crate_ruby.gemspec index da4e087..120ec08 100644 --- a/crate_ruby.gemspec +++ b/crate_ruby.gemspec @@ -56,6 +56,7 @@ Gem::Specification.new do |spec| 'source_code_uri' => 'https://github.com/crate/crate_ruby' } + spec.add_development_dependency 'bundler' spec.add_development_dependency 'os' spec.add_development_dependency 'rake' spec.add_development_dependency 'rspec', '~> 3.10' From 660f06610333c2ff18f1ae31e8d717e16449a472 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Wed, 30 Nov 2022 14:04:30 +0100 Subject: [PATCH 09/22] CI: Re-enable testing on Ruby 2.4 and 2.5 It is currently needed to support `activerecord-crate-adapter`. --- .github/workflows/tests.yml | 2 +- crate_ruby.gemspec | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 9459bf9..a2d0c62 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -10,7 +10,7 @@ jobs: strategy: matrix: os: [ ubuntu-latest, macos-latest ] # , windows-latest ] - ruby-version: [ "2.6", "2.7", "3.0", "3.1" ] + ruby-version: [ "2.4", "2.5", "2.6", "2.7", "3.0", "3.1" ] name: Ruby ${{ matrix.ruby-version }} on OS ${{ matrix.os }} steps: diff --git a/crate_ruby.gemspec b/crate_ruby.gemspec index 120ec08..c3f2a12 100644 --- a/crate_ruby.gemspec +++ b/crate_ruby.gemspec @@ -33,7 +33,7 @@ Gem::Specification.new do |spec| spec.description = 'A Ruby interface for CrateDB featuring query support, DDL command shortcuts, and support for BLOB tables' spec.homepage = 'https://crate.io' spec.license = 'Apache-2.0' - spec.required_ruby_version = '>= 2.6' + spec.required_ruby_version = '>= 2.4' spec.files = Dir['lib/**/*'] spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) } From 3a44fada495a386312a6a1eb26cd06d5a4575d5d Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Wed, 30 Nov 2022 14:08:23 +0100 Subject: [PATCH 10/22] CI: Downgrade to RuboCop 1.12 to support Ruby 2.4 --- .rubocop.yml | 1 + Gemfile.lock | 20 ++++++++++---------- crate_ruby.gemspec | 2 +- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 0f08728..3240022 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -4,3 +4,4 @@ require: rubocop-rspec AllCops: NewCops: enable + TargetRubyVersion: 2.4 diff --git a/Gemfile.lock b/Gemfile.lock index 170a8f4..03a9d95 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -9,12 +9,12 @@ GEM ast (2.4.2) diff-lcs (1.4.4) os (1.1.1) - parallel (1.20.1) - parser (3.0.1.1) + parallel (1.22.1) + parser (3.1.3.0) ast (~> 2.4.1) - rainbow (3.0.0) + rainbow (3.1.1) rake (13.0.3) - regexp_parser (2.1.1) + regexp_parser (2.6.1) rexml (3.2.5) rspec (3.10.0) rspec-core (~> 3.10.0) @@ -29,24 +29,24 @@ GEM diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.10.0) rspec-support (3.10.2) - rubocop (1.14.0) + rubocop (1.12.1) parallel (~> 1.10) parser (>= 3.0.0.0) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml - rubocop-ast (>= 1.5.0, < 2.0) + rubocop-ast (>= 1.2.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 1.4.0, < 3.0) - rubocop-ast (1.5.0) - parser (>= 3.0.1.1) + rubocop-ast (1.23.0) + parser (>= 3.1.1.0) rubocop-rake (0.5.1) rubocop rubocop-rspec (2.3.0) rubocop (~> 1.0) rubocop-ast (>= 1.1.0) ruby-progressbar (1.11.0) - unicode-display_width (2.0.0) + unicode-display_width (2.3.0) PLATFORMS x86_64-darwin-17 @@ -59,7 +59,7 @@ DEPENDENCIES os rake rspec (~> 3.10) - rubocop + rubocop (< 1.13) rubocop-rake rubocop-rspec diff --git a/crate_ruby.gemspec b/crate_ruby.gemspec index c3f2a12..5ca8343 100644 --- a/crate_ruby.gemspec +++ b/crate_ruby.gemspec @@ -60,7 +60,7 @@ Gem::Specification.new do |spec| spec.add_development_dependency 'os' spec.add_development_dependency 'rake' spec.add_development_dependency 'rspec', '~> 3.10' - spec.add_development_dependency 'rubocop' + spec.add_development_dependency 'rubocop', '< 1.13' spec.add_development_dependency 'rubocop-rake' spec.add_development_dependency 'rubocop-rspec' end From 70cd49aa4483631e4a67e7bfc2c78e0d96bd5f9a Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Tue, 6 Dec 2022 19:28:50 +0100 Subject: [PATCH 11/22] Update NOTICE file --- NOTICE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NOTICE b/NOTICE index e7b86fa..fc53e60 100644 --- a/NOTICE +++ b/NOTICE @@ -1,5 +1,5 @@ CrateDB Ruby -Copyright 2013-2018 Crate.IO GmbH ("Crate") +Copyright 2013-2022 Crate.IO GmbH ("Crate") Licensed to Crate.IO GmbH (referred to in this notice as "Crate") under one or From b101e52181de40865e0c736787e5a8ce50a8f491 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Tue, 6 Dec 2022 17:05:07 +0100 Subject: [PATCH 12/22] Improve README and project description --- README.rst | 28 ++++++++++++++++++++++++---- crate_ruby.gemspec | 2 +- 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/README.rst b/README.rst index 8c71ac1..a5fc3b8 100644 --- a/README.rst +++ b/README.rst @@ -17,7 +17,12 @@ CrateDB Ruby Client | -A Ruby client library for CrateDB_. +A Ruby client library for the CrateDB HTTP interface. + +- Query execution support. +- DDL command and schema introspection shortcuts. +- Support for BLOB tables. +- Foundation for the `activerecord-crate-adapter`_. ************* @@ -31,7 +36,7 @@ You will need Ruby 2.0 or greater. Installation ************ -The CrateDB Ruby client is available as a Ruby gem_. +The CrateDB Ruby client is available on RubyGems.org, see `crate_ruby on RubyGems.org`_. To use it, add this line to your application's ``Gemfile``:: @@ -52,13 +57,13 @@ Set up the client. require 'crate_ruby' - client = CrateRuby::Client.new + client = CrateRuby::Client.new() Execute SQL queries. .. code:: ruby - result = client.execute("Select * from posts") + result = client.execute("SELECT * FROM posts") => # result.each do |row| @@ -118,6 +123,15 @@ SSL can be enabled. CrateRuby::Client.new(['localhost:4200'], ssl: true) +***** +Notes +***** + +See also `CrateDB examples for Ruby`_ for a basic example program, which +exercises both the `crate_ruby`_ driver, as well as Ruby's canonical `pg`_ +driver. + + ************ Contributing ************ @@ -136,9 +150,15 @@ Looking for more help? - Check out our `support channels`_ + +.. _activerecord-crate-adapter: https://github.com/crate/activerecord-crate-adapter .. _contribution docs: CONTRIBUTING.rst .. _Crate.IO GmbH: https://crate.io .. _CrateDB: https://github.com/crate/crate +.. _CrateDB examples for Ruby: https://github.com/crate/cratedb-examples/tree/main/by-language/ruby +.. _crate_ruby: https://rubygems.org/gems/crate_ruby +.. _crate_ruby on RubyGems.org: https://rubygems.org/gems/crate_ruby .. _developer docs: DEVELOP.rst .. _gem: https://rubygems.org/ +.. _pg: https://rubygems.org/gems/pg .. _support channels: https://crate.io/support/ diff --git a/crate_ruby.gemspec b/crate_ruby.gemspec index 5ca8343..c872941 100644 --- a/crate_ruby.gemspec +++ b/crate_ruby.gemspec @@ -30,7 +30,7 @@ Gem::Specification.new do |spec| spec.authors = ['Christoph Klocker', 'Crate.IO GmbH'] spec.email = ['office@crate.io'] spec.summary = 'CrateDB HTTP client library for Ruby' - spec.description = 'A Ruby interface for CrateDB featuring query support, DDL command shortcuts, and support for BLOB tables' + spec.description = 'A Ruby library for the CrateDB HTTP interface with query support, DDL command and schema introspection shortcuts, and support for BLOB tables.' spec.homepage = 'https://crate.io' spec.license = 'Apache-2.0' spec.required_ruby_version = '>= 2.4' From 5907f2102b1163e239cf02976db6f0ed472b7fa8 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Wed, 4 Jan 2023 00:46:24 +0100 Subject: [PATCH 13/22] CI: Add Ruby 3.2 to test matrix Ruby 3.2.0 has been released on 25 Dec 2022. --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index a2d0c62..5459820 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -10,7 +10,7 @@ jobs: strategy: matrix: os: [ ubuntu-latest, macos-latest ] # , windows-latest ] - ruby-version: [ "2.4", "2.5", "2.6", "2.7", "3.0", "3.1" ] + ruby-version: [ "2.4", "2.5", "2.6", "2.7", "3.0", "3.1", "3.2" ] name: Ruby ${{ matrix.ruby-version }} on OS ${{ matrix.os }} steps: From 1f5209dac14f36b2740461cf173aee778317d150 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Wed, 4 Jan 2023 00:59:31 +0100 Subject: [PATCH 14/22] CI: Downgrade to `bundler < 2.4` More recent versions need Ruby >= 2.6.0. --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 5459820..4cd01e8 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -40,7 +40,7 @@ jobs: - name: Bundle install run: | - gem install bundler + gem install bundler --version '< 2.4' bundle config path vendor/bundle bundle install From 08d91a1a77d1df99516df4f0884886324bc7ac3d Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Mon, 8 Apr 2024 19:05:56 +0200 Subject: [PATCH 15/22] CI: Update GHA configuration --- .github/workflows/tests.yml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 4cd01e8..ee94863 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -1,9 +1,18 @@ name: Tests + on: push: branches: [ main ] - pull_request: - branches: [ main ] + pull_request: ~ + + # Allow job to be triggered manually. + workflow_dispatch: + +# Cancel in-progress jobs when pushing to the same branch. +concurrency: + cancel-in-progress: true + group: ${{ github.workflow }}-${{ github.ref }} + jobs: tests: runs-on: ${{ matrix.os }} From de56caba39ccfd4ba05fe8a1def37839a72a4975 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Mon, 8 Apr 2024 19:06:06 +0200 Subject: [PATCH 16/22] CI: Add Dependabot configuration --- .github/dependabot.yml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..4034d15 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,16 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file + +version: 2 +updates: + - package-ecosystem: "bundler" + directory: "/" + schedule: + interval: "weekly" + + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "monthly" From 4f99c364661b37bb410502a80a4b07d4f6f36d73 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Apr 2024 06:27:48 +0000 Subject: [PATCH 17/22] Bump actions/cache from 3 to 4 Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index ee94863..5798d45 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -34,14 +34,14 @@ jobs: architecture: x64 - name: Caching of CrateDB - uses: actions/cache@v3 + uses: actions/cache@v4 id: cache-cratedb with: path: parts key: cratedb-os=${{ matrix.os }}-${{ hashFiles('spec/bootstrap.rb') }} - name: Caching of Ruby gems - uses: actions/cache@v3 + uses: actions/cache@v4 id: cache-gems with: path: vendor/bundle From e9378ca735bd043da3ce05263044c5282bd478a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Apr 2024 06:27:53 +0000 Subject: [PATCH 18/22] Bump actions/checkout from 3 to 4 Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 5798d45..7c0ba1e 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -25,7 +25,7 @@ jobs: steps: - name: Acquire sources - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup Ruby uses: ruby/setup-ruby@v1 From 26c3fb5f0623e8de6e022d76cd95d8ae99cbd7ce Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Apr 2024 06:28:08 +0000 Subject: [PATCH 19/22] Bump os from 1.1.1 to 1.1.4 Bumps [os](https://github.com/rdp/os) from 1.1.1 to 1.1.4. - [Changelog](https://github.com/rdp/os/blob/master/CHANGELOG.md) - [Commits](https://github.com/rdp/os/commits/v1.1.4) --- updated-dependencies: - dependency-name: os dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 03a9d95..e9a08b6 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -8,7 +8,7 @@ GEM specs: ast (2.4.2) diff-lcs (1.4.4) - os (1.1.1) + os (1.1.4) parallel (1.22.1) parser (3.1.3.0) ast (~> 2.4.1) @@ -52,6 +52,7 @@ PLATFORMS x86_64-darwin-17 x86_64-darwin-19 x86_64-darwin-20 + x86_64-linux DEPENDENCIES bundler From 7cb0e4af018f2532c57b464376425df7c054ab7c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Apr 2024 06:28:41 +0000 Subject: [PATCH 20/22] Bump rake from 13.0.3 to 13.2.1 Bumps [rake](https://github.com/ruby/rake) from 13.0.3 to 13.2.1. - [Release notes](https://github.com/ruby/rake/releases) - [Changelog](https://github.com/ruby/rake/blob/master/History.rdoc) - [Commits](https://github.com/ruby/rake/compare/v13.0.3...v13.2.1) --- updated-dependencies: - dependency-name: rake dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index e9a08b6..6719f63 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -13,7 +13,7 @@ GEM parser (3.1.3.0) ast (~> 2.4.1) rainbow (3.1.1) - rake (13.0.3) + rake (13.2.1) regexp_parser (2.6.1) rexml (3.2.5) rspec (3.10.0) From e2a7b3f8a029dfab0d799115a8ec0568cf279b59 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Fri, 17 Jan 2025 12:14:10 +0100 Subject: [PATCH 21/22] Chore: Fix CI to use previous runners, for supporting older Ruby --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 7c0ba1e..d124a97 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -18,7 +18,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ ubuntu-latest, macos-latest ] # , windows-latest ] + os: [ "ubuntu-22.04", "macos-13" ] # , windows-latest ] ruby-version: [ "2.4", "2.5", "2.6", "2.7", "3.0", "3.1", "3.2" ] name: Ruby ${{ matrix.ruby-version }} on OS ${{ matrix.os }} From b3d89514b18423f5d760e49519b3d238fe6455f0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 17 Jan 2025 11:19:59 +0000 Subject: [PATCH 22/22] Bump rspec from 3.10.0 to 3.13.0 Bumps [rspec](https://github.com/rspec/rspec-metagem) from 3.10.0 to 3.13.0. - [Commits](https://github.com/rspec/rspec-metagem/compare/v3.10.0...v3.13.0) --- updated-dependencies: - dependency-name: rspec dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 6719f63..7bbc7df 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -7,7 +7,7 @@ GEM remote: https://rubygems.org/ specs: ast (2.4.2) - diff-lcs (1.4.4) + diff-lcs (1.5.1) os (1.1.4) parallel (1.22.1) parser (3.1.3.0) @@ -16,19 +16,19 @@ GEM rake (13.2.1) regexp_parser (2.6.1) rexml (3.2.5) - rspec (3.10.0) - rspec-core (~> 3.10.0) - rspec-expectations (~> 3.10.0) - rspec-mocks (~> 3.10.0) - rspec-core (3.10.1) - rspec-support (~> 3.10.0) - rspec-expectations (3.10.1) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-core (3.13.2) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) - rspec-mocks (3.10.2) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.2) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) - rspec-support (3.10.2) + rspec-support (~> 3.13.0) + rspec-support (3.13.2) rubocop (1.12.1) parallel (~> 1.10) parser (>= 3.0.0.0)