roo 1.11.2 → 1.12.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.
- data/CHANGELOG +26 -1
- data/Gemfile +2 -1
- data/Gemfile.lock +26 -0
- data/README.markdown +82 -62
- data/Rakefile +1 -1
- data/VERSION +1 -1
- data/examples/roo_soap_server.rb +1 -1
- data/lib/roo.rb +28 -10
- data/lib/roo/{generic_spreadsheet.rb → base.rb} +127 -159
- data/lib/roo/csv.rb +28 -30
- data/lib/roo/excel.rb +38 -48
- data/lib/roo/excel2003xml.rb +24 -36
- data/lib/roo/excelx.rb +59 -61
- data/lib/roo/google.rb +36 -59
- data/lib/roo/openoffice.rb +41 -65
- data/lib/roo/roo_rails_helper.rb +2 -1
- data/lib/roo/spreadsheet.rb +17 -8
- data/roo.gemspec +20 -8
- data/spec/fixtures/vcr_cassettes/google_drive.yml +165 -0
- data/spec/fixtures/vcr_cassettes/google_drive_access_token.yml +73 -0
- data/spec/lib/roo/base_spec.rb +7 -0
- data/spec/lib/roo/csv_spec.rb +54 -0
- data/spec/lib/roo/excel_spec.rb +17 -0
- data/spec/lib/roo/excelx_spec.rb +13 -0
- data/spec/lib/roo/google_spec.rb +36 -0
- data/spec/lib/roo/libreoffice_spec.rb +19 -0
- data/spec/lib/roo/openoffice_spec.rb +21 -0
- data/spec/lib/roo/spreadsheet_spec.rb +13 -1
- data/spec/spec_helper.rb +7 -0
- data/test/all_ss.rb +1 -1
- data/test/files/1900_base.xlsx +0 -0
- data/test/files/1904_base.xlsx +0 -0
- data/test/rm_sub_test.rb +1 -1
- data/test/test_generic_spreadsheet.rb +68 -66
- data/test/test_helper.rb +3 -84
- data/test/test_roo.rb +85 -708
- data/website/index.html +16 -16
- data/website/index.txt +42 -42
- metadata +44 -7
- data/TODO +0 -2
data/website/index.html
CHANGED
@@ -95,10 +95,10 @@ Google spreadsheets can be read and written.</p>
|
|
95
95
|
<code>
|
96
96
|
1 require 'rubygems'
|
97
97
|
2 require 'roo'
|
98
|
-
3
|
98
|
+
3
|
99
99
|
4 HOURLY_RATE = 123.45
|
100
|
-
5
|
101
|
-
6 oo =
|
100
|
+
5
|
101
|
+
6 oo = OpenOffice.new("simple_spreadsheet.ods")
|
102
102
|
7 oo.default_sheet = oo.sheets.first
|
103
103
|
8 4.upto(12) do |line|
|
104
104
|
9 date = oo.cell(line,'A')
|
@@ -178,7 +178,7 @@ oo.set_value(row, col, value)
|
|
178
178
|
</pre>
|
179
179
|
<p>There is an example in the examples folder which illustrates write access.</p>
|
180
180
|
<h3>Formulas</h3>
|
181
|
-
<p>Formulas in
|
181
|
+
<p>Formulas in OpenOffice- and Google-Spreadsheets can be handled.</p>
|
182
182
|
<p>oo.<strong>celltype</strong>(row,col) returns :formula if there is a formula in this cell.</p>
|
183
183
|
<p>oo.<strong>formula?</strong>(row,col) returns true if there is a formula</p>
|
184
184
|
<p>oo.<strong>formula</strong>(row,col) returns the formula in this cell in a string variable (like “=<acronym title="[.A1:.M13]"><span class="caps">SUM</span></acronym>”).<br />
|
@@ -224,7 +224,7 @@ oo.to_csv("somefile.txt")
|
|
224
224
|
<p>to write to a file.</p>
|
225
225
|
<h3>Using MS-Excel spreadsheets</h3>
|
226
226
|
<p>You can also access MS-Excel spreadsheat.</p>
|
227
|
-
<p>Replace
|
227
|
+
<p>Replace OpenOffice with <br />
|
228
228
|
<pre><br />
|
229
229
|
<code>oo = Excel.new("simple_spreadsheet.xls").</p>
|
230
230
|
<p></code><br />
|
@@ -282,15 +282,15 @@ export GOOGLE_PASSWORD=“mysecretpassword”
|
|
282
282
|
changed.<br />
|
283
283
|
Say you’re trying to open a spreadsheet file with the extension .xls, which is normally<br />
|
284
284
|
an Excel file <br />
|
285
|
-
with the
|
285
|
+
with the OpenOffice.new() call. This cannot work, if the file is really an excel file – instead <br />
|
286
286
|
you have to open it with the Excel.new() call.</p>
|
287
287
|
<p>Now you’re getting an exception raised. Before it was was only a warning and the<br />
|
288
288
|
access to this file failed.</p>
|
289
|
-
<p>Theorectically you can have a file with the extension .xls which is in fact an
|
290
|
-
<p>It’s possible to open such a file with the
|
289
|
+
<p>Theorectically you can have a file with the extension .xls which is in fact an OpenOffice spreadsheet file.</p>
|
290
|
+
<p>It’s possible to open such a file with the OpenOffice class, but you have have to<br />
|
291
291
|
override the parameter ‘file_warning’ in the new method: <br />
|
292
|
-
‘
|
293
|
-
‘
|
292
|
+
‘OpenOffice.new(’myfile.xls’, false, :warning)’ or<br />
|
293
|
+
‘OpenOffice.new(’myfile.xls’, false, :ignore)’.</p>
|
294
294
|
<p>If you set it to :warning you get a warning if you try to use a spreadsheet file with <br />
|
295
295
|
the ‘false’ extension, but the <br />
|
296
296
|
program will try to handle the file with this class (of course this will fail, if the file<br />
|
@@ -307,18 +307,18 @@ ROO_TMP was introduced in releases >1.1.0.</p>
|
|
307
307
|
<p>You can even read openoffice or excel-spreadsheets from a http-address:<br />
|
308
308
|
<pre><br />
|
309
309
|
<code>oo = Excel.new("http://www.somedomain.com/simple_spreadsheet.xls").
|
310
|
-
oo =
|
310
|
+
oo = OpenOffice.new("http://www.somedomain.com/simple_spreadsheet.ods").
|
311
311
|
</code><br />
|
312
312
|
</pre></p>
|
313
313
|
<p>or a zipped file:<br />
|
314
314
|
<pre><br />
|
315
315
|
<code>oo = Excel.new("http://www.somedomain.com/simple_spreadsheet.xls.zip",:zip).
|
316
|
-
oo =
|
316
|
+
oo = OpenOffice.new("http://www.somedomain.com/simple_spreadsheet.ods.zip",:zip).
|
317
317
|
</code><br />
|
318
318
|
</pre></p>
|
319
319
|
<p>after working with a spreadsheet from the web you have to call <br />
|
320
320
|
<pre><br />
|
321
|
-
<code>oo.remove_tmp
|
321
|
+
<code>oo.remove_tmp
|
322
322
|
</code><br />
|
323
323
|
</pre></p>
|
324
324
|
<p>to delete the temporary local copy of the spreadsheet file. If you don’t call<br />
|
@@ -328,11 +328,11 @@ provide a better solution in the next releases.</p>
|
|
328
328
|
<h3>Remote Access</h3>
|
329
329
|
<p>You can even access your spreadsheet data from a remote machine via <span class="caps">SOAP</span>. The examples directory shows a little example how to do this. If you like, you can extend these functions or restrict the access to certain cells. <br />
|
330
330
|
Remote access with <span class="caps">SOAP</span> is nothing specific to roo, you can do this with every Rub object, but i thought it would nice to give an example what could be done with roo.</p>
|
331
|
-
<h3>Excel spreadsheets /
|
331
|
+
<h3>Excel spreadsheets / OpenOffice spreadsheets / Google spreadsheets with Ruby on Rails</h3>
|
332
332
|
<p>There is a simple helper method to display a spreadsheet at your application page:</p>
|
333
333
|
<ul>
|
334
|
-
<li>in your controller, add “require ‘roo’” and “@rspreadsheet =
|
335
|
-
“@rspreadsheet =
|
334
|
+
<li>in your controller, add “require ‘roo’” and “@rspreadsheet = OpenOffice.new(”numbers1.ods")" or<br />
|
335
|
+
“@rspreadsheet = OpenOffice.new(”http://www.somehost.com/data/numbers1.od s")" to get access to your spreadsheet file</li>
|
336
336
|
<li>use it in any view of your application with “<%= spreadsheet @rspreadsheet, [”Tabelle"] %><br/>" or one of the following formats</li>
|
337
337
|
</ul>
|
338
338
|
<p><img src="Roo_Spreadsheets_Rails.png"></p>
|
data/website/index.txt
CHANGED
@@ -2,26 +2,26 @@ h1. roo
|
|
2
2
|
|
3
3
|
h2. What
|
4
4
|
|
5
|
-
This gem allows you to access the content of
|
5
|
+
This gem allows you to access the content of
|
6
6
|
|
7
7
|
* Open-office spreadsheets (.ods)
|
8
|
-
* Excel spreadsheets (.xls)
|
8
|
+
* Excel spreadsheets (.xls)
|
9
9
|
* Google (online) spreadsheets
|
10
10
|
* Excel's new file format .xlsx
|
11
11
|
|
12
12
|
h2. Supporting this project
|
13
13
|
|
14
|
-
Die Programme dieses Projekts sind kostenlos erhältlich und verwendbar.
|
15
|
-
Du kannst jedoch die weitere Entwicklung dieses Projekts mit einer finanziellen
|
14
|
+
Die Programme dieses Projekts sind kostenlos erhältlich und verwendbar.
|
15
|
+
Du kannst jedoch die weitere Entwicklung dieses Projekts mit einer finanziellen
|
16
16
|
Zuwendung unterstützen (ansonsten müßte ich mich verstärkt anderen Projekten
|
17
17
|
widmen, die mehr finanziellen Ertrag einbringen, damit ich auch morgen noch
|
18
18
|
für meine Katzen das Futter kaufen kann :-)).
|
19
19
|
|
20
|
-
Am bequemsten kannst du per Paypal an die Email-Adresse thopre@gmail.com
|
21
|
-
bezahlen.
|
20
|
+
Am bequemsten kannst du per Paypal an die Email-Adresse thopre@gmail.com
|
21
|
+
bezahlen.
|
22
22
|
Falls du per Überweisung zahlen willst, frage bitte nach meiner Kontoverbindung!
|
23
23
|
|
24
|
-
Ich werde, aufteilt pro Quartal, eine Liste der Spender mit Namen und Betrag,
|
24
|
+
Ich werde, aufteilt pro Quartal, eine Liste der Spender mit Namen und Betrag,
|
25
25
|
sortiert nach Spendenhöhe hier veröffenlichen. Wenn von dir nichts anderes
|
26
26
|
mitgeteilt, werde ich dich nach deinem Namen, soweit aus der Email-Adresse
|
27
27
|
ersichtlich, in der Liste veröffenlichen. Falls etwas anderes gewünscht wird,
|
@@ -60,7 +60,7 @@ Supposed you have created this spreadsheet:
|
|
60
60
|
|
61
61
|
<img src="Screenshot-spreadsheet3.png">
|
62
62
|
|
63
|
-
which includes the amount of work you have done for a customer.
|
63
|
+
which includes the amount of work you have done for a customer.
|
64
64
|
|
65
65
|
You can now process this spreadsheet with the following sample code.
|
66
66
|
|
@@ -68,10 +68,10 @@ You can now process this spreadsheet with the following sample code.
|
|
68
68
|
<code>
|
69
69
|
1 require 'rubygems'
|
70
70
|
2 require 'roo'
|
71
|
-
3
|
71
|
+
3
|
72
72
|
4 HOURLY_RATE = 123.45
|
73
|
-
5
|
74
|
-
6 oo =
|
73
|
+
5
|
74
|
+
6 oo = OpenOffice.new("simple_spreadsheet.ods")
|
75
75
|
7 oo.default_sheet = oo.sheets.first
|
76
76
|
8 4.upto(12) do |line|
|
77
77
|
9 date = oo.cell(line,'A')
|
@@ -104,7 +104,7 @@ which produces this output
|
|
104
104
|
</code>
|
105
105
|
</pre>
|
106
106
|
|
107
|
-
With the methods
|
107
|
+
With the methods
|
108
108
|
|
109
109
|
<code>first_column</code>,
|
110
110
|
<code>last_column</code>,
|
@@ -148,7 +148,7 @@ Date values are returned as type :date and as a Ruby Date object.
|
|
148
148
|
|
149
149
|
Datetime values are returned as type :datetime and as a Ruby DateTime object.
|
150
150
|
|
151
|
-
Percentage are return as type :percentage and as Ruby Float object with the
|
151
|
+
Percentage are return as type :percentage and as Ruby Float object with the
|
152
152
|
range from 0.0 to 1.0.
|
153
153
|
|
154
154
|
Formulas are returned as type :formula - the value of the cell is the computed
|
@@ -170,11 +170,11 @@ oo.set_value(row, col, value)
|
|
170
170
|
</code>
|
171
171
|
</pre>
|
172
172
|
|
173
|
-
There is an example in the examples folder which illustrates write access.
|
173
|
+
There is an example in the examples folder which illustrates write access.
|
174
174
|
|
175
175
|
h3. Formulas
|
176
176
|
|
177
|
-
Formulas in
|
177
|
+
Formulas in OpenOffice- and Google-Spreadsheets can be handled.
|
178
178
|
|
179
179
|
oo.*celltype*(row,col) returns :formula if there is a formula in this cell.
|
180
180
|
|
@@ -184,7 +184,7 @@ oo.*formula*(row,col) returns the formula in this cell in a string variable (lik
|
|
184
184
|
You can do whatever you want with this expression. Please note that the syntax of
|
185
185
|
formulas might vary between different sort of spreadsheets. There is no conversion
|
186
186
|
of the formula syntax.
|
187
|
-
|
187
|
+
|
188
188
|
If there is no formula in this cell nil is returned.
|
189
189
|
|
190
190
|
oo.*cell*(row,col) returns the computed result of the formula (as it was saved in the file, no recalculation is done in this Gem).
|
@@ -201,7 +201,7 @@ oo.*formulas* returns all formulas in the selected spreadsheet in an array like
|
|
201
201
|
|
202
202
|
Each entry consists of the elements row, col, formula.
|
203
203
|
|
204
|
-
Note: oo.*cell*(row,col) is the same for ordinary cells and formulas. So you can use the computated value of a formula. If you have to distinguish if a cell is a formula use #*formula*?
|
204
|
+
Note: oo.*cell*(row,col) is the same for ordinary cells and formulas. So you can use the computated value of a formula. If you have to distinguish if a cell is a formula use #*formula*?
|
205
205
|
|
206
206
|
Please note: formulas in Excel-Spreadsheets cannot be handled (this is another gem, see: "Thanks")
|
207
207
|
|
@@ -244,7 +244,7 @@ h3. Using MS-Excel spreadsheets
|
|
244
244
|
|
245
245
|
You can also access MS-Excel spreadsheat.
|
246
246
|
|
247
|
-
Replace
|
247
|
+
Replace OpenOffice with
|
248
248
|
<pre>
|
249
249
|
<code>oo = Excel.new("simple_spreadsheet.xls").
|
250
250
|
|
@@ -283,28 +283,28 @@ Setting these variables can be done if you add these lines to your
|
|
283
283
|
|
284
284
|
export GOOGLE_MAIL="yourname@gmail.com"
|
285
285
|
export GOOGLE_PASSWORD="mysecretpassword"
|
286
|
-
|
286
|
+
|
287
287
|
This gem does not check if you are allowed to access a specific google spreadsheet. If it's not your own spreadsheet or you are not allowed to read or write to a spreadsheet the behaviour is not defined (but it will not work ;-) ).
|
288
288
|
|
289
|
-
The default behavior at opening a spreadsheet with a certain extension has been
|
289
|
+
The default behavior at opening a spreadsheet with a certain extension has been
|
290
290
|
changed.
|
291
291
|
Say you're trying to open a spreadsheet file with the extension .xls, which is normally
|
292
|
-
an Excel file
|
293
|
-
with the
|
292
|
+
an Excel file
|
293
|
+
with the OpenOffice.new() call. This cannot work, if the file is really an excel file - instead
|
294
294
|
you have to open it with the Excel.new() call.
|
295
295
|
|
296
296
|
Now you're getting an exception raised. Before it was was only a warning and the
|
297
297
|
access to this file failed.
|
298
298
|
|
299
|
-
Theorectically you can have a file with the extension .xls which is in fact an
|
299
|
+
Theorectically you can have a file with the extension .xls which is in fact an OpenOffice spreadsheet file.
|
300
300
|
|
301
|
-
It's possible to open such a file with the
|
302
|
-
override the parameter 'file_warning' in the new method:
|
303
|
-
'
|
304
|
-
'
|
301
|
+
It's possible to open such a file with the OpenOffice class, but you have have to
|
302
|
+
override the parameter 'file_warning' in the new method:
|
303
|
+
'OpenOffice.new('myfile.xls', false, :warning)' or
|
304
|
+
'OpenOffice.new('myfile.xls', false, :ignore)'.
|
305
305
|
|
306
|
-
If you set it to :warning you get a warning if you try to use a spreadsheet file with
|
307
|
-
the 'false' extension, but the
|
306
|
+
If you set it to :warning you get a warning if you try to use a spreadsheet file with
|
307
|
+
the 'false' extension, but the
|
308
308
|
program will try to handle the file with this class (of course this will fail, if the file
|
309
309
|
is really of the false type).
|
310
310
|
|
@@ -315,7 +315,7 @@ Temporary files of this gem are stored in directories which are named with 'oo_'
|
|
315
315
|
a number (the PID of the current process).
|
316
316
|
These directories are created within the current working directory. If you want to
|
317
317
|
use a different directory for temporary files set the environment variable ROO_TMP! (for
|
318
|
-
example "export ROO_TMP=/tmp" in your .bashrc file).
|
318
|
+
example "export ROO_TMP=/tmp" in your .bashrc file).
|
319
319
|
ROO_TMP was introduced in releases >1.1.0.
|
320
320
|
|
321
321
|
h3. Accessing Spreadsheet over the Web
|
@@ -323,40 +323,40 @@ h3. Accessing Spreadsheet over the Web
|
|
323
323
|
You can even read openoffice or excel-spreadsheets from a http-address:
|
324
324
|
<pre>
|
325
325
|
<code>oo = Excel.new("http://www.somedomain.com/simple_spreadsheet.xls").
|
326
|
-
oo =
|
326
|
+
oo = OpenOffice.new("http://www.somedomain.com/simple_spreadsheet.ods").
|
327
327
|
</code>
|
328
328
|
</pre>
|
329
329
|
|
330
330
|
or a zipped file:
|
331
331
|
<pre>
|
332
332
|
<code>oo = Excel.new("http://www.somedomain.com/simple_spreadsheet.xls.zip",:zip).
|
333
|
-
oo =
|
333
|
+
oo = OpenOffice.new("http://www.somedomain.com/simple_spreadsheet.ods.zip",:zip).
|
334
334
|
</code>
|
335
335
|
</pre>
|
336
336
|
|
337
|
-
after working with a spreadsheet from the web you have to call
|
337
|
+
after working with a spreadsheet from the web you have to call
|
338
338
|
<pre>
|
339
|
-
<code>oo.remove_tmp
|
339
|
+
<code>oo.remove_tmp
|
340
340
|
</code>
|
341
341
|
</pre>
|
342
342
|
|
343
343
|
to delete the temporary local copy of the spreadsheet file. If you don't call
|
344
344
|
this method you will have subdirectories names 'oo_xxxxx' which you can remove manually.
|
345
|
-
Calling remove_tmp is not the best solution to clean temporary files - i will
|
345
|
+
Calling remove_tmp is not the best solution to clean temporary files - i will
|
346
346
|
provide a better solution in the next releases.
|
347
347
|
|
348
348
|
|
349
349
|
h3. Remote Access
|
350
350
|
|
351
|
-
You can even access your spreadsheet data from a remote machine via SOAP. The examples directory shows a little example how to do this. If you like, you can extend these functions or restrict the access to certain cells.
|
351
|
+
You can even access your spreadsheet data from a remote machine via SOAP. The examples directory shows a little example how to do this. If you like, you can extend these functions or restrict the access to certain cells.
|
352
352
|
Remote access with SOAP is nothing specific to roo, you can do this with every Rub object, but i thought it would nice to give an example what could be done with roo.
|
353
353
|
|
354
|
-
h3. Excel spreadsheets /
|
354
|
+
h3. Excel spreadsheets / OpenOffice spreadsheets / Google spreadsheets with Ruby on Rails
|
355
355
|
|
356
356
|
There is a simple helper method to display a spreadsheet at your application page:
|
357
357
|
|
358
|
-
* in your controller, add "require 'roo'" and "@rspreadsheet =
|
359
|
-
"@rspreadsheet =
|
358
|
+
* in your controller, add "require 'roo'" and "@rspreadsheet = OpenOffice.new("numbers1.ods")" or
|
359
|
+
"@rspreadsheet = OpenOffice.new("http://www.somehost.com/data/numbers1.od s")" to get access to your spreadsheet file
|
360
360
|
* use it in any view of your application with "<%= spreadsheet @rspreadsheet, ["Tabelle"] %><br/>" or one of the following formats
|
361
361
|
|
362
362
|
<img src="Roo_Spreadsheets_Rails.png">
|
@@ -368,10 +368,10 @@ How do you use roo? What are you doing with roo?
|
|
368
368
|
* The author of this gem uses roo for the generation of weekly reports which are (automatically) sent to his customers (Thomas Preymesser, Homepage: www.thopre.com, Blog: thopre.wordpress.com, email me: thopre@gmail.com)
|
369
369
|
|
370
370
|
|
371
|
-
If you have an interesting application where you use roo then write me a short description of your project and i will publish it here (write, if your email-address should be published or not).
|
371
|
+
If you have an interesting application where you use roo then write me a short description of your project and i will publish it here (write, if your email-address should be published or not).
|
372
372
|
|
373
373
|
Or you can write directly in the project wiki at "http://roo.rubyforge.org/wiki/wiki.pl?Who's_Using_Roo":http://roo.rubyforge.org/wiki/wiki.pl?Who's_Using_Roo
|
374
|
-
|
374
|
+
|
375
375
|
|
376
376
|
If you don't want to publish the details you can also write me an email and state, that it should not be published - i am just curious to hear, where it is used.
|
377
377
|
|
@@ -382,7 +382,7 @@ h2. Documentation
|
|
382
382
|
h2. Tests and test data
|
383
383
|
|
384
384
|
There are many test files within the test directory. If you don't want to run unit tests and don't want the test data you can completely delete the 'test' directory within the hierarchy of this gem.
|
385
|
-
|
385
|
+
|
386
386
|
h2. Feature Requests / Bugs
|
387
387
|
|
388
388
|
Submit Feature Requests and bugs here: "http://rubyforge.org/tracker/?group_id=3729":http://rubyforge.org/tracker/?group_id=3729
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: roo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.12.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2013-
|
14
|
+
date: 2013-08-18 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: spreadsheet
|
@@ -61,6 +61,22 @@ dependencies:
|
|
61
61
|
- - ! '>='
|
62
62
|
- !ruby/object:Gem::Version
|
63
63
|
version: '0'
|
64
|
+
- !ruby/object:Gem::Dependency
|
65
|
+
name: google_drive
|
66
|
+
requirement: !ruby/object:Gem::Requirement
|
67
|
+
none: false
|
68
|
+
requirements:
|
69
|
+
- - ! '>='
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: '0'
|
72
|
+
type: :development
|
73
|
+
prerelease: false
|
74
|
+
version_requirements: !ruby/object:Gem::Requirement
|
75
|
+
none: false
|
76
|
+
requirements:
|
77
|
+
- - ! '>='
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: '0'
|
64
80
|
- !ruby/object:Gem::Dependency
|
65
81
|
name: jeweler
|
66
82
|
requirement: !ruby/object:Gem::Requirement
|
@@ -79,7 +95,7 @@ dependencies:
|
|
79
95
|
version: '0'
|
80
96
|
description: ! 'Roo can access the contents of various spreadsheet files. It can handle
|
81
97
|
|
82
|
-
*
|
98
|
+
* OpenOffice
|
83
99
|
|
84
100
|
* Excel
|
85
101
|
|
@@ -87,7 +103,7 @@ description: ! 'Roo can access the contents of various spreadsheet files. It can
|
|
87
103
|
|
88
104
|
* Excelx
|
89
105
|
|
90
|
-
*
|
106
|
+
* LibreOffice
|
91
107
|
|
92
108
|
* CSV'
|
93
109
|
email: ruby.ruby.ruby.roo@gmail.com
|
@@ -96,7 +112,6 @@ extensions: []
|
|
96
112
|
extra_rdoc_files:
|
97
113
|
- LICENSE
|
98
114
|
- README.markdown
|
99
|
-
- TODO
|
100
115
|
files:
|
101
116
|
- CHANGELOG
|
102
117
|
- Gemfile
|
@@ -104,17 +119,16 @@ files:
|
|
104
119
|
- LICENSE
|
105
120
|
- README.markdown
|
106
121
|
- Rakefile
|
107
|
-
- TODO
|
108
122
|
- VERSION
|
109
123
|
- examples/roo_soap_client.rb
|
110
124
|
- examples/roo_soap_server.rb
|
111
125
|
- examples/write_me.rb
|
112
126
|
- lib/roo.rb
|
127
|
+
- lib/roo/base.rb
|
113
128
|
- lib/roo/csv.rb
|
114
129
|
- lib/roo/excel.rb
|
115
130
|
- lib/roo/excel2003xml.rb
|
116
131
|
- lib/roo/excelx.rb
|
117
|
-
- lib/roo/generic_spreadsheet.rb
|
118
132
|
- lib/roo/google.rb
|
119
133
|
- lib/roo/openoffice.rb
|
120
134
|
- lib/roo/roo_rails_helper.rb
|
@@ -122,13 +136,24 @@ files:
|
|
122
136
|
- lib/roo/worksheet.rb
|
123
137
|
- roo.gemspec
|
124
138
|
- scripts/txt2html
|
139
|
+
- spec/fixtures/vcr_cassettes/google_drive.yml
|
140
|
+
- spec/fixtures/vcr_cassettes/google_drive_access_token.yml
|
141
|
+
- spec/lib/roo/base_spec.rb
|
142
|
+
- spec/lib/roo/csv_spec.rb
|
125
143
|
- spec/lib/roo/excel2003xml_spec.rb
|
144
|
+
- spec/lib/roo/excel_spec.rb
|
126
145
|
- spec/lib/roo/excelx/format_spec.rb
|
146
|
+
- spec/lib/roo/excelx_spec.rb
|
147
|
+
- spec/lib/roo/google_spec.rb
|
148
|
+
- spec/lib/roo/libreoffice_spec.rb
|
149
|
+
- spec/lib/roo/openoffice_spec.rb
|
127
150
|
- spec/lib/roo/spreadsheet_spec.rb
|
128
151
|
- spec/spec_helper.rb
|
129
152
|
- test/all_ss.rb
|
130
153
|
- test/files/1900_base.xls
|
154
|
+
- test/files/1900_base.xlsx
|
131
155
|
- test/files/1904_base.xls
|
156
|
+
- test/files/1904_base.xlsx
|
132
157
|
- test/files/Bibelbund.csv
|
133
158
|
- test/files/Bibelbund.ods
|
134
159
|
- test/files/Bibelbund.xls
|
@@ -263,13 +288,24 @@ signing_key:
|
|
263
288
|
specification_version: 3
|
264
289
|
summary: Roo can access the contents of various spreadsheet files.
|
265
290
|
test_files:
|
291
|
+
- spec/fixtures/vcr_cassettes/google_drive.yml
|
292
|
+
- spec/fixtures/vcr_cassettes/google_drive_access_token.yml
|
293
|
+
- spec/lib/roo/base_spec.rb
|
294
|
+
- spec/lib/roo/csv_spec.rb
|
266
295
|
- spec/lib/roo/excel2003xml_spec.rb
|
296
|
+
- spec/lib/roo/excel_spec.rb
|
267
297
|
- spec/lib/roo/excelx/format_spec.rb
|
298
|
+
- spec/lib/roo/excelx_spec.rb
|
299
|
+
- spec/lib/roo/google_spec.rb
|
300
|
+
- spec/lib/roo/libreoffice_spec.rb
|
301
|
+
- spec/lib/roo/openoffice_spec.rb
|
268
302
|
- spec/lib/roo/spreadsheet_spec.rb
|
269
303
|
- spec/spec_helper.rb
|
270
304
|
- test/all_ss.rb
|
271
305
|
- test/files/1900_base.xls
|
306
|
+
- test/files/1900_base.xlsx
|
272
307
|
- test/files/1904_base.xls
|
308
|
+
- test/files/1904_base.xlsx
|
273
309
|
- test/files/bad_excel_date.xls
|
274
310
|
- test/files/bbu.ods
|
275
311
|
- test/files/bbu.xls
|
@@ -373,3 +409,4 @@ test_files:
|
|
373
409
|
- test/test_generic_spreadsheet.rb
|
374
410
|
- test/test_helper.rb
|
375
411
|
- test/test_roo.rb
|
412
|
+
has_rdoc:
|