julia_builder 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dc26ca309e37cc0550fd6e99cd250bf040fee08b
4
- data.tar.gz: 2df434eb9b5b10cb76c57b6b266886d027645578
3
+ metadata.gz: 808abf3fd681906bfc3e92b9bd2e529ff48d10f9
4
+ data.tar.gz: 1252a2784930125260636e9989b1f445567fd0ed
5
5
  SHA512:
6
- metadata.gz: eb72e509d2ad45bddda764e1cbbff64f3b8c0322dcb3598785a0430433515b1cc487504661f8af97eca4cc7a50e88a6828cd63696ce0a16ebf25aeec86bddb4f
7
- data.tar.gz: add679e4e79e00ab393f373e3d8198c8b1c97b92e4df326a24d0bb5723502a5508f233621135fde0815cd85dc452ae39c3c0fa90f6c6615b0a896ba1e011b430
6
+ metadata.gz: 1b143da4a72d4a15a87a62d1ed40b1b5bf6a1bc71ccb43c390e3defa3053a1b71c5f23fa11644a389a29f985f8b485e174fc12c2b18441f2d0a0d39b75937898
7
+ data.tar.gz: 1128c346625e9ba6da0e24e71aaeb46a024d2a29e6ae6fe91383030b9d4d256dbc816867af9289c004d39a4339e0654458f9ed9be3881961eeffe5c0e5de2bf5
data/.travis.yml CHANGED
@@ -1,6 +1,7 @@
1
1
  language: ruby
2
2
  rvm:
3
3
  - 2.2.2
4
+ - jruby
4
5
  before_install: gem install bundler -v 1.10.6
5
6
  addons:
6
7
  code_climate:
data/CHANGELOG.md ADDED
@@ -0,0 +1,7 @@
1
+ # Julia Builder changes
2
+
3
+ 0.1.5
4
+ -----------
5
+
6
+ - Speficy ruby 1.9+ as dependency
7
+ - Add `columns` method to set up many columns at once
data/Gemfile CHANGED
@@ -3,5 +3,5 @@ source 'https://rubygems.org'
3
3
  # Specify your gem's dependencies in julia.gemspec
4
4
  gemspec
5
5
 
6
- gem 'pry-byebug'
7
6
  gem "codeclimate-test-reporter", group: :test, require: nil
7
+ gem 'pry'
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # Julia Builder
2
+ [![Gem Version](https://badge.fury.io/rb/julia_builder.svg)](https://badge.fury.io/rb/julia_builder)
2
3
  [![Build Status](https://travis-ci.org/stevenbarragan/julia_builder.svg?branch=master)](https://travis-ci.org/stevenbarragan/julia_builder)
4
+ [![Code Climate](https://codeclimate.com/github/stevenbarragan/julia_builder/badges/gpa.svg)](https://codeclimate.com/github/stevenbarragan/julia_builder)
3
5
  [![Test Coverage](https://codeclimate.com/github/stevenbarragan/julia_builder/badges/coverage.svg)](https://codeclimate.com/github/stevenbarragan/julia_builder/coverage)
4
6
 
5
7
  Julia helps you out to create flexible builders to easily export your queries to csv (for now).
@@ -40,6 +42,9 @@ require 'julia'
40
42
  column :name
41
43
  # header equals 'name', value will be `user.name`
42
44
 
45
+ # specify many columns at once
46
+ columns :name, :lastname, :dob
47
+
43
48
  # when you need to do some extra work on the value you can pass a proc.
44
49
  column 'Full name', -> { "#{ name.capitalize } #{ last_name.capitalize }" }
45
50
 
data/julia.gemspec CHANGED
@@ -19,9 +19,12 @@ Gem::Specification.new do |spec|
19
19
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
20
  spec.require_paths = ["lib"]
21
21
 
22
+ spec.required_ruby_version = '>= 1.9'
23
+
22
24
  spec.add_development_dependency "bundler", "~> 1.10"
23
25
  spec.add_development_dependency "rake", "~> 10.0"
24
26
  spec.add_development_dependency "rspec"
25
27
  spec.add_development_dependency "activerecord"
26
- spec.add_development_dependency "sqlite3"
28
+ spec.add_development_dependency "sqlite3" unless RUBY_PLATFORM == "java"
29
+ spec.add_development_dependency "activerecord-jdbcsqlite3-adapter" if RUBY_PLATFORM == "java"
27
30
  end
data/lib/julia/builder.rb CHANGED
@@ -9,19 +9,25 @@ module Julia
9
9
  end
10
10
 
11
11
  def self.column(keyname, action = nil, &block)
12
- self.columns[keyname] = Action.new(keyname, action, &block)
12
+ columns_config[keyname] = Action.new(keyname, action, &block)
13
13
  end
14
14
 
15
- def self.columns
16
- @columns ||= {}
15
+ def self.columns(*args)
16
+ args.each do |key|
17
+ column(key)
18
+ end
19
+ end
20
+
21
+ def self.columns_config
22
+ @columns_config ||= {}
17
23
  end
18
24
 
19
25
  def build
20
26
  CSV.generate(csv_options) do |csv|
21
- csv << columns.keys
27
+ csv << columns_config.keys
22
28
 
23
29
  collection.each do |record|
24
- csv << columns.values.map do |action|
30
+ csv << columns_config.values.map do |action|
25
31
  action.get_value(record)
26
32
  end
27
33
  end
@@ -34,8 +40,8 @@ module Julia
34
40
 
35
41
  protected
36
42
 
37
- def columns
38
- self.class.columns
43
+ def columns_config
44
+ self.class.columns_config
39
45
  end
40
46
  end
41
47
  end
data/lib/julia/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Julia
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: julia_builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steven Barragán
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-12-11 00:00:00.000000000 Z
11
+ date: 2016-02-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -91,6 +91,7 @@ files:
91
91
  - ".rspec"
92
92
  - ".ruby-version"
93
93
  - ".travis.yml"
94
+ - CHANGELOG.md
94
95
  - CODE_OF_CONDUCT.md
95
96
  - Gemfile
96
97
  - LICENSE.txt
@@ -116,7 +117,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
116
117
  requirements:
117
118
  - - ">="
118
119
  - !ruby/object:Gem::Version
119
- version: '0'
120
+ version: '1.9'
120
121
  required_rubygems_version: !ruby/object:Gem::Requirement
121
122
  requirements:
122
123
  - - ">="