[backend][api] switch to new source service handling by default. Right now this has...
[opensuse:build-service.git] / ReleaseNotes-2.3
1 #
2 # Open Build Service 2.3
3 #
4
5 Please read the README.SETUP file for initial installation
6 instructions or use the OBS Appliance from
7
8   http://en.opensuse.org/Build_Service/OBS-Appliance
9
10 There is also an install medium with installs OBS on hard disc now.
11
12 README.UPDATERS file has informations for updaters.
13
14 OBS Appliance users who have setup their LVM can just replace 
15 their appliance image without data loss. The migration will 
16 happen automatically.
17
18
19 Main Features
20 =============
21
22 The main topic of OBS 2.3 is to deliver a number of features to allow 
23 product maintenance handling with OBS. No external build or tracking tool 
24 is needed to do the typical maintenance workflow of a distribution team.
25
26 The usage of these features are documented in the OBS book:
27
28   http://doc.opensuse.org/products/draft/OBS/obs-reference-guide_draft/
29
30 OBS 2.3 comes also with a feature which was planned for the not released
31 OBS 2.2 version. New created projects can set to hidden. That means no source 
32 or binary read access is possible. Please read the following for details:
33
34 To be considered regarding read access checks
35 =============================================
36
37 * "access" flag is hiding and protecting entire project. This includes binaries
38   and sources. It can only be used at project creation time and can just be
39   globally enabled (aka make it public again) afterwards.
40    This flag can only be used on projects.
41
42 * "sourceaccess" flag is hiding the sources to non maintainers, this includes also debug packages
43   in case the distribution is supporting this correctly.
44     This flag can also only be used at package creation time. There is no code
45   yet which is checking for possible references to this package.
46   This flag can be used on projects or packages.
47
48 * "downloadbinary" permission still exists like before. However, unlike "access" 
49   and "sourceaccess" this is not a security feature. It is just a convinience feature, which
50   makes it impossible to get the binaries via the API directly. But it still possible
51   to get the binaries via build time in any case.
52
53 Security aspects
54 ================
55
56 Former OBS releases lack protection against XSS attacks. Esp. public instances
57 should update to OBS 2.3, which is using rails plugins to protect against XSS
58 attempts. This fixes (CVE-2011-0462).
59
60
61 Apache & mod_rails switch
62 =========================
63
64 Former OBS versions used lighttpd as default web server. We have switched to 
65 apache with mod_rails (known as passenger) as default web server. 
66 We have also added an mod_xforward apache module to allow unloading the rails
67 stack with long running requests to the backend.
68 Please note that current apache2 versions have a known bug which cuts the http
69 headers regardless to it's configuration. Please use apache2 from openSUSE:Tools
70 project to get this fixed for now.
71 Also the patched version of rubygem-passenger from openSUSE:Tools project is recommended.
72
73 Known Regressions to 2.1:
74 =========================
75
76 * none yet
77
78 Features:
79 =========
80
81 * web interface improvements:
82   - package filtering
83   - Generic authentification proxy support
84   - delete request dialogs
85   - request and review handling improvements
86   - social features, i.e. show other user's projects and requests
87
88 * api
89   - review of requests by project or package maintainers is possible now (FATE #310806)
90   - better Cross-Site Scripting (XSS) protection
91   - larger number of request handling improvements
92
93 * backend:
94
95
96 Changes:
97 ========
98
99 * web interface
100   - bug reporting for projects/packages is only possible if a bugowner is set
101   - XSS protection plugins are used now (CVE-2011-0462)
102
103 * api
104   - It was not possible so far to create submit requests from packages where no write access exists.
105     This is possible now, but the source package maintainer will get asked for review the request.
106   - the route /group/$GROUP is showing correct xml description and no directory anymore
107
108 * new source service handling
109   - Source services do not generate an extra commit for the result. Instead they work like
110     source links, this means the generated files become visible with expand=1 parameter.
111   - The state of the service is visible via serviceinfo element in package file list.
112
113 Deprecated:
114 ===========
115
116 The following calls have been marked as deprecated, they will get removed in OBS 3.0
117
118 * api
119   - /person/$LOGIN/group   ->  use /group?login=$LOGIN   instead
120
121 Requirements:
122 =============
123
124 * The OBS server should not run on a system with less than 2GB memory. 
125   4GB is recommended, esp. when the same system is also building packages.
126
127 * Use osc 0.131 or later to get access to the new features.
128
129 * Usage of Ruby on Rails version 2.3.11 is recommended.
130