Bastian Eicher [Sat, 23 Jun 2012 10:39:21 +0000 (23 12:39 +0200)]
Directly embedded certificate bundle from certifi library (replaced EquifaxSecureCA)
Bastian Eicher [Sat, 23 Jun 2012 09:50:32 +0000 (23 11:50 +0200)]
Merged changes from master
Bastian Eicher [Sat, 23 Jun 2012 07:52:40 +0000 (23 08:52 +0100)]
Typo in previous patch
Thomas Leonard [Thu, 21 Jun 2012 18:40:45 +0000 (21 19:40 +0100)]
Switched back to TemporaryFile when auto_delete = True
TemporaryFile is cleaned up automatically by the OS, whereas NamedTemporaryFile
isn't.
Bastian Eicher [Thu, 21 Jun 2012 17:12:45 +0000 (21 19:12 +0200)]
Do not check for extraction utilities (e.g., unzip) when ZEROINSTALL_EXTERNAL_STORE environment variable is set
Thomas Leonard [Thu, 21 Jun 2012 18:27:43 +0000 (21 19:27 +0100)]
Depend explicitly on GnuPG
Suggested by Bastian Eicher - on Windows gpg can't be assumed to be in the PATH
and the Windows version of Zero Install does not place its bundled version of
GnuPG there.
Bastian Eicher [Thu, 21 Jun 2012 13:24:20 +0000 (21 15:24 +0200)]
Fixed bug with external store when type or extract is not given
Do not try to pass None as process arguments in fetch._add_to_external_store:
default extract directory to empty string, default MIME type to MIME type guess
based on URL.
Thomas Leonard [Thu, 21 Jun 2012 06:08:58 +0000 (21 07:08 +0100)]
Delete temporary files on abort, even for auto_delete = False
Bastian Eicher [Mon, 18 Jun 2012 12:58:32 +0000 (18 14:58 +0200)]
Merged changes from master
Bastian Eicher [Mon, 11 Jun 2012 14:48:27 +0000 (11 16:48 +0200)]
Provide external store binary via ZEROINSTALL_EXTERNAL_STORE environment variable
This is needed on Windows, since only the .NET code knows how to handle
symlinks and executable bits correctly and how to use ACLs to make the
directories read-only.
Thomas Leonard [Thu, 14 Jun 2012 07:13:57 +0000 (14 08:13 +0100)]
Use XDG_* environment variables even on Windows
Based on patch from Dave Abrahams.
Thomas Leonard [Sun, 17 Jun 2012 07:42:34 +0000 (17 08:42 +0100)]
Allow passing requirements to "0install select APP"
Shows the selections that would result from the new requirements, and displays
a message about using "0install update" to save them.
Thomas Leonard [Sat, 16 Jun 2012 08:09:05 +0000 (16 09:09 +0100)]
Simplified Windows Java detection
Thomas Leonard [Sat, 16 Jun 2012 08:00:03 +0000 (16 09:00 +0100)]
Added 'Windows' distribution name for package-implementation
Bastian Eicher [Fri, 15 Jun 2012 23:26:22 +0000 (16 01:26 +0200)]
Added JRE/JDK 7 support on Windows
Bastian Eicher [Fri, 15 Jun 2012 23:45:12 +0000 (16 01:45 +0200)]
Replaced remaining Policy references with Driver
Thomas Leonard [Wed, 13 Jun 2012 18:51:29 +0000 (13 19:51 +0100)]
Removed obsolete code for handling non-XML signatures
Thomas Leonard [Wed, 13 Jun 2012 17:55:45 +0000 (13 18:55 +0100)]
0install update: reload feed after running the GUI
When updating an interface that wasn't already cached, this could also give the
error:
ValueError: max() arg is an empty sequence
Bastian Eicher [Tue, 12 Jun 2012 22:50:05 +0000 (13 00:50 +0200)]
Use ZEROINSTALL_PORTABLE_BASE environment variable to override normal XDG directory resolution
Thomas Leonard [Sat, 9 Jun 2012 13:50:11 +0000 (9 14:50 +0100)]
Fixed some imports (pyflakes)
Thomas Leonard [Sat, 9 Jun 2012 12:13:38 +0000 (9 13:13 +0100)]
Atomic updates for the icon cache
Thomas Leonard [Sat, 9 Jun 2012 11:56:53 +0000 (9 12:56 +0100)]
Removed old Policy class
Policy has been deprecated since 0.53.
Thomas Leonard [Sat, 9 Jun 2012 08:48:08 +0000 (9 09:48 +0100)]
Added <command name='0install' ...> to allow running 0install instead of 0launch
Thomas Leonard [Sat, 9 Jun 2012 08:19:56 +0000 (9 09:19 +0100)]
Updated Policy tests to test Driver instead
Also, trying to create a Policy now issues a warning.
Bastian Eicher [Thu, 7 Jun 2012 09:44:16 +0000 (7 11:44 +0200)]
Added JRE/JDK 7 support
Thomas Leonard [Tue, 5 Jun 2012 20:17:21 +0000 (5 21:17 +0100)]
Better diagnostics if testRejectKey fails
Thomas Leonard [Tue, 5 Jun 2012 17:09:23 +0000 (5 18:09 +0100)]
Don't try to use mirror while testing
Error was:
AttributeError: TestConfig instance has no attribute 'feed_mirror'
Thomas Leonard [Tue, 5 Jun 2012 17:03:24 +0000 (5 18:03 +0100)]
Fixed some bugs in the bug reporter
The thank you dialog was a child of the bug reporter box, but that got destroyed immediately afterwards.
The link to see the existing bug reports was invisible.
Thomas Leonard [Tue, 5 Jun 2012 16:24:42 +0000 (5 17:24 +0100)]
Updated GUI to use new Driver API
Thomas Leonard [Tue, 5 Jun 2012 16:15:28 +0000 (5 17:15 +0100)]
Bugfix: the GUI showed source feeds as unavailable, even when we wanted source code
Thomas Leonard [Tue, 5 Jun 2012 15:50:06 +0000 (5 16:50 +0100)]
Added Solver.get_arch_for
Thomas Leonard [Tue, 5 Jun 2012 15:05:10 +0000 (5 16:05 +0100)]
Fixed bug reporting errors when removing feeds
Thomas Leonard [Tue, 5 Jun 2012 15:03:43 +0000 (5 16:03 +0100)]
Fixed bug when reopening the preferences window
Thomas Leonard [Tue, 5 Jun 2012 14:58:37 +0000 (5 15:58 +0100)]
Removed some unnecessary uses of Policy
Thomas Leonard [Tue, 5 Jun 2012 14:27:30 +0000 (5 15:27 +0100)]
Document when config.py was added
Dave Abrahams [Sun, 3 Jun 2012 22:51:29 +0000 (3 18:51 -0400)]
Workaround: let gobject.MainLoop() construct its own default context
Works around http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=580791
which is present in pygobject < 2.28
Thomas Leonard [Mon, 4 Jun 2012 13:27:38 +0000 (4 14:27 +0100)]
Removed forwarding of stdin to server process
Only the parent (client) cares about this.
Dave Abrahams [Sat, 19 May 2012 15:15:05 +0000 (19 09:15 -0600)]
Use Popen instead of fork() for the testing server
Thomas Leonard [Sun, 27 May 2012 12:25:24 +0000 (27 13:25 +0100)]
Cope with the user cancelling a background update
Error reported was:
AttributeError: 'NoneType' object has no attribute 'toDOM'
Thomas Leonard [Sun, 27 May 2012 11:58:12 +0000 (27 12:58 +0100)]
Added '0install whatchanged' command
Dave Abrahams [Sat, 19 May 2012 15:15:07 +0000 (19 09:15 -0600)]
Open files in binary mode for Windows portability
Thomas Leonard [Sun, 27 May 2012 09:33:31 +0000 (27 10:33 +0100)]
Windows: use support.portable_rename in various places
Thomas Leonard [Sat, 26 May 2012 14:25:39 +0000 (26 15:25 +0100)]
Added "0install select APP"
Shows the current selections.
Bastian Eicher [Wed, 23 May 2012 17:10:42 +0000 (23 19:10 +0200)]
Merged changes from master
Thomas Leonard [Mon, 21 May 2012 18:43:48 +0000 (21 19:43 +0100)]
Merge app branch
This adds two commands for adding and removing 'apps':
0install add NAME URI
0install destroy NAME
Apps are a bit like aliases (and are intended to replace them). The main
difference between apps and aliases is that apps store their current selections
(in ~/.config/0install.net/apps/NAME/selections.xml). This means that they
start faster, because the solver isn't needed.
In the future, apps should also provide better desktop integration features and
make it easier to see what changed in an update.
Thomas Leonard [Mon, 21 May 2012 18:38:48 +0000 (21 19:38 +0100)]
Updated @since epydoc for new release
Anders F Bjorklund [Sun, 20 May 2012 13:57:13 +0000 (20 15:57 +0200)]
Fix broken msgstr syntax
Thomas Leonard [Sun, 20 May 2012 14:41:40 +0000 (20 15:41 +0100)]
Updated translations
Thomas Leonard [Sat, 19 May 2012 09:49:37 +0000 (19 10:49 +0100)]
Start development series 1.8-post
Thomas Leonard [Sat, 19 May 2012 09:49:36 +0000 (19 10:49 +0100)]
Release 1.8
Thomas Leonard [Sat, 19 May 2012 09:32:00 +0000 (19 10:32 +0100)]
When solving for the command 'test', include use='testing' dependencies
This is deprecated, but some old feeds use it.
Dave Abrahams [Wed, 25 Apr 2012 17:45:10 +0000 (25 13:45 -0400)]
Added 'build' to .gitignore
Dave Abrahams [Wed, 25 Apr 2012 18:32:54 +0000 (25 14:32 -0400)]
SSL support: Use the "certifi" library's certificate bundles if available
Thomas Leonard [Sun, 13 May 2012 13:25:00 +0000 (13 14:25 +0100)]
More unit-tests for apps
Thomas Leonard [Sun, 13 May 2012 13:10:28 +0000 (13 14:10 +0100)]
Save requirements (e.g. --not-before) with apps
Thomas Leonard [Sun, 13 May 2012 10:26:10 +0000 (13 11:26 +0100)]
Added app/last-check-attempt timestamp
Prevents multiple updates if we run the command several times quickly, and
prevents constant attempts to update when the network is unavailable.
Thomas Leonard [Sun, 13 May 2012 10:14:13 +0000 (13 11:14 +0100)]
Updated man-pages for applications
Thomas Leonard [Fri, 11 May 2012 16:12:07 +0000 (11 17:12 +0100)]
Background updates for apps
Thomas Leonard [Fri, 11 May 2012 15:55:32 +0000 (11 16:55 +0100)]
Check for staleness
Thomas Leonard [Fri, 11 May 2012 15:44:18 +0000 (11 16:44 +0100)]
Keep a history of past selections
Thomas Leonard [Fri, 11 May 2012 12:33:27 +0000 (11 13:33 +0100)]
"0install update" works on apps
Thomas Leonard [Wed, 9 May 2012 12:08:44 +0000 (9 13:08 +0100)]
Added experimental app support
Apps work a bit like aliases, except that they store the selections XML. This
allows them to start faster.
Thomas Leonard [Sun, 13 May 2012 10:20:28 +0000 (13 11:20 +0100)]
.gitignore update
Thomas Leonard [Sat, 12 May 2012 12:08:47 +0000 (12 13:08 +0100)]
Fixed remove-feed for the case where the file no longer exists
Was broken by
baca69e8d9.
Thomas Leonard [Sat, 12 May 2012 09:41:21 +0000 (12 10:41 +0100)]
Fixed mirror code to work on Windows
Was using os.path.join to create URLs.
Reported by Dave Abrahams.
Thomas Leonard [Thu, 10 May 2012 10:32:35 +0000 (10 11:32 +0100)]
Limit number of concurrent downloads from a single site
Thomas Leonard [Wed, 9 May 2012 10:18:58 +0000 (9 11:18 +0100)]
Include ID in explanation if versions are identical
Thomas Leonard [Wed, 9 May 2012 10:08:18 +0000 (9 11:08 +0100)]
Improved explanation strings
Thomas Leonard [Tue, 8 May 2012 13:20:01 +0000 (8 14:20 +0100)]
Avoid modifying existing restrictions list in justify_decision()
Thomas Leonard [Tue, 8 May 2012 11:03:05 +0000 (8 12:03 +0100)]
Merged "Explain this decision" branch
Thomas Leonard [Tue, 8 May 2012 10:59:08 +0000 (8 11:59 +0100)]
Better message when forcing a version means not using that interface at all
Thomas Leonard [Tue, 8 May 2012 10:01:17 +0000 (8 11:01 +0100)]
Explain why one version was ranked above another
Thomas Leonard [Tue, 8 May 2012 09:50:03 +0000 (8 10:50 +0100)]
Explain why the selected set of versions was better
Thomas Leonard [Tue, 8 May 2012 09:37:39 +0000 (8 10:37 +0100)]
Added "Explain this decision" menu item
Thomas Leonard [Tue, 8 May 2012 09:29:06 +0000 (8 10:29 +0100)]
Added SATSolver.justify_choice
This is helpful when trying to understand why something wasn't chosen.
Thomas Leonard [Tue, 8 May 2012 08:45:38 +0000 (8 09:45 +0100)]
Added solver.solve_for() convenience method
Uses the new Requirements object to avoid duplicating the logic for selecting
the architecture.
Thomas Leonard [Mon, 7 May 2012 14:39:06 +0000 (7 15:39 +0100)]
Fixed handling of missing local feeds
Was broken by
a44c9542556111.
Thomas Leonard [Sun, 29 Apr 2012 16:09:51 +0000 (29 17:09 +0100)]
Added two-argument form of add-feed
Thomas Leonard [Thu, 26 Apr 2012 20:00:31 +0000 (26 21:00 +0100)]
Removed unused imports
Dave Abrahams [Wed, 25 Apr 2012 17:45:19 +0000 (25 13:45 -0400)]
/dev/null => os.devnull, for portability
Thomas Leonard [Tue, 24 Apr 2012 17:45:57 +0000 (24 18:45 +0100)]
Recognise "../" as the start of a relative path too
Thomas Leonard [Tue, 24 Apr 2012 17:08:57 +0000 (24 18:08 +0100)]
Added Selection.get_path()
Also, this gives a better error message when an implementation has no digests
(reported by Dave Abrahams).
Thomas Leonard [Mon, 16 Apr 2012 16:49:20 +0000 (16 17:49 +0100)]
Allow command_name to be None if user_command is given
"0test -t" needs this.
Anders F Bjorklund [Sun, 15 Apr 2012 17:55:56 +0000 (15 19:55 +0200)]
Use terminal instead of xterm, when running with quartz
Thomas Leonard [Sun, 15 Apr 2012 12:43:25 +0000 (15 13:43 +0100)]
Assume everything supports POSIX (except Windows)
Thomas Leonard [Sun, 15 Apr 2012 12:29:25 +0000 (15 13:29 +0100)]
Better error reason "Not source code"
If we were looking for source code, we reported "Unsupported machine type" for
binaries, which was confusing.
Reported by Dave Abrahams.
Anders F Bjorklund [Sun, 15 Apr 2012 09:27:29 +0000 (15 11:27 +0200)]
Relax distribution version numbers
Thomas Leonard [Fri, 13 Apr 2012 16:38:23 +0000 (13 17:38 +0100)]
Fixed epydoc
Thomas Leonard [Tue, 10 Apr 2012 19:02:29 +0000 (10 20:02 +0100)]
Try x-terminal-emulator first for <needs-terminal>
Reported by Dave Abrahams.
Bastian Eicher [Tue, 10 Apr 2012 00:15:03 +0000 (10 02:15 +0200)]
Merged changes from master
Thomas Leonard [Fri, 6 Apr 2012 14:06:37 +0000 (6 15:06 +0100)]
Updated old code from Policy to Driver API
Thomas Leonard [Fri, 6 Apr 2012 10:36:45 +0000 (6 11:36 +0100)]
Start development series 1.7-post
Thomas Leonard [Fri, 6 Apr 2012 10:36:43 +0000 (6 11:36 +0100)]
Release 1.7
Thomas Leonard [Thu, 5 Apr 2012 16:48:11 +0000 (5 17:48 +0100)]
Fixed error solving with optional dependencies
If the dependency contained no implementations and we needed to choose the
next variable to try, the result was:
File ".../zeroinstall/injector/solver.py", line 571, in find_undecided
group = group_clause_for[uri]
KeyError: u'...'
This could easily happen if the feed for the dependency wasn't cached yet.
Reported by Tim Cuthbertson.
Thomas Leonard [Sat, 31 Mar 2012 14:32:45 +0000 (31 15:32 +0100)]
Updated background updater to use driver API
Thomas Leonard [Sat, 31 Mar 2012 14:17:44 +0000 (31 15:17 +0100)]
Don't keep trying to check failed feeds that we never had
Normally, if fetching a feed failed within the last hour then we
don't try again. But if we never managed to fetch the feed then we
always retried.
Thomas Leonard [Tue, 27 Mar 2012 11:23:17 +0000 (27 12:23 +0100)]
Make sure the temporary .new files are cleaned up if feed validation fails
Thomas Leonard [Mon, 26 Mar 2012 16:39:32 +0000 (26 17:39 +0100)]
Changed PackageKit warning to info
Ubuntu's PackageKit replacement seems to return lots of unconnected packages
without version numbers, leading to errors such as:
WARNING:packagekit:Can't parse distribution version '' for package 'dpkg-exec'
Change this to INFO level so that it is not shown by default.
Requested by Michel Alexandre Salim.
Thomas Leonard [Sun, 25 Mar 2012 09:49:59 +0000 (25 10:49 +0100)]
Warn about replaced interfaces in "0install update"
Thomas Leonard [Sun, 25 Mar 2012 09:19:53 +0000 (25 10:19 +0100)]
Attempting to create an alias to a replaced feed uses the replacement