marty 0.5.28 → 0.5.29
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/app/components/marty/form.rb +0 -2
- data/app/components/marty/main_auth_app.rb +0 -1
- data/app/components/marty/report_form.rb +0 -2
- data/app/components/marty/script_form.rb +0 -3
- data/app/models/marty/api_auth.rb +0 -2
- data/app/models/marty/script.rb +0 -2
- data/app/models/marty/user.rb +0 -3
- data/config/routes.rb +0 -2
- data/db/migrate/001_create_marty_scripts.rb +0 -2
- data/db/migrate/019_create_marty_postings.rb +0 -2
- data/db/migrate/091_create_marty_promises.rb +0 -2
- data/db/migrate/095_create_marty_tags.rb +0 -2
- data/db/migrate/098_create_marty_api_auths.rb +0 -2
- data/lib/marty.rb +10 -14
- data/lib/marty/content_handler.rb +0 -2
- data/lib/marty/data_change.rb +0 -2
- data/lib/marty/data_conversion.rb +0 -2
- data/lib/marty/data_exporter.rb +0 -5
- data/lib/marty/data_importer.rb +0 -3
- data/lib/marty/engine.rb +2 -0
- data/lib/marty/migrations.rb +9 -9
- data/lib/marty/monkey.rb +0 -9
- data/lib/marty/relation.rb +0 -2
- data/lib/marty/version.rb +1 -1
- data/lib/marty/xl.rb +5 -3
- data/marty.gemspec +4 -0
- data/spec/features/jobs_dashboard_spec.rb +1 -1
- data/spec/lib/migrations/vw_marty_postings.sql.expected +2 -1
- data/spec/lib/migrations_spec.rb +4 -1
- data/spec/lib/xl_spec.rb +4 -0
- data/spec/spec_helper.rb +2 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0eb409a0b5479f611d8ee7f84c28ee00198af598
|
4
|
+
data.tar.gz: 938c7c8e7d944f883d212800c6944d80c7382755
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4d81bb14296b79c16a5ce0d1b78f85a81d4128210d17b166e87d449aa4dab61a66d1c624584c855a72e6c3fa068dc930d81f86fcfb342224eb44edf4dd891a0b
|
7
|
+
data.tar.gz: 3f58c2706f595e2e0c491c0fedf633f3abf5aa2925623d5d5f3ba30c52f4fa83a3578ef9555f193355dbb1414e6c3f5f38b4d09e775beed0728d2ac0230ed492
|
data/.gitignore
CHANGED
data/app/models/marty/script.rb
CHANGED
data/app/models/marty/user.rb
CHANGED
data/config/routes.rb
CHANGED
data/lib/marty.rb
CHANGED
@@ -1,19 +1,15 @@
|
|
1
1
|
# Do not change order of require, since there are some dependencies
|
2
|
-
#
|
3
|
-
|
2
|
+
#
|
3
|
+
# Do not include anything here that will be properly autoloaded by Rails - This
|
4
|
+
# would be any file that define a properly namespaced module/class as Marty::<filename>
|
5
|
+
# and that don't run code outside of that module/class
|
6
|
+
#
|
7
|
+
# Also note that anything required here will need to require in any classes that
|
8
|
+
# they might be overriding methods in
|
9
|
+
|
4
10
|
require 'marty/engine'
|
5
|
-
require 'marty/
|
11
|
+
require 'marty/railtie'
|
6
12
|
require 'marty/mcfly_query'
|
7
|
-
require 'marty/
|
8
|
-
require 'marty/migrations'
|
9
|
-
require 'marty/data_exporter'
|
10
|
-
require 'marty/xl.rb'
|
11
|
-
require 'marty/data_conversion'
|
12
|
-
require 'marty/data_importer'
|
13
|
-
require 'marty/data_change'
|
14
|
-
require 'marty/relation'
|
13
|
+
require 'marty/monkey'
|
15
14
|
require 'marty/promise_job'
|
16
|
-
require 'marty/promise_proxy'
|
17
|
-
require 'marty/content_handler'
|
18
15
|
require 'marty/lazy_column_loader'
|
19
|
-
require 'marty/version'
|
data/lib/marty/data_change.rb
CHANGED
data/lib/marty/data_exporter.rb
CHANGED
data/lib/marty/data_importer.rb
CHANGED
data/lib/marty/engine.rb
CHANGED
data/lib/marty/migrations.rb
CHANGED
@@ -1,5 +1,3 @@
|
|
1
|
-
require 'digest/md5'
|
2
|
-
|
3
1
|
module Marty::Migrations
|
4
2
|
def tb_prefix
|
5
3
|
"marty_"
|
@@ -73,7 +71,7 @@ module Marty::Migrations
|
|
73
71
|
unique: true)
|
74
72
|
end
|
75
73
|
|
76
|
-
def self.write_view(target_dir, klass, jsons, excludes)
|
74
|
+
def self.write_view(target_dir, target_view, klass, jsons, excludes, extras)
|
77
75
|
colnames = klass.columns_hash.keys
|
78
76
|
user_id_cols = ["user_id", "o_user_id"]
|
79
77
|
excludes += user_id_cols
|
@@ -104,14 +102,16 @@ module Marty::Migrations
|
|
104
102
|
"= #{tn_alias}.id"
|
105
103
|
target_name = c.gsub(/_id$/,'_name')
|
106
104
|
columns.push "#{tn_alias}.name as #{target_name}"
|
105
|
+
extras.select { |(table, column)| table_name == table }.each do
|
106
|
+
|(table, column)|
|
107
|
+
columns.push "#{tn_alias}.#{column} as #{table_name}_#{column}"
|
108
|
+
end
|
107
109
|
else
|
108
110
|
columns.push "main.#{c}"
|
109
111
|
end
|
110
112
|
end
|
111
113
|
end
|
112
|
-
|
113
|
-
file_name = "vw_#{table_name}.sql"
|
114
|
-
File.open(File.join(target_dir,file_name), "w") do |f|
|
114
|
+
File.open(File.join(target_dir, "#{target_view}.sql"), "w") do |f|
|
115
115
|
f.puts <<EOSQL
|
116
116
|
create or replace function f_fixfalse(s text) returns text as $$
|
117
117
|
begin
|
@@ -119,14 +119,14 @@ begin
|
|
119
119
|
end
|
120
120
|
$$ language plpgsql;
|
121
121
|
|
122
|
-
drop view if exists
|
123
|
-
create or replace view
|
122
|
+
drop view if exists #{target_view};
|
123
|
+
create or replace view #{target_view} as
|
124
124
|
select
|
125
125
|
#{columns.join(",\n ")}
|
126
126
|
from #{klass.table_name} main
|
127
127
|
#{joins.join("\n ")};
|
128
128
|
|
129
|
-
grant select on
|
129
|
+
grant select on #{target_view} to public;
|
130
130
|
EOSQL
|
131
131
|
end
|
132
132
|
end
|
data/lib/marty/monkey.rb
CHANGED
@@ -4,15 +4,6 @@
|
|
4
4
|
|
5
5
|
require 'delorean_lang'
|
6
6
|
|
7
|
-
# Very hacky to overwrite delorean's whitelist. But, there's no
|
8
|
-
# better way now.
|
9
|
-
|
10
|
-
Delorean::RUBY_WHITELIST.
|
11
|
-
merge!({
|
12
|
-
})
|
13
|
-
|
14
|
-
######################################################################
|
15
|
-
|
16
7
|
# Be able to access Enums from Delorean
|
17
8
|
class Delorean::BaseModule::BaseClass
|
18
9
|
class << self
|
data/lib/marty/relation.rb
CHANGED
data/lib/marty/version.rb
CHANGED
data/lib/marty/xl.rb
CHANGED
@@ -1,10 +1,12 @@
|
|
1
|
-
require 'axlsx'
|
2
|
-
require 'delorean_lang'
|
3
|
-
|
4
1
|
class Marty::Xl
|
5
2
|
include Delorean::Model
|
6
3
|
|
7
4
|
def self.spreadsheet(worksheets)
|
5
|
+
# hack: axlsx tries to modify its input when sent an empty
|
6
|
+
# array! This fails when we sent it a frozen one => make sure
|
7
|
+
# we sent it an unfozen array.
|
8
|
+
worksheets = [] if worksheets == []
|
9
|
+
|
8
10
|
xl = Marty::Xl.new(worksheets)
|
9
11
|
xl.package
|
10
12
|
end
|
data/marty.gemspec
CHANGED
@@ -16,7 +16,7 @@ describe 'Jobs Dashboard', type: :feature, js: true, capybara: true do
|
|
16
16
|
start_dt: Time.now
|
17
17
|
|
18
18
|
visit "/"
|
19
|
-
all 'span', text: 'Sign in'
|
19
|
+
all 'span', text: 'Sign in', minimum: 1
|
20
20
|
find(ext_button_id('Sign in')).click
|
21
21
|
fill_in 'Login', with: 'marty'
|
22
22
|
fill_in 'Password', with: 'marty'
|
@@ -14,7 +14,8 @@ select
|
|
14
14
|
main.created_dt,
|
15
15
|
main.obsoleted_dt,
|
16
16
|
main.name,
|
17
|
-
marty_posting_types1.name as posting_type_name
|
17
|
+
marty_posting_types1.name as posting_type_name,
|
18
|
+
marty_posting_types1.id as marty_posting_types_id
|
18
19
|
from marty_postings main
|
19
20
|
join marty_users u on main.user_id = u.id
|
20
21
|
left join marty_users ou on main.o_user_id = ou.id
|
data/spec/lib/migrations_spec.rb
CHANGED
@@ -4,7 +4,10 @@ module Marty
|
|
4
4
|
describe "Migrations" do
|
5
5
|
it "writes db views correctly" do
|
6
6
|
tdir = File.dirname(__FILE__) + "/migrations/"
|
7
|
-
Marty::Migrations.write_view(tdir,
|
7
|
+
Marty::Migrations.write_view(tdir,
|
8
|
+
'vw_marty_postings',
|
9
|
+
Marty::Posting, {}, ["comment"],
|
10
|
+
[["marty_posting_types", "id"]])
|
8
11
|
filename = "vw_marty_postings.sql"
|
9
12
|
genfile = File.join(tdir,filename)
|
10
13
|
generated = File.read(genfile)
|
data/spec/lib/xl_spec.rb
CHANGED
@@ -195,4 +195,8 @@ describe Marty::Xl do
|
|
195
195
|
["", "", "", "", "", "text", 72, 4, 75, 6, 78]
|
196
196
|
end
|
197
197
|
|
198
|
+
it "should not raise an exception when given an empty, frozen arg" do
|
199
|
+
data = [].freeze
|
200
|
+
expect { Marty::Xl.spreadsheet(data).to_stream.read }.to_not raise_error
|
201
|
+
end
|
198
202
|
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: marty
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.29
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Arman Bostani
|
@@ -14,7 +14,7 @@ authors:
|
|
14
14
|
autorequire:
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
|
-
date: 2016-02-
|
17
|
+
date: 2016-02-18 00:00:00.000000000 Z
|
18
18
|
dependencies:
|
19
19
|
- !ruby/object:Gem::Dependency
|
20
20
|
name: pg
|
@@ -576,3 +576,4 @@ signing_key:
|
|
576
576
|
specification_version: 4
|
577
577
|
summary: A framework for working with versioned data
|
578
578
|
test_files: []
|
579
|
+
has_rdoc:
|