RockSQL 1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/bin/rsql +88 -0
  3. metadata +88 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 5fec2621be1e4a3d15a954c130069ee6a55bea45
4
+ data.tar.gz: 173af3a8419bf5446959cd3276231711d271e3d1
5
+ SHA512:
6
+ metadata.gz: db109bd3948f4f7116d22b2a150427ce6e365442aa16e56c2c37b2526d8b7c418de4e3f1d04dc9d04a8e54a709c7a3cbe9ac9fff62bf9e71500585fd3b73e79d
7
+ data.tar.gz: 1e7197f636cd2039954306b072eab866aa81318dcd74cf71183738879de27428e5e24147e87fe61a0bba96fa8001f25f0b9617c166fa2c9c8d5c7fe970c67593
@@ -0,0 +1,88 @@
1
+ require 'rockset'
2
+ require 'colorize'
3
+ require 'json'
4
+
5
+ $query = ''
6
+
7
+ def input
8
+ begin
9
+ print 'RockSQL-1.0$ '
10
+ begin
11
+ line = gets
12
+ rescue Interrupt
13
+ puts
14
+ input
15
+ end
16
+ line[line[-1]] = ''
17
+
18
+ if line[-1] == ';'
19
+ if $query != ''
20
+ line = ' ' + line
21
+ end
22
+ $query = $query + line
23
+ if $query.include? '"'
24
+ puts 'QueryError'.yellow + ': \'"\' in query'
25
+ input
26
+ end
27
+ Rockset.auth(api_key=ENV['ROCKSET_TOKEN'], server=ENV['ROCKSET_SERVER'] || 'api.rs2.usw2.rockset.com')
28
+ result = Rockset.query($query)
29
+ if result['message']
30
+ if result['type'] == 'QueryError'
31
+ err_location = ' Line: ' + result['line'].to_s + ' Column: ' + result['column'].to_s
32
+ else
33
+ err_location = ''
34
+ end
35
+ err_msg = result['type'].yellow + ': ' + result['message'] + err_location
36
+ puts err_msg
37
+ $last_result = err_msg
38
+ else
39
+ query_results = JSON.pretty_generate result['results']
40
+ puts query_results
41
+ $last_result = query_results
42
+ end
43
+ $last_query = $query
44
+ $query = ''
45
+ elsif line == 'help'
46
+ puts
47
+ puts 'RockSQL: A complete Rockset SQL shell.'.green
48
+ puts 'A complete guide: ' + 'http://gadhagod.github.io/RockSQL'.underline + '.'
49
+ puts
50
+ elsif line == 'clear'
51
+ system 'clear'
52
+ elsif line == 'reset'
53
+ $query = ''
54
+ elsif line == 'exit'
55
+ abort
56
+ elsif line == 'staged'
57
+ puts $query
58
+ elsif line == 'last query'
59
+ puts $last_query
60
+ elsif line == 'last res' || line == 'last result'
61
+ puts $last_result
62
+ elsif line == 'last restage'
63
+ $query = $last_query
64
+ elsif line.start_with? 'last save'
65
+ line.slice! 'last save '
66
+ if line == '' || line == 'last save'
67
+ puts 'InvalidFile'.yellow + ': You need to specify a valid filename'
68
+ input
69
+ end
70
+ File.open(line, 'w') {
71
+ |file| file.write $last_result
72
+ }
73
+ elsif line == ''
74
+ else
75
+ if $query != ''
76
+ line = ' ' + line
77
+ end
78
+ $query = $query + line
79
+ end
80
+ input
81
+ rescue => error
82
+ puts 'RubyError: '.red + error.class.to_s + ': ' + error.message
83
+ $query = ''
84
+ input
85
+ end
86
+ end
87
+
88
+ input
metadata ADDED
@@ -0,0 +1,88 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: RockSQL
3
+ version: !ruby/object:Gem::Version
4
+ version: '1.0'
5
+ platform: ruby
6
+ authors:
7
+ - Aarav Borthakur
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2020-12-24 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rockset
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '='
18
+ - !ruby/object:Gem::Version
19
+ version: 0.0.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '='
25
+ - !ruby/object:Gem::Version
26
+ version: 0.0.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: colorize
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '='
32
+ - !ruby/object:Gem::Version
33
+ version: 0.8.1
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '='
39
+ - !ruby/object:Gem::Version
40
+ version: 0.8.1
41
+ - !ruby/object:Gem::Dependency
42
+ name: json
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '='
46
+ - !ruby/object:Gem::Version
47
+ version: 2.5.1
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '='
53
+ - !ruby/object:Gem::Version
54
+ version: 2.5.1
55
+ description:
56
+ email:
57
+ executables:
58
+ - rsql
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - bin/rsql
63
+ homepage: http://gadhagod.github.io/RockSQL
64
+ licenses:
65
+ - MIT
66
+ metadata:
67
+ GitHub: https://github.com/gadhagod/RockSQL
68
+ post_install_message:
69
+ rdoc_options: []
70
+ require_paths:
71
+ - lib
72
+ required_ruby_version: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ required_rubygems_version: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ requirements: []
83
+ rubyforge_project:
84
+ rubygems_version: 2.5.2.3
85
+ signing_key:
86
+ specification_version: 4
87
+ summary: A complete Rockset SQL shell
88
+ test_files: []