Mailinglist Archive: opensuse-features (266 mails)

< Previous Next >
[openFATE 308189] Consolidating terminology: update and upgrade
Feature changed by: Jan Engelhardt (jengelh)
Feature #308189, revision 11
Title: Consolidating terminology: update and upgrade

openSUSE-11.3: Evaluation by product manager
Requester: Mandatory

openSUSE 12.1: New
Requester: Mandatory

Requested by: Karl Eichwalder (keichwa)
Partner organization:

In the past, we just used the term "update" for all update related
things, because we were told "upgrade" is suitable for hardware related
upgrades only.
With the advent of zypper, the term "upgrade" (dup, dist-upgrade) is
back for upgrading the system complete from one version "n" to the next
version "n+1" (yes, you can "upgrade" within one version, but that's a
special case...).
The term is fine and I'd like us to use "upgrade" in YaST and
everywhere else where suitable.

Business case (Partner benefit): Avoid confusion. ATM, I'm forced to use different terms
in the chapter of the manual, if I describe the same task.

#1: Ján Kupec (jkupec) (2009-10-23 12:03:06)
I'm not an expert on English, but my understanding of these terms as
should be used with software is as follows:
upgrade = installation of newer (major) version of a package or
distribution, which brings NEW FEATURES
update = installation of ANY NEWER VERSION of a package or distro
In short, upgrade is 'feature-wise', update is 'time-wise'. If we'd
agree on this definition, then:
* upgrades are a subset of updates
* bug fixes (e.g. openSUSE updates/patches), are mere 'updates' - they
should not bring new features
* distribution update is always an upgrade - it always brings new
So if one wants to emphasize that the update brings new features, s/he
should use 'upgrade'. In all other cases just 'update' is fine.
What do you think? What do experts on English think?

#2: Karl Eichwalder (keichwa) (2009-10-23 13:18:38) (reply to #1)
Yes, but let's decide with customer focus in mind ;)
The customer does only package updates (via online maintenace updates)
and system upgrades (e.g., from 11.1 to 11.2).
Those who do "zypper dup" within Factory or from from one milestone to
the next, are developers and not the default audience of our manuals.
This means, zypper messages are fine and yast needs adjustments.

#5: Jan Engelhardt (jengelh) (2011-08-12 02:15:25) (reply to #1)
>What do you think? What do experts on English think? From a math
standpoint, it's clearly defined by action/source code: update = offer
all packages with an increased version number and the same vendor for
installation upgrade = move all installed packages to the version
present in enabled repositories, allowing for downgrades and vendor
changes. In that regard, an upgrade is actually a superset, because it
allows more actions to be carried out. On an English note, the words
update/upgrade are closely related, and for starters the different may
not be intuitive. Adding to the problem is that other rpm managers,
here yum, make update and upgrade the same thing, due to 1. downgrades
being realized by increased EVR using the rpm epoch field that is
deprecated in SUSE, 2. not doing any vendor locks.
Once the very definition of up and dup (see above) is conveyed to the
user by documentation though, I see no issue with continuing to use
these terms, also because changing them now would cause a unnecessary

#3: Juergen Weigert (jnweiger) (2009-10-23 15:18:43)
Jan, I like your definition in #1, feature-wise vs. time-wise. Although
the distinction is not very precise. Karl, I haven't seen any reason
why the term upgrade should only apply to hardware. Do we have a
reference for this?
I'd like to go one step further and suggest: "Upgrade" applies to
changes in the version of a distribution. Whenever /etc/SuSE-release
changes, it is an upgrade (or downgrade). When going from one milestone
(aka alpha .. beta .. RC) to another, this is also an upgrade, even if
the exact milestone is not visible in /etc/SuSE-release.
"Update" applies to changes in the version of a packages. when
installing a newer package version that is still released for the same
version of the distribution, then it is an update. (No Idea, what
installing an older version should be called ...)
Installing a new package that would belong to the next distribution,
into a system, would qualify as a package upgrade with Jan's
definition. For disambiguation, I'd rather call it a cross-distribution
package update, or something else.
How do other linux distros (or windows?) use these terms?
This fate requires two things: a) come up with sound definitions. b)
implement the definition.
I am aware that implementing exact definitions here may create
additional workload for yast, zypper, and documentation team. For my
part, I'd say, it is worth the effort.

+ #6: Jan Engelhardt (jengelh) (2011-08-12 02:21:27) (reply to #3)
+ >I like your definition in #1, feature-wise vs. time-wise. Although the
+ distinction is not very precise.
+ Technically, new features can also show up in the update repositories.
+ This can happen if a maintainer decides that pushing a new upstream
+ release to openSUSE users is easier to deal with (including subsequent
+ new bugs) than to maintain large stacks of (possibly even backported)
+ patches.
+ The SLE11 kernel update from 2.6.27->2.6.32 was like that.

openSUSE Feature:

< Previous Next >
This Thread