[FFe] Update NetworkManager to a recent snapshot in prevision for the 0.9.4 release.

Bug #950313 reported by Mathieu Trudel-Lapierre
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
network-manager (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

I'd like to get NetworkManager in Precise to the 0.9.4 release rather than a snapshot. Right now, we're still shy of it, using a snapshot of git on February 16.

In prevision for the 0.9.4 release and because there is still a substancial number of small issues being fixed (and relatively small features that aren't enabled/used by default), I'd like to update NetworkManager to another recent snapshot of NetworkManager from git. It will then both be easier to review and to be certain there aren't regressions due to the lower number of things left to be tested in the changes introduced.

I've gone through the current list of commits in git up to today's state (from the current commit 8572ecf up to commit bba834f, basically). Changes are identified as to whether they are bugfix or features, with the actual features already being limited to added support for VLAN and bonding and small firewall-related changes (we already have the firewall support)).

None of the features are normally used by default, instead they require some additional manual configuration to be used. Vlan and bonding require special configuration in the NetworkManager configuration files on a per-connection basis, firewall support in itself is not supported yet since it requires firewalld). IP connectivity tracking also needs to be enabled separately, and is disabled by default.

I don't expect a high risk of regression from these changes, although in-depth testing is currently in progress (I'm preparing the actual code changes now, will comment)

bba834f wifi: fix entering possible endless loop (bugfix)
25e011b Revert "wifi: fix entering an endless loop" (bugfix)
5a7fdd4 libnm-glib: simplify setting device-type property (bugfix)
bc50a2a cli: add VLAN device support (feature, vlan, command-line)
c02702e libnm-glib: add NMDeviceVlan (feature, vlan)
dc6341a vlan: try harder to get carrier state at device creation time (bugfix, redhat-specific)
84403ab wifi: fix entering an endless loop (bugfix)
79757f1 ifcfg-rh: use single quotes when quoting WPA passphrases (WPA_PSK) (rh #798102) (bugfix, redhat-specific)
4921406 Fix capitalization of "InfiniBand" (bugfix)
4fc8b8c cli: don't require a device for virtual connections (bugfix, vlan/bonding)
11da5fb core: handle NULL device path for activation (bugfix)
3567e6f core: remove some redundant code and add some argument checks (bugfix)
cd2c721 core: use a second startup pass to detect all VLAN interfaces (bugfix, vlan)
8c3ac9b trivial: s/master/parent for VLAN interface info function (bugfix, vlan)
96a2bc4 cli: add a new reason code -> string mapping (feature, debugging)
78f0907 cli: add Bond device support (feature, bonding)
723bab4 ifcfg-rh: remove duplicate tests (bugfix, redhat-specific)
0d2aac2 wifi: remove unused nl80211 attributes that break build on older kernels (bugfix, doesn't affect Ubuntu)
9296fd1 docs: add Infiniband, VLAN, and Bond settings to API specs (bugfix, docs)
51f2bd0 ifcfg-rh: don't write out a fake minimal IP4 config for bond slaves (bugfix, bonding, redhat-specific)
6c38f0c libnm-glib: add NMDeviceBond (feature, bonding)
a6809b0 ip6: set binary NL address prefix too (bugfix)
a9c3fe0 ip6: print out prefix in some debug messages (bugfix)
74d962e trivial: spacing fix (bugfix)
5519ff9 cli: add 'vlan' setting (feature, vlan, command-line)
71e7434 cli: add 'bond' setting (feature, bonding, command-line)
5cd9b1e wifi: don't remove APs still known to the supplicant (bugfix)
fb06cda libnm-util: fix two bugs in nm_setting_bond_get_option() (bugfix, bonding)
501a389 cli: enable OLPC device now that we have it in libnm-glib (bugfix, olpc-mesh)
960621c vlan: add missing includes (bugfix, vlan)
3efd156 release: bump version to 0.9.3.995 (0.9.4-beta1) (release)
e0613ac release: update NEWS (release)
128695c firewall-manager: changing the zone an interface belongs to (feature, firewall)
b2d4f66 firewall-manager: add interfaces to zones after firewall (re)start (feature, firewall)
86a8fa4 dns: dnsmasq plugin: update command-line parameters for starting dnsmasq (bugfix, upstreamed patch from Ubuntu)
84ef2ac bond: set bond device options during activation (feature, bonding)
b3f7b20 core: set unspecified bond options to their default value (feature, bonding)
b9ddbe5 libnm-util: add functions for getting valid bond options and defaults (feature, bonding)
33d0cff core: use active connection dependency master instead of manually setting it (bugfix, vlan/bonding)
9146d4e core: move slave handling to device subclasses (feature, vlan/bonding)
58227d0 wired: check carrier immediately after bringing device up (bugfix)
28edd78 core: don't require an error argument to nm_device_check_connection_compatible() (bugfix, vlan/bonding)
db94e37 core: wait for dependencies before continuing with device activation (feature, vlan/bonding)
0b8ff52 core: track active connection dependencies (feature, vlan/bonding)
d08b33b core: ensure master connections are available for dependence (bugfix, vlan/bonding)
0eb09bc core: don't assert in nm_device_get_connection() (bugfix)
fbfdecf core: reorganize activation flow by splitting out VPN activation work (bugfix)
7aa2a82 core: use NMActiveConnection objects throughout activation paths (bugfix)
65a13f9 core: convert VLAN interfaces to a device subclass (feature, vlan)
5ee7841 core: extend nm_device_hwaddr_matches() to match specific addresses (bugfix)
29672c3 core: move IP config matching to NMDevice superclass (feature, vlan/bonding)
57b77b1 core: fix parent/master confusion in some argument names (bugfix, vlan)
51edc6a core: use VLAN parent instead of master for creating the virtual interface (bugfix, vlan)
10b32be ifcfg-rh: various VLAN cleanups (bugfix, redhat-specific)
e52bf5e libnm-util: add 'parent' property to VLAN setting (feature, vlan)
cf597e6 ifcfg-rh: writer support for bonding connections (feature, bonding, redhat-specific)
a3ca1f8 build: wifi: add missing builddir to INCLUDES (bugfix)
64753b9 trivial: fix unused variable ‘priv’ (bugfix)
ff0e716 build: fix build (bugfix)
57d8ab0 wifi: add forgotten makefile (bugfix)
ca3c39a wifi: let WEXT be disabled with --with-wext=no (build, won't be enabled)
aef4340 libnm-glib: ensure device state is updated when it changes (bugfix, we already carry this, reported from Ubuntu)
6fe615b po: updated Ukranian translation (bgo #670222) (translations)
0489c80 po: updated Hungarian translation (bgo #670179) (translations)
85a25e9 po: updated Slovenian translation (bgo #670634) (translations)
64672bb po: updated Malayalam translation (bgo #670742) (translations)
af27e59 po: updated Polish translation (bgo #670765) (translations)
d0191e6 po: updated Brazilian Portuguese translation (bgo #670808) (translations)
ff249e8 libnm-glib: add NMDeviceOlpcMesh (feature, olpc-mesh)
51e0cf5 release: update TODO with enhanced connectivity check ideas (release)
f828785 man: update manpage for connectivity checking options (feature, ipcheck, doc)
330eb2f core: additional connectivity checking debug messages (feature, ipcheck)
5937861 core: fix up connectivity state checks (bugfix, ipcheck)
d47072a core: clean up and simplify connectivity check (bugfix, ipcheck)
d62f712 core: bound connectivity check operations with a socket timeout (feature, ipcheck)
2619c01 core: make connectivity checking selectable at build-time (feature, ipcheck)
7703170 core: connectivity check cleanups; check response headers too (feature, ipcheck)
854c289 trivial: whitespace and formatting cleanups (bugfix)
267bc99 core: add internet connectivity check (feature, ipcheck)
5ea7e60 core: use glib's CLAMP() macro to simplify ipv6_privacy boundary check (bugfix)
d376270 core: add support for IPv6 Privacy Extensions for SLAAC (RFC4941) (bgo #633233) (feature, we already carry this)
96378df backends: add a function reading systemwide IPv6 Privacy Extensions configuration (feature, related to below)
88dc641 ifcfg-rh: read/write IPV6_PRIVACY and IPV6_PRIVACY_PREFER_PUBLIC_IP (feature, see below, redhat-specific so I didn't pull this in yet)
788720a libnm-util: add a property for IPv6 Privacy Extensions to NMSettingIP6Config (feature, we already carry this patch)
785b6fb utils: more flexible reading of /proc/sys/net (feature/bugfix, we already carry this patch)
23b73b1 supplicant: fix an error in demarshalling object path (bugfix)
1e8448e wifi: fix a crash when nm_ap_get_supplicant_path() returns NULL (bugfix)
e41218c ifnet: misc fixes (constness, error initialization) (bgo #670508) (bugfix)
4641649 ifnet: backup configuration files before writing (bgo #670508) (bugfix)
cd86753 ifnet: remove wep_tx_keyidx only when necessary (bgo #670508) (bugfix)
2804730 ifnet: fix IP comparison (bgo #670508) (bugfix)
750cb8b ifnet: add testcase for # in passphrase (bgo #670381) (bugfix, tests)
3feb769 ifnet: do not truncate WPA passwords at '#' character (bgo #670381) (bugfix)
e8ffca3 ifcfg-rh: add "VLAN=yes" in ifcfg (feature, vlan, redhat-specific)
0878546 vlan: add compatible functions for libnl1 (bugfix, vlan)
4fdc64a Makefile.glib: Fix locale-specific issues (bugfix)
015fe77 core: add missing system includes (bugfix)
2735205 core: remove invalid bond MAC address filter (bugfix, bonding)
0109ed6 core: const-ify nm_device_wired_get_hwaddr() (bugfix)
74ec56d build: fix srcdir != builddir for new generated headers (bugfix, build-related, doesn't really affect Ubuntu)
7902787 wifi: fix compatibility with wpa_supplicant 0.7.x (bugfix)
258d0b3 libnm-util: fix a docs typo (bugfix, doc)
9241235 wifi: ensure APs remain in scan list when supplicant updates them (bugfix)
2c6bade libnm-glib: fix some property-handling warnings (bugfix)
7b9c728 docs: correct NMSettingBond documentation errors (bugfix, bonding, doc)
261d760 netlink: fix build on libnl1/2 (bugfix, doesn't affect Ubuntu -- we build against libnl3)
0e6de5d modem: get ip-timeout during modem creation (bugfix/feature, modems)
002155f modem: get modem properties using GetAll (bugfix/feature, modems)
b574524 modem: query desired IP timeout value (bugfix/feature, modems)
0be930c core: flush timestamp cache to disk only on activate/deactivate (bugfix, from a patch we already carry)
78a8afa release: bump version to 0.9.3.990 (release)
cf6482b release: update NEWS (release)
46eee48 core: fix matching VLAN connections to interfaces (bugfix, vlan)
0c61a51 bond: move bond master interfaces to NMDeviceBond (feature, bonding)
fdd44b8 core: handle explicit device creation on connection activation (feature, vlan)
b35afe4 core: automatically create VLAN interfaces when needed (feature, vlan)
13c8d2c core: add NMDevice hwaddr_matches() class method (bugfix, vlan)
c1a6693 core: don't create virtual interfaces we already have (bugfix, vlan)
add5f97 core: make the Ethernet class aware of VLAN interfaces (feature)
fcce9da core: add utility function nm_utils_is_uuid() (feature, misc (low-risk))
ccea442 ifcfg-rh: add ifcfg-vlan writer (feature, vlan, redhat-specific)
0c3efb1 vlan: rework VLAN interface creation/deletion (feature, vlan)
ab43b7b vlan: create/delete kernel vlan device (feature, vlan)
b2d9fa2 ifcfg-rh: fix parsing of REORDER_HDR (bugfix, redhat-specific)
ca689a0 ifcfg-rh: clean up master interface/connection handling (bugfix, redhat-specific)
ee4b05c ifcfg-rh: add ifcfg-vlan parser (feature, vlan, redhat-specific)
552c995 libnm-util: various cleanups and documentation fixes (bugfix)
23c1b6a libnm-util: add VLAN setting and properties (feature, vlan)
3f963d3 build: fix distcheck due to missing ifcfg-rh test files (bugfix)

Revision history for this message
Mathieu Trudel-Lapierre (cyphermox) wrote :

Attaching the list of commits with my comments as a text file, since it may otherwise be a little hard to parse.

See http://cgit.freedesktop.org/NetworkManager/NetworkManager/log/ for the details, up to 2012-02-16 "libnm-glib: don't crash on unknown object types"

Revision history for this message
Mathieu Trudel-Lapierre (cyphermox) wrote :

We're expecting the 0.9.4 release on March 20th or earlier.

Revision history for this message
Martin Pitt (pitti) wrote :

It generally seems OK to me. However, I'd appreciate if you could put that into a PPA, and collect a few confirmations from Ubuntu and Kubuntu users that Ethernet and Wifi devices still work correctly.

Changed in network-manager (Ubuntu):
status: New → Confirmed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.7 KiB)

This bug was fixed in the package network-manager - 0.9.3.995+git201203081848.bba834f-0ubuntu1

---------------
network-manager (0.9.3.995+git201203081848.bba834f-0ubuntu1) precise; urgency=low

  * upstream snapshot 2012-03-08 18:48:46 (GMT) (LP: #950313)
    + bba834f8428934608b58eb96aa2b81e413430346
    - Added VLAN support.
    - Added bonding support.
    - Added Firewalld support.
    - Added support for IP connectivity checking.
    - Updated translations for Ukrainian, Slovenian, Hungarian, Malayalam,
      Polish and Brazilian Portugese.
    - Miscellaneous bugfixes.
  * debian/patches/nm-change-dnsmasq-parameters.diff: refreshed, dropped the
    disabling of --strict-order, since that change made it upstream.
  * debian/patches/avoid-periodic-disk-wakeups.patch: dropped, this was fixed
    slightly differently upstream, keeping periodic updates of the timestamps
    in memory but avoiding to flush the changes to disk, see commit 0be930c.
  * debian/patches/manage-privacy-extensions.patch: dropped, applied upstream;
    the only part that wasn't applied is to default to privacy extensions being
    enabled...
  * debian/patches/enable-ipv6-privacy.patch: since we dropped the previous
    patch, update the defaults for PROP_IP6_PRIVACY to make sure IPv6 privacy
    extensions are enabled by default, to retain the same behavior we already
    had.
  * debian/patches/git_libnm-glib_ensure_device_state_aef4340.patch: dropped,
    applied upstream.
  * debian/patches/dnsmasq-dont-read-hosts.patch: dropped, applied upstream.
  * debian/patches/dnsmasq-dnssec-passthrough.patch: refreshed.
  * debian/patches/git_nm_device_set_device_type_private.patch: make sure
    nm_device_set_device_type() stays private.
  * debian/libnm-glib4.symbols: add new symbols:
    + nm_device_bond_get_carrier@Base
    + nm_device_bond_get_hw_address@Base
    + nm_device_bond_get_type@Base
    + nm_device_bond_new@Base
    + nm_device_olpc_mesh_get_active_channel@Base
    + nm_device_olpc_mesh_get_companion@Base
    + nm_device_olpc_mesh_get_hw_address@Base
    + nm_device_olpc_mesh_get_type@Base
    + nm_device_olpc_mesh_new@Base
    + nm_device_vlan_get_carrier@Base
    + nm_device_vlan_get_hw_address@Base
    + nm_device_vlan_get_type@Base
    + nm_device_vlan_get_vlan_id@Base
    + nm_device_vlan_new@Base
  * debian/libnm-util2.symbols: add new symbols:
    + nm_connection_get_setting_vlan@Base
    + nm_setting_bond_get_option_default@Base
    + nm_setting_bond_get_valid_options@Base
    + nm_setting_ip6_config_get_ip6_privacy@Base (renamed from
      nm_setting_ip6_config_get_enable_ip6_privacy@Base)
    + nm_setting_ip6_config_privacy_get_type@Base
    + nm_setting_vlan_*
    + nm_vlan_flags_get_type@Base
    + nm_vlan_priority_map_get_type@Base
  * debian/network-manager.install: install the debug-helper.py script as a way
    for our users to change wpasupplicant, NetworkManager and ModemManager log
    levels easily; as /usr/lib/NetworkManager/debug-helper.py.
  * debian/control: add python to Suggests because the debug-helper.py script
    does require it, but leave it as just a Suggests because the script is
    simply there to make people's life easie...

Read more...

Changed in network-manager (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Christian Mertes (cmertes) wrote :

Sorry, maybe I'm slow but how is using 0.9.3.995+git201203081848.bba834f-0ubuntu1whatever a fix to "please use 0.9.4"? I see it has many if not all of the features of 0.9.4 but shouldn't a stable release be used instead of a git build? LTS and all?

Revision history for this message
Luis Alvarado (luisalvarado) wrote :

I am guessing by the looks of it, the ubuntu team will provide the stable release soon enough.

Revision history for this message
Mathieu Trudel-Lapierre (cyphermox) wrote :

0.9.4 is in Precise now.

We ship git snapshots because it's a good way to be able to catch issues in the development release without waiting around for a stable release (which can be released very late during the development cycle). It allows us to have new features as soon as they are landed and get to know them and to test them (including fixing bugs) early. I also have a good idea of how stable the tree is when I take a snapshot of it, for having tested it on a different hardware, having retested VPN and 3G for the most common use cases. All this makes it easier to debug issues and provide patches since all other distros and all upstream programmers rely on roughly the same version (git head, or a recent enough snapshot).

This bug mentioned a snapshot before 0.9.4, which we released, and there was another bug for 0.9.4 itself, since both those were uploaded after Feature Freeze and included some features.

If you have further questions, feel free to ask me on IRC, I'm "cyphermox" in #ubuntu-devel.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.