This file is indexed.

/usr/share/doc/python-xlrd-docs/changes.html is in python-xlrd-docs 1.1.0-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Changes &#8212; xlrd 1.1.0 documentation</title>
    <link rel="stylesheet" href="_static/classic.css" type="text/css" />
    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    './',
        VERSION:     '1.1.0',
        COLLAPSE_INDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true,
        SOURCELINK_SUFFIX: '.txt'
      };
    </script>
    <script type="text/javascript" src="_static/jquery.js"></script>
    <script type="text/javascript" src="_static/underscore.js"></script>
    <script type="text/javascript" src="_static/doctools.js"></script>
    <link rel="index" title="Index" href="genindex.html" />
    <link rel="search" title="Search" href="search.html" />
    <link rel="next" title="Acknowledgements" href="acknowledgements.html" />
    <link rel="prev" title="Development" href="development.html" /> 
  </head>
  <body>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="acknowledgements.html" title="Acknowledgements"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="development.html" title="Development"
             accesskey="P">previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="index.html">xlrd 1.1.0 documentation</a> &#187;</li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="changes">
<h1>Changes<a class="headerlink" href="#changes" title="Permalink to this headline"></a></h1>
<div class="section" id="august-2017">
<h2>1.1.0 (22 August 2017)<a class="headerlink" href="#august-2017" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Fix for parsing of merged cells containing a single cell reference in xlsx
files.</li>
<li>Fix for “invalid literal for int() with base 10: ‘true’” when reading some
xlsx files.</li>
<li>Make xldate_as_datetime available to import direct from xlrd.</li>
<li>Build universal wheels.</li>
<li>Sphinx documentation.</li>
<li>Document the problem with XML vulnerabilities in xlsx files and mitigation
measures.</li>
<li>Fix <code class="xref py py-class docutils literal"><span class="pre">NameError</span></code> on <code class="docutils literal"><span class="pre">has_defaults</span> <span class="pre">is</span> <span class="pre">not</span> <span class="pre">defined</span></code>.</li>
<li>Some whitespace and code style tweaks.</li>
<li>Make example in README compatible with both Python 2 and 3.</li>
<li>Add default value for cells containing errors that causeed parsing of some
xlsx files to fail.</li>
<li>Add Python 3.6 to the list of supported Python versions, drop 3.3 and 2.6.</li>
<li>Use generator expressions to avoid unnecessary lists in memory.</li>
<li>Document unicode encoding used in Excel files from Excel 97 onwards.</li>
<li>Report hyperlink errors in R1C1 syntax.</li>
</ul>
<p>Thanks to the following for their contributions to this release:</p>
<ul class="simple">
<li><a class="reference external" href="mailto:icereval&#37;&#52;&#48;gmail&#46;com">icereval<span>&#64;</span>gmail<span>&#46;</span>com</a></li>
<li>Daniel Rech</li>
<li>Ville Skyttä</li>
<li>Yegor Yefremov</li>
<li>Maxime Lorant</li>
<li>Alexandr N Zamaraev</li>
<li>Zhaorong Ma</li>
<li>Jon Dufresne</li>
<li>Chris McIntyre</li>
<li><a class="reference external" href="mailto:coltleese&#37;&#52;&#48;gmail&#46;com">coltleese<span>&#64;</span>gmail<span>&#46;</span>com</a></li>
<li>Ivan Masá</li>
</ul>
</div>
<div class="section" id="june-2016">
<h2>1.0.0 (2 June 2016)<a class="headerlink" href="#june-2016" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Official support, such as it is, is now for 2.6, 2.7, 3.3+</li>
<li>Fixes a bug in looking up non-lowercase sheet filenames by ensuring that the
sheet targets are transformed the same way as the component_names dict keys.</li>
<li>Fixes a bug for <code class="docutils literal"><span class="pre">ragged_rows=False</span></code> when merged cells increases the number
of columns in the sheet. This requires all rows to be extended to ensure equal
row lengths that match the number of columns in the sheet.</li>
<li>Fixes to enable reading of SAP-generated .xls files.</li>
<li>support BIFF4 files with missing FORMAT records.</li>
<li>support files with missing WINDOW2 record.</li>
<li>Empty cells are now always unicode strings, they were a bytestring on
Python 2 and a unicode string on Python 3.</li>
<li>Fix for <code class="docutils literal"><span class="pre">&lt;cell&gt;</span></code> <code class="docutils literal"><span class="pre">inlineStr</span></code> attribute without <code class="docutils literal"><span class="pre">&lt;si&gt;</span></code> child.</li>
<li>Fix for a zoom of <code class="docutils literal"><span class="pre">None</span></code> causing problems on Python 3.</li>
<li>Fix parsing of bad dimensions.</li>
<li>Fix xlsx sheet to comments relationship.</li>
</ul>
<p>Thanks to the following for their contributions to this release:</p>
<ul class="simple">
<li>Lars-Erik Hannelius</li>
<li>Deshi Xiao</li>
<li>Stratos Moro</li>
<li>Volker Diels-Grabsch</li>
<li>John McNamara</li>
<li>Ville Skyttä</li>
<li>Patrick Fuller</li>
<li>Dragon Dave McKee</li>
<li>Gunnlaugur Þór Briem</li>
</ul>
</div>
<div class="section" id="july-2015">
<h2>0.9.4 (14 July 2015)<a class="headerlink" href="#july-2015" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Automated tests are now run on Python 3.4</li>
<li>Use <code class="docutils literal"><span class="pre">ElementTree.iter()</span></code> if available, instead of the deprecated
<code class="docutils literal"><span class="pre">getiterator()</span></code> when parsing xlsx files.</li>
<li>Fix #106 : Exception Value: unorderable types: Name() &lt; Name()</li>
<li>Create row generator expression with Sheet.get_rows()</li>
<li>Fix for forward slash file separator and lowercase names within xlsx
internals.</li>
</ul>
<p>Thanks to the following for their contributions to this release:</p>
<ul class="simple">
<li>Corey Farwell</li>
<li>Jonathan Kamens</li>
<li>Deepak N</li>
<li>Brandon R. Stoner</li>
<li>John McNamara</li>
</ul>
</div>
<div class="section" id="apr-2014">
<h2>0.9.3 (8 Apr 2014)<a class="headerlink" href="#apr-2014" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Github issue #49</li>
<li>Github issue #64 - skip meaningless chunk of 4 zero bytes between two
otherwise-valid BIFF records</li>
<li>Github issue #61 - fix updating of escapement attribute of Font objects read
from workbooks.</li>
<li>Implemented <code class="docutils literal"><span class="pre">Sheet.visibility</span></code> for xlsx files</li>
<li>Ignore anchors (<code class="docutils literal"><span class="pre">$</span></code>) in cell references</li>
<li>Dropped support for Python 2.5 and earlier, Python 2.6 is now the earliest
Python release supported</li>
<li>Read xlsx merged cell elements.</li>
<li>Read cell comments in .xlsx files.</li>
<li>Added xldate_as_datetime() function to convert from Excel
serial date/time to datetime.datetime object.</li>
</ul>
<p>Thanks to the following for their contributions to this release:</p>
<ul class="simple">
<li>John Machin</li>
<li>Caleb Epstein</li>
<li>Martin Panter</li>
<li>John McNamara</li>
<li>Gunnlaugur Þór Briem</li>
<li>Stephen Lewis</li>
</ul>
</div>
<div class="section" id="apr-2013">
<h2>0.9.2 (9 Apr 2013)<a class="headerlink" href="#apr-2013" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Fix some packaging issues that meant docs and examples were missing from the tarball.</li>
<li>Fixed a small but serious regression that caused problems opening .xlsx files.</li>
</ul>
</div>
<div class="section" id="id1">
<h2>0.9.1 (5 Apr 2013)<a class="headerlink" href="#id1" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Many fixes bugs in Python 3 support.</li>
<li>Fix bug where ragged rows needed fixing when formatting info was being parsed.</li>
<li>Improved handling of aberrant Excel 4.0 Worksheet files.</li>
<li>Various bug fixes.</li>
<li>Simplify a lot of the distribution packaging.</li>
<li>Remove unused and duplicate imports.</li>
</ul>
<p>Thanks to the following for their contributions to this release:</p>
<ul class="simple">
<li>Thomas Kluyver</li>
</ul>
</div>
<div class="section" id="jan-2013">
<h2>0.9.0 (31 Jan 2013)<a class="headerlink" href="#jan-2013" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Support for Python 3.2+</li>
<li>Many new unit test added.</li>
<li>Continuous integration tests are now run.</li>
<li>Various bug fixes.</li>
</ul>
<p>Special thanks to Thomas Kluyver and Martin Panter for their work on
Python 3 compatibility.</p>
<p>Thanks to Manfred Moitzi for re-licensing his unit tests so we could include
them.</p>
<p>Thanks to the following for their contributions to this release:</p>
<ul class="simple">
<li>“holm”</li>
<li>Victor Safronovich</li>
<li>Ross Jones</li>
</ul>
</div>
<div class="section" id="aug-2012">
<h2>0.8.0 (22 Aug 2012)<a class="headerlink" href="#aug-2012" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>More work-arounds for broken source files.</li>
<li>Support for reading .xlsx files.</li>
<li>Drop support for Python 2.5 and older.</li>
</ul>
</div>
<div class="section" id="june-2012">
<h2>0.7.8 (7 June 2012)<a class="headerlink" href="#june-2012" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Ignore superfluous zero bytes at end of xls OBJECT record.</li>
<li>Fix assertion error when reading file with xlwt-written bitmap.</li>
</ul>
</div>
<div class="section" id="apr-2012">
<h2>0.7.7 (13 Apr 2012)<a class="headerlink" href="#apr-2012" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>More packaging changes, this time to support 2to3.</li>
</ul>
</div>
<div class="section" id="id2">
<h2>0.7.6 (3 Apr 2012)<a class="headerlink" href="#id2" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Fix more packaging issues.</li>
</ul>
</div>
<div class="section" id="id3">
<h2>0.7.5 (3 Apr 2012)<a class="headerlink" href="#id3" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Fix packaging issue that missed <code class="docutils literal"><span class="pre">version.txt</span></code> from the distributions.</li>
</ul>
</div>
<div class="section" id="id4">
<h2>0.7.4 (2 Apr 2012)<a class="headerlink" href="#id4" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>More tolerance of out-of-spec files.</li>
<li>Fix bugs reading long text formula results.</li>
</ul>
</div>
<div class="section" id="feb-2012">
<h2>0.7.3 (28 Feb 2012)<a class="headerlink" href="#feb-2012" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Packaging and documentation updates.</li>
</ul>
</div>
<div class="section" id="id5">
<h2>0.7.2 (21 Feb 2012)<a class="headerlink" href="#id5" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Tolerant handling of files with extra zero bytes at end of NUMBER record.
Sample provided by Jan Kraus.</li>
<li>Added access to cell notes/comments. Many cross-references added to Sheet
class docs.</li>
<li>Added code to extract hyperlink (HLINK) records. Based on a patch supplied by
John Morrisey.</li>
<li>Extraction of rich text formatting info based on code supplied by
Nathan van Gheem.</li>
<li>added handling of BIFF2 WINDOW2 record.</li>
<li>Included modified version of page breaks patch from Sam Listopad.</li>
<li>Added reading of the PANE record.</li>
<li>Reading SCL record. New attribute <code class="docutils literal"><span class="pre">Sheet.scl_mag_factor</span></code>.</li>
<li>Lots of bug fixes.</li>
<li>Added <code class="docutils literal"><span class="pre">ragged_rows</span></code> functionality.</li>
</ul>
</div>
<div class="section" id="may-2009">
<h2>0.7.1 (31 May 2009)<a class="headerlink" href="#may-2009" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Backed out “slash’n’burn” of sheet resources in unload_sheet().
Fixed problem with STYLE records on some Mac Excel files.</li>
<li>quieten warnings</li>
<li>Integrated on_demand patch by Armando Serrano Lombillo</li>
</ul>
</div>
<div class="section" id="march-2009">
<h2>0.7.0 (11 March 2009)<a class="headerlink" href="#march-2009" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>colname utility function now supports more than 256 columns.</li>
<li>Fix bug where BIFF record type 0x806 was being regarded as a formula
opcode.</li>
<li>Ignore PALETTE record when formatting_info is false.</li>
<li>Tolerate up to 4 bytes trailing junk on PALETTE record.</li>
<li>Fixed bug in unused utility function xldate_from_date_tuple which
affected some years after 2099.</li>
<li>Added code for inspecting as-yet-unused record types: FILEPASS, TXO,
NOTE.</li>
<li>Added inspection code for add_in function calls.</li>
<li>Added support for unnumbered biff_dump (better for doing diffs).</li>
<li>ignore distutils cruft</li>
<li>Avoid assertion error in compdoc when -1 used instead of -2 for
first_SID of empty SCSS</li>
<li>Make version numbers match up.</li>
<li>Enhanced recovery from out-of-order/missing/wrong CODEPAGE record.</li>
<li>Added Name.area2d convenience method.</li>
<li>Avoided some checking of XF info when formatting_info is false.</li>
<li>Minor changes in preparation for XLSX support.</li>
<li>remove duplicate files that were out of date.</li>
<li>Basic support for Excel 2.0</li>
<li>Decouple Book init &amp; load.</li>
<li>runxlrd: minor fix for xfc.</li>
<li>More Excel 2.x work.</li>
<li>is_date_format() tweak.</li>
<li>Better detection of IronPython.</li>
<li>Better error message (including first 8 bytes of file) when file is
not in a supported format.</li>
<li>More BIFF2 formatting: ROW, COLWIDTH, and COLUMNDEFAULT records;</li>
<li>finished stage 1 of XF records.</li>
<li>More work on supporting BIFF2 (Excel 2.x) files.</li>
<li>Added support for Excel 2.x (BIFF2) files. Data only, no formatting
info. Alpha.</li>
<li>Wasn’t coping with EXTERNSHEET record followed by CONTINUE
record(s).</li>
<li>Allow for BIFF2/3-style FORMAT record in BIFF4/8 file</li>
<li>Avoid crash when zero-length Unicode string missing options byte.</li>
<li>Warning message if sector sizes are extremely large.</li>
<li>Work around corrupt STYLE record</li>
<li>Added missing entry for blank cell type to ctype_text</li>
<li>Added “fonts” command to runxlrd script</li>
<li>Warning: style XF whose parent XF index != 0xFFF</li>
<li>Logfile arg wasn’t being passed from open_workbook to
compdoc.CompDoc.</li>
</ul>
</div>
<div class="section" id="june-2007">
<h2>0.6.1  (10 June 2007)<a class="headerlink" href="#june-2007" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Version number updated to 0.6.1</li>
<li>Documented runxlrd.py commands in its usage message. Changed
commands: dump to biff_dump, count_records to biff_count.</li>
</ul>
</div>
<div class="section" id="a5">
<h2>0.6.1a5<a class="headerlink" href="#a5" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Bug fixed: Missing “&lt;” in a struct.unpack call means can’t open
files on bigendian platforms. Discovered by “Mihalis”.</li>
<li>Removed antique undocumented Book.get_name_dict method and
experimental “trimming” facility.</li>
<li>Meaningful exception instead of IndexError if a SAT (sector
allocation table) is corrupted.</li>
<li>If no CODEPAGE record in pre-8.0 file, assume ascii and keep going
(instead of raising exception).</li>
</ul>
</div>
<div class="section" id="a4">
<h2>0.6.1a4<a class="headerlink" href="#a4" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>At least one source of XLS files writes parent style XF records
<em>after</em> the child cell XF records that refer to them, triggering
IndexError in 0.5.2 and AssertionError in later versions. Reported
with sample file by Todd O’Bryan. Fixed by changing to two-pass
processing of XF records.</li>
<li>Formatting info in pre-BIFF8 files: Ensured appropriate defaults and
lossless conversions to make the info BIFF8-compatible. Fixed bug in
extracting the “used” flags.</li>
<li>Fixed problems discovered with opening test files from Planmaker
2006 (<a class="reference external" href="http://www.softmaker.com/english/ofwcomp_en.htm">http://www.softmaker.com/english/ofwcomp_en.htm</a>): (1) Four files
have reduced size of PALETTE record (51 and 32 colours; Excel writes
56 always). xlrd now emits a NOTE to the logfile and continues. (2)
FORMULA records use the Excel 2.x record code 0x0021 instead of
0x0221. xlrd now continues silently. (3) In two files, at the OLE2
compound document level, the internal directory says that the length
of the Short-Stream Container Stream is 16384 bytes, but the actual
contents are 11264 and 9728 bytes respectively. xlrd now emits a
WARNING to the logfile and continues.</li>
<li>After discussion with Daniel Rentz, the concept of two lists of XF
(eXtended Format) objects (raw_xf_list and computed_xf_list) has been
abandoned. There is now a single list, called xf_list</li>
</ul>
</div>
<div class="section" id="a3">
<h2>0.6.1a3<a class="headerlink" href="#a3" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Added Book.sheets … for sheetx, sheet in enumerate(book.sheets):</li>
<li>Formatting info: extraction of sheet-level flags from WINDOW2
record, and sheet.visibility from BOUNDSHEET record. Added Macintosh-
only Font attributes “outline” and “shadow’.</li>
</ul>
</div>
<div class="section" id="a2">
<h2>0.6.1a2<a class="headerlink" href="#a2" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Added extraction of merged cells info.</li>
<li>pyExcelerator uses “general” instead of “General” for the generic
“number format”. Worked around.</li>
<li>Crystal Reports writes “WORKBOOK” in the OLE2 Compound Document
directory instead of “Workbook”. Changed to case-insensitive directory
search. Reported by Vic Simkus.</li>
</ul>
</div>
<div class="section" id="a1-18-dec-2006">
<h2>0.6.1a1 (18 Dec 2006)<a class="headerlink" href="#a1-18-dec-2006" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Added formatting information for cells (font, “number format”,
background, border, alignment and protection) and rows/columns
(height/width etc). To save memory and time for those who don’t need
it, this information is extracted only if formatting_info=1 is
supplied to the open_workbook() function. The cell records BLANK and
MULBLANKS which contain no data, only formatting information, will
continue to be ignored in the default (no formatting info) case.</li>
<li>Ralph Heimburger reported a problem with xlrd being intolerant about
an Excel 4.0 file (created by “some web app”) with a DIMENSIONS record
that omitted Microsoft’s usual padding with 2 unused bytes. Fixed.</li>
</ul>
</div>
<div class="section" id="a4-not-released">
<h2>0.6.0a4 (not released)<a class="headerlink" href="#a4-not-released" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Added extraction of human-readable formulas from NAME records.</li>
<li>Worked around OOo Calc writing 9-byte BOOLERR records instead of 8.
Reported by Rory Campbell-Lange.</li>
<li>This history file converted to descending chronological order and
HTML format.</li>
</ul>
</div>
<div class="section" id="a3-19-sept-2006">
<h2>0.6.0a3 (19 Sept 2006)<a class="headerlink" href="#a3-19-sept-2006" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Names: minor bugfixes; added script xlrdnameAPIdemo.py</li>
<li>ROW records were being used as additional hints for sizing memory
requirements. In some files the ROW records overstate the number of
used columns, and/or there are ROW records for rows that have no data
in them. This would cause xlrd to report sheet.ncols and/or
sheet.nrows as larger than reasonably expected. Change: ROW records
are ignored. The number of columns/rows is based solely on the highest
column/row index seen in non-empty data records. Empty data records
(types BLANK and MULBLANKS) which contain no data, only formatting
information, have always been ignored, and this will continue.
Consequence: trailing rows and columns which contain only empty cells
will vanish.</li>
</ul>
</div>
<div class="section" id="a2-13-sept-2006">
<h2>0.6.0a2 (13 Sept 2006)<a class="headerlink" href="#a2-13-sept-2006" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Fixed a bug reported by Rory Campbell-Lange.: “open failed”;
incorrect assumptions about the layout of array formulas which return
strings.</li>
<li>Further work on defined names, especially the API.</li>
</ul>
</div>
<div class="section" id="a1-8-sept-2006">
<h2>0.6.0a1 (8 Sept 2006)<a class="headerlink" href="#a1-8-sept-2006" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Sheet objects have two new convenience methods: col_values(colx,
start_rowx=0, end_rowx=None) and the corresponding col_types.
Suggested by Dennis O’Brien.</li>
<li>BIFF 8 file missing its CODEPAGE record: xlrd will now assume
utf_16_le encoding (the only possibility) and keep going.</li>
<li>Older files missing a CODEPAGE record: an exception will be raised.
Thanks to Sergey Krushinsky for a sample file. The open_workbook()
function has a new argument (encoding_override) which can be used if
the CODEPAGE record is missing or incorrect (for example,
codepage=1251 but the data is actually encoded in koi8_r). The
runxlrd.py script takes a corresponding -e argument, for example -e
cp1251</li>
<li>Further work done on parsing “number formats”. Thanks to Chris
Withers for the <code class="docutils literal"><span class="pre">&quot;General_)&quot;</span></code> example.</li>
<li>Excel 97 introduced the concept of row and column labels, defined by
Insert &gt; Name &gt; Labels. The ranges containing the labels are now
exposed as the Sheet attributes row_label_ranges and col_label_ranges.</li>
<li>The major effort in this 0.6.0 release has been the provision of
access to named cell ranges and named constants (Excel:
Insert/Name/Define). Juan C. Mendez provided very useful real-world
sample files.</li>
</ul>
</div>
<div class="section" id="a1-24-may-2006">
<h2>0.5.3a1 (24 May 2006)<a class="headerlink" href="#a1-24-may-2006" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>John Popplewell and Richard Sharp provided sample files which caused
any reliance at all on DIMENSIONS records and ROW records to be
abandoned.</li>
<li>If the file size is not a whole number of OLE sectors, a warning
message is logged. Previously this caused an exception to be raised.</li>
</ul>
</div>
<div class="section" id="march-2006">
<h2>0.5.2 (14 March 2006)<a class="headerlink" href="#march-2006" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>public release</li>
<li>Updated version numbers, README, HISTORY.</li>
</ul>
</div>
<div class="section" id="a3-13-march-2006">
<h2>0.5.2a3 (13 March 2006)<a class="headerlink" href="#a3-13-march-2006" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Gnumeric writes user-defined formats with format codes starting at
50 instead of 164; worked around.</li>
<li>Thanks to Didrik Pinte for reporting the need for xlrd to be more
tolerant of the idiosyncracies of other software, for supplying sample
files, and for performing alpha testing.</li>
<li>‘_’ character in a format should be treated like an escape
character; fixed.</li>
<li>An “empty” formula result means a zero-length string, not an empty
cell! Fixed.</li>
</ul>
</div>
<div class="section" id="a2-9-march-2006">
<h2>0.5.2a2 (9 March 2006)<a class="headerlink" href="#a2-9-march-2006" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>Found that Gnumeric writes all DIMENSIONS records with nrows and
ncols each 1 less than they should be (except when it clamps ncols at
256!), and pyXLwriter doesn’t write ROW records. Cell memory pre-
allocation was generalised to use ROW records if available with fall-
back to DIMENSIONS records.</li>
</ul>
</div>
<div class="section" id="a1-6-march-2006">
<h2>0.5.2a1 (6 March 2006)<a class="headerlink" href="#a1-6-march-2006" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>pyXLwriter writes DIMENSIONS record with antique opcode 0x0000
instead of 0x0200; worked around</li>
<li>A file written by Gnumeric had zeroes in DIMENSIONS record but data
in cell A1; worked around</li>
</ul>
</div>
<div class="section" id="feb-2006">
<h2>0.5.1 (18 Feb 2006)<a class="headerlink" href="#feb-2006" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>released to Journyx</li>
<li>Python 2.1 mmap requires file to be opened for update access. Added
fall-back to read-only access without mmap if 2.1 open fails because
“permission denied”.</li>
</ul>
</div>
<div class="section" id="id6">
<h2>0.5 (7 Feb 2006)<a class="headerlink" href="#id6" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>released to Journyx</li>
<li>Now works with Python 2.1. Backporting to Python 2.1 was partially
funded by Journyx - provider of timesheet and project accounting
solutions (<a class="reference external" href="http://journyx.com/">http://journyx.com/</a>)</li>
<li>open_workbook() can be given the contents of a file instead of its
name. Thanks to Remco Boerma for the suggestion.</li>
<li>New module attribute __VERSION__ (as a string; for example “0.5”)</li>
<li>Minor enhancements to classification of formats as date or not-date.</li>
<li>Added warnings about files with inconsistent OLE compound document
structures. Thanks to Roman V. Kiseliov (author of pyExcelerator) for
the tip-off.</li>
</ul>
</div>
<div class="section" id="a1-7-sept-2005">
<h2>0.4a1, (7 Sept 2005)<a class="headerlink" href="#a1-7-sept-2005" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>released to Laurent T.</li>
<li>Book and sheet objects can now be pickled and unpickled. Instead of
reading a large spreadsheet multiple times, consider pickling it once
and loading the saved pickle; can be much faster. Thanks to Laurent
Thioudellet for the enhancement request.</li>
<li>Using the mmap module can be turned off. But you would only do that
for benchmarking purposes.</li>
<li>Handling NUMBER records has been made faster</li>
</ul>
</div>
<div class="section" id="a1-15-may-2005">
<h2>0.3a1 (15 May 2005)<a class="headerlink" href="#a1-15-may-2005" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li>first public release</li>
</ul>
</div>
</div>


          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
  <h3><a href="index.html">Table Of Contents</a></h3>
  <ul>
<li><a class="reference internal" href="#">Changes</a><ul>
<li><a class="reference internal" href="#august-2017">1.1.0 (22 August 2017)</a></li>
<li><a class="reference internal" href="#june-2016">1.0.0 (2 June 2016)</a></li>
<li><a class="reference internal" href="#july-2015">0.9.4 (14 July 2015)</a></li>
<li><a class="reference internal" href="#apr-2014">0.9.3 (8 Apr 2014)</a></li>
<li><a class="reference internal" href="#apr-2013">0.9.2 (9 Apr 2013)</a></li>
<li><a class="reference internal" href="#id1">0.9.1 (5 Apr 2013)</a></li>
<li><a class="reference internal" href="#jan-2013">0.9.0 (31 Jan 2013)</a></li>
<li><a class="reference internal" href="#aug-2012">0.8.0 (22 Aug 2012)</a></li>
<li><a class="reference internal" href="#june-2012">0.7.8 (7 June 2012)</a></li>
<li><a class="reference internal" href="#apr-2012">0.7.7 (13 Apr 2012)</a></li>
<li><a class="reference internal" href="#id2">0.7.6 (3 Apr 2012)</a></li>
<li><a class="reference internal" href="#id3">0.7.5 (3 Apr 2012)</a></li>
<li><a class="reference internal" href="#id4">0.7.4 (2 Apr 2012)</a></li>
<li><a class="reference internal" href="#feb-2012">0.7.3 (28 Feb 2012)</a></li>
<li><a class="reference internal" href="#id5">0.7.2 (21 Feb 2012)</a></li>
<li><a class="reference internal" href="#may-2009">0.7.1 (31 May 2009)</a></li>
<li><a class="reference internal" href="#march-2009">0.7.0 (11 March 2009)</a></li>
<li><a class="reference internal" href="#june-2007">0.6.1  (10 June 2007)</a></li>
<li><a class="reference internal" href="#a5">0.6.1a5</a></li>
<li><a class="reference internal" href="#a4">0.6.1a4</a></li>
<li><a class="reference internal" href="#a3">0.6.1a3</a></li>
<li><a class="reference internal" href="#a2">0.6.1a2</a></li>
<li><a class="reference internal" href="#a1-18-dec-2006">0.6.1a1 (18 Dec 2006)</a></li>
<li><a class="reference internal" href="#a4-not-released">0.6.0a4 (not released)</a></li>
<li><a class="reference internal" href="#a3-19-sept-2006">0.6.0a3 (19 Sept 2006)</a></li>
<li><a class="reference internal" href="#a2-13-sept-2006">0.6.0a2 (13 Sept 2006)</a></li>
<li><a class="reference internal" href="#a1-8-sept-2006">0.6.0a1 (8 Sept 2006)</a></li>
<li><a class="reference internal" href="#a1-24-may-2006">0.5.3a1 (24 May 2006)</a></li>
<li><a class="reference internal" href="#march-2006">0.5.2 (14 March 2006)</a></li>
<li><a class="reference internal" href="#a3-13-march-2006">0.5.2a3 (13 March 2006)</a></li>
<li><a class="reference internal" href="#a2-9-march-2006">0.5.2a2 (9 March 2006)</a></li>
<li><a class="reference internal" href="#a1-6-march-2006">0.5.2a1 (6 March 2006)</a></li>
<li><a class="reference internal" href="#feb-2006">0.5.1 (18 Feb 2006)</a></li>
<li><a class="reference internal" href="#id6">0.5 (7 Feb 2006)</a></li>
<li><a class="reference internal" href="#a1-7-sept-2005">0.4a1, (7 Sept 2005)</a></li>
<li><a class="reference internal" href="#a1-15-may-2005">0.3a1 (15 May 2005)</a></li>
</ul>
</li>
</ul>

  <h4>Previous topic</h4>
  <p class="topless"><a href="development.html"
                        title="previous chapter">Development</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="acknowledgements.html"
                        title="next chapter">Acknowledgements</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="_sources/changes.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3>Quick search</h3>
    <form class="search" action="search.html" method="get">
      <div><input type="text" name="q" /></div>
      <div><input type="submit" value="Go" /></div>
      <input type="hidden" name="check_keywords" value="yes" />
      <input type="hidden" name="area" value="default" />
    </form>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="acknowledgements.html" title="Acknowledgements"
             >next</a> |</li>
        <li class="right" >
          <a href="development.html" title="Development"
             >previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="index.html">xlrd 1.1.0 documentation</a> &#187;</li> 
      </ul>
    </div>
    <div class="footer" role="contentinfo">
        &#169; Copyright 2005-2017 Stephen John Machin, Lingfo Pty Ltd.
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.5.
    </div>
  </body>
</html>