/
ChangeLog
249 lines (163 loc) · 9.61 KB
/
ChangeLog
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
2011-04-10 Rob Nagle
* Everything: Rebranded Azul to Audiolog.
2009-08-25 Matt Hubert
* setup: Fixed a crash if python-musicbrainz2 doesn't exist.
* utils: Made o_o even more awesome. I know, I didn't think it was
possible either.
2009-08-23 Matt Hubert
* functions: Removed confirmation for actually deleting because it's
broken. We only delete things that we make anyway.
* setup: Added a setup script that automatically checks for all dependencies.
* Everything: Tagged version 0.2.1 for release. Go team!
2009-08-22 Matt Hubert and Rob Nagle
* TrackNumberFinder: Fixed padding on getTag.
* ReleaseFinder, ArtistFinder, getters: Start splitting folderFilePaths
on filesystem delimiters.
* extract, split, clean: Replaced all os.system with subprocess which
allows for better platform independence and filename sanitization.
* logging: Improved logging.
* Miscellaneous: Fixed random bugs and crashes.
2009-08-22 Matt Hubert
* getters: Fixed unicode problem with getPUID.
* python-musicbrainz2: Replaced with an external tagged to 0.7.0.
2009-08-20 Rob Nagle
* All: Added copyright and GPL notice to all code files.
* Roadmap: Created new document for listing planned major features and
ordering them chronologically and break them into releases.
2009-08-19 Matt Hubert
* azul, COPYING, AUTHORS: Added GPL License.
2009-08-17 Matt Hubert
* getters: Made finding dates more robust. Now releases that don't
have a date get filtered out, and finding a title with only a date will
look through all applicable releases to find it. Fixes a crash if a
release has less tracks than in the directory.
2009-08-16 Matt Hubert
* TitleFinder: Fix #2838624 - getFilenameForMB should remove delimiters
* Manager, clean, utils: Handle renaming files with filesystem-special
charactes (/ \ and :).
2009-08-16 Rob Nagle
* Miscellaneous: Cleaned up old logging statements and other small things
throughout code.
* TrackNumberFinder, TrackTotalFinder (getters): All getters now return
tracknumber and tracktotals as two character left-zero-padded strings.
Fixed bug #2838618.
* Finders (getters): Changed logging statements in all finders. Before, if
a precondition (like the presence of an current tag) was not met, a getter
returned without logging anything. Now a message describing the search is
always logged and if a precondition is not met then a message is logged
describing why.
* configuration: Added a new variable LOCAL_OS which contains the string
returned by platform.system() which will usually be "Windows" or "Linux".
* configuration: Made the configuration filename conditional upon the
local OS. If the OS is Windows, the filename is "audiolog.conf", otherwise
(I'm assuming we're on a Unix-like system) it's ".audiolog".
2009-08-15 Matt Hubert and Rob Nagle
* Everything: Extensive refactoring and architectural changes. Everything
relating to metadata finding and analyzing was completely re-written
to be more extensible and robust. Now metadata fields can be retrieved
using almost any combination of previously known data through MusicBrainz.
Additionally, fields can be retrieved in any order to take advantage of
data obtained from previous fields.
Fixed bugs #2808110, #2808121, #2808117.
2009-07-15 Matt Hubert
* ConfigurationDialog, MainWindow, configuration: Fix #2808103 -
Configuration file isn't read on startup
2009-06-17 Rob Nagle
* multiple files: Added encoding utf-8 to all Python files which did
not yet have it.
2009-06-17 Matt Hubert
* Track (rename): Added check to not attempt to rename file if it is
already correct (which ended up rejecting the release).
* MainWindow (MainWindow): Re-branded HandleIt as Azul. Cleaned up some
spaces, spammed various files with encoding: utf-8. Fixed "Exit" so it
actually works.
* GUI: Deleted. Code already in MainWindow.
* functions (directory): Now called getDirectoriesAndFiles.
* Miscellaneous: Added spaces to log messages, cleaned up small things.
2009-05-24 Rob Nagle
* release (findConsenus): Added code to remove date candidates which are not
between 1600 and the current year + 1, inclusive. Should this be done
somewhere else? And should the lower bound be 1600? (Some tracks are from
earlier; almost all are from much later.)
2009-04-24 Rob Nagle
* test_clean (test_clean): New file and function. Unit testing for
clean.standardizeFilenames function.
* test_extract (test_extract): New file and function. Unit testing for
extract.extract function.
2009-04-23 Rob Nagle
* traverse (traverse): Moved code to sort listdir entries.
* functions (directory): New function containing code moved from traverse.
2009-04-10 Rob Nagle
* getters (matchMB): Made the variable matches a set instead of list to
enforce uniqueness. Moved the code to remove matches which are similar to
the artist into an entirely separete block (which does two sweeps first
removing matches exactly the same as the artist and, if there are still
two or more matches, matches which are aboutEqual to the artist). Then,
at the end, we just check if there is only one match, and if there is,
we return it.
2009-04-09 Rob Nagle
* clean (lowercaseExtensions): Removed; merged into standardizeFilenames.
* clean (standardizeFilenames): New function. Lowercases extensions,
removes special characters and (mostly cooly) converts underscores and
periods being used in place of spaces into spaces.
* ConfigurationDialog (browse): When changing other lineEdits relative to
baseDir, I used a minor os.path hack to get a trailing slash in platform-
independent way instead of just appending a "/" character.
2009-04-07 Rob Nagle
* functions (aboutEqual): Now uses restrictChars to remove punctuation
and whitespace (and everything else but letters and digits).
* getters (matchMB): Added a call to restrictChars to eliminate special
characters in the string we are trying to match. I did this because of
an error I encountered when a filename with Asian (Chinese?) glyphs was
passed as parameter to MusicBrainz. I'm not sure what characters exactly
MB does not want, but because we're are generally doing inexact matching
anyway, because unusual characters rarely if ever help a search and because
MB generally can go from less to more but not vice versa, I thought
restricting all MB queries to numbers, digits, punctuation and whitespace
is not a bad idea.
* functions (restrictChars): New function. This function takes six
parameters: the string we are restricting, then four booleans indicating
whether to allow letters, digits, whitespace, and punctuation, respectively,
and finally a string of additional characters to allow. All but the first
of these parameters is optional. The booleans all default to true and the
custom string to None.
2009-04-05 Rob Nagle
* LogFrame: Added drop-down to select output level. Implemented filtering.
* LogFrame (addToLog): New function. Takes an entry, applies filter and
potentially adds to textEdit. This used to be a part of appendToLog but I
wanted to be able to use this functionality from updateLog as well so I
moved it to its own functions.
* LogFrame (log): Added log argument.
* All non-GUI files: Changed calls to log to add a level argument.
2009-04-04 Rob Nagle
* Every file: Added file docstring and converted all function docstrings
to standard. (See: Notes)
2009-04-03 Rob Nagle
* extract: Significantly restructured file. Instead of using a
dictionary of extractor functions, we now use a dictionary of extractor
commands. This was done because there was significant duplication of code
across the extractor functions. The makeDestDirectory function has also
been removed and all functionality now occurs inside the extract function.
* convert: Restructured file in a similar fashion to above.
* split (split): Code for moving multiple cue/audio pairs into separate
disc directories has been generalized and moved into its own function.
* functions (moveDiscsIntoFolders): New. This could be useful in dealing
with multiple discs in the audio handling process.
2009-03-30 Rob Nagle
* flowcontrol (clear): Function renamed to initialize.
* traverse (traverse): Reworked if clauses to check for desirable audio
sooner, potentially saving time and allowing later clauses to be shorter.
* traverse (traverse): Removed debugging statements which printed the
contents of subdirectoryPaths, filePaths and filePathsByType. This code was
moved to oldCode. It seems clear by now that those container variables are
being populated correctly and the code is now more clear and concise.
2009-03-29 Rob Nagle
* LogFrame (__init__, displayAll): Added a "Display All" Button which, when
clicked, calls the new displayAll method which sets all category checks.
2009-03-25 Rob Nagle
* ChangeLog: Created changelog which follows open source standards. See:
http://www.gnu.org/software/guile/changelogs/guile-changelogs_3.html
* TODO: Organized entries into categories, added new entries and added
more detail to others. I think it is a good idea to be very specific in TODO
entries. This makes it easier for us to implement and to know what the other
has in mind.