Commit graph

1067 commits

Author SHA1 Message Date
Martin Pitt
90082ec5d4 Linux integration tests: Split big tests into several smaller ones
This is better design to catching regressions and problems in a more
pin-pointed fashion. This also avoids having to restart the umockdev testbed
due to changing the environment variables with stop/start_daemon().
2014-09-02 18:43:33 +02:00
Martin Pitt
01ab81233f Linux integration tests: Fix error handling for Python 3.4
Python 3.4 changed the TestCase._outcome semantics, adjust accordingly.
2014-09-02 17:19:08 +02:00
Martin Pitt
e5bd3e80f3 Linux integration tests: Fix crash if there is no session D-BUS
This can happen in CI environments without a desktop session.
2014-09-02 15:57:09 +02:00
Richard Hughes
0b50cef90c trivial: post release version bump 2014-08-18 13:10:03 +01:00
Richard Hughes
4f74e297e4 Released UPower 0.99.1 2014-08-18 13:08:48 +01:00
Alexander Jesner
47c6974fc0 Free the obtained device list array after use
Signed-off-by: Richard Hughes <richard@hughsie.com>
2014-08-18 12:49:41 +01:00
Martin Pitt
e4ad754351 doc: Adjust documentation for polkit removal 2014-07-16 12:19:38 +02:00
Martin Pitt
3b6948bc4b self-test: Add missing #include
up-self-test.c: In function ‘up_test_history_func’:
up-self-test.c:274:2: warning: implicit declaration of function ‘rmdir’ [-Wimplicit-function-declaration]
  rmdir (history_dir);
2014-07-16 11:45:35 +02:00
Martin Pitt
bddc559713 Remove polkit tests
Complete the polkit dependency removal by also dropping it from the self tests.
Unbreaks build and up-self-test again.
2014-07-16 11:43:57 +02:00
Eric Koegel
9a2b263309 Remove polkit dependency
With the removal of the suspend/hibernate code, there's no longer
a need for upower to depend on polkit. This patch removes the old
polkit code.

Signed-off-by: Richard Hughes <richard@hughsie.com>
2014-07-14 19:34:46 +01:00
Fabian Raetz
d1bb06985f openbsd: Expose "capacity" and "energy-full-design" properties
https://bugs.freedesktop.org/show_bug.cgi?id=80707
2014-06-30 12:09:19 +02:00
Bastien Nocera
b1aeed9948 daemon: Fix possible UpHistoryItem leak on failure 2014-06-24 16:45:38 +02:00
Bastien Nocera
bab2431c1e linux: Simplify list freeing 2014-06-24 16:41:48 +02:00
Bastien Nocera
dbb9bead6d linux: Fix small memleak on startup with Logitech devices 2014-06-24 16:35:06 +02:00
Richard Hughes
969c97426a Do not print a critical warning when misusing up_device_set_object_path_sync() 2014-05-20 13:25:17 +01:00
Bastien Nocera
5ed25a7e5f all: Remove IsDocked property
Removes the deprecated (for not very long) property, before we do a 1.0
release.

https://bugs.freedesktop.org/show_bug.cgi?id=78380
2014-05-07 11:01:27 +02:00
Bastien Nocera
e8beb269df tools: Remove is-docked from up-tool 2014-05-07 09:48:44 +02:00
Bastien Nocera
cfbd05deb3 linux: Remove is_docked from the integration test 2014-05-07 09:47:45 +02:00
Bastien Nocera
212b4397cc lib: Fix API doc for up_client_get_on_battery() 2014-05-07 09:46:49 +02:00
Bastien Nocera
54a030a38d lib: Hard-code the IsDocked value 2014-05-07 09:46:08 +02:00
Bastien Nocera
135339acc1 daemon: Deprecate "IsDocked" property
The IsDocked property has been incorrect for a number of laptops for a
while, as it thought that laptops with hybrid graphics cards were always
docked.

The alternative would have been to use the platform/dock_station
devices, but those are only exported for ACPI docking stations.

Instead, whether an external display is attached (which isn't really
docking) should be checked in the same place where the policy depending
on the value should be applied, such as gnome-settings-daemon.

https://bugs.freedesktop.org/show_bug.cgi?id=36818
2014-05-07 09:27:24 +02:00
Bastien Nocera
dbf7eb7e55 daemon: Fix shutdown on boot on some machines
On the Lenovo A600 all-in-one, there's a HCI/HID dual-mode Broadcom
device which will try to get the battery level of the supplied
mouse and keyboard, but will usually fail to do so.

So we have a battery of type "battery" (it's not either a mouse or
a keyboard, as it's supposed to handle both) but our display device
battery code doesn't check whether those batteries are power supplies
or not, using this "empty" (0% after the check timed out) battery in
the shutdown policy.

Check better for power supply devices, not all the "battery" types
are power supply batteries, they might be non-power supply ones
from unknown device types.
2014-04-23 15:48:48 +02:00
Bastien Nocera
d650df8af8 lib: Fix typo in g-i annotation
Missing colon.
2014-04-23 15:48:48 +02:00
Jasper Lievisse Adriaanse
4bed9c99c1 Update lid status when updating ac status.
Signed-off-by: Richard Hughes <richard@hughsie.com>
2014-04-22 11:41:56 +01:00
Cosimo Cecchi
b9cff29978 Create the history directory at runtime
In addition to build time - this increases compatibilty with OSTree,
which starts out with an empty /var.

Signed-off-by: Richard Hughes <richard@hughsie.com>
2014-02-25 09:43:04 +00:00
Martin Pitt
0d64bbddaa lib: Fix segfault on getting property when daemon is not running
This fixes "upower --version" when the daemon is not running, and thus the
client proxy is NULL.
2013-11-08 14:59:50 +01:00
Richard Hughes
e96f5349f9 trivial: post release version bump 2013-10-29 12:52:47 +00:00
Richard Hughes
9b28dac1a1 Released UPower 0.99.0 2013-10-29 12:51:34 +00:00
Richard Hughes
97ed6c4731 trivial: Fix a compile warning in the linux backend 2013-10-29 12:51:23 +00:00
Bastien Nocera
e673d9e59b linux: Use daemon poll for batteries too
This has 2 effects:
- we never stop polling (we used to stop polling when the
  battery was marked as fully-charged, but that can happen when
  the battery is discharging too)
- when in an unknown state, we will poll through the daemon,
  and through our unknown poll. This isn't a problem as there'll
  another 115 seconds of wait until we get to poll through the
  daemon again.
2013-10-28 16:28:57 +01:00
Bastien Nocera
03591e6e05 linux: Switch non-battery devices to use the new daemon poll
Next up is doing this for batteries, which need to switch between
a normal/slow poll to a faster one when the battery state is unknown.
2013-10-28 15:15:02 +01:00
Bastien Nocera
d1032c562a linux: Switch Unifying devices to use the new daemon poll 2013-10-28 15:15:02 +01:00
Bastien Nocera
988889121e linux: Switch iDevices to use the new daemon poll
And remove the gathering of the battery poll from the device
itself, it's of nearly no use.
2013-10-28 15:15:02 +01:00
Bastien Nocera
8018418a97 linux: Switch CSR devices to use the new daemon poll 2013-10-28 15:15:02 +01:00
Bastien Nocera
b7d69524e8 daemon: Add poll helper functions
To be used by all polling backends. This changes the defaults
to poll every 120 seconds when a warning level isn't reached, and
switch automatically to 30 seconds poll when the battery level is low.
2013-10-28 15:15:02 +01:00
Bastien Nocera
6e8e659ca2 daemon: Better timeout source naming
Matching the work done in glib, gtk+, etc.

This also differentiates the unknown and normal timeouts in
the Linux power supply driver.
2013-10-26 14:55:15 +02:00
Bastien Nocera
4d0af3b31b linux: Add NoPollBatteries configuration option
For system integrators. If your firmware is helpful to user space
and automatically sends out uevent when the battery level changes
(rather than just the battery state) as on most machines,
you can enable "NoPollBatteries" in the configuration option,
and reduce power consumption from UPower and its listeners.
2013-10-26 14:55:15 +02:00
Bastien Nocera
64b1cc0f1d linux: Split up battery and device refresh
In up_device_supply_refresh().
2013-10-26 14:55:15 +02:00
Bastien Nocera
f62e7f11a7 linux: Move poll disable to another function 2013-10-26 14:55:15 +02:00
Bastien Nocera
feea39fa43 linux: Only disable timeouts if ever set
We cannot ever set the refresh timeout when we have a power line
device, so don't try and remove it there.
2013-10-26 14:55:15 +02:00
Bastien Nocera
9ce7b4408f daemon: Let the backends do the polling
When the AC state changes, let the backends poll for battery changes.
They know better what's _really_ happening (whether the real state
is unknown even if they present a fully-charged battery), etc.

This is only possible because we fixed the Linux backend to poll
as it should always have.
2013-10-26 14:55:15 +02:00
Bastien Nocera
7921e97b08 linux: Poll for unknown state like the daemon did
5 times, with 1 second timeouts, instead of 30 times, with
2 seconds timeouts.
2013-10-26 14:55:15 +02:00
Bastien Nocera
7804f8b08e linux: Fix the "unknown state" heavy poll
It was never actually setup, as the fallback state was used
to check whether we should use poll or not.
2013-10-26 14:55:15 +02:00
Martin Pitt
22da1a0bc5 linux: Clamp percentage for overfull batteries
Some batteries report energy > energy_full and a percentage ("capacity"
attribute) > 100%. Clamp these within 0 and 100% for both plausibility as well
as to avoid setting an out-of-range property which would then become 0%.

https://launchpad.net/bugs/1240673
2013-10-22 10:02:51 +02:00
Benedikt Morbach
a30ad0beae build: Fix --without-systemdunitdir / --without-systemdutildir
would take the with_*=no as a value and try to install to a "no" directory

https://bugs.freedesktop.org/show_bug.cgi?id=62060
2013-10-21 10:29:48 +02:00
Bastien Nocera
cf5d24922e linux: Fix parsing of double values for certain locales
I don't think the kernel exports any numbers with a decimal
portion, but if they did, they would get the wrong values because
some locales use "," as the decimal separator, and not "." as the
kernel/C locale would.
2013-10-20 13:51:21 +02:00
Bastien Nocera
498d4491ed daemon: Fix time to empty with multiple batteries
If one battery is draining and the other one isn't, the time
to empty wouldn't be zero, but it would only match the time
to empty for the single battery.

Instead, ignore the accumulated time to empty/time to full
for multiple batteries and recalculate it.

https://bugzilla.gnome.org/show_bug.cgi?id=710344
2013-10-20 13:30:23 +02:00
Bastien Nocera
21ecc70ccd daemon: Restart upowerd when it crashes
When UPower crashes, we would never notice the battery going flat
because UPower clients aren't polling UPower, so won't autostart it.

Instead we rely on systemd to restart us when we crash. libupower-glib
also supports the client coming and going.

https://bugzilla.gnome.org/show_bug.cgi?id=682912
2013-10-19 20:19:11 +02:00
Bastien Nocera
0741e5b591 linux: Finish "fixing" the UPS test case
Update the expected warning levels to match, and add a big
fat FIXME for the test case itself. That's not how UPSes work,
or how UPower is expected to work.
2013-10-18 18:43:50 +02:00
Bastien Nocera
585ff606c0 daemon: No warning with no LEDs class
If there are no LED class devices on the system, no need
to print a warning when we cannot open the directory.
2013-10-18 18:43:07 +02:00