-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathCHANGES
199 lines (190 loc) · 8.33 KB
/
CHANGES
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
4.0 -> 4.1
+ Implement add-ons, previously listed in `arename.hooks', in sub-modules
to the ARename::* namespace. The official add-ons are documented, see
"perldoc ARename::ReplaceSpaces" for example. See "EXTENSIONS" in the
manual for details. The manual points out how to use the same system for
"User-defined extensions".
+ Add `expand_template_unknown_tag' hook.
+ KillNonASCII module gains ‘sanitisefat’ option (defaults to "off")
+ Silence “Unescaped left brace in regex” warning with recent versions
of Perl.
+ Improve Unicode support.
+ Fix possible infinite loop due to a bug in the template parser.
+ General reliability improvements.
3.0 -> 4.0
+ Changed meta-information gathering to one module, that deals with
all supported file types: Audio::Scan.
+ Added complex template expressions.
+ Support for new file types:
a) aac
b) ape
c) asf
d) mp4
e) mpc
f) wave
g) wavpack
+ New options:
a) ambiguoususefirst
b) checktemplatesinitially
c) template_aliases
d) usetypeasextension
+ New hooks:
a) ambiguoustag
b) expand_template_pre_expand_tag
c) expand_template_post_expand_tag
d) filetype_known
e) post_fill
f) post_scan
g) pre_scan
h) pre_rename
+ Removed hooks:
a) expand_template_next_tag
b) expand_template_postprocess_tag
c) post_method
d) post_rename
e) pre_method
f) *ALL* file-type specific hooks, like `post_process_ogg'.
+ Hooks with changed API:
a) startup
+ User settings (e.g. set varname = value) are supported in
configuration file sections now.
+ New command line options:
a) --ambiguous-use-first
b) --list-file-types
c) --list-exts-for-type <type>
d) --verbosity <integer-value>
e) --suppress-skips
+ Removed command line options:
a) -D (--debug is still there)
b) -q (--quiet is still there, but deprecated)
+ Changed command line options:
a) -v: Used to be `--verbose' but now is `--verbosity'.
`--verbose' is deprecated (may be removed in later versions)
and is equal to "--verbosity 20".
b) -Q is now a short-hand for `--suppress-skips' (the old option
`--uber-quiet' is still supported, but deprecated).
+ Changed Perl API:
a) `oprint()' deprecated. Will be removed in a later release!
b) `owarn()' deprecated. Will be removed in a later release!
+ New configuration file options:
a) `suppress_skips' enables `--suppress-skips'.
b) `verbosity' sets verbosity like `--verbosity' does.
+ Deprecated configuration file options:
The effects of the following options are disabled, deprecation
messages are printed and warnings are emitted. The options will
be removed at a later date.
a) `debug'
b) `quiet'
c) `quiet_skip'
d) `verbose'
+ New environment variables:
a) `$ARENAME_SUPPRESS_COLOURS': Entirely disable coloured
output from arename (version 4.0 uses colours by default).
+ Identifier aliases let you say "&ar" instead of "&artist".
+ Templates are checked for sanity after arename is done loading
configuration files.
2.0 -> 3.0
+ Changed option handling completely. Now every option has a
--long-option (and not all are available via short options)
Some short options even changed their meaning. Which is the
main reason for this to be a major version update.
+ List of changed options:
-M is gone entirely, the option is now: --compare-versions.
The old -c option is --rc now.
-m is gone, it is now --copy.
-c now is the shorthand for --copy.
-C is gone entirely, the option is now: --post-rc.
+ New options:
-c (--copy)
-u (--userset)
--enable-hooks
+ XDG_CONFIG_HOME support
The config is now searched like this:
a) try $XDG_CONFIG_HOME/arename/
$XDG_CONFIG_HOME defaults to $HOME/.config/.
b) $HOME/etc/arename/
c) $HOME/.arename/
d) $HOME/.arenamerc, $HOME/.arename.hooks etc.
+ Turn off startup messages if $ARENAME_LOAD_QUIET is set to 1
in the environment at arename's startup.
1.6 -> 2.0
= Quite a few changes in this release, these are the important
ones, that are visible to the user:
+ Dropping the .pl suffix of the scripts.
+ boolean parsing is stricter now.
+ string and interger settings are parsed seperately now,
which changes value checks and default values, too
+ Improved documentation.
+ 'tnpad 0' now switches off track number padding completely.
+ 'hookerrfatal' works as expected now.
= ARename.pm was thoroughly refactored.
+ Introducing 'warningsautodryrun' option, see manual for details.
+ Unknown config file lines trigger warnings rather then fatal
errors.
+ Broken section definition starts are fatal now.
+ Beautified -L output
+ Setup files are looked up in more then one place now:
i) ~/etc/arename/{rc,hooks}
ii) ~/.arename/{rc,hooks}
iii) ~/.arename{rc,.hooks}
The first setup directory, that is found wins.
+ Adding new feature: configuration profiles.
Additional configuration file sets depending on the current
working directory (see manual for details).
+ -S prints a list of profiles in the active configuration.
+ Use -P to force one or more profiles.
+ debugging can be switched on at runtime, now (see the -D option
and the 'debug' setting in the manual).
+ Improved zsh completion for all new command line options.
+ Slightly changed, enhanced and improved test suite; See
TESTING for details.
+ ataglist, when called without arguments tells exactly from which
arename version it originated from.
+ Adding -M option to arename, to enable the user to check if the
version of the script and the ARename.pm module comply.
1.5 -> 1.6
= No big user-visible changes in this release...
+ Introducing a test suite, that should catch stupid bugs, which
I overlooked in the past.
+ Cleanups in the Makefile.
+ Greatly improved the infrastructure of the project.
1.4 -> 1.5
+ Adding section support in the configuration file (see manual
for details).
+ The audio file's name is not handed around in subroutine arguments
anymore. It's available via get_file() and set_file() now. Thus
*all* hooks can access it now.
+ Hooks with changed API:
- pre_apply_defaults, pre_template, post_template, post_ensure_dir,
post_rename, pre_process_flac, post_process_flac,
pre_process_mp3, post_process_mp3, pre_process_ogg,
post_process_ogg, next_file_early, next_file_late,
filetype_unknown, file_done, pre_method, post_method
- All of these don't get the file name handed over anymore.
+ Adding -L option, which dumps the current configuration if supplied.
+ Adding -c: read a config file instead of ~/.arenamerc
+ Adding -C: read another config file between ~/.arenamerc and
./.arename.local
+ Local config files (.arename.local in the current working directory)
are *not* read by default any more. If you want to enable that
behaviour again, set the new 'uselocalrc' setting to 'true'.
+ Adding -l: set 'uselocalrc' to 'true' via the command line.
+ Adding canonicalize setting: Even if a relative path name is given
on the command line, use its absolute file name for processing.
+ Adding canonicalize hook: Only executed if the setting of the same
name is set to true (see docs for details).
+ Changed API for apply_defaults hook: the %defaults hash is not handed
over as a reference anymore; Use get_default_keys(), get_defaults()
and set_defaults() to access it in hooks now.
1.3 -> 1.4
+ Fix installation procedure
1.2 -> 1.3
+ Fix reaction to broken 'set' calls
1.1 -> 1.2
+ fix_template_albumless() hook supplied by Maximilian Gaß
+ user defined variables via 'set' command
1.0 -> 1.1
+ introduce hooks
+ read filenames from stdin (if requested)
+ quiet_skip does not require quiet to be set anymore
it'll force quiet on itself