1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
v1.0 Series ("Burlap")
======================
1.0.0
-----
This release changes a few admin-visible components of Patchwork, so upgrading
involves a few steps.
New Features
~~~~~~~~~~~~
- Patch tags are now supported
Patch "tags", such as `Acked-by`, `Reviewed-by`, are typically included in
patches and replies. They provide important information as to the activity
and "mergability" of a patch. These tags are now extracted from patches and
included in the patch list.
- Django 1.7 and Django 1.8 are now supported
- tox support is integrated for use by developers
Upgrade Notes
~~~~~~~~~~~~~
- Migrations are now executed using the Django migrations framework.
Future database migrations will be implemented using Django Migrations,
rather than raw SQL scripts. Before switching to Django migrations, first
apply any unapplied migrations in the `lib/sql/migration` folder. For
example, on postgres::
$ psql -f lib/sql/migration/015-add-patch-tags.sql patchwork
$ psql -f lib/sql/grant-all.postgres.sql patchwork
Once applied, configure the required Django Migration tables using the
`migrate` managment command::
$ ./manage.py migrate --fake-initial
- Moved Patchwork source from the `apps` directory to the top level directory.
Any scripts or tools that call Patchwork applications, such as
`parsemail.sh`, must be updated to reference the new location of these
scripts. To do this, simply remove `apps/` from the path, i.e.
`apps/patchwork/` becomes `patchwork`.
- The `patchwork-cron.py` script has been replaced by the `cron` management
command.
Any references to the former should be updated to the latter. The `cron`
management command can be called like so::
$ ./manage.py cron
- The `settings.py` file has been updated to reflect modern Django practices.
You may need to manually migrate your existing configuration to the new
settings file(s). By default, settings are read from
`patchwork/settings/production.py`. To migrate, use the provided template::
$ cp patchwork/settings/production{.example,}.py
Merge your previous settings, usually located in `apps/local_settings.py`, to
this file.
In addition, any scripts that set the `DJANGO_SETTINGS_MODULE` environment
variable will need to be updated to reflect the new location, typically::
DJANGO_SETTINGS_MODULE=patchwork.settings.production
- Django `staticfiles` is now used to to gather static files for for serving
via a web server
Static content should now be located in the folder indicated by
`STATIC_ROOT`. This should point to somewhere sensible, such as the absolute
path of `htdocs/static` in the Patchwork tree. Configure the `STATIC_ROOT`
setting in your settings file, then run the `collectstatic` management
command::
$ ./manage.py collectstatic
Finally, update your webserver configuration to serve the static content from
this new location. Refer to the sample web configuration files provided in
`lib` for more information.
- Django 1.5 is no longer supported
- Python 2.5 support was broken and is officially no longer supported
Deprecation Notes
~~~~~~~~~~~~~~~~~
- Django 1.6 support will be removed in a future release
- Raw SQL migration scripts, currently found at `lib/sql/migration`, will no
longer be updated and will be removed in a future release. The Django
Migration framework, found in Django 1.7 and above, should be used instead.
|