- Add new logging system which rotates the log file once it reaches a set size.
- Merge in fixes and new features from pluggablebackends and trunk
- Right click network menu in tray icon now bolds the active network.
- Improved behavior in the networking backend. The wired/wireless wnettools instances now refer to each other, and get passed on to connection threads as well, which simplifies passing settings for external program usage. Also removed some unecessary creating of duplicate wnettools instances which ended up causing some issues.
- Fixed bug where dhclient was being used as the dhcp client even if it was selected in the options menu.
- Fixed a typo in the connection commands used for ralink cards.
- Fixed the wrong cli option for releasing a dhcpcd lease.
- Monitor.py no longer calls for an auto-rescan if the daemon is currently connecting to a network.
- Cleaned up some comments and simplified the logic in a few methods/functions.
- Added support for using kdesu instead of gksu where it makes sense.
- Improved code used to sanitize network keys used with wpa_passphrase.
- Removed some unused functions and imports.
- Cleaned up some comments/docstrings.
Experimental:
- Split gui.py into gui.py and netentry.py. netentry is imported by gui.py to make use of NetworkEntry and its subclasses.
- Reorganzed how dbus and the language dict are used in wicd.py and gui.py.
- Fix bug where wired advanced settings wouldn't be saved properly
Experimental:
- Add support for determining which graphical sudo program (gksu/kdesu) should be used.
- Fixed an indentation problem
- Use misc.RenameProcess for process renaming in wicd.py
Experimental:
- Make the encryption template file parsing used for the GUI a little more robust.
- Move process renaming code to the misc module, and fix process ranming for 64 bit systems. (Thanks to Helber Maciel)
- Move the error gtk method to the gui module. (Thanks to Helber Maciel)
- Removed a debugging print statement from monitor.py
- Fixed up a few docstrings/comments.
Testing:
- Fix bug where Connect button would become inactive after disconnecting from a network.
Added a bunch of docstrings
Fixed a crash bug when the daemon is called with the -s option caused by wicd.py calling SetForceDisconnect(False) when it launches.
Added a "Disconnect" button to each network entry, which will be visible instead of the "Connect" button for the active network.
Fixed a bug where cancelling a connection while validating authentication would leave the GUI in the connecting state forever.
Updated dbus config file to work under more distros
Added support for determing wireless interface by parsing /proc/net/wireless (removing need for iwconfig call)
A few minor formatting improvements.
Removed some unnecessary print statements.
Added checks to the daemon and configscript.py to make sure the user opening it is root.
Fixed formatting problems in class definitions in wicd.py
Added docstrings to wnettools.py
Fixed wired autoconnect bug due to missing parenthesis on a method call.
Moved connection monitoring code out of daemon.py and into monitor.py, which is run as a separate, child process of daemon.py, to reduce delays in dbus reponse time while connection status and autoreconnect code is running.
Added full support for running the gui without the tray icon using the --no-tray option.
Some minor changes to code to be more readable/efficient/pythonic.
Reduced external calls (when possible) in update_status_bar.
pulse_progress_bar is now only run when connecting to a network.
Only check encryption settings on connect, instead of all of them, which shouldn't be necessary.
Added check when DHCP is run to determine what DHCP clients are available.
Fixed bug where sometimes wicd wouldn't reconnect automatically when a wired connection was lost.
Cleaned up a couple of comments.
Cleaned up formatting in gui.py.
Made glade template for preferences dialog and rewrote gui.py to use it instead of creating it explictly in the code.
Fixed a bunch indentation/whitespace problems.
Cleaned up a ton of formatting in daemon.py
Fixed a wired autoconnect bug.
Rewrote part of the connection monitoring code, further minimizing the number of external program calls, as well as number of dbus calls.
Added StatusInformation methods to daemon.py, to allow external apps to poll for the current connection status without making several dbus calls.
Fixed bad function call to GetDBMSignalStrength in daemon.py.
Added checks to the network entry settings menu to make sure that all the settings are valid.
Fixed global dns being set to True whenever static IP address were enabled for wireless networks.
Fixed the wired autoconnect profile chooser, which was badly broken.
Added a check to GetPluggedIn() that makes sure that the wired interface is up before checking. If it's not, it tries to put it up. This is necessary because ethtool doesn't make this check for us, as mii-tool did.
- Reworked GUI: Moved script button next to connect button, reduced size of both buttons, moved advanced settings from an expander to a dialog and put an advanced settings button next to scripts/connect buttons.
- When a wireless network has encryption enabled, "Secured" will no longer show up in the info for the network unless the encryption type can't be determined.
- Added support for detecting kill switch status (thanks to webograph for the inital patch).
- Reduced the number of calls to iwconfig during connection status updates (it is only called once per update now), which should lower cpu usage.
- Moved Autoreconnect methods from the wireless dbus service to the daemon dbus service.
- Added "Validating Authentication" status message during wireless connection process.
- Added support for disabling monitoring of connection status when computer is suspended, which gets rid of some error messages, eliminates occasional suspension failure, and reduces the odds that wicd will auto connect to a wireless network when a wired network is available. (Right now this feature is disabled, as it requires a script in /etc/acpi/suspend.d/, which can't be included with the current SVN layout.)
The output of dhclient is now parsed by wicd and used to determine why the connection failed.
All the wpa_supplicant conf files will now generate a ctrl_interface, so that they can be accessed by wpa_cli. wpa_cli now is used by wicd to attempt to determine is wpa_supplicant authentication was successful. This is still experimental, and might have to be tweaked to work properly.
If wicd.py is started and the daemon isn't present, it will autolaunch it by calling launchdaemon.sh, instead of asking the user to start the daemon manually.
Cleaned up some comments, formatting, etc.
Probably a couple of other little bug fixes I'm forgetting.
Possibly fixed problems with scripts not running when they should and/or leaving zombies.
Slightly reworked the GUI to make the new script system look nicer.
Removed the ability to set script information through built in daemon functions, it now has to be done by directly editing configuration files (which require root access to read/write).
Specify which network is being connected to in both the tray tooltip and gui statusbar
Clean up code in wicd.py.
Refactor Edgy/DapperTrayIcon class names to something less Ubuntu-specific.
Fix typo in EggTrayIcon that would keep gui from opening.
Stopped the gui status bar from updating while the gui is closed, which reduces CPU usage and should hopefully fix problems with hibernation not working while wicd was running.