Code

Property changes are now completely traceable, whether changes are
[roundup.git] / MIGRATION.txt
1 Migrating to newer versions of Roundup
2 ======================================
5 Migrating from 0.2.x to 0.3.x
6 =============================
8 Please read each section carefully and edit your instance home files
9 accordingly.
12 Cookie Authentication changes
13 -----------------------------
14 0.3.0 introduces cookie authentication - you will need to copy the
15 interfaces.py file from the roundup source to your instance home to enable
16 authentication. If you used the classic schema, the interfaces file is in:
18  <roundup source>/roundup/templates/classic/interfaces.py
20 If you used the extended schema, the file is in:
22  <roundup source>/roundup/templates/extended/interfaces.py
24 If you have modified your interfaces.Client class, you will need to take
25 note of the login/logout functionality provided in roundup.cgi_client.Client
26 (classic schema) or roundup.cgi_client.ExtendedClient (extended schema) and
27 modify your instance code apropriately.
30 Password encoding
31 -----------------
32 This release also introduces encoding of passwords in the database. If you
33 have not edited the dbinit.py file in your instance home directory, you may
34 simply copy the new dbinit.py file from the core code. If you used the
35 classic schema, the interfaces file is in:
37  <roundup source>/roundup/templates/classic/dbinit.py
39 If you used the extended schema, the file is in:
41  <roundup source>/roundup/templates/extended/dbinit.py
44 If you have modified your dbinit.py file, you may use encoded passwords:
46  1. Edit the dbinit.py file in your instance home directory
47  1a. At the first code line of the open() function:
49     from roundup.hyperdb import String, Date, Link, Multilink
51       alter to include Password, as so:
53     from roundup.hyperdb import String, Password, Date, Link, Multilink
55  1b. Where the password property is defined (around line 66):
57     user = Class(db, "user", 
58                     username=String(),   password=String(),
59                     address=String(),    realname=String(), 
60                     phone=String(),      organisation=String())
61     user.setkey("username")
63       alter the "password=String()" to "password=Password()":
65     user = Class(db, "user", 
66                     username=String(),   password=Password(),
67                     address=String(),    realname=String(), 
68                     phone=String(),      organisation=String())
69     user.setkey("username")
71  2. Any existing passwords in the database will remain cleartext until they
72     are edited. It is recommended that at a minimum the admin password be
73     changed immediately:
75       roundup-admin -i <instance home> set user1 password=<new password>
78 Configuration
79 -------------
80 FILTER_POSITION, ANONYMOUS_ACCESS, ANONYMOUS_REGISTER have been added to
81 the instance_config.py. Simplest solution is to copy the default values from
82 template in the core source.
84 MESSAGES_TO_AUTHOR has been added to the IssueClass in dbinit.py. Set to 'yes'
85 to send nosy messages to the author. Default behaviour is to not send nosy
86 messages to the author. You will need to add MESSAGES_TO_AUTHOR to your
87 dbinit.py in your instance home.
90 CGI script roundup.cgi
91 ----------------------
92 There have been some structural changes to the roundup.cgi script - you will
93 need to install it again from the cgi-bin directory of the source
94 distribution. Make sure you update the ROUNDUP_INSTANCE_HOMES after the
95 copy.