Error upgrading to SMF 2.0.10

Started by NoobDeveloper, May 04, 2015, 02:39:36 AM

Previous topic - Next topic

NoobDeveloper

I get below error. I am currently on SMF 2.0.9



Here is the code

./Themes/default/languages/index.english.php

Code: (Find) [Select]
// Version: 2.0.8;
Code: (Replace) [Select]
// Version: 2.0.10;



./Themes/default/scripts/script.js

Code: (Find) [Select]
var is_ff = (ua.indexOf('firefox') != -1 || ua.indexOf('iceweasel') != -1 || ua.indexOf('icecat') != -1 || ua.indexOf('shiretoko') != -1 || ua.indexOf('minefield') != -1) && !is_opera;
Code: (Replace) [Select]
var is_ff = (ua.indexOf('firefox') != -1 || ua.indexOf('iceweasel') != -1 || ua.indexOf('icecat') != -1 || ua.indexOf('shiretoko') != -1 || ua.indexOf('minefield') != -1 || ua.indexOf('PaleMoon') != -1) && !is_opera;


Code: (Find) [Select]
if ('oThemeOptions' in this.opt && this.opt.oThemeOptions.bUseThemeSettings)
Code: (Replace) [Select]
if (!bInit && 'oThemeOptions' in this.opt && this.opt.oThemeOptions.bUseThemeSettings)

br360

All you have to do is manually replace the code in the files you are getting errors in. So in ./Themes/default/languages/index.english.php

Find-
// Version: 2.0.8;
and replace with:
// Version: 2.0.10;

In your ./Themes/default/scripts/script.js

Find-
var is_ff = (ua.indexOf('firefox') != -1 || ua.indexOf('iceweasel') != -1 || ua.indexOf('icecat') != -1 || ua.indexOf('shiretoko') != -1 || ua.indexOf('minefield') != -1) && !is_opera;

and replace that with this-
var is_ff = (ua.indexOf('firefox') != -1 || ua.indexOf('iceweasel') != -1 || ua.indexOf('icecat') != -1 || ua.indexOf('shiretoko') != -1 || ua.indexOf('minefield') != -1 || ua.indexOf('PaleMoon') != -1) && !is_opera;

In the same ./Themes/default/scripts/script.js

find-
if ('oThemeOptions' in this.opt && this.opt.oThemeOptions.bUseThemeSettings)

and replace that with-
if (!bInit && 'oThemeOptions' in this.opt && this.opt.oThemeOptions.bUseThemeSettings)

NoobDeveloper

So shall i just hit update button and then make these changes  for the files which i get error?

br360

You can. I personally like to make the changes first and then update the package, but updating it first and then making the changes should work as well.

NoobDeveloper

Ok thanks..will report back in couple of hours.

Vince S

Same deal for me, but less errors. More ignorance but!

These upgrades have always gone just fine. It is an English 2.0.9 website using default settings for most stuff.

I tried re-downloading the upgrade file (using the "click here to upgrade" link) but same result. If I just click Install Now will that create an actual problem? Or have I already got one?

Thank you.

Edit: Just checked versions and this may give a clue. Obviously the various SMF patches along the way have not been carrying the related bits through, see attached screen dump. How do I update them?
Try figuring out where all this is going to keep coming from: Millionaire Baby? Or just pass me a beer and we'll sort it, thank you.....

margarett

Just apply the patch with errors, then  manually edit index.english.php and fix the header so that it says 2.0.10

@NoobDeveloper, before you apply the patch, can you please attach your script.js?

I don't think that it's that easy to fix. If the text was there straight on, PackMan would find it. So I would prefer to investigate a bit better first ;)
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

QuoteOver 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Kindred

Слaва
Украинi

Please do not PM, IM or Email me with support questions.  You will get better and faster responses in the support boards.  Thank you.

"Loki is not evil, although he is certainly not a force for good. Loki is... complicated."

Morthawt

One of my sites updated fine, the other had this same issue and then permission issues no matter what I did. I could not get it to work so I trashed the site and started fresh, now I have other issues, which I made a thread about. Weird, never had this before due to an update.

paramudduck

I'm just an idiot when it comes to this kind of stuff. But, when you are updating from 2.0.9 to 2.0.10 why is it looking for 2.0.8?

Kindred

because that file was probably not touched in the 2.0.9 update
Слaва
Украинi

Please do not PM, IM or Email me with support questions.  You will get better and faster responses in the support boards.  Thank you.

"Loki is not evil, although he is certainly not a force for good. Loki is... complicated."

paramudduck

Good reason, I was just curious. Both of my old forums threw the errors for the 2.0.8 search. They both were started using 2.0 RC3 ish.  Plain English with no language changes made. Both have been updated at every release.

Vince S

OK I have sorted my issues now but it is pretty obvious something has gone wrong with script updating of SMF 2.0.x versions around language files at least. Backed up via SMF Admin Database Back-up before, will do it again shortly now fully fixed. What I did is as follows:

I ran the update to 2.0.10 then went into the Themes/default/languages/ directory and, very close to or at the top, was the version statement. Edited all files via CPanel File Manager which is pretty easy to do. Changes as follows:

changed version from 2.0.8 to 2.0.10 in index.english.php

All the following files changed version from 2.0 to 2.0.10:
index.arabic-utf8.php
index.dutch-utf8.php
index.french-utf8.php
index.italian-utf8.php
index.spanish_es-utf8.php
ManagePaid.arabic-utf8.php
ManagePaid.dutch-utf8.php
ManagePaid.french-utf8.php
ManagePaid.italian-utf8.php
ManagePaid.spanish_es-utf8.php

Also changed version from 2.0.8 to 2.0.10 in file \Sources\Subs-Post.php

Now I pass Version checking in Routine admin. Why these old version label files were not renamed along the way who knows. It would seem that further action is needed there when 2.1 goes live to tidy up this accidental mess in language files particularly, and probably also the Sources\ file.

Unless any of these actions taken are likely to have caused other issues, I am fixed; just need to sort OP's issues. Thank you.
Try figuring out where all this is going to keep coming from: Millionaire Baby? Or just pass me a beer and we'll sort it, thank you.....

Kindred

The patch file does not update anything except English...  The rest of the language files were updated in the language downloads.

So,my am not sure what you mean about issues ... Or what any issues with 2.0.x have to do with 2.1
Слaва
Украинi

Please do not PM, IM or Email me with support questions.  You will get better and faster responses in the support boards.  Thank you.

"Loki is not evil, although he is certainly not a force for good. Loki is... complicated."

Vince S

OK, so no drama then. I am just presenting the DF user perspective here. ie elected to go with the 2.0.0 upgrade way back and have been happily clicking "upgrade here" ever since.

So 2.0 provided language files that stayed static thereafter and I didn't know. Or care as it happens. It would be an issue for some but not me.

But when 2.0.8 upgraded to 2.0.9 it left the English file at 2.0.8 with no apparent cause / notice and then I walked into the problem when upgrading from 2.0.9 as an expected file was apparently missing. So I now have 2.0.8 English file dressed up as 2.0.10, probably not an issue that any changes are missing. Was this file actually upgraded in the 2.0.10 release, and it matters?

My reference to 2.0.1 is that almost certainly that will be a more extensive upgrade and that, no matter I may have had 2.0 version on language files I never use, they would all get replaced by 2.1 versions and the problem unknowingly (to the fellow DF users) wrapped into 100,000's of installations now just goes away.

I don't know about "language downloads" and see no reason to become educated there as we are an English only site - Google Translate can sort out any issues people may have with that!
Try figuring out where all this is going to keep coming from: Millionaire Baby? Or just pass me a beer and we'll sort it, thank you.....

Kindred

#15
First... Yes, language files were updated in 2.0.10, hence the reference to it in the patch.
Second... There have been a few people who had issues with the copyright dateversion number in the language file... And many more who didn't.  Those who didn't have an issue also upgraded through patches, previously... And/or installed 2.0.9 fresh...  So, that detail is not the gating factor.

Third...   2.1 will not be upgradable from 2.0.x via patch, at all. It will require a full replacement of all files.
Слaва
Украинi

Please do not PM, IM or Email me with support questions.  You will get better and faster responses in the support boards.  Thank you.

"Loki is not evil, although he is certainly not a force for good. Loki is... complicated."

Vince S

#16
Not sure what Kindred's reference to copyright dates are. For clarity, anyone else resolving the issue the way I did this is a typical first two lines of the two types of language files AFTER I modified them:

<?php
// Version: 2.0.10; index

or

<?php
// Version: 2.0.10; ManagePaid

It was pretty simple to make those changes. Why I needed to has yet to be explained. And whether the 2.0.10 /DiscussionBoard/Themes/default/languages/index.english.php file needs to be replaced with a real 2.0.10 version rather than a renamed 2.0.8 version which itself was a slip-through-somehow issue in 2.0.9 has also yet to be clarified.

Obviously when we go to 2.1 it will be via an upgrade pack and the current suite of "snuck through" file version errors will become redundant.

Edit: Note: all the other 2.0 named language files were not on the radar - this lack of syncronicity of versions wouldn't have been noticed unless one was in diagnostic mode and checked via Admin mtce. I would not expect people to notice / know about it. But equally I would expect version control in any change mgt process for SMF releases to deal with it so the issue didn't arise. But by definition I don't care about the non-English files. Just pointing out the obvious mgt issues, without actually intending to be critical / complain about it as I am truly appreciative of what is going on here at SMF.

Edit 2: Just re-read OP and with due regard to Kindred's first post link I am puzzling over why this error occurred at all. The penny has dropped that it was known that the 2.0.9 index.english.php file was called 2.0.8 and the patch just wanted to rename it to 2.0.10 for consistency, a minor housekeeping matter that was known slipped through on 2.0.9. Fair enough, you get that! Whilst I now don't have my original files all I did was put the cursor next to the 8, hit backspace and typed 10. I can't see any reason the check failed as the character count and type all seem to be the same, and are what was being searched for. These are the copy paste results from my file and OP and damned if I can see why the find replace failed!

// Version: 2.0.10;
// Version: 2.0.8;
Try figuring out where all this is going to keep coming from: Millionaire Baby? Or just pass me a beer and we'll sort it, thank you.....

Illori

Quote from: Vince S on May 04, 2015, 10:04:25 PM
Backed up via SMF Admin Database Back-up before, will do it again shortly now fully fixed.

you should not use the backup from the admin panel, it is known to fail and cause issues restoring. you should use tools provided by your host to do the backup.

margarett

I would just like to explain how this "versioning" stuff works in order to prevent further wrong assumptions, at least for the people involved in this topic...

I just found out (really now) why/when the version upgrade error happened in index.english.php. It's not relevant now but there was a problem in a previous version, not this one (this one just makes it obvious :P )
This hopefully answers:
QuoteWhy I needed to has yet to be explained
This is why ;)

Quotethis lack of syncronicity of versions
QuoteI would expect version control in any change mgt process for SMF releases to deal with it so the issue didn't arise
QuoteThe penny has dropped that it was known that the 2.0.9 index.english.php file was called 2.0.8
QuoteBut when 2.0.8 upgraded to 2.0.9 it left the English file at 2.0.8 with no apparent cause
No disrespect intended, but PLEASE don't make assumptions and accusations without understanding how the "versioning" process work... I'll explain
When a certain version goes "final/gold/stable/whatever", ALL files are tagged with version "0". For this specific release, 2.0
Then, in each minor release (minor means 2.0 --> 2.0.1 --> 2.0.2, etc), ONLY THE AFFECTED FILES get a version increase. If you look at your current 2.0.10 files, Sources/Admin.php (as well as other files) are still at version 2.0. This means that they were not touched since 2.0 "final" came out. The same for every other file.
So, to make it clear, the FILE version is NOT forcibly the same version as the SOFTWARE version.

In the specific case of index.english.php (or any other language besides English, for what matters), it holds the copyright information, namely the copyright year. So every time that a minor release changes the year over the last release, this file has to be updated. This is why the index.english.php file for SMF 2.0.9 has version 2.0.8. Because 2.0.8 and 2.0.9 were released in the same year

Hope this helps making things clear. Yes, there was a problem in a previous release in this file, but it's not due to the reasons you thought it was ;)
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

QuoteOver 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Aplion

I still believe that this matter have to be cleared ... I have the same issues with the English language file as shown in attachment ... do I must install the 2.0.10 update? and if yes ... do I must manually change the version number into the appropriate lang file or no further action required?

A final brιef tutorial will be much appreciated.

Advertisement: