Xen Project Release Features/Definitions: Difference between revisions

From Xen
Jump to navigationJump to search
(Replace with definitions from Support.MD)
Line 1: Line 1:
{{InfoLeft|These definitions are based on [http://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=SUPPORT.md SUPPORT.md], which is a machine readable version of this document, which was introduced in Xen 4.10.}}
{{InfoLeft|This is a draft, that is based on what we have done in the past. The exact text will still need to be agreed formally. Once approved, this will be copied into in-tree documentation and links from here to those pages, will be created.}}


The definitions in this document primarily refer to the information in [[Xen Project Release Features]] or its archived version.
== User-facing Support Criteria ==


= Definition of Support Labels =
=== Functionally complete ===
Does it behave like a fully functional feature? Does it work on all expected platforms, or does it only work
for a very specific sub-case? Does it have a sensible UI, or do you
have to have a deep understanding of the internals to get it to work
properly?


Each status value besides a {{Tick}} or {{HalfDone}} corresponds to levels of security support, testing, stability, etc., as in the following subsections.
=== Functional stability ===
Note that format in [[Xen Project Release Features]] typically follows the following convention
* {{Tick}} [footnote] [support label]
* {{HalfDone}} [footnote] [support label]
If no support label is specified besides a {{Tick}}, the feature is normally considered '''Supported''' unless otherwise specified.

== Experimental ==

Functional completeness: No
Functional stability: Here be dragons
Interface stability: Not stable
Security supported: No

== Tech Preview ==

Functional completeness: Yes
Functional stability: Quirky
Interface stability: Provisionally stable
Security supported: No

== Supported ==

Functional completeness: Yes
Functional stability: Normal
Interface stability: Yes
Security supported: Yes

== Deprecated ==

Functional completeness: Yes
Functional stability: Quirky
Interface stability: No (as in, may disappear the next release)
Security supported: Yes

All of these may appear in modified form via footnotes.

= Definition of the status label interpretation tags =

== Functionally complete ==

Does it behave like a fully functional feature? Yes = {{Tick}}

Does it work on all expected platforms, or does it only work for a very specific sub-case? No = {{HalfDone}}

Does it have a sensible UI, or do you have to have a deep understanding of the internals to get it to work properly? No = {{HalfDone}}

== Functional stability ==


What is the risk of it exhibiting bugs?
What is the risk of it exhibiting bugs?
Line 15: Line 57:
General answers to the above:
General answers to the above:


* '''Here be dragons'''
* '''Here be dragons''': Pretty likely to still crash / fail to work. Not recommended unless you like life on the bleeding edge.
* '''Quirky''': Mostly works but may have odd behavior here and there. Recommended for playing around or for non-production use cases.
* '''Normal''': Ready for production use


: Pretty likely to still crash / fail to work.
=== Interface stability ===
: Not recommended unless you like life on the bleeding edge.

* '''Quirky'''

: Mostly works but may have odd behavior here and there.
: Recommended for playing around or for non-production use cases.

* '''Normal'''

: Ready for production use

== Interface stability ==


If I build a system based on the current interfaces, will they still work when I upgrade to the next version?
If I build a system based on the current interfaces, will they still work when I upgrade to the next version?


* '''Not stable'''
* '''Not stable''': Interface is still in the early stages and still fairly likely to be broken in future updates.

* '''Provisionally stable''': We're not yet promising backwards compatibility, but we think this is probably the final form of the interface. It may still require some tweaks.
: Interface is still in the early stages and still fairly likely to be broken in future updates.
* '''Stable''': We will try very hard to avoid breaking backwards compatibility, and to fix any regressions that are reported.

* '''Provisionally stable'''

: We're not yet promising backwards compatibility, but we think this is probably the final form of the interface.
: It may still require some tweaks.

* '''Stable'''

: We will try very hard to avoid breaking backwards compatibility, and to fix any regressions that are reported.

== Security supported ==


=== Security supported ===
Will XSAs be issued if security-related bugs are discovered in the functionality?
Will XSAs be issued if security-related bugs are discovered in the functionality?


If "no", anyone who finds a security-related bug in the feature will be advised to post it publicly to the Xen Project mailing lists (or contact another security response team, if a relevant one exists).
== Definition of Support Labels ==

Bugs found after the end of '''Security-Support-Until''' in the Release Support section will receive an XSA if they also affect newer, security-supported, versions of Xen.

However, the Xen Project will not provide official fixes or non-security-supported versions.

== Interaction with other features ==


Not all features interact well with all other features.
Rather than specify each level above, we have some short-hand labels that we use to denote general answer to the above questions.
Some features are only for HVM guests; some don't work with migration, &c.


== External security support ==
=== Experimental ===
* Functional completeness: No
* Functional stability: Here be dragons
* Interface stability: Not stable
* Security supported: No


The Xen Project security team provides security support for Xen Project projects.
=== Tech Preview ===
* Functional completeness: Yes
* Functional stability: Quirky
* Interface stability: Provisionally stable
* Security supported: No.


We also provide security support for Xen-related code in Linux, which is an external project but doesn't have its own security process.
=== Supported ===
* Functional completeness: Yes
* Functional stability: Normal
* Interface stability: Yes
* Security supported: Yes


External projects that provide their own security support for Xen-related features are listed below.
=== Deprecated ===
* QEMU: https://wiki.qemu.org/index.php/SecurityProcess
* Functional completeness: Yes
* Libvirt: https://libvirt.org/securityprocess.html
* Functional stability: Quirky
* FreeBSD: https://www.freebsd.org/security/
* Interface stability: No (as in, may disappear the next release)
* NetBSD: http://www.netbsd.org/support/security/
* Security supported: Yes
* OpenBSD: https://www.openbsd.org/security.html


[[Category:Xen]] [[Category:Users]] [[Category:Fundamentals]]
[[Category:Xen]] [[Category:Users]] [[Category:Fundamentals]]

Revision as of 16:22, 12 March 2018

Icon Info.png {{{1}}}


The definitions in this document primarily refer to the information in Xen Project Release Features or its archived version.

Definition of Support Labels

Each status value besides a or corresponds to levels of security support, testing, stability, etc., as in the following subsections. Note that format in Xen Project Release Features typically follows the following convention

  • [footnote] [support label]
  • [footnote] [support label]

If no support label is specified besides a , the feature is normally considered Supported unless otherwise specified.

Experimental

   Functional completeness: No
   Functional stability: Here be dragons
   Interface stability: Not stable
   Security supported: No

Tech Preview

   Functional completeness: Yes
   Functional stability: Quirky
   Interface stability: Provisionally stable
   Security supported: No

Supported

   Functional completeness: Yes
   Functional stability: Normal
   Interface stability: Yes
   Security supported: Yes

Deprecated

   Functional completeness: Yes
   Functional stability: Quirky
   Interface stability: No (as in, may disappear the next release)
   Security supported: Yes

All of these may appear in modified form via footnotes.

Definition of the status label interpretation tags

Functionally complete

Does it behave like a fully functional feature? Yes =

Does it work on all expected platforms, or does it only work for a very specific sub-case? No =

Does it have a sensible UI, or do you have to have a deep understanding of the internals to get it to work properly? No =

Functional stability

What is the risk of it exhibiting bugs?

General answers to the above:

  • Here be dragons
Pretty likely to still crash / fail to work.
Not recommended unless you like life on the bleeding edge.
  • Quirky
Mostly works but may have odd behavior here and there.
Recommended for playing around or for non-production use cases.
  • Normal
Ready for production use

Interface stability

If I build a system based on the current interfaces, will they still work when I upgrade to the next version?

  • Not stable
Interface is still in the early stages and still fairly likely to be broken in future updates.
  • Provisionally stable
We're not yet promising backwards compatibility, but we think this is probably the final form of the interface.
It may still require some tweaks.
  • Stable
We will try very hard to avoid breaking backwards compatibility, and to fix any regressions that are reported.

Security supported

Will XSAs be issued if security-related bugs are discovered in the functionality?

If "no", anyone who finds a security-related bug in the feature will be advised to post it publicly to the Xen Project mailing lists (or contact another security response team, if a relevant one exists).

Bugs found after the end of Security-Support-Until in the Release Support section will receive an XSA if they also affect newer, security-supported, versions of Xen.

However, the Xen Project will not provide official fixes or non-security-supported versions.

Interaction with other features

Not all features interact well with all other features. Some features are only for HVM guests; some don't work with migration, &c.

External security support

The Xen Project security team provides security support for Xen Project projects.

We also provide security support for Xen-related code in Linux, which is an external project but doesn't have its own security process.

External projects that provide their own security support for Xen-related features are listed below.