Jockey 0.5alpha1

This is the first preview of the upcoming 0.5 release which focuses on a large design overhaul to improve portability, support for printer detection, printer drivers from openprinting.org, a D-BUS interface for driver lookup for desktop applications, and a refurbished GTK user interface.

Milestone information

Project:
Jockey
Series:
trunk
Version:
0.5alpha1
Released:
 
Registrant:
Martin Pitt
Release registered:
Active:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
No users assigned to blueprints and bugs.
Blueprints:
No blueprints are targeted to this milestone.
Bugs:
No bugs are targeted to this milestone.

Download files for this release

File Description Downloads

Release notes 

 - Split program into a privileged system D-BUS backend (access controlled by PolicyKit), and unprivileged frontend. This provides a cleaner design, gets rid of ugly distribution specific hacks and makes the program more portable.

 - Add support for detecting printers.

 - Add Driver DB implementation for openprinting.org database lookup. Supports package systems "apt", "urpmi", and "yum" right now.

 - New Driver DBs can now added dynamically at run time through a D-BUS call (such as adding an XMLRPC compatible DB on a new server).

 - Upstream OSLib now uses PackageKit's "pkcon" for query operations, so that distributions which support packagekit do not need to implement their custom functions for it. (Package installation/removal does not use packagekit yet, but it is planned).

 - Provide a session D-BUS interface so that applications like system-config-printer can call Jockey through an abstract interface for looking for a driver for a particular device. This will search for a driver in all databases, ask the user for confirmation, and install it.

 - GTK user interface got some usability and workflow improvements. It also shows the license and support status now.

 - KDE user interface got ported to PyKDE 4. The UI/workflow changes which correspond to the one in GTK's are still in the works and not yet included in 0.5alpha1.

 - Add support for "recommended" driver versions, in case several different versions of a driver are available (which is e. g. the case with the proprietary NVidia driver).

 - Some bug fixes.

0.5 Alpha 1 still has a number of release critical bugs and is not yet suitable for production systems. Please see https://launchpad.net/jockey/+milestone/0.5 for the list of bugs which still need to be addressed before the final 0.5 release will be published.

Changelog 

View the full changelog

=== 0.5alpha1 ===
2008-09-12 Martin Pitt <email address hidden>

        * setup.py: [385] release 0.5alpha1

        * kde/jockey-kde: [384] jockey-kde: Fix forgotten QIcon -> KIcon

2008-09-11 Martin Pitt <email address hidden>

        * gtk/main.glade: [383] jockey-gtk: add a VPane between list and
        details

        * gtk/jockey-gtk,
        * gtk/main.glade: [382] jockey-gtk: put name, license, support status
        within scrollable area

2008-09-11 Martin Pitt <email address hidden>

        * data/icons/scalable/emblems/jockey-certified.svg: Added.

        * gtk/jockey-gtk,
        * gtk/main.glade: Modified.

        [381] add a proper icon for certified drivers, and more gtk spacing
        fixes

2008-09-11 Martin Pitt <email address hidden>

        * gtk/main.glade: [380] gtk/main.glade: A few spacing fixes

        * jockey/ui.py: [379] Put 2 words in uppercase and correct a keyboard
        accelerator

2008-09-10 Martin Pitt <email address hidden>

        * README.txt: [378] README.txt: document D-BUS interface

2008-09-10 Martin Pitt <email address hidden>

        [377] null-merge of remaining r366 in lp:~albertomilone/jockey/jockey-
        generic (already considered in r374)

2008-09-10 Martin Pitt <email address hidden>

        * README.txt,
        * examples/handlers/fglrx.py,
        * examples/handlers/nvidia.py,
        * jockey/xorg_driver.py,
        * tests/handlers.py: [376] switch from guidance to x-kit, thanks
        Alberto Milone

        * tests/handlers.py: [375] tests/handlers.py: make xorg.conf in
        setUp(), so that it is available for all tests

2008-09-09 Martin Pitt <email address hidden>

        * gtk/jockey-gtk,
        * jockey/backend.py,
        * jockey/handlers.py,
        * jockey/ui.py,
        * kde/jockey-kde,
        * tests/backend.py,
        * tests/handlers.py: [374] Add support for recommended drivers, thanks
        Alberto Milone

        * tests/sandbox.py: [373] robustify startup of sandbox test XML-RPC
        server

2008-09-09 Martin Pitt <email address hidden>

        * data/icons/scalable/emblems,
        * data/icons/scalable/emblems/jockey-proprietary.svg: Added.

        * gtk/jockey-gtk,
        * gtk/main.glade,
        * jockey/ui.py: Modified.

        [372] revamp the GTK UI for usability improvements from Matthew Paul
        Thomas, and add license/support status

2008-09-09 Martin Pitt <email address hidden>

        * jockey/ui.py: [371] ui.py: change factorization

        * gtk/jockey-gtk,
        * jockey/ui.py,
        * kde/jockey-kde,
        * tests/ui.py: [370] remove remaining usage of toggle_handler(),
        update test cases

        * jockey/ui.py: [369] ui.py: merge change_enable() and
        toggle_handler() to set_handler_enable()

2008-09-08 Martin Pitt <email address hidden>
        * AUTHORS: [368] review contributions and update AUTHORS

2008-09-05 Martin Pitt <email address hidden>

        * tests/run-kde: [367] tests/run-kde: run main window test
        automatically

        * gtk/jockey-gtk,
        * jockey/ui.py,
        * kde/jockey-kde,
        * tests/run-gtk,
        * tests/run-kde,
        * tests/sandbox.py: [366] split off ui_show_main() from ui_init()

        * tests/run-kde: [365] tests/run-kde: fix a few regressions introduced
        in recent KDE4 merge which broke the tests

2008-09-04 Martin Pitt <email address hidden>

        * jockey/ui.py: [364] improve string_{free,restricted} to make them
        suitable for the GUI, too

        * jockey/ui.py: [363] use string_* constants for _Enable and _Disable

2008-09-01 Martin Pitt <email address hidden>

        * do-release: [362] do-release: restore GNU log format

2008-08-26 Jonathan Riddell <email address hidden>

        * do-release: [361] ahem

        * do-release: [360] release 0.4.1

=== 0.4.1 ===
2008-08-26 Jonathan Riddell <email address hidden>

        * do-release,
        * setup.py: [359] release 0.4.1

        * MANIFEST.in: [358] update MANIFEST

        * kde/ManagerWindowKDE4.ui,
        * kde/jockey-kde,
        * tests/run-kde: [357] merge in jonathan thomas' pykde port

2008-08-15 Martin Pitt <email address hidden>

        * jockey/ui.py: [356] quick fix for search_driver() having full UI
        available by calling ui_init()

        * gtk/com.ubuntu.DeviceDriver.service: [355]
        gtk/com.ubuntu.DeviceDriver.service: Actually supply --dbus-server
        argument

2008-08-15 Martin Pitt <email address hidden>

        * gtk/com.ubuntu.DeviceDriver.service: Added.

        * setup.py: Modified.

        [354] add gtk/com.ubuntu.DeviceDriver.service for session D-BUS
        service activation

2008-08-15 Martin Pitt <email address hidden>

        * jockey/ui.py,
        * tests/ui.py: [353] Add --dbus-server mode to UI

        * tests/run: [352] tests/run: run tests in alphabetical python module
        order

        * jockey/backend.py,
        * tests/backend.py: [351] robustify D-BUS backend server startup in
        test suite

        * jockey/ui.py: [350] AbstractUI.change_enable(): add explicit confirm
        argument, so that the function can be used from elsewhere, tooo

2008-08-04 Martin Pitt <email address hidden>

        * jockey/backend.py,
        * tests/backend.py: [349] test add_driverdb() with XMLRPC, fix license
        passing in handler_info()

2008-07-24 Martin Pitt <email address hidden>

        * backend/jockey-backend: [348] fix code formatting

        * backend/jockey-backend: [347] jockey-backend: add --logfile option

        * jockey/handlers.py,
        * tests/handlers.py: [346] handlers with an uninstalled driver package
        can never be "in use"

        * do-release: [345] do-release: check for missing files in MANIFEST

        * MANIFEST.in: [344] MANIFEST.in: add missing backend/ files

2008-07-23 Martin Pitt <email address hidden>

        * jockey/handlers.py: [343] KernelModuleHandler: refresh the modalias
        information after enable/disable, since it might have installed a
        package

        * examples/handlers/fglrx.py: [342] fglrx.py: hint that the driver is
        non-free, since the module is not available by default

        * backend/jockey-backend: [341] set default backend timeout to 10
        minutes; 1 minute is too short

        * jockey/ui.py: [340] AbstractUI.backend(): reconnect to D-BUS service
        if the server timed out

        * tests/run-gtk,
        * tests/run-kde: [339] tests/run-{gtk,kde}: Eliminiate backend timeout
        race condition

        * jockey/backend.py: [338] essentially disable d-bus call timeout in
        dbus_sync_call_signal_wrapper()

        * jockey/handlers.py: [337] KernelModuleHandler.enabled(): Never
        return None

        * jockey/ui.py: [336] UI toggle_handler(): Show driver packge
        installation progress dialog

        * jockey/backend.py: [335] jockey.backend: Add
        dbus_sync_call_signal_wrapper() hack

        * gtk/jockey-gtk: [334] jockey-gtk: fix pulsating progress bar

        * jockey/backend.py,
        * jockey/oslib.py,
        * tests/sandbox.py: [333] OSLib.{install,remove}_package(): do not
        pass UI, but progress callback

2008-07-23 Martin Pitt <email address hidden>

        * gtk/jockey-gtk,
        * gtk/main.glade,
        * jockey/ui.py,
        * kde/jockey-kde,
        * tests/run-gtk,
        * tests/run-kde,
        * tests/sandbox.py,
        * tests/ui.py: Modified.

        * kde/DownloadProgressQt.ui: Renamed to kde/ProgressDialog.ui and
          modified.

        [332] turn ui_download_* into generic progress dialog API

2008-07-22 Martin Pitt <email address hidden>

        * po/de.po: [331] update German translations

        * examples/handlers/nvidia.py: [330] nvidia.py example handler: drop
        legacy/new versions, package selection should happen in modalias files

        * README.txt,
        * jockey/oslib.py,
        * tests/oslib.py: [329] provide quick-and-dirty implementation of
        package query functions with PackageKit pkcon

        * jockey/xorg_driver.py: [328] xorg_driver.py: Do not crash on
        removing Device section options if there is no such section

        * jockey/detection.py,
        * tests/detection.py: [327] LocalKernelModulesDriverDB: support
        package field in modalias lists

2008-07-19 Martin Pitt <email address hidden>

        * jockey/detection.py: [326] jockey/detection.py: Fix caching of
        printers if none are detected

2008-07-16 Martin Pitt <email address hidden>

        * jockey/backend.py,
        * tests/backend.py: [325] add Backend.add_driverdb()

        * jockey/backend.py,
        * jockey/detection.py,
        * jockey/handlers.py,
        * tests/backend.py: [324] add Backend.search_driver() function

        * tests/run: [323] tests/run: allow filtering of tests

2008-07-15 Martin Pitt <email address hidden>

        * jockey/detection.py,
        * jockey/handlers.py,
        * tests/detection.py,
        * tests/handlers.py: [322] add PrinterDriverHandler and get_handlers()
        integration

        * tests/detection.py: [321] tests/detection.py: Fix
        test_openprinting_unknownprinter()

2008-07-14 Martin Pitt <email address hidden>

        * jockey/detection.py,
        * tests/detection.py: [320] add OpenPrintingDriverDB and test cases

        * jockey/oslib.py: [319] add OSLib.packaging_system()

2008-07-10 Martin Pitt <email address hidden>

        * jockey/detection.py: [318] detection.py: catch errors when calling
        instance.name() as well, packages might not be available

2008-07-09 Martin Pitt <email address hidden>

        * examples/handlers/fglrx.py: [317] fglrx.py: Fix typo

2008-07-08 Martin Pitt <email address hidden>

        * jockey/detection.py,
        * jockey/handlers.py,
        * tests/detection.py,
        * tests/sandbox.py: [316] support "free" and "license" fields in
        DriverIDs

        * jockey/handlers.py,
        * tests/handlers.py: [315] allow KMod handlers with nonexisting local
        kmods if they specify freeness, description, and package

        * jockey/handlers.py: [314] simplify FirmwareHandler.free()

        * tests/backend.py,
        * tests/detection.py,
        * tests/ui.py: [313] rename printer -> printer_deviceid in test suite,
        too
2008-07-07 Martin Pitt <email address hidden>

        * jockey/detection.py: [312] fix code formatting

        * jockey/detection.py: [311] rename "printer" HardwareID type to
        "printer_deviceid", as agreed in LFDB

        * jockey/detection.py: [310] fix comment

        * jockey/backend.py: [309] backend.py: add missing D-BUS timeout reset
        and PK check to get_hardware()

2008-07-04 Martin Pitt <email address hidden>

        * jockey/detection.py,
        * tests/backend.py,
        * tests/detection.py,
        * tests/ui.py: [308] add support for detecting printers

        * jockey/ui.py,
        * tests/ui.py: [307] add --hardware-ids mode to UI

        * jockey/backend.py,
        * tests/backend.py: [306] add Backend.get_hardware()

        * tests/backend.py: [305] tests/backend.py: simplify server stop, it's
        already done in timeout test

2008-06-28 Martin Pitt <email address hidden>

        * tests/ui.py: [304] remove "pokes in internal data structures" TODOs,
        hard to do otherwise in the test suite

2008-06-25 Martin Pitt <email address hidden>

        * README.txt: [303] README.txt: update dbus-python dependency
        description

2008-06-25 Martin Pitt <email address hidden>

        * backend,
        * backend/com.ubuntu.DeviceDriver.conf,
        * backend/com.ubuntu.DeviceDriver.service,
        * backend/com.ubuntu.devicedriver.policy.in,
        * backend/jockey-backend,
        * jockey/backend.py,
        * tests/backend.py: Added.

        * examples/handlers/ipw3945.py: Removed.

        * README.txt,
        * examples/handlers/fglrx.py,
        * examples/handlers/nonfree.py,
        * examples/handlers/nvidia.py,
        * examples/handlers/pkg.py,
        * examples/handlers/sl_modem.py,
        * gtk/jockey-gtk,
        * gtk/jockey-gtk.desktop.in,
        * jockey/detection.py,
        * jockey/handlers.py,
        * jockey/oslib.py,
        * jockey/ui.py,
        * jockey/xorg_driver.py,
        * kde/jockey-kde,
        * kde/jockey-kde.desktop.in,
        * po/POTFILES.in,
        * po/de.po,
        * setup.cfg,
        * setup.py,
        * tests/detection.py,
        * tests/handlers.py,
        * tests/oslib.py,
        * tests/run-gtk,
        * tests/run-kde,
        * tests/sandbox.py,
        * tests/shipped_handlers.py,
        * tests/ui.py: Modified.

        [302] Merge dbus-backend branch: Split program into a privileged
        system D-BUS backend (access controlled by PolicyKit), and
        unprivileged frontend. This provides a cleaner design, gets rid of
        ugly hacks like open_app() and gksu/kdesu, and thus makes the program
        more portable.

2008-06-25 Martin Pitt <email address hidden>

        * jockey/ui.py: [301] Use unicode-aware gettext.install() instead of
        textdomain() and KDE unicode() wrapping hack

        * jockey/ui.py: [300] ui.py: Set gettext domain earlier, so that
        --help gets translated

2008-06-24 Martin Pitt <email address hidden>
        * do-release: Modified.

        * tests/run-qt: Renamed to tests/run-kde.

        [299] rename tests/run-qt to tests/run-kde for consistency

2008-06-20 Martin Pitt <email address hidden>

        * jockey/oslib.py: [298] add and fix debug logging in OSLib.open_app()

2008-05-28 Martin Pitt <email address hidden>

        * tests/sandbox.py: [297] test sandbox AllAvailOSLib: provide
        temporary module_blacklist_file, so that handlers do not die with
        EPERM during tests

        * jockey/oslib.py,
        * tests/oslib.py: [296] check all /etc/modprobe.d/blacklist* files in
        module_blacklisted()

0 blueprints and 0 bugs targeted

There are no feature specifications or bug tasks targeted to this milestone. The project's maintainer, driver, or bug supervisor can target specifications and bug tasks to this milestone to track the things that are expected to be completed for the release.

This milestone contains Public information
Everyone can see this information.