changelog 18.5 KB
Newer Older
Duncan Coutts's avatar
Duncan Coutts committed
1
2
-*-change-log-*-

3
2.2.0.0 (current development version)
Moritz Angermann's avatar
Moritz Angermann committed
4
	* 'cabal configure' now supports '--enable-static' which can be
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
5
	used to build static libaries with GHC via GHC's `-staticlib` flag.
6
7
	* Don't automatically/silently case-correct mispelled package-names
	on CLI (#4778)
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
8
	* 'cabal update' now supports '--index-state' which can be used to
9
	roll back the index to an earlier state.
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
10
11
	* 'cabal new-configure' now backs up the old 'cabal.project.local'
	file if it exists (#4460).
Francesco Gazzetta's avatar
Francesco Gazzetta committed
12
	* Completed the 'new-run' command (#4477). The functionality is the
13
14
	same of the old 'run' command but using nix-style builds.
	Additionally, it can run executables across packages in a project.
15
	* Completed the 'new-bench' command. Same as above.
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
16
17
	* '--allow-{newer,older}' syntax has been enhanced. Dependency
	relaxation can be now limited to a specific release of a package,
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
18
	plus there's a new syntax for relaxing only caret-style (i.e. '^>=')
19
	dependencies (#4575, #4669).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
20
	* On macOS, `new-build` will now place dynamic libraries into
21
22
	`store/lib` and aggressively shorten their names in an effort to
	stay within the load command size limits of macOSs mach-o linker.
23
24
	* Use [lfxtb] letters to differentiate component kind instead of
	opaque "c" in dist-dir layout.
25

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
26
27
28
29
30
31
32
33
2.0.0.1 Mikhail Glushenkov <mikhail.glushenkov@gmail.com> TBD 2017
	* Support for GHC's numeric -g debug levels (#4673).
	* Demoted 'scope' field version check to a warning (#4714).
	* Fixed verbosity flags getting removed before being passed to
	'printPlan' (#4724).
	* Added a '--store-dir' option that can be used to configure the
	location of the build global build store (#4623).
	* Turned `allow-{newer,older}` in `cabal.project` files into an
34
	accumulating field to match CLI flag semantics (#4679).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
35
	* Documentation fixes.
36
37

2.0.0.0 Mikhail Glushenkov <mikhail.glushenkov@gmail.com> August 2017
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
38
39
40
	* Removed the '--root-cmd' parameter of the 'install' command
	(#3356).
	* Deprecated 'cabal install --global' (#3356).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
41
42
43
44
45
46
	* Changed 'cabal upload' to upload a package candidate by default
	(#3419). Same applies to uploading documentation.
	* Added a new 'cabal upload' flag '--publish' for publishing a
	package on Hackage instead of uploading a candidate (#3419).
	* Added optional solver output visualisation support via the
	tracetree package. Mainly intended for debugging (#3410).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
47
48
	* Removed the '--check' option from 'cabal upload'
	(#1823). It was replaced by package candidates.
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
49
50
	* Fixed various behaviour differences between network transports
	(#3429).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
51
52
	* The bootstrap script now works correctly when run from a Git
	clone (#3439).
bardur.arantsson's avatar
bardur.arantsson committed
53
	* Removed the top-down solver (#3598).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
54
55
56
	* The '-v/--verbosity' option no longer affects GHC verbosity
	(except in the case of '-v0'). Use '--ghc-options=-v' to enable
	verbose GHC output (#3540, #3671).
57
58
	* Changed the default logfile template from
	'.../$pkgid.log' to '.../$compiler/$libname.log' (#3807).
59
60
	* Added a new command, 'cabal reconfigure', which re-runs 'configure'
	with the most recently used flags (#2214).
Mikhail Glushenkov's avatar
Typo.    
Mikhail Glushenkov committed
61
62
	* Added the '--index-state' flag for requesting a specific version
	of the package index (#3893, #4115).
63
64
65
	* Support for building Backpack packages.  See
	https://github.com/ezyang/ghc-proposals/blob/backpack/proposals/0000-backpack.rst
	for more details.
ttuegel's avatar
ttuegel committed
66
	* Support the Nix package manager (#3651).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
67
68
	* Made the 'template-haskell' package non-upgradable again (#4185).
	* Fixed password echoing on MinTTY (#4128).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
69
	* Added a new solver flag, '--allow-boot-library-installs', that allows
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
70
71
72
	any package to be installed or upgraded (#4209).
	* New 'cabal-install' command: 'outdated', for listing outdated
	version bounds in a .cabal file or a freeze file (#4207).
kristenk's avatar
kristenk committed
73
	* Added qualified constraints for setup dependencies. For example,
74
75
76
	--constraint="setup.bar == 1.0" constrains all setup dependencies on
	bar, and --constraint="foo:setup.bar == 1.0" constrains foo's setup
	dependency on bar (part of #3502).
kristenk's avatar
kristenk committed
77
78
	* Non-qualified constraints, such as --constraint="bar == 1.0", now
	only apply to top-level dependencies. They don't constrain setup or
79
80
	build-tool dependencies. The new syntax --constraint="any.bar == 1.0"
	constrains all uses of bar.
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
81
82
	* Added a technical preview version of the 'cabal doctest' command
	(#4480).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
83

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
1.24.0.2 Mikhail Glushenkov <mikhail.glushenkov@gmail.com> December 2016
	* Adapted to the revert of a PVP-noncompliant API change in
	Cabal 1.24.2.0 (#4123).
	* Bumped the directory upper bound to < 1.4 (#4158).

1.24.0.1 Ryan Thomas <ryan@ryant.org> October 2016
	* Fixed issue with passing '--enable-profiling' when invoking
	Setup scripts built with older versions of Cabal (#3873).
	* Fixed various behaviour differences between network transports
	(#3429).
	* Updated to depend on the latest hackage-security that fixes
	various issues on Windows.
	* Fixed 'new-build' to exit with a non-zero exit code on failure
	(#3506).
	* Store secure repo index data as 01-index.* (#3862).
	* Added new hackage-security root keys for distribution with
	cabal-install.
	* Fix an issue where 'cabal install' sometimes had to be run twice
	for packages with build-type: Custom and a custom-setup stanza
	(#3723).
	* 'cabal sdist' no longer ignores '--builddir' when the package's
	build-type is Custom (#3794).

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
107
1.24.0.0 Ryan Thomas <ryan@ryant.org> March 2016
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
108
109
110
111
112
113
114
115
	* If there are multiple remote repos, 'cabal update' now updates
	them in parallel (#2503).
	* New 'cabal upload' option '-P'/'--password-command' for reading
	Hackage password from arbitrary program output (#2506).
	* Better warning for 'cabal run' (#2510).
	* 'cabal init' now warns if the chosen package name is already
	registered in the source package index (#2436).
	* New 'cabal install' option: '--offline' (#2578).
116
	* Accept 'builddir' field in cabal.config (#2484)
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
117
118
119
	* Read 'builddir' option from 'CABAL_BUILDDIR' environment variable.
	* Remote repos may now be configured to use https URLs. This uses
	either curl or wget or, on Windows, PowerShell, under the hood (#2687).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
120
121
	* Install target URLs can now use https e.g. 'cabal install
	https://example.com/foo-1.0.tar.gz'.
122
	* Automatically use https for cabal upload for the main
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
123
124
	hackage.haskell.org (other repos will use whatever they are
	configured to use).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
125
126
	* Support for dependencies of custom Setup.hs scripts
	(see http://www.well-typed.com/blog/2015/07/cabal-setup-deps/).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
127
128
129
	* 'cabal' program itself now can be used as an external setup
	method. This fixes an issue when Cabal version mismatch caused
	unnecessary reconfigures (#2633).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
130
131
	* Improved error message for unsatisfiable package constraints
	(#2727).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
132
	* Fixed a space leak in 'cabal update' (#2826).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
133
134
	* 'cabal exec' and 'sandbox hc-pkg' now use the configured
	compiler (#2859).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
135
136
	* New 'cabal haddock' option: '--for-hackage' (#2852).
	* Added a warning when the solver cannot find a dependency (#2853).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
137
138
139
	* New 'cabal upload' option: '--doc': upload documentation to
	hackage (#2890).
	* Improved error handling for 'sandbox delete-source' (#2943).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
140
	* Solver support for extension and language flavours (#2873).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
141
	* Support for secure repos using hackage-security (#2983).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
142
143
	* Added a log file message similar to one printed by 'make' when
	building in another directory (#2642).
144
145
146
	* Added new subcommand 'init' to 'cabal user-config'. This
	subcommand creates a cabal configuration file in either the
	default location or as specified by --config-file (#2553).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
147
148
	* The man page for 'cabal-install' is now automatically generated
	(#2877).
149
150
	* The '--allow-newer' option now works as expected when specified
	multiple times (#2588).
151
152
153
	* New config file field: 'extra-framework-dirs' (extra locations
	to find OS X frameworks in). Can be also specified as an argument
	for 'install' and 'configure' commands (#3158).
154
155
	* It's now possible to limit the scope of '--allow-newer' to
	single packages in the install plan (#2756).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
156
	* Full '--allow-newer' syntax is now supported in the config file
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
157
158
159
	(that is, 'allow-newer: base, ghc-prim,  some-package:vector')
	(#3171).
	* Improved performance of '--reorder-goals' (#3208).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
160
	* Fixed space leaks in modular solver (#2916, #2914).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
161
	* Made the solver aware of pkg-config constraints (#3023).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
162
163
	* Added a new command: 'gen-bounds' (#3223). See
	http://softwaresimply.blogspot.se/2015/08/cabal-gen-bounds-easy-generation-of.html.
164
165
	* Tech preview of new nix-style isolated project-based builds.
	Currently provides the commands (new-)build/repl/configure.
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
166

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
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
1.22.9.0 Ryan Thomas <ryan@ryant.org> March 2016
	* Include Cabal-1.22.8.0

1.22.8.0 Ryan Thomas <ryan@ryant.org> February 2016
	* Only Custom setup scripts should be compiled with '-i -i.'.
	* installedCabalVersion: Don't special-case Cabal anymore.
	* Bump the HTTP upper bound. See #3069.

1.22.7.0 Ryan Thomas <ryan@ryant.org> December 2015
	* Remove GZipUtils tests
	* maybeDecompress: bail on all errors at the beginning of the stream with zlib < 0.6
	* Correct maybeDecompress

1.22.6.0 Ryan Thomas <ryan@ryant.org> June 2015
	* A fix for @ezyang's fix for #2502. (Mikhail Glushenkov)

1.22.5.0 Ryan Thomas <ryan@ryant.org> June 2015
	* Reduce temporary directory name length, fixes #2502. (Edward Z. Yang)

1.22.4.0 Ryan Thomas <ryan@ryant.org> May 2015
	* Force cabal upload to always use digest auth and never basic auth.
	* Add dependency-graph information to `printPlan` output
	* bootstrap.sh: fixes linker matching to avoid cases where tested linker names appear unexpectedly in compiler output (fixes #2542)

1.22.3.0 Ryan Thomas <ryan@ryant.org> April 2015
	* Fix bash completion for sandbox subcommands - Fixes #2513 (Mikhail Glushenkov)
	* filterConfigureFlags: filter more flags (Mikhail Glushenkov)

1.22.2.0 Ryan Thomas <ryan@ryant.org> March 2015
	* Don't pass '--{en,dis}able-profiling' to old setup exes.
	* -Wall police
	* Allow filepath 1.4

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
200
1.22.0.0 Johan Tibell <johan.tibell@gmail.com> January 2015
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
201
	* New command: user-config (#2159).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
202
203
204
205
206
207
208
209
210
211
212
	* Implement 'cabal repl --only' (#2016).
	* Fix an issue when 'cabal repl' was doing unnecessary compilation
	(#1715).
	* Prompt the user to specify source directory in 'cabal init'
	(#1989).
	* Remove the self-upgrade check (#2090).
	* Don't redownload already downloaded packages when bootstrapping
	(#2133).
	* Support sandboxes in 'bootstrap.sh' (#2137).
	* Install profiling and shared libs by default in 'bootstrap.sh'
	(#2009).
Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
213

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
214
215
216
217
218
219
220
221
222
223
224
225
226
1.20.2.0 Ryan Thomas <ryan@ryant.org> February 2016
	* Only Custom setup scripts should be compiled with '-i -i.'.
	* installedCabalVersion: Don't special-case Cabal anymore.

1.20.1.0 Ryan Thomas <ryan@ryant.org> May 2015
	* Force cabal upload to always use digest auth and never basic auth.
	* bootstrap.sh: install network-uri before HTTP

1.20.0.5 Johan Tibell <johan.tibell@gmail.com> December 2014
	* Support random 1.1.
	* Fix bootstrap script after network package split.
	* Support network-2.6 in test suite.

227
228
229
230
231
1.20.0.3 Johan Tibell <johan.tibell@gmail.com> June 2014
	* Don't attempt to rename dist if it is already named correctly
	* Treat all flags of a package as interdependent.
	* Allow template-haskell to be upgradable again

232
233
234
235
236
237
1.20.0.2 Johan Tibell <johan.tibell@gmail.com> May 2014
	* Increase max-backjumps to 2000.
	* Fix solver bug which led to missed install plans.
	* Fix streaming test output.
	* Tweak solver heuristics to avoid reinstalls.

238
239
240
241
242
1.20.0.1 Johan Tibell <johan.tibell@gmail.com> May 2014
	* Fix cabal repl search path bug on Windows
	* Include OS and arch in cabal-install user agent
	* Revert --constraint flag behavior in configure to 1.18 behavior

243
244
245
246
247
248
249
250
251
252
253
254
1.20.0.0 Johan Tibell <johan.tibell@gmail.com> April 2014
	* Build only selected executables
	* Add -j flag to build/test/bench/run
	* Improve install log file
	* Don't symlink executables when in a sandbox
	* Add --package-db flag to 'list' and 'info'
	* Make upload more efficient
	* Add --require-sandbox option
	* Add experimental Cabal file format command
	* Add haddock section to config file
	* Add --main-is flag to init

Mikhail Glushenkov's avatar
Mikhail Glushenkov committed
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
1.18.2.0 Ryan Thomas <ryan@ryant.org> February 2016
	* Only Custom setup scripts should be compiled with '-i -i.'.
	* installedCabalVersion: Don't special-case Cabal anymore.

1.18.1.0 Ryan Thomas <ryan@ryant.org> May 2015
	* Force cabal upload to always use digest auth and never basic auth.
	* Merge pull request #2367 from juhp/patch-2
	* Fix bootstrap.sh by bumping HTTP to 4000.2.16.1

1.18.0.7 Johan Tibell <johan.tibell@gmail.com> December 2014
	* Support random 1.1.
	* Fix bootstrap script after network package split.
	* Support network-2.6 in test suite.

1.18.0.5 Johan Tibell <johan.tibell@gmail.com> July 2014
	* Make solver flag resolution more conservative.

1.18.0.4 Johan Tibell <johan.tibell@gmail.com> May 2014
	* Increase max-backjumps to 2000.
	* Fix solver bug which led to missed install plans.
	* Tweak solver heuristics to avoid reinstalls.

Andres Löh's avatar
Andres Löh committed
277
278
279
280
281
282
283
284
285
286
287
288
289
290
0.14.0 Andres Loeh <andres@well-typed.com> April 2012
	* Works with ghc-7.4
	* Completely new modular dependency solver (default in most cases)
	* Some tweaks to old topdown dependency solver
	* Install plans are now checked for reinstalls that break packages
	* Flags --constraint and --preference work for nonexisting packages
	* New constraint forms for source and installed packages
	* New constraint form for package-specific use flags
	* New constraint form for package-specific stanza flags
	* Test suite dependencies are pulled in on demand
	* No longer install packages on --enable-tests when tests fail
	* New "cabal bench" command
	* Various "cabal init" tweaks

291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
0.10.0 Duncan Coutts <duncan@community.haskell.org> February 2011
	* New package targets: local dirs, local and remote tarballs
	* Initial support for a "world" package target
	* Partial fix for situation where user packages mask global ones
	* Removed cabal upgrade, new --upgrade-dependencies flag
	* New cabal install --only-dependencies flag
	* New cabal fetch --no-dependencies and --dry-run flags
	* Improved output for cabal info
	* Simpler and faster bash command line completion
	* Fix for broken proxies that decompress wrongly
	* Fix for cabal unpack to preserve executable permissions
	* Adjusted the output for the -v verbosity level in a few places

0.8.2 Duncan Coutts <duncan@community.haskell.org> March 2010
	* Fix for cabal update on Windows
	* On windows switch to per-user installs (rather than global)
	* Handle intra-package dependencies in dependency planning
	* Minor tweaks to cabal init feature
	* Fix various -Wall warnings
	* Fix for cabal sdist --snapshot

Duncan Coutts's avatar
Duncan Coutts committed
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
0.8.0 Duncan Coutts <duncan@haskell.org> Dec 2009
	* Works with ghc-6.12
	* New "cabal init" command for making initial project .cabal file
	* New feature to maintain an index of haddock documentation

0.6.4 Duncan Coutts <duncan@haskell.org> Nov 2009
	* Improve the algorithm for selecting the base package version
	* Hackage errors now reported by "cabal upload [--check]"
	* Improved format of messages from "cabal check"
	* Config file can now be selected by an env var
	* Updated tar reading/writing code
	* Improve instructions in the README and bootstrap output
	* Fix bootstrap.sh on Solaris 9
	* Fix bootstrap for systems where network uses parsec 3
	* Fix building with ghc-6.6

328
329
330
331
332
333
334
335
336
337
338
339
0.6.2 Duncan Coutts <duncan@haskell.org> Feb 2009
	* The upgrade command has been disabled in this release
	* The configure and install commands now have consistent behaviour
	* Reduce the tendancy to re-install already existing packages
	* The --constraint= flag now works for the install command
	* New --preference= flag for soft constraints / version preferences
	* Improved bootstrap.sh script, smarter and better error checking
	* New cabal info command to display detailed info on packages
	* New cabal unpack command to download and untar a package
	* HTTP-4000 package required, should fix bugs with http proxies
	* Now works with authenticated proxies.
	* On Windows can now override the proxy setting using an env var
340
	* Fix compatibility with config files generated by older versions
341
342
343
344
345
346
347
348
349
350
351
352
	* Warn if the hackage package list is very old
	* More helpful --help output, mention config file and examples
	* Better documentation in ~/.cabal/config file
	* Improved command line interface for logging and build reporting
	* Minor improvements to some messages

0.6.0 Duncan Coutts <duncan@haskell.org> Oct 2008
	* Constraint solver can now cope with base 3 and base 4
	* Allow use of package version preferences from hackage index
	* More detailed output from cabal install --dry-run -v
	* Improved bootstrap.sh

Duncan Coutts's avatar
Duncan Coutts committed
353
0.5.2 Duncan Coutts <duncan@haskell.org> Aug 2008
Duncan Coutts's avatar
Duncan Coutts committed
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
	* Suport building haddock documentaion
	* Self-reinstall now works on Windows
	* Allow adding symlinks to excutables into a separate bindir
	* New self-documenting config file
	* New install --reinstall flag
	* More helpful status messages in a couple places
	* Upload failures now report full text error message from the server
	* Support for local package repositories
	* New build logging and reporting
	* New command to upload build reports to (a compatible) server
	* Allow tilde in hackage server URIs
	* Internal code improvements
	* Many other minor improvements and bug fixes

0.5.1 Duncan Coutts <duncan@haskell.org> June 2008
	* Restore minimal hugs support in dependency resolver
	* Fix for disabled http proxies on Windows
	* Revert to global installs on Windows by default

0.5.0 Duncan Coutts <duncan@haskell.org> June 2008
	* New package dependency resolver, solving diamond dep problem
	* Integrate cabal-setup functionality
	* Integrate cabal-upload functionality
	* New cabal update and check commands
	* Improved behavior for install and upgrade commands
	* Full Windows support
	* New command line handling
	* Bash command line completion
	* Allow case insensitive package names on command line
	* New --dry-run flag for install, upgrade and fetch commands
	* New --root-cmd flag to allow installing as root
	* New --cabal-lib-version flag to select different Cabal lib versions
	* Support for HTTP proxies
	* Improved cabal list output
	* Build other non-dependent packages even when some fail
	* Report a summary of all build failures at the end
	* Partial support for hugs
	* Partial implementation of build reporting and logging
	* More consistent logging and verbosity
	* Significant internal code restructuring

0.4 Duncan Coutts <duncan@haskell.org> Oct 2007
	* Renamed executable from 'cabal-install' to 'cabal'
397
	* Partial Windows compatibility
Duncan Coutts's avatar
Duncan Coutts committed
398
399
400
401
402
403
404
405
406
407
408
409
	* Do per-user installs by default
	* cabal install now installs the package in the current directory
	* Allow multiple remote servers
	* Use zlib lib and internal tar code and rather than external tar
	* Reorganised configuration files
	* Significant code restructuring
	* Cope with packages with conditional dependencies

0.3 and older versions by Lemmih, Paolo Martini and others 2006-2007
	* Switch from smart-server, dumb-client model to the reverse
	* New .tar.gz based index format
	* New remote and local package archive format