We just finished upgrading drupal.org to CVS HEAD, the code that will become Drupal 4.5.0. So in good Drupal tradition, we (developers) get to eat our own dog food again, and you (users) get to see and test that latest changes.

This marks a significant upgrade, yet most of the changes will only be visible to this site's administrators. We are still fine-tuning the site, but please let us know if you find anything out of whack.

For those who are faced with the task to update their Drupal 4.4 sites, here is what drupal.org's upgrade process looked like:

  1. I made a backup of both the drupal.org database and the Drupal source code used on drupal.org.
  2. I knew that because of the theme system changes, the upgrade would replace the Xtemplate/Pushbutton-specific mission statement by the default one. So I went ahead and reworked the default mission statement up-front while I still had the old one handy. Note that drupal.org's new mission statement is both shorter and less technical than the old one.

    Similarly, I knew that for the same reason Xtemplate's primary and secondary links would get lost. The upgrade script still needs to be modified to migrate these settings for you, so for now, I made a copy of them so I could restore them easily.
  3. Next, I went to the administration pages and disabled all contributed themes and modules. This isn't strictly necessary, but make the upgrade process less prone to error. It allowed me to upgrade core without having to worry about contributed modules and themes. Some of these might not be compatile with CVS HEAD yet. Once core was upgraded sucessfully, I upgraded the contributed modules one by one.
  4. Before upgrading our Drupal copy, I logged in as the user with user ID #1. This will make running the database upgrade script easier.
  5. Because some files got renamed and other files got removed or reorganized compared to Drupal 4.4, I did not want to copy the new sources over the existing sources. Any left-overs might cause breakage so it is best to remove your old Drupal copy and to start fresh. Since we are using CVS to grab and maintain our Drupal copy, this was a non-issue: a CVS update removes such left-overs.
  6. Once the Drupal sources were updated, it was time to update the database. I went to http://drupal.org/update.php and manually created the users_roles and locales_meta tables as per the instructions. Unfortunately, the upgrade script can't create these tables for you. Next, I ran the database update script and went to the administration page.
  7. I didn't had to make many configuration changes. Nearly all time was spent configuring the new input formats, and reconfiguring the drupal.org theme (bluemarine).

Hope that helps.

Comments

bertboerland’s picture

Is the new slogan "Drupal.org is the official website of Drupal, a content management or discussion engine suitable to setup or build a content driven or community driven weblog or website." and if so, what is the difference with the old one?

BTW: I was / am unable to type a subject field in this reply? Is this 4.5 behaviour or a booboo?

--

groets


bertb

--
groets
bert boerland

dries’s picture

The slogan remains 'Community plumbing'. The mission statement, however, has been reworded for simplicity (less technical).

The fact that the comment subject field was not showing was due to a bug. I just fixed that in CVS and upgraded drupal.org. Thanks.

gábor hojtsy’s picture

The latest forums block seem to be gone. It would be nice to reenable. Also the repeated 'range' word in the new mission statement does not look good. I am a bit picky. :)

dries’s picture

Thanks for pointing that out. I fixed the repeated 'range'. Hopefully it is better now.

robertdouglass’s picture

It could be something that users turn on in their account profile, but I like having them.

- Robert Douglass

-----
visit me at www.robshouse.net

Tarlbot’s picture

On Point 3 - is there some simple way to know which modules are core, and which are contributed? I don't see any flag of that type anywhere. Should I have better paper notes on what modules I have installed, or should I just download a fresh copy of 4.4 and see what modules are there and compare to my list?

gábor hojtsy’s picture

Get a fresh 4.4 and see what are the core modules. There is no practical way to tell if a module is core or not if you don't remember.

Tarlbot’s picture

It would be cool if there was a way to tell if a module were core, or added, who is the primary maintainer of the module, some offsite help for the module, and a sample site for the module - all in the module list on my site, or in a page off the module list - maybe this info could be added to the descriptions on the module list page?

erikhopp’s picture

i have been thinking for a while that it would be nice to have compatibility version numbers in each module that could then be loaded in the module description. this would be in addition to the cvs version numbers for each particular file and would reference a particular core version of drupal. sometimes looking through an old directory, it is difficult to tell what the files you are looking at are compatible with.

perhaps this could be part of the new install system that is currently being developed by adrian.

see related request here: http://drupal.org/node/9966

soupstone’s picture

I noticed from looking at the civicspace distro that modules will work when they are in child directories of the modules directory. I think when I upgrade I'm just going to move my non-core modules into their own directory and see how that turns out.

It might be a good idea to put core modules in their own subdirectory in future releases.

drumm’s picture

Modules are in subdirectories purely for organizational purposes. For example, the Contact module has a common.js file it needs, instead of spewing those everywhere (such as the misc directory) the module is self contained in a directory.

I put all the non-Drupal-core modules in subdirectories starting with this reason and as an overall organization scheme to see what we added. Consequently this made the CVS repository that keeps it all updated relatively painless to maintain (after I wrote verious shell scripts and went through learning CVS administration).

I don't think this is a good idea for Drupal core because extra files have a home in the includes, misc, or other directories. If a core module is specific enough to need a bunch of supporting files then maybe it chould be a contributed module.

moshe weitzman’s picture

i think ti would be helpful for drupal to ship with an empty 'custom modules' directory underneath modules. then we coach users to put module packages under that dir. this separates core from custom and 'ok to touch' from 'don't touch'

drumm’s picture

Also an empty files directory. I think we have CVS's concept of what an empty directory is to blame.

moshe weitzman’s picture

well, we could place text files in each dir explaining what the dir is used for.

tangent’s picture

Why? I've been touching the hell out of the core modules fixing bugs. I've also been reporting said bugs, along with patches where possible, though.

Mr Maggoo’s picture

When will Drupal 4.5 be released? I'm looking around the site and I really like it. I don't want to use the CVS version.

Thanks

Mr Maggoo

bertboerland’s picture

it is done when it is done, not when the marketing department thinks we need a new version shipping :-)

but I think, judging from previous releases, a stable release will hit the street within a week or three.

I dont know if there will be a Releases Candidate for this version. Anyone else?

--

groets


bertb

--
groets
bert boerland

Gunnar Langemark@www.langemark.com’s picture

;-)

Dropping in from Langemarks Cafe.

dries’s picture

I'll try to write up a status report shortly.

mikeryan’s picture

Is it just me, or is drupal.org reeeallly sloooowwwwwwww today? Perhaps a bit of tuning is in order...

elfur’s picture

it is reeeaaally slow.

/elfur

dries’s picture

We implemented some performance improvements, and have more performance improvements in the pipeline. The site should be snappier now.

cel4145’s picture

are already noticeable :)

Mr Maggoo’s picture

I don't know if this is relevant but: I installed the latest CVS today and It won't let me create the first account.
When I try to create the account it just says "You must select at least one role."

How do I create the Admin account?

dries’s picture

Your question is off-topic. Please refrain from posting bug reports to random forum topics. Thanks.

drumm’s picture

ax’s picture

* the latest forums block still doesn't appear for me
* please have a look at the "Filter format selector is confusingly positioned" patch and consider it for inclusion. those filter tips between subject and content textarea on submission pages are really annoying.
* there are quite some latencies with certain pages. it took me 5 to 8 seconds to load the forum page for the first time. guess the various performance speedup patches have to be considered, too.

Bèr Kessels’s picture

PLease,

please, please, please. this is not the place to post support questions, nor the place to post concerns or feature requests.
The bug tracking system and the support system gives enough freedom to post any concerns or feature requests.

And if those are posted in that place they have a much bigger chance of being incorporaated in the new release. Provided they are valid, and have a good background, of course.

[Ber | webschuur.com]

gábor hojtsy’s picture

If you update, also note that if you have any custom profile fields set in profile.module (in 4.4), you should do the needed modifications at the end of update_80() in database/updates.inc to import your custom profile fields properly.

Plus note that as usual, the Drupal built in update script only handles core data and no contrib modules get updated. You currently need to investigate on a module-by-module basis, what needs to be done to update (or if it is possible at all - ie. the module code was updated already).

Jhef.Vicedo’s picture

I tried to modify my account here and upon submitting the changes, there's an error message saying: "You must select at least one role.". I am updating my "account settings".

I looked around for the role but it's not there.

I hope this would be addressed soon.

Thanks,

jhefmv [at] gmail [dot] com
Work smarter, not harder!

muhh’s picture

I filed a bug report regarding this problem. http://drupal.org/node/10750

UGlee’s picture

When I tried to post a forum topic or book page, I found nothing about the so-called document management feature that should be included in Drupal 4.5. I have no permission to do that? or it is not ready yet?

Steven’s picture

Have you enabled upload.module?

gábor hojtsy’s picture

He surely writes about Drupal.org, where he has no right to attach documents.

dries’s picture

The past days we improved filter and menu caching. I just upgraded drupal.org to CVS HEAD so we can take advantage of these. If all is well, the site should be snappier.

bertboerland’s picture

I dont know if it is related to CVS, but since some time the interest of people is not showing correctly. See this bug report.
--
groets
bertb

--
groets
bert boerland

sgtaw’s picture

Hi All,

I am wondering if Drupal would work for a commerce site like http://bowling-tips-and-tricks.com?

Also, would I be able to tune it for Search Engines?

Thanks,

Ed

Drupalnaut’s picture

Hi there,

I tried upgrading from v4.4 to v4.5, but got numerous errors from the upgrade script, despite following Dries's instructions to the letter. In the end, tracked the error down to an errant 'menu' table that the update script seeemed to think shouldn't be there! Anyway, here's what I did to upgrade successfully - this may be specific to my configuration (XP, Apache, MySql, variety of downloaded modules and themes), and thus not actually help anyone; or it may be more general, and so be of some use, so if you're having problems, give it a try (but backup first!):

1). Before doing anything...
- Ensure you have a Drupal v 4.4 install
- Back-up includes/conf.php script

2). Go to your current drupal site
- Login as administrator
- Switch off ALL modules and themes (set theme = example)

3). Files -
- Delete all files and directories in existing drupal web directory
- Copy new drupal files and directories into old (now empty) drupal directory
- Copy old includes/conf.php file to new drupal includes directory
- Edit update.php script so that $access_check = FALSE; (You MUST change this back to TRUE after successful upgrade)

NOTE: setting access_check to FALSE seemed to be required for my upgrade. This could be a fault with me, rather than the script, but it was definitely needed for successful upgrade.

4). Database:
Update the database with the new tables, as the install instructions tell you to.

*Then go into mysql, and drop the menu table*

Note: The menu table gave the update script huge problems. Given that the update script creates a new menu table (hence the problems), and I didn't really care if I lost the existing menus or not, dropping the existing menu table was the only way my upgrade would work.

5). Completion
Finally, go back to your drupal site, and goto drupal/update.php, then click on 'Upgrade' using the default offered.

With any luck, the upgrade will work. Now back this new upgrade up immediately, to spare you having to go through the same procedure again should you break the thing :)

pamphile’s picture

[Solved]
Also going from 4.4 --> 4.5
Since I have the same config, I followed those instructions.

I got no errors when running the database upgrade...

Howeer I can't access the modules page.

I disabled every single module - I'm not sure what is contributed and not.
Is that why I don't see the modules page after I upgrade ?

Any suggestions
http://01wholesale.com
http://01businesses.com
http://scriptdiary.com