OK, this is it! :-|
I am definitely going to branch for Moodle 1.5 Beta in 24 hours, barring something really really important ... we have to move on with this thing.
Once we branch then there will be no new features in the branch - just super-concentrated bug fixing for a couple of weeks (at most).
The help of everyone looking after various parts of Moodle would be appreciated in kicking this release through the posts.
I'm seeking and destroying all those tabs just now.
Perhaps developers could take a look to the list of 1.4.4 Un-merged files to merge/update the tag as needed too?
Ciao
Perhaps developers could take a look to the list of 1.4.4 Un-merged files to merge/update the tag as needed too?
Ciao
...too late... 
I've deleted all tabs (except from some 3rd party libraries and some export formats).
Anyway, your code seems really good and we could use it to strip whitespace, Win32 lines separator and the last line problem.
About tabs, and after my "brute" experience, I'm not sure about changing every tab to 4 cc. I've found a lot of scripts where tabs were 2 or 8 characters!!
Ciao
PD: My fingers cannot stop! They are typing continuously:
I've deleted all tabs (except from some 3rd party libraries and some export formats).
Anyway, your code seems really good and we could use it to strip whitespace, Win32 lines separator and the last line problem.
About tabs, and after my "brute" experience, I'm not sure about changing every tab to 4 cc. I've found a lot of scripts where tabs were 2 or 8 characters!!
Ciao
PD: My fingers cannot stop! They are typing continuously:
:1,$s/^^I/ /g
n
.
n
.
:wn
Going through it. There is one unmerged patch in lib/moodlelib.php I am not sure about... Perhaps MD can confirm we don't need it. The code block it patches is gone ;)
http://cvs.sourceforge.net/viewcvs.py/moodle/moodle/lib/moodlelib.php?r1=1.338.2.62&r2=1.338.2.63&only_with_tag=MOODLE_14_STABLE
All the other commits in moodlelib are merged.
http://cvs.sourceforge.net/viewcvs.py/moodle/moodle/lib/moodlelib.php?r1=1.338.2.62&r2=1.338.2.63&only_with_tag=MOODLE_14_STABLE
All the other commits in moodlelib are merged.
Anotherone for MD. What's the status of PDF serving nowadays?
On head, lib/filelib.php will send "Accept-Ranges: none", but this commit to STABLE hints at problems with it:
http://cvs.sourceforge.net/viewcvs.py/moodle/moodle/file.php?rev=1.22.2.5&only_with_tag=MOODLE_14_STABLE&view=log
I have merged the other commit from STABLE to HEAD, but skipped this one.
With this I'm donewith my part of the cleanup. I merged and/or moved the tag as required. Most things were already in HEAD anyway. I did my patches, and those patches that I could read & understand.
Stuff in SCORM (Bobo), html2text, htmlarea (julmis) I have left for the affected ppl to deal with
(Also moved the tags for lang files.)
On head, lib/filelib.php will send "Accept-Ranges: none", but this commit to STABLE hints at problems with it:
http://cvs.sourceforge.net/viewcvs.py/moodle/moodle/file.php?rev=1.22.2.5&only_with_tag=MOODLE_14_STABLE&view=log
I have merged the other commit from STABLE to HEAD, but skipped this one.
With this I'm donewith my part of the cleanup. I merged and/or moved the tag as required. Most things were already in HEAD anyway. I did my patches, and those patches that I could read & understand.
Stuff in SCORM (Bobo), html2text, htmlarea (julmis) I have left for the affected ppl to deal with
(Also moved the tags for lang files.)
Accept-Ranges did not work on one site, I reverted it quickly to prevent problems on STABLE. It could be a server/proxy problem. I would like to find out, what the problem was - IMHO we should leave it as none for now. If people report any problems I can remove it before final release.
To Eloy: The tab width is not consistent, I know - but I was too lazy to do it by hand
skodak
To Eloy: The tab width is not consistent, I know - but I was too lazy to do it by hand
skodak
I've tagged the ones I knew about, with the exception of one, in mod/quiz/db/postgres7.php (after two attempts to get the diff to paste, I give up)
It's an inccorectly named constraint (missing prefix). In stable, I've renamed it and added in an upgrade to drop it and create it properly.
I need to merge this into HEAD and then I'll move the tag. I'll do it tonight.
It's an inccorectly named constraint (missing prefix). In stable, I've renamed it and added in an upgrade to drop it and create it properly.
I need to merge this into HEAD and then I'll move the tag. I'll do it tonight.
Hi,
thanks to everybody. Now the list of unmerged files is really short. Only 10 files remains there.
Ciao
thanks to everybody. Now the list of unmerged files is really short. Only 10 files remains there.
Ciao
Wouldn't it be more convenient if it was simply tagged instead of forked now, and forked upon the official 1.5 release? If you fork, we 'll have to commit each bugfix twice.
Unless of course people intend to commit new features from now until the release. But even then, it would maybe be better to concentrate on polishing the beta instead.
Unless of course people intend to commit new features from now until the release. But even then, it would maybe be better to concentrate on polishing the beta instead.
Ok - I take it you will announce when this has happened?
I'm a bit shaky on cvs with branches, so can I just get an 'idiot check' on this.. Once we have branched what will be the procedure for committing fixes to CVS? Do we just commit to the 1.5beta branch and then 'someone' will merge everything back to Head later on, or do we need to commit everything twice. I slightly lost the plot in the CVS instructions when it came to merging back to Head.
Please excuse cvs ignorance, but I don't want to be the guy to screw it up!!
I'm a bit shaky on cvs with branches, so can I just get an 'idiot check' on this.. Once we have branched what will be the procedure for committing fixes to CVS? Do we just commit to the 1.5beta branch and then 'someone' will merge everything back to Head later on, or do we need to commit everything twice. I slightly lost the plot in the CVS instructions when it came to merging back to Head.
Please excuse cvs ignorance, but I don't want to be the guy to screw it up!!
Yes, I'll announce it. Phew, where has the day gone?
Once we branch I would highly advise switching to the branch for your test sites (cvs -q update -dP -r MOODLE_15_STABLE) so that your fixes go straight into the branch.
You should also merge them across to HEAD at the same time. I find it convenient to keep a second tree checked out to HEAD (cvs -q update -dPA), so that after making a checkin to file.php I go to the trunk tree and issue:
cvs -q update -kk -j MOODLE_15_MERGED -j MOODLE_15_STABLE file.php
then check in the merged changes to the trunk
cvs commit file.php
then go back to the MOODLE_15_STABLE tree and update the merged flag:
cvs tag -F MOODLE_15_MERGED file.php
Once we branch I would highly advise switching to the branch for your test sites (cvs -q update -dP -r MOODLE_15_STABLE) so that your fixes go straight into the branch.
You should also merge them across to HEAD at the same time. I find it convenient to keep a second tree checked out to HEAD (cvs -q update -dPA), so that after making a checkin to file.php I go to the trunk tree and issue:
cvs -q update -kk -j MOODLE_15_MERGED -j MOODLE_15_STABLE file.php
then check in the merged changes to the trunk
cvs commit file.php
then go back to the MOODLE_15_STABLE tree and update the merged flag:
cvs tag -F MOODLE_15_MERGED file.php
Yes. We had the MOODLE_14_MERGED for the 1.4 branch.
The tag is applied to each file and marks the state of that file the last time it was merged across. This makes it easy to identify what hasn't been merged later, and to merge it across to the trunk.
It's like making a notch on a real branch so that you can see all the new growth that's extended from that point.
The tag is applied to each file and marks the state of that file the last time it was merged across. This makes it easy to identify what hasn't been merged later, and to merge it across to the trunk.
It's like making a notch on a real branch so that you can see all the new growth that's extended from that point.
cvs -q update -kk -j MOODLE_15_MERGED -j MOODLE_15_STABLE file.php
Is that what you mean? I thought this meant , "merge changes from the revision specified with the first -j option to the revision specified with the second j option, into the working directory." But, the file hasn't been tagged with MOODLE_15_MERGED yet (that being your last step), so how will that do anything?
When I try this - I get:
cvs [update aborted]: no such tag MOODLE_15_MERGED
Why can I not simply copy the updated file from my 15_STABLE tree to my HEAD tree and do another (simple) commit?
Sorry - being very dense here probably
Is that what you mean? I thought this meant , "merge changes from the revision specified with the first -j option to the revision specified with the second j option, into the working directory." But, the file hasn't been tagged with MOODLE_15_MERGED yet (that being your last step), so how will that do anything?
When I try this - I get:
cvs [update aborted]: no such tag MOODLE_15_MERGED
Why can I not simply copy the updated file from my 15_STABLE tree to my HEAD tree and do another (simple) commit?
Sorry - being very dense here probably
> Why can I not simply copy the updated file from my
> 15_STABLE tree to my HEAD tree and do another (simple) commit?
Because other people may have made changes to the HEAD version, and this would simply overwrite all their work (probably breaking something)! Please, please, be careful Howard ...
About the initial MOODLE_15_MERGED tag - that's my fault, I forgot to add that tag to the new branch earlier today. But I've done it now (it's just running)
> 15_STABLE tree to my HEAD tree and do another (simple) commit?
Because other people may have made changes to the HEAD version, and this would simply overwrite all their work (probably breaking something)! Please, please, be careful Howard ...
About the initial MOODLE_15_MERGED tag - that's my fault, I forgot to add that tag to the new branch earlier today. But I've done it now (it's just running)
I deleted the other post because it could mislead someone. 
Just use the commands I posted above (including the MOODLE_15_MERGED tag business, it's important).
A quick diagram for versions of a particular file:
/------------------------M------S 1.5 branch
>==================================H Trunk
S = most recent version of the branch
M = the point it was last merged
H = most recent version of the trunk
When you merge to the trunk using
cvs -q update -kk -j MOODLE_15_MERGED -j MOODLE_15_STABLE file.php
then all the changes between M and S get added to H, so you can commit it into the Trunk.
That's when you go back to the branch and issue:
cvs tag -F MOODLE_15_MERGED file.php
as this will move the Merged tag up to S, like this:
/-------------------------------MS 1.5 branch
>==================================H Trunk
so that any future merges will not try and merge the same changes again.
Does that help? Someone should really make a nice tutorial with lots of pictures.
Just use the commands I posted above (including the MOODLE_15_MERGED tag business, it's important).
A quick diagram for versions of a particular file:
/------------------------M------S 1.5 branch
>==================================H Trunk
S = most recent version of the branch
M = the point it was last merged
H = most recent version of the trunk
When you merge to the trunk using
cvs -q update -kk -j MOODLE_15_MERGED -j MOODLE_15_STABLE file.php
then all the changes between M and S get added to H, so you can commit it into the Trunk.
That's when you go back to the branch and issue:
cvs tag -F MOODLE_15_MERGED file.php
as this will move the Merged tag up to S, like this:
/-------------------------------MS 1.5 branch
>==================================H Trunk
so that any future merges will not try and merge the same changes again.
Does that help? Someone should really make a nice tutorial with lots of pictures.
That's actually what I type, because I've added a .cvsrc file to all my Unix home directories containing this:
diff -c
update -dP
So that -dP is always added to my cvs updates (and my diffs are always context diffs). I have to keep reminding myself to add -dP manually when describing the CVS commands to other people.
-d is will descend into new directories and create them
-P will prune empty directories completely
diff -c
update -dP
So that -dP is always added to my cvs updates (and my diffs are always context diffs). I have to keep reminding myself to add -dP manually when describing the CVS commands to other people.
-d is will descend into new directories and create them
-P will prune empty directories completely
First of all you need both a 1.5 and a 1.6 sandbox. To get those follow the following steps.
Now you will do your bug fixing in the Moodle 1.5 directory. However you also want to update Moodle 1.6 at the same time so the procedure is as follows:
- Make a copy of your current Moodle 1.5 directory and rename it to something like moodle16
- Right-click on your original Moodle 1.5 directory and choose "Update special" from the CVS menu.
- Check the "Get tag/branch/revision" checkbox and then click on "Update list"
- Choose MOODLE_15_STABLE from the drop-down and click on OK. This will now switch this directory over to the 1.5 branch.
Now you will do your bug fixing in the Moodle 1.5 directory. However you also want to update Moodle 1.6 at the same time so the procedure is as follows:
- Make changes in your Moodle 1.5 directory and commit the changed file as usual.
- Go to the same file in the Moodle 1.6 directory, right-click on it and choose "Merge" from the CVS menu.
- Choose "MOODLE_15_MERGED" in the "Start" drop-down menu (use the "Update lists.." button if it is not there)
- Leave the "End" field empty and click OK. This will merge the changes you made into the 1.6 file.
- Commit this changed file as usual.
- Go to the changed file in the Moodle 1.5 directory
- Right-click on it and choose "Tag" from the CVS menu
- Choose the "Move existing tag" radio button.
- Choose "MOODLE_15_MERGED" from the drop-down menu and click OK.
Gustav, thank you very much. I got it
Nearly, your wrote: "4. Choose MOODLE_15_STABLE from the drop-down and click on OK. This will now switch this directory over to the 1.5 branch."
Do I have to make the switch only once and can I then do normal updates or do I have to use "Update special..." for a 1.5 update every time?
Please can developers make sure they move the merged tag?
I just changed moodlelib and went to move the merge tag, only to find that my change wasn't alone in the diff between merged & stable.
Whoever belongs to the other unmerged stuff, my change is safe to merge, & it looks like:
- if ($md5check = substr($modargs, -16)) {
+ if ($md5check == substr($modargs, -16)) {
And the other unmerged stuff looks to me like it's in HEAD but I don't want to move the tag just in case. It has to do with auth_get_userinfo

Penny
Edit: found the culprit and I have tagged it as merged, sorry for the noise
I just changed moodlelib and went to move the merge tag, only to find that my change wasn't alone in the diff between merged & stable.
Whoever belongs to the other unmerged stuff, my change is safe to merge, & it looks like:
- if ($md5check = substr($modargs, -16)) {
+ if ($md5check == substr($modargs, -16)) {
And the other unmerged stuff looks to me like it's in HEAD but I don't want to move the tag just in case. It has to do with auth_get_userinfo
Penny
Edit: found the culprit and I have tagged it as merged, sorry for the noise
Delays, delays.
I just finally got to finishing and checking in the one main thing I had left to do, which was the code so that the Online Assignment module could cannibalise all the Journals and assume their form(s).
It's not well tested yet at all but I need to sleep, can you please bang on it overnight using TEST DATA!
Create a lot of journals, fill them with data, then upgrade to the latest CVS. You should see them all converted to Online Assignments, with the data intact, and the Journals dissappear (they are still there, just the whole module is hidden).
I just finally got to finishing and checking in the one main thing I had left to do, which was the code so that the Online Assignment module could cannibalise all the Journals and assume their form(s).
It's not well tested yet at all but I need to sleep, can you please bang on it overnight using TEST DATA!
Create a lot of journals, fill them with data, then upgrade to the latest CVS. You should see them all converted to Online Assignments, with the data intact, and the Journals dissappear (they are still there, just the whole module is hidden).
Martin,
Just upgraded and the Journal -> Assignment went just fine, no error messages or anything, just the nice little explanation about the conversion
. Then, when I went to add an assignment:
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '
Notice: Undefined property: var2 in /home/c
INSERT INTO mdl_assignment ( COURSE, NAME, DESCRIPTION, FORMAT, ASSIGNMENTTYPE, RESUBMIT, PREVENTLATE, EMAILTEACHERS, VAR1, VAR2, VAR3, VAR4, VAR5, MAXBYTES, TIMEDUE, TIMEAVAILABLE, GRADE, TIMEMODIFIED ) VALUES ( 3, 'Assignment', '', 1, 'online', 1, 0, 0, 1,
Notice: Undefined property: var2 in /home/cbusch/public_html/moodle/mod/assignment/mod.html on line 167
,
Notice: Undefined property: var3 in /home/cbusch/public_html/moodle/mod/assignment/mod.html on line 168
,
Notice: Undefined property: var4 in /home/cbusch/public_html/moodle/mod/assignment/mod.html on line 169
,
Notice: Undefined property: var5 in /home/cbusch/public_html/moodle/mod/assignment/mod.html on line 170
, 1024000, 1117035900, 1116431100, 100, 1116430916 )
Just upgraded and the Journal -> Assignment went just fine, no error messages or anything, just the nice little explanation about the conversion

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '
Notice: Undefined property: var2 in /home/c
INSERT INTO mdl_assignment ( COURSE, NAME, DESCRIPTION, FORMAT, ASSIGNMENTTYPE, RESUBMIT, PREVENTLATE, EMAILTEACHERS, VAR1, VAR2, VAR3, VAR4, VAR5, MAXBYTES, TIMEDUE, TIMEAVAILABLE, GRADE, TIMEMODIFIED ) VALUES ( 3, 'Assignment', '', 1, 'online', 1, 0, 0, 1,
Notice: Undefined property: var2 in /home/cbusch/public_html/moodle/mod/assignment/mod.html on line 167
,
Notice: Undefined property: var3 in /home/cbusch/public_html/moodle/mod/assignment/mod.html on line 168
,
Notice: Undefined property: var4 in /home/cbusch/public_html/moodle/mod/assignment/mod.html on line 169
,
Notice: Undefined property: var5 in /home/cbusch/public_html/moodle/mod/assignment/mod.html on line 170
, 1024000, 1117035900, 1116431100, 100, 1116430916 )
I tested it and the Journals are now Assignments. With Mozilla, texts in the blocks come out of the box. With IE, Blocks of the right side are in middle of the page and there's nothing on the right side. So there are theme problems.
Some warnings when updating:
(mysql): SELECT name FROM mdl_config WHERE name = 'assignment_online_version'
(mysql): SELECT * FROM mdl_config WHERE id = '-1'
(mysql): INSERT INTO mdl_config ( NAME, VALUE ) VALUES ( 'assignment_online_version', '0' )
(mysql): SELECT LAST_INSERT_ID()
(mysql): SELECT * FROM mdl_journal
Notice: Undefined variable: journal in d:\ohjelmatiedostot\easyphp1-7\www\moodle\mod\assignment\type\online\db\mysql.php on line 13
Notice: Undefined variable: journal in d:\ohjelmatiedostot\easyphp1-7\www\moodle\mod\assignment\type\online\db\mysql.php on line
Some warnings when updating:
assignment module needs upgrading
(mysql): SELECT name FROM mdl_config WHERE name = 'assignment_online_version'
(mysql): SELECT * FROM mdl_config WHERE id = '-1'
(mysql): INSERT INTO mdl_config ( NAME, VALUE ) VALUES ( 'assignment_online_version', '0' )
(mysql): SELECT LAST_INSERT_ID()
(mysql): SELECT * FROM mdl_journal
Notice: Undefined variable: journal in d:\ohjelmatiedostot\easyphp1-7\www\moodle\mod\assignment\type\online\db\mysql.php on line 13
Notice: Undefined variable: journal in d:\ohjelmatiedostot\easyphp1-7\www\moodle\mod\assignment\type\online\db\mysql.php on line
It appears that it hasn't been necessary to branch. Developers have been getting the message and have stopped contributing new features over the last few days in order to concentrate on fixing bugs. This is a much preferable state of affairs to having to branch early because it means fewer merges of bug fixes back to HEAD. So I guess if we keep the discipline then Martin will be able to put off the branching for a bit longer.
In reply to Martin Dougiamas
Olson files update - Re: Moodle 1.5 Branch in 24 hours
由Martín Langhoff發表於
In reply to Martín Langhoff
Re: Olson files update - Re: Moodle 1.5 Branch in 24 hours
由Martin Dougiamas發表於
Where can I get the latest olson.txt from? (as a single file) The versions on the official site are more messy. I've used the one you posted in the forums recently (seems to give a few more entries now!
)
What I do is update my server with that, then dump the timezones.txt file from phpmyadmin and then update CVS with that. The latest CVS version is also displayed at http://download.moodle.org/timezones
What I do is update my server with that, then dump the timezones.txt file from phpmyadmin and then update CVS with that. The latest CVS version is also displayed at http://download.moodle.org/timezones
In reply to Martin Dougiamas
Re: Olson files update - Re: Moodle 1.5 Branch in 24 hours
由Martín Langhoff發表於
What you'll need is a shell script that goes:
mkdir /tmp/tztmp &&
pushd /tmp/tztmp &&
wget --passive "ftp://elsie.nci.nih.gov/pub/tzdata2005i.tar.gz" &&
tar -xvzf tzdata2005i.tar.gz &&
(cat africa antarctica asia australasia europe northamerica southamerica | grep -v '^\(#\|Link\)' > olson.txt ) &&
cp olson.txt somewhere/olson.txt
popd
rm -fr /tmp/tztmp
My only problem with this is that they don't seem to have a symlink to the latest one. Really annoying, we need to manually check their page for changes.
Also, the page contains other related files that change often, so a script that alerts use whenever the index changes (dupdate-style) isn't useful either. I wonder if they have an announcement list. Can't find it, though.
mkdir /tmp/tztmp &&
pushd /tmp/tztmp &&
wget --passive "ftp://elsie.nci.nih.gov/pub/tzdata2005i.tar.gz" &&
tar -xvzf tzdata2005i.tar.gz &&
(cat africa antarctica asia australasia europe northamerica southamerica | grep -v '^\(#\|Link\)' > olson.txt ) &&
cp olson.txt somewhere/olson.txt
popd
rm -fr /tmp/tztmp
My only problem with this is that they don't seem to have a symlink to the latest one. Really annoying, we need to manually check their page for changes.
Also, the page contains other related files that change often, so a script that alerts use whenever the index changes (dupdate-style) isn't useful either. I wonder if they have an announcement list. Can't find it, though.
OK, the branching is done! The splitting point is called MOODLE_15_BETA, and the branch is called MOODLE_15_STABLE.
No database structure changes are allowed on the branch.
No new features are allowed on the branch (unless necessary to fix a bug).
Developers, please issue 'cvs update -r MOODLE_15_STABLE' on your main test sites to move to the new branch and help with debugging there, because the main trunk has now become MOODLE 1.6 Development.
Translators, you should stay on the Trunk and check all language changes into there.
People who do both - run two checkouts.
No database structure changes are allowed on the branch.
No new features are allowed on the branch (unless necessary to fix a bug).
Developers, please issue 'cvs update -r MOODLE_15_STABLE' on your main test sites to move to the new branch and help with debugging there, because the main trunk has now become MOODLE 1.6 Development.
Translators, you should stay on the Trunk and check all language changes into there.
People who do both - run two checkouts.
While I've got all you developers' attention here in this thread, could someone please take a look at bug 2714, which I reported a couple months ago? It seems to me to be a pretty serious flaw in the new site policy that could scare a lot of guests away from Moodle sites if it isn't fixed. If you don't consider it a bug or won't fix it until 1.6, at least I would like to know that, so I can see about hacking it in my own Moodle.