diff --git a/NEWS b/NEWS index 536b3f1..3b3c184 100644 --- a/NEWS +++ b/NEWS @@ -1,34 +1,25 @@ -Wicd 1.6.x Branch - -Major Changes: -- Improved tray icon and gui images (thanks to Martin Sagastume) -- Reorganized network list in the gui for easier navigation -- New experimental ioctl backend, which is more cpu-friendly than the - previous one -- Added a curses client (thanks to Andrew Psaltis) -- Added a right-click connection menu to the tray icon -- Added options to specify a dns domain and search domain for static networks -- Reworked the Preferences menu to be more in line with GNOME standards -- Added support for global scripts -- Made it possible to have optional entries in encryption templates - -Minor Changes and Other Enchancements: -- Better autoconnection behavior -- Tray/GUI will survive the daemon being killed -- Reasons for connection failures will now bubble back to the GUI -- Add/Remove wired profile system is now more user-friendly -- Support for using resolvconf instead of directly editing /etc/resolv.conf -- Wicd won't blindly kill dhcp clients / wpa_supplicant any more -- Added an option to automatically switch from a wireless network to a wired - one as soon as a cable is plugged in -- Moved scanning to its own thread, which makes GUI and daemon more responsive - during scans -- Made it possible to specify macros in script entries -- The gui will now display the encryption entry dialog if you attempt to - connect to an encrypted network without entering a password -- Static gateway entry is now optional -- Passwords with leading or trailing whitespace are now stored properly -- Many init/config script, man page, and setup.py fixes/updates, including - better autodetection of file placement with regard to sleep hooks and - kde autostart files (thanks to Robby Workman) +MAIN CHANGES: +- New and improved tray icon and gui images. (Thanks to Martin Sagastume). +- Re-organized network list in the GUI to be easier to navigate. +- Added new experimental ioctl backend, which is more CPU friendly than the previous one. +- Added a curses client (Thanks to Andrew Psaltis). +- Added a right-click connection menu to the tray icon. +- Add options to specify a dns domain and search domain for static networks. +- Re-worked Preferences menu to be more in line with GNOME standards. +- Support for global scripts. +- Make it possible to have optional entries in encryption templates. +SMALL CHANGES: +- Better autoconnection behavior. +- Tray/GUI will survive the daemon going down. +- Reasons for connection failures will now bubble back to the GUI. +- Add/Remove wired profile system is now more user-friendly. +- Support for using resolvconf instead of directly editing /etc/resolv.conf. +- Wicd won't blindly kill dhcp clients / wpa_supplicant anymore. +- Added an option to automatically switch from a wireless network to a wired one as soon as a cable is plugged in. +- Move scanning to its own thread, which makes GUI and daemon more responsive during scans. +- Make it possible to specify macros in script entries. +- GUI will now display the encryption entry dialog if you attempt to connect to an encrypted network without entering a password. +- Static gateway entry is now optional. +- Passwords with leading or trailing whitespace are now stored properly. +- Many init/config script, man page, and setup.py fixes/updates (Thanks to Robby Workman). diff --git a/setup.py b/setup.py index a66f187..376552c 100755 --- a/setup.py +++ b/setup.py @@ -24,7 +24,7 @@ import subprocess # Be sure to keep this updated! # VERSIONNUMBER -VERSION_NUM = '1.6.0a2' +VERSION_NUM = '1.6.0a3' # REVISION_NUM is automatically updated REVISION_NUM = 'unknown' CURSES_REVNO = 'uimod' @@ -33,7 +33,7 @@ CURSES_REVNO = 'uimod' os.chdir(os.path.abspath(os.path.split(__file__)[0])) try: - if os.path.exists('.bzr') and os.system('bzr') == 0: + if os.path.exists('.bzr') and os.system('bzr > /dev/null 2>&1') == 0: try: os.system('bzr version-info --python > vcsinfo.py') except: @@ -463,14 +463,10 @@ try: print 'Using pid path', os.path.basename(wpath.pidfile) print 'Language support for', for language in os.listdir('translations/'): - if not language.startswith('.'): - codes = language.split('_') - short_language = language - if codes[0].lower() == codes[1].lower(): - short_language = codes[0].lower() - print short_language, - data.append((wpath.translations + short_language + '/LC_MESSAGES/', - ['translations/' + language + '/LC_MESSAGES/wicd.mo'])) + print language, + data.append((wpath.translations + language + '/LC_MESSAGES/', + ['translations/' + language + '/LC_MESSAGES/wicd.mo'])) + print except Exception, e: print str(e) print '''Error setting up data array. This is normal if diff --git a/wicd/autoconnect.py b/wicd/autoconnect.py index b591076..b68a5c7 100755 --- a/wicd/autoconnect.py +++ b/wicd/autoconnect.py @@ -23,7 +23,6 @@ from wicd import dbusmanager import dbus import time -import gobject import sys if getattr(dbus, 'version', (0, 0, 0)) < (0, 80, 0): diff --git a/wicd/configmanager.py b/wicd/configmanager.py index 9426e53..24d8dd4 100644 --- a/wicd/configmanager.py +++ b/wicd/configmanager.py @@ -106,7 +106,8 @@ class ConfigManager(RawConfigParser): # Try to intelligently handle the type of the return value. try: - ret = int(ret) + if not ret.startswith('0') or len(ret) == 1: + ret = int(ret) except (ValueError, TypeError): ret = Noneify(ret) # This is a workaround for a python-dbus issue on 64-bit systems. diff --git a/wicd/dbusmanager.py b/wicd/dbusmanager.py index 6cd3ec3..17e9e0c 100644 --- a/wicd/dbusmanager.py +++ b/wicd/dbusmanager.py @@ -24,7 +24,6 @@ A module for managing wicd's dbus interfaces. # import dbus -from dbus import DBusException if getattr(dbus, "version", (0, 0, 0)) < (0, 80, 0): import dbus.glib else: diff --git a/wicd/gui.py b/wicd/gui.py index 47227ba..e792579 100644 --- a/wicd/gui.py +++ b/wicd/gui.py @@ -31,7 +31,6 @@ import pango import gtk import gtk.glade from dbus import DBusException -from dbus import version as dbus_version from wicd import misc from wicd import wpath @@ -41,7 +40,7 @@ from wicd import netentry from wicd.misc import noneToString from wicd.netentry import WiredNetworkEntry, WirelessNetworkEntry from wicd.prefs import PreferencesDialog -from wicd.guiutil import error, GreyLabel, LabelEntry, SmallLabel +from wicd.guiutil import error, LabelEntry from wicd.translations import language if __name__ == '__main__': @@ -709,7 +708,7 @@ class appGui(object): try: daemon.WriteWindowSize(width, height, "main") daemon.SetGUIOpen(False) - except dbusmanager.DBusException: + except DBusException: pass if self.standalone: diff --git a/wicd/logfile.py b/wicd/logfile.py index 408aea2..639a912 100644 --- a/wicd/logfile.py +++ b/wicd/logfile.py @@ -25,8 +25,6 @@ import sys import os import time -import wicd.wpath as wpath - class SizeError(IOError): pass diff --git a/wicd/monitor.py b/wicd/monitor.py index 82727cd..4accb0e 100755 --- a/wicd/monitor.py +++ b/wicd/monitor.py @@ -26,7 +26,6 @@ when appropriate. import gobject import time -import sys from dbus import DBusException @@ -53,7 +52,7 @@ def diewithdbus(func): ret = func(self, *__args, **__kargs) self.__lost_dbus_count = 0 return ret - except dbusmanager.DBusException, e: + except DBusException, e: print "Caught exception %s" % str(e) if not hasattr(self, "__lost_dbus_count"): self.__lost_dbus_count = 0 diff --git a/wicd/netentry.py b/wicd/netentry.py index 28722ab..460f387 100644 --- a/wicd/netentry.py +++ b/wicd/netentry.py @@ -29,7 +29,7 @@ import misc import wpath import dbusmanager from misc import noneToString, stringToNone, noneToBlankString, to_bool -from guiutil import error, SmallLabel, LabelEntry, GreyLabel, LeftAlignedLabel, string_input +from guiutil import error, LabelEntry, GreyLabel, LeftAlignedLabel, string_input from translations import language diff --git a/wicd/prefs.py b/wicd/prefs.py index f511c42..30d7a5d 100644 --- a/wicd/prefs.py +++ b/wicd/prefs.py @@ -26,7 +26,7 @@ handles recieving/sendings the settings from/to the daemon. import gtk import gobject -import pango +#import pango import os import gtk.glade diff --git a/wicd/wicd-client.py b/wicd/wicd-client.py index bcb4900..0c34f7e 100755 --- a/wicd/wicd-client.py +++ b/wicd/wicd-client.py @@ -40,7 +40,6 @@ import gobject import getopt import os import pango -import time import atexit from dbus import DBusException diff --git a/wicd/wicd-daemon.py b/wicd/wicd-daemon.py old mode 100755 new mode 100644 diff --git a/wicd/wnettools.py b/wicd/wnettools.py index 51ad50c..d09e8f2 100644 --- a/wicd/wnettools.py +++ b/wicd/wnettools.py @@ -112,10 +112,9 @@ def GetWirelessInterfaces(): """ dev_dir = '/sys/class/net/' - ifnames = [] - - ifnames = [iface for iface in os.listdir(dev_dir) if os.path.isdir(dev_dir + iface) - and 'wireless' in os.listdir(dev_dir + iface)] + ifnames = [iface for iface in os.listdir(dev_dir) + if os.path.isdir(dev_dir + iface) and + 'wireless' in os.listdir(dev_dir + iface)] return ifnames @@ -134,10 +133,7 @@ def IsValidWpaSuppDriver(driver): """ Returns True if given string is a valid wpa_supplicant driver. """ output = misc.Run(["wpa_supplicant", "-D%s" % driver, "-iolan19", "-c/etc/abcd%sdefzz.zconfz" % random.randint(1, 1000)]) - if re.match("Unsupported driver", output): - return False - else: - return True + return not "Unsupported driver" in output def neediface(default_response): """ A decorator for only running a method if self.iface is defined.