Codebase list eyed3 / run/6b0814d6-124a-4348-98cd-0e998f638a3f/main HISTORY.rst
run/6b0814d6-124a-4348-98cd-0e998f638a3f/main

Tree @run/6b0814d6-124a-4348-98cd-0e998f638a3f/main (Download .tar.gz)

HISTORY.rst @run/6b0814d6-124a-4348-98cd-0e998f638a3f/mainraw · history · blame

  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
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
Release History
===============

.. :changelog:

v0.8.11 (2019-11-09)
------------------------

Fix
~~~
- ID3 v2.3 to v2.4 date conversion.
- Match mp3 mime-types against all possible mime-types.
  Specifically, application/x-font-gdos. Fixes #338


v0.8.10 (2019-03-07) : Apples
------------------------------

New
~~~
- Log warning when ID3 v1.x text truncation occurs. Fixes #299.

Fix
~~~
- Honor APIC text encoding when description is "".  #200.
- Fixed bug with improper types when re-rendering unique file ID. (#324)
  <gabrieldiegoteixeira@gmail.com>


v0.8.9 (2019-01-12) : Descent Into...
--------------------------------------

Changes
~~~~~~~
- Fixup plugin: -t changed to --type.
- Pin pathlib to latest version 1.0.1 (#304) <github-bot@pyup.io>

Fix
~~~
- Force no-color output when stdout is not a terminal (#297)
  <gaetano.guerriero@gmx.com>
- Requirements.txt: pathlib is only needed for older python versions
  (#284) <Mic92@users.noreply.github.com>
- Art plugin: Pin pylast to 2.x to preserve Python2 support.


v0.8.8 (2018-11-28) : In Ruins
------------------------------

New
~~~
- Follow symlink directories. Fixes #224

Changes
~~~~~~~
- Eyed3.core.AudioInfo `time_secs` is now a float and non-lossy. Fixes #210
- Removed Python 3.3 support.

Fix
~~~
- Better type handling during TLEN [fixup plugin].
- Don't tweak logging by default, only thru `main`. Fixes #243

Other
~~~~~
- Added a separate example for Windows (--add-image <url>) [Addresses
  the issue #219] (#220) <chamatht@gmail.com>


v0.8.7 (2018-06-11) : Aeon
---------------------------

Fix
~~~
- Only use os.fwalk where supported.


v0.8.6 (2018-05-27) : Robot Man
--------------------------------

New
~~~
- Art plugin can now download album covers from last.fm.

Changes
~~~~~~~
- Use os.fwalk for its better performance (esp. >= py37) Fixes #166
- TagTemplate `path_friendly` is now a string, namely the delimiter to use.

Fix
~~~
- Classic plugin: --write-image will work with --quiet. Fixes #188
- Multiple fixes for display plugin %images% replacements. Fixes #176
- Allow --remove-* options to work when there are no tags. Fixes #183

v0.8.5 (2018-03-27) : 30$ Bag
-----------------------------

New
~~~
- Mp3AudioFile.initTag now returns the new tag.
- Eyed3.core.EP_MAX_SIZE_HINT.
- Added docs for install devel dependencies and test data.

Changes
~~~~~~~
- Similarly to TextFrame, fallback to latin1 for invalid encodings.
- Removed paver as a dep.
- Removed fabfile and mkenv.
- Clean pytest_cache.
- Nicfit.py cc update.

Fix
~~~
- Handle missing `fcntl` on Windows. Fixes #135.
- In addition to None, "" will now clear dates.
- Update index.rst to reflect the code is in a Git repo, not Mercurial (#164)
  <deoren@users.noreply.github.com>

Other
~~~~~
- Update pytest from 3.2.2 to 3.5.0 (#175) <github-bot@pyup.io>
- Update twine from 1.9.1 to 1.11.0 (#173) <github-bot@pyup.io>
- Update sphinx from 1.6.5 to 1.7.2 (#174) <github-bot@pyup.io>
- Update sphinxcontrib-paverutils from 1.16.0 to 1.17.0 (#172) <github-
  bot@pyup.io>
- Update pytest-runner from 3.0 to 4.2 (#171) <github-bot@pyup.io>
- Update nicfit.py from 0.7 to 0.8 (#161) <github-bot@pyup.io>
- Update ipdb from 0.10.3 to 0.11 (#159) <github-bot@pyup.io>
- Update factory-boy from 2.9.2 to 2.10.0 (#150) <github-bot@pyup.io>
- Update pyaml from 17.10.0 to 17.12.1 (#138) <github-bot@pyup.io>
- Update python-magic to 0.4.15 (#130) <github-bot@pyup.io>
- Update pip-tools from 1.10.1 to 1.11.0 (#129) <github-bot@pyup.io>
- Update check-manifest from 0.35 to 0.36 (#125) <github-bot@pyup.io>


v0.8.4 (2017-11-17) : The Cold Vein
-------------------------------------

New
~~~
- Composer (TCOM) support (#123)
- Check for version incompatibilities during version changes.

Changes
~~~~~~~
- More forgiving of invalid text encoding identifiers (fixes #101)
- More forgiving of bad Unicode in text frames (fixes #105)
- EyeD3 cmd line helper turned not session-scoped fixture.
- Only warn about missing grako when the plugin is used. Fixes #115.

Fix
~~~
- Fix python3 setup when system encoding is not utf-8 (#120)
  <x.guerriero@tin.it>
- Fix bad frames detection in stats plugin for python3 (#113)
  <x.guerriero@tin.it>
- Script exits with 0 status when called with --version/--help (#109)
  <x.guerriero@tin.it>
- Help pymagic with poorly encoded filenames.
- [display plugin] Handle comments.
- [display plugin] Handle internal exception types. Fixes #118.
- IOError (nor OSError) have a message attr.

Other
~~~~~
- Set theme jekyll-theme-slate.
- Update pytest to 3.2.5 (#122) <github-bot@pyup.io>
- Update pytest-runner to 3.0 (#108) <github-bot@pyup.io>
- Update sphinx to 1.6.5 (#106) <github-bot@pyup.io>
- Update flake8 to 3.5.0 (#107) <github-bot@pyup.io>


v0.8.3 (2017-10-22) : So Alone
-------------------------------

Fix
~~~
- Reload and process after tag removals, fixes #102. (PR #103)
- Display incorrectly encoded strings (usually filenames)

Other
~~~~~
- Make the classic output span the actual width of the tty so you can
  see the actual path with a long file name. (#92) <redshodan@gmail.com>


v0.8.2 (2017-09-23) : Standing At the Station
----------------------------------------------

New
~~~
- Pypy and pypy3 support.

Changes
~~~~~~~
- 'nose' is no longer used/required for testing.

Fix
~~~
- Fix for Unicode paths when using Python2.  Fixes #56.


v0.8.1 (2017-08-26) : I Can't Talk To You
------------------------------------------

New
~~~
- ``make pkg-test-data`` target.
- Sample mime-type tests.

Fix
~~~
- Added ``python-magic`` as a dependency for reliable mime-type detection.
  Fixes #61
- Add pathlib to requirements. Fixes #43.
- [doc] Fixed github URL.


v0.8 (2017-05-13) : I Don't Know My Name
-----------------------------------------
.. warning::
  This release is **NOT** API compatible with 0.7.x. The majority
  of the command line interface has been preserved although many options
  have either changed or been removed.  Additionally, support for Python 2.6
  has been dropped.

New
~~~
- Python 3 support (version 2.7 and >= 3.3 supported)
- The Display plugin (-P/--plugin display) enables complete control over tag
  output. Requires ``grako``. If using pip, ``pip install eyeD3[display]``.
  Contributed by Sebastian Patschorke.
- Genre.parse(id3_std=False) (and --non-std-genres) to disable genre #
  mapping.
- eyed3.load accept pathlib.Path arguments.
- eyed3.core.AudioFile accept pathlib.Path arguments.
- eyed3.utils.walk accept pathlib.Path arguments.
- New manual page. Contributed by Gaetano Guerriero
- ``make test-data``

Changes
~~~~~~~~
- Project home from to GitHub: https://github.com/nicfit/eyeD3

Fix
~~~
- Lang fixes, and no longer coerce invalids to eng.

Other
~~~~~
- Moved to pytest, although unittest not yet purged.


0.7.11 - 03.12.2017 (Evergreen)
------------------------------------
  New Features:
    * Repo and issue tracker moved to GitHub: https://github.com/nicfit/eyeD3
  Bug Fixes:
    * [:bbissue:`78`] - 'NoneType' object has no attribute 'year'
    * [:bbissue:`108`] - Multiple date related fixes.
    * [:bbissue:`110`] - Allow superfluous --no-tagging-ttme-frame option for
                         backward compatibility.
    * [:bbissue:`111`] - The --version option now prints a short, version-only,
                         message.
    * [:bbissue:`116`] - Allow --year option for backward compatibility.
                         Converts to --release-year.
    * [:bbissue:`117`] - Fixes for --user-text-frame with multiple colons and
                         similar fixes.
    * [:bbissue:`125`] - ID3 v1.1 encoding fixes.

.. _release-0.7.10:

0.7.10 - 12.10.2016 (Hollow)
---------------------------------
  Bug Fixes:
    * [:bbissue:`97`] - Missing import
    * [:bbissue:`105`] - Fix the rendering of default constructed id3.TagHeader
    * Fixed Tag.frameiter


0.7.9 - 11.27.2015 (Collapse/Failure)
--------------------------------------
  New Features:
    * process files and directories in a sorted fashion. <Hans-Peter Jansen>
    * display the ellipsis file name and path, and the file size right justified
      in printHeader. <Hans-Peter Jansen>
    * stating to be unable to find a valid mp3 frame without a hint, where this
      happened is rather unfortunate. I noticed this from using eyed3.load()
      calls. <Hans-Peter Jansen>
    * [fixup plugin] - Better compilation support.

  Bug Fixes:
    * Fixed missing 'math' import.
    * [:bbissue:`81`] - Replaced invalid Unicode.
    * [:bbissue:`91`] - Disabled ANSI codes on Windows
    * [:bbissue:`92`] - More friendly logging (as a module)


0.7.8 - 05.25.2015 (Chartsengrafs)
---------------------------------------
  New Features:
    * [pymod plugin] -- A more procedural plugin interface with modules.
    * [art plugin] -- Extract tag art to image files, or add images to tags.
    * eyed3.utils.art - High level tag art API
    * eyed3.id3.frames.ImageFrame.makeFileName produces the file extension
      .jpg instead of .jpeg for JPEG mime-types.
    * Added eyed3.utils.makeUniqueFileName for better reuse.
    * [statistics plugin] -- Less score deduction for lower bit rates.
    * Split example plugins module into discrete plugin modules.
    * [fixup plugin] -- Added --fix-case for applying ``title()`` to names
    * [fixup plugin] -- Detects and optionally removes files determined to be
      cruft.
    * eyed3.id3.Tag -- Added ``frameiter`` method for iterating over tag
      frames.
    * Added optional ``preserve_file_time`` argument to eyed3.id3.Tag.remove.
    * Removed python-magic dependency, it not longer offers any value (AFAICT).

  Bug Fixes:
    * [:bbissue:`50`] Crashing on --remove-frame PRIV
    * [:bbissue:`75`] Parse lameinfo even if crc16 is not correct
    * [:bbissue:`77`] Typo in docs/installation.rst
    * [:bbissue:`79`] Request to update the GPL License in source files
    * Fixes to eyed3.id3.tag.TagTemplate when expanding empty dates.
    * eyed3.plugins.Plugin.handleDone return code is not actually used.
    * [classic plugin] -- Fixed ID3v1 --verbose bug.
    * [fixup plugin] -- Better date handling, album type, and many bug fixes.


0.7.5 - 09.06.2014 (Nerve Endings)
---------------------------------------
  New Features:
    * [:bbissue:`49`] Support for album artist info.
      By Cyril Roelandt <tipecaml@gmail.com>
    * [fixup plugin] -- Custom patterns for file/directory renaming.
      By Matt Black <https://bitbucket.org/mafrosis>
    * API providing simple prompts for plugins to use.
    * API and TXXX frame mappings for album type (e.g. various, album, demo,
      etc.) and artist origin (i.e. where the artist/band is from).
    * Lower cases ANSI codes and other console fixes.
    * [:bbissue:`9`] Added the ability to set (remove) tag padding. See
      `eyeD3 --max-padding` option. By Hans Meine.
    * Tag class contains read_only attribute than can be set to ``True`` to
      disable the ``save`` method.
    * [classic plugin] -- Added ``--track-offset`` for incrementing/decrementing
      the track number.
    * [fixup plugin] -- Check for and fix cover art files.

  Bug Fixes:
    * Build from pypi when ``paver`` is not available.
    * [:bbissue:`46`] Disable ANSI color codes when TERM == "dumb"
    * [:bbissue:`47`] Locking around libmagic.
    * [:bbissue:`54`] Work around for zero-padded utf16 strings.
    * [:bbissue:`65`] Safer tempfile usage.
    * [:bbissue:`65`] Better default v1.x genre.


0.7.3 - 07.12.2013 (Harder They Fall)
------------------------------------------
  Bug fixes:
    * Allow setup.py to run with having ``paver`` installed.
    * [statistics plugin] Don't crash when 0 files are processed.


0.7.2 - 07.06.2013 (Nevertheless)
------------------------------------------
  New Features:
    * Python 2.6 is now supported if ``argparse`` and ``ordereddict``
      dependencies are installed. Thanks to Bouke Versteegh for much of this.
    * More support and bug fixes for `ID3 chapters and table-of-contents`_.
    * [:bbissue:`28`] [classic plugin] ``-d/-D`` options for setting tag
      disc number and disc set total.
    * Frames are always written in sorted order, so if a tag is rewritten
      with no values changed the file's checksum remains the same.
    * Documentation and examples are now included in source distribution.
    * [classic plugin] Removed ``-p`` for setting publisher since using it
      when ``-P`` is intended is destructive.
    * [classic plugin] Supports ``--no-color`` to disable color output. Note,
      this happens automatically if the output streams is not a TTY.
    * ``Tag.save`` supports preserving the file modification time; and option
      added to classic plugin.
    * [statistics plgin] Added rules for "lint-like" checking of a collection.
      The rules are not yet configurable.
    * ERROR is now the default log level.

  Bug fixes:
    * Various fixes for PRIV frames, error handling, etc. from Bouke Versteegh
    * Convert '/' to '-' in TagTemplate names (i.e. --rename)
    * Drop TSIZ frames when converting to ID3 v2.4
    * ID3 tag padding size now set correctly.
    * Fixes for Unicode paths.
    * License clarification in pkg-info.
    * The ``-b`` setup.py argument is now properly supported.
    * [:bbissue:`10`] Magic module `hasattr` fix.
    * [:bbissue:`12`] More robust handling of bogus play count values.
    * [:bbissue:`13`] More robust handling of bogus date values.
    * [:bbissue:`18`] Proper unicode handling of APIC descriptions.
    * [:bbissue:`19`] Proper use of argparse.ArgumentTypeError
    * [:bbissue:`26`] Allow TCMP frames when parsing.
    * [:bbissue:`30`] Accept more invalid frame types (iTunes)
    * [:bbissue:`31`] Documentation fixes.
    * [:bbissue:`31`] Fix for bash completion script.
    * [:bbissue:`32`] Fix for certain mp3 bit rate and play time computations.

.. _ID3 chapters and table-of-contents: http://www.id3.org/id3v2-chapters-1.0

0.7.1 - 11.25.2012 (Feel It)
------------------------------
  New Features:
    * [:bbissue:`5`] Support for `ID3 chapters and table-of-contents`_ frames
      (i.e.CHAP and CTOC).
    * A new plugin for toggling the state of iTunes podcast
      files. In other words, PCST and WFED support. Additionally, the Apple
      "extensions" frames TKWD, TDES, and TGID are supported.
      Run ``eyeD3 -P itunes-podcast --help`` for more info.
    * Native frame type for POPM (Popularity meter).
      See the :func:`eyed3.id3.tag.Tag.popularities` accessor method.
    * Plugins can deal with traversed directories instead of only file-by-file.
      Also, :class:`eyed3.plugins.LoaderPlugin` can optionally cache the
      loaded audio file objects for each callback to ``handleDirectory``.
    * [classic plugin] New --remove-frame option.
    * [statistics plugin] More accurate values and easier to extend.

  Bug fixes:
    * Fixed a very old bug where certain values of 0 would be written to
      the tag as '' instead of '\x00'.
    * [:bbissue:`6`] Don't crash on malformed (invalid) UFID frames.
    * Handle timestamps that are terminated with 'Z' to show the time is UTC.
    * Conversions between ID3 v2.3 and v2.4 date frames fixed.
    * [classic plugin] Use the system text encoding (locale) when converting
      lyrics files to Unicode.


0.7.0 - 11.15.2012 (Be Quiet and Drive)
----------------------------------------

.. warning::
  This release is **NOT** API compatible with 0.6.x. The majority
  of the command line interface has been preserved although many options
  have either changed or been removed.
..

  New Features:
    * Command line script ``eyeD3`` now supports plugins. The default plugin
      is the classic interface for tag reading and editing.
    * Plugins for writing NFO files, displaying lame/xing headers, jabber tunes,
      and library statistics.
    * Module name is now ``eyed3`` (all lower case) to be more standards
      conforming.
    * New ``eyed3.id3.Tag`` interface based on properties.
    * Improved ID3 date frame support and 2.3<->2.4 conversion, and better
      conversions, in general.
    * Native support for many more ID3 frame types.
    * Python Package Index friendly, and installable with 'pip'.
    * Improved mime-type detection.
    * Improved unicode support.
    * Support for config files to contain common options for the command-line
      tool.


0.6.18 - 11.25.2011 (Nobunny loves you)
-----------------------------------------------
  New features:
    * Support for disc number frames (TPOS).
      Thanks to Nathaniel Clark <nate@misrule.us>
    * Added %Y (year) and %G (genre) substitution variables for file renames.
      Thanks to Otávio Pontes <otaviobp@gmail.com>
    * Improved XML (--jep-118) escaping and a new option (--rfc822) to output
      in RFC 822 format. Thanks to Neil Schemenauer <nas@arctrix.com>
    * --rename will NOT clobber existing files.
    * New option --itunes to write only iTunes accepted genres.
      Thanks to Ben Isaacs <Ben XO me@ben-xo.com>
    * If available the 'magic' module will be used to determine mimetypes when
      the filename is not enough. Thanks to Ville Skyttä <ville.skytta@iki.fi>
    * --set-encoding can be used along with a version conversion arg to apply
      a new encoding to the new tag.
    * Increased performance for mp3 header search when malformed GEOB frames
      are encountered. Thanks to Stephen Fairchild <sfairchild@bethere.co.uk>
    * Less crashing when invalid user text frames are encountered.
    * Less crashing when invalid BPM values (empty/non-numeric) are encountered.

0.6.17 - 02.01.2009 (The Point of No Return)
-----------------------------------------------
  Bug fixes:
    * Workaround invalid utf16
    * Show all genres during --list-genres
    * Workaround invalid PLCT frames.
    * Show all tracks during --nfo output.
  New features:
    * Support for URL frames (W??? and WXXX)
    * Program exit code for the 'eyeD3' command line tool

0.6.16 - 06.09.2008 (Gimme Danger)
-----------------------------------------------
  Bug fixes:
    * Typo fix of sysnc/unsync data. Thanks to Gergan Penkov <gergan@gmail.com>
    * Infinite loop fix when dealing with malformed APIC frames.
    * Tag.removeUserTextFrame helper.
      Thanks to David Grant <davidgrant@gmail.com>

0.6.15 - 03.02.2008 (Doin' The Cockroach)
-----------------------------------------------
  Bug fixes:
    * ID3 v1 comment encoding (latin1) bug fix
      (Renaud Saint-Gratien <rsg@nerim.net>)
    * APIC picture type fix (Michael Schout <mschout@gkg.net>)
    * Fixed console Unicode encoding for display.
    * Fixed frame de-unsnychronization bugs.
    * Round float BPMs to int (per the spec)

0.6.14 - 05.08.2007 (Breakthrough)
-----------------------------------------------
  Bugs fixes:
    - Fixed a nasty corruption of the first mp3 header when writing to files
      that do not already contain a tag.
    - Fixed a bug that would duplicate TYER frames when setting new values.
    - Fixed the reading/validation of some odd (i.e.,rare) mp3 headers
  New Features:
    - Encoding info extracted from Lame mp3 headers [Todd Zullinger]
    - Genre names will now support '|' to allow for genres like
      "Rock|Punk|Pop-Punk" and '!' for "Oi!"

0.6.13 - 04.30.2007 (Undercovers On)
-----------------------------------------------
  - Numerous write fixes, especially for v2.4 tags.
    Thanks to Alexander Thomas <dr-lex@dr-lex.34sp.com> for finding these.
  - Add --no-zero-padding option to allow disabling of zero padding track
    numbers
  - Add --nfo option to output NFO format files about music directories.
  - Time computation fixes when MP3 frames headers were mistakingly found.

0.6.12 - 02.18.2007 (Rid Of Me)
-----------------------------------------------
  - Handle Mac style line ending in lyrics and display with the proper output
    encoding. [Todd Zullinger]
  - TDTG support and other date frame fixes. [Todd Zullinger]
  - Output encoding bug fixes. [Todd Zullinger]

0.6.11 - 11.05.2006 (Disintegration)
-----------------------------------------------
  - Support for GEOB (General encapsulated object) frames from
    Aaron VonderHaar <gruen0aermel@gmail.com>
  - Decreased memory consumption during tag rewrites/removals.
  - Allow the "reserved" mpeg version bits when not in strict mode.
  - Solaris packages available via Blastwave -
    http://www.blastwave.org/packages.php/pyeyed3

0.6.10 - 03.19.2006 (Teh Mesk release)
-----------------------------------------------
  - Unsynchronized lyrics (USLT) frame support [Todd Zullinger <tmz@pobox.com>]
  - UTF16 bug fixes
  - More forgiving of invalid User URL frames (WXXX)
  - RPM spec file fixes [Knight Walker <kwalker@kobran.org>]
  - More details in --verbose display

0.6.9 - 01.08.2005 (The Broken Social Scene Release)
-------------------------------------------------------
  - eyeD3 (the CLI) processes directories more efficiently
  - A specific file system encoding can be specified for file renaming,
    see --fs-encoding (Andrew de Quincey)
  - Faster mp3 header search for empty and/or corrupt mp3 files
  - Extended header fixes
  - Bug fix for saving files with no current tag
  - What would a release be without unicode fixes, this time it's unicode
    filename output and JEP 0118 output.

0.6.8 - 08.29.2005 (The Anal Cunt Release)
-----------------------------------------------
  - Frame header size bug.  A _serious_ bug since writes MAY be
    affected (note: I've had no problems reported so far).

0.6.7 - 08.28.2005 (The Autopsy Release)
--------------------------------------------
  - Beats per minute (TPBM) interface
  - Publisher/label (TPUB) interface
  - When not in strict mode exceptions for invalid tags are quelled more often
  - Support for iTunes ID3 spec violations regarding multiple APIC frames
  - Bug fix where lang in CommentFrame was unicode where it MUST be ascii
  - Bug fixed for v2.2 frame header sizes
  - Bug fixed for v2.2 PIC frames
  - File rename bug fixes
  - Added -c option as an alias for --comment
  - -i/--write-images now takes a destination path arg.  Due to optparse
    non-support for optional arguments the path MUST be specified.  This option
    no longer clobbers existing files.

0.6.6 - 05.15.2005 (The Electric Wizard Release)
---------------------------------------------------
  - APIC frames can now be removed.
  - An interface for TBPM (beats per minute) frames.
  - Utf-16 bug fixes and better unicode display/output
  - RPM spec file fixes

0.6.5 - 04.16.2005
-----------------------------------------------
  - Read-only support for ID3 v2.2
  - TPOS frame support (disc number in set).
  - Bug fixes

0.6.4 - 02.05.2005
-----------------------------------------------
  - Native support for play count (PCNT), and unique file id (UFID) frames.
  - More relaxed genre processing.
  - Sync-safe bug fixed when the tag header requests sync-safety and not the
    frames themselves.
  - configure should successfly detect python release candidates and betas.

0.6.3 - 11.23.2004
-----------------------------------------------
  - Much better unicode support when writing to the tag.
  - Added Tag.setEncoding (--set-encoding) and --force-update
  - Handle MP3 frames that violate spec when in non-strict mode.
    (Henning Kiel <henning.kiel@rwth-aachen.de>)
  - Fix for Debian bug report #270964
  - Various bug fixes.

0.6.2 - 8.29.2004 (Happy Birthday Mom!)
-----------------------------------------------
  - TagFile.rename and Tag.tagToString (eyeD3 --rename=PATTERN).
    The latter supports substitution of tag values:
    %A is artist, %t is title, %a is album, %n is track number, and
    %N is track total.
  - eyeD3 man page.
  - User text frame (TXXX) API and --set-user-text-frame.
  - Python 2.2/Optik compatibility works now.
  - ebuild for Gentoo (http://eyed3.nicfit.net/releases/gentoo/)


0.6.1 - 5/14/2004 (Oz/2 Ohh my!)
---------------------------------
  - Unicode support - UTF-8, UTF-16, and UTF-16BE
  - Adding images (APIC frames) is supported (--add-image, Tag.addImage(), etc.)
  - Added a --relaxed option to be much more forgiving about tags that violate
    the spec.  Quite useful for removing such tags.
  - Added Tag.setTextFrame (--set-text-frame=FID:TEXT)
  - Added --remove-comments.
  - Now requires Python 2.3. Sorry, but I like cutting-edge python features.
  - Better handling and conversion (2.3 <=> 2.4) of the multiple date frames.
  - Output format per JEP 0118: User Tune, excluding xsd:duration format for
    <length/> (http://www.jabber.org/jeps/jep-0118.html)
  - Lot's of bug fixes.
  - Added a mailing list.  Subscribe by sending a message to
    eyed3-devel-subscribe@nicfit.net


0.5.1 - 7/17/2003 (It's Too Damn Hot to Paint Release)
-----------------------------------------------------------
  - Temporary files created during ID3 saving are now properly cleaned up.
  - Fixed a "bug" when date frames are present but contain empty strings.
  - Added a --no-color option to the eyeD3 driver.
  - Workaround invalid tag sizes by implyied padding.
  - Updated README


0.5.0 - 6/7/2003 (The Long Time Coming Release)
-------------------------------------------------
  - ID3 v2.x saving.
  - The eyeD3 driver/sample program is much more complete, allowing for most
    common tag operations such as tag display, editing, removal, etc.
    Optik is required to use this program.  See the README.
  - Complete access to all artist and title frames (i.e. TPE* and TIT*)
  - Full v2.4 date support (i.e. TDRC).
  - Case insensitive genres and compression fixes. (Gary Shao)
  - ExtendedHeader support, including CRC checksums.
  - Frame groups now supported.
  - Syncsafe integer conversion bug fixes.
  - Bug fixes related to data length indicator bytes.
  - Genre and lot's of other bug fixes.


0.4.0 - 11/11/2002 (The Anniversary Release)
---------------------------------------------
  - Added the ability to save tags in ID v1.x format, including when the
    linked file was IDv2.  Original backups are created by default for the
    time being...
  - Added deleting of v1 and v2 frames from the file.
  - Zlib frame data decompression is now working.
  - bin/eyeD3 now displays user text frames, mp3 copyright and originality,
    URLs, all comments, and images. Using the --write-images arg will
    write each APIC image data to disk.
  - Added eyeD3.isMp3File(),  Tag.clear(), Tag.getImages(), Tag.getURLs(),
    Tag.getCDID(), FrameSet.removeFrame(), Tag.save(), ImageFrame.writeFile(),
    etc...
  - Modified bin/eyeD3 to grok non Mp3 files.  This allows testing with
    files containing only tag data and lays some groundwork for future
    OGG support.
  - Fixed ImageFrame mime type problem.
  - Fixed picture type scoping problems.


0.3.1 - 10/24/2002
-------------------
  - RPM packages added.
  - Fixed a bug related to ID3 v1.1 track numbers. (Aubin Paul)
  - Mp3AudioFile matchs ``*.mp3`` and ``*.MP3``. (Aubin Paul)


0.3.0 - 10/21/2002
------------------
  - Added a higher level class called Mp3AudioFile.
  - MP3 frame (including Xing) decoding for obtaining bit rate, play time,
    etc.
  - Added APIC frame support (eyeD3.frames.Image).
  - BUG FIX: Tag unsynchronization and deunsynchronization now works
    correctly and is ID3 v2.4 compliant.
  - Tags can be linked with file names or file objects.
  - More tag structure abstractions (TagHeader, Frame, FrameSet, etc.).
  - BUG FIX: GenreExceptions were not being caught in eyeD3 driver.


0.2.0 - 8/15/2002
----------------------
  - ID3_Tag was renamed to Tag.
  - Added Genre and GenreMap (eyeD3.genres is defined as the latter type)
  - Added support of ID3 v1 and v2 comments.
  - The ID3v2Frame file was renamed ID3v2 and refactoring work has started
    with the addition of TagHeader.


0.1.0 - 7/31/2002
----------------------
  - Initial release.