Closed
Bug 258274
Opened 21 years ago
Closed 19 years ago
localeVersion field in contents.rdf files is empty
Categories
(Mozilla Localizations Graveyard :: MozillaTranslator, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: tsahi_75, Assigned: rpmdisguise-nave)
Details
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; he-IL; rv:1.7.2) Gecko/20040803
Build Identifier: 5.03
if you export just the jar file, the contents.rdf files don't include the
LocaleVersion info. it writes
chrome:localeVersion=""
in both places in the file.
it's possible that this happenes when you export an XPI too, i didn't check.
Reproducible: Always
Steps to Reproduce:
1.select export > jar file from the top menu
2.select location and other details
3.click OK
Actual Results:
the contents.rdf files in the exported jar have no localeVersion info
Expected Results:
localeVersion should have the correct product version
Comment 1•21 years ago
|
||
A few questions:
* Suite or Firefox ?
* Original strings read from standard jar or the new CVS import ?
| Reporter | ||
Comment 2•21 years ago
|
||
(In reply to comment #1)
> A few questions:
>
> * Suite or Firefox ?
suite
> * Original strings read from standard jar or the new CVS import ?
>
actually, i just put the glossary.zip of mt5.02 and the mt5.03 executable in a
folder, and started mt. in the xpi export window the version is present and correct.
Updated•21 years ago
|
Status: UNCONFIRMED → NEW
Ever confirmed: true
| Assignee | ||
Comment 3•19 years ago
|
||
Reassigning every MT bug to me.
Assignee: henrik → rpmdisguise-otros
| Assignee | ||
Comment 4•19 years ago
|
||
I'm fairly ignorant about contents.rdf files. Does this really matter? I've searched a bit on MDC and I can't find anything really definitive (it seems that contents.rdf info has been dropped or not added in favour of manifest files).
It seems that current situation isn't really harmful, and I'm a bit afraid that adding the value to localeVersion could instead raise any problem. That's why I'd like to gather more opinions.
Status: NEW → ASSIGNED
Comment 5•19 years ago
|
||
localeVersion matching with the original value is very important for xpfe-based applications (Mozilla 1.x, SeaMonkey 1.x) - contents.rdf is completely unneeded though for toolkit-based apps (Firefox, Thunderbird, Sunbird, suiterunner)
| Assignee | ||
Comment 6•19 years ago
|
||
(In reply to comment #4)
>
> It seems that current situation isn't really harmful, and I'm a bit afraid
> that adding the value to localeVersion could instead raise any problem.
> That's why I'd like to gather more opinions.
>
Well, I guess I already know why the current situation isn't harmful. :-) localeVersion _is_ filled. It seems that this is another bug solved by Henrik and/or Serhiy but not closed.
(In reply to comment #5)
> localeVersion matching with the original value is very important for
> xpfe-based applications (Mozilla 1.x, SeaMonkey 1.x) - contents.rdf is
> completely unneeded though for toolkit-based apps (Firefox, Thunderbird,
> Sunbird, suiterunner)
Even if localeVersion is not empty anymore, I would like to know where a contents.rdf should exist. For instance, inside en-US.jar there is a contents.rdf at "/locale/en-US/communicator/" but not at "/locale/en-US/communicator/bookmarks" (JARs made by MT follow this convention). Is there a rule that can be safely applied to know where to put a contents.rdf?
| Reporter | ||
Comment 7•19 years ago
|
||
(In reply to comment #6)
> (In reply to comment #4)
> >
> > It seems that current situation isn't really harmful, and I'm a bit afraid
> > that adding the value to localeVersion could instead raise any problem.
> > That's why I'd like to gather more opinions.
> >
>
> Well, I guess I already know why the current situation isn't harmful. :-)
> localeVersion _is_ filled. It seems that this is another bug solved by Henrik
> and/or Serhiy but not closed.
>
>
have you checked *export JAR*?
> (In reply to comment #5)
> > localeVersion matching with the original value is very important for
> > xpfe-based applications (Mozilla 1.x, SeaMonkey 1.x) - contents.rdf is
> > completely unneeded though for toolkit-based apps (Firefox, Thunderbird,
> > Sunbird, suiterunner)
>
>
> Even if localeVersion is not empty anymore, I would like to know where a
> contents.rdf should exist. For instance, inside en-US.jar there is a
> contents.rdf at "/locale/en-US/communicator/" but not at
> "/locale/en-US/communicator/bookmarks" (JARs made by MT follow this
> convention). Is there a rule that can be safely applied to know where to put a
> contents.rdf?
>
from expirience, i know contents.rdf should be only in top level folders of the components, i.e. in communicator, help, but not communicator/bookmarks or help/images.
| Assignee | ||
Comment 8•19 years ago
|
||
(In reply to comment #7)
> > Well, I guess I already know why the current situation isn't harmful. :-)
> > localeVersion _is_ filled. It seems that this is another bug solved by
> > Henrik and/or Serhiy but not closed.
> >
> have you checked *export JAR*?
Yes, both the JAR exported by Export -> JAR and the JARs inside the XPI created by Export -> XPI.
> > Even if localeVersion is not empty anymore, I would like to know where a
> > contents.rdf should exist. For instance, inside en-US.jar there is a
> > contents.rdf at "/locale/en-US/communicator/" but not at
> > "/locale/en-US/communicator/bookmarks" (JARs made by MT follow this
> > convention). Is there a rule that can be safely applied to know where to
> > put a contents.rdf?
> >
>
> from expirience, i know contents.rdf should be only in top level folders of
> the components, i.e. in communicator, help, but not communicator/bookmarks or
> help/images.
Yes, this is what is being done, but I was looking for something like an "official" reference.
So, I'll keep this bug open for a couple of days and then I'll close it.
Comment 9•19 years ago
|
||
(In reply to comment #6)
> Well, I guess I already know why the current situation isn't harmful. :-)
> localeVersion _is_ filled. It seems that this is another bug solved by Henrik
> and/or Serhiy but not closed.
It's just not always the correct one, it's a randomly guessed one (esp. in my install where I have two branches in the same glossary), and unfortunately one can't set/change it manually any more.
> Even if localeVersion is not empty anymore, I would like to know where a
> contents.rdf should exist. For instance, inside en-US.jar there is a
> contents.rdf at "/locale/en-US/communicator/" but not at
> "/locale/en-US/communicator/bookmarks" (JARs made by MT follow this
> convention). Is there a rule that can be safely applied to know where to put a
> contents.rdf?
The safest rule is "where the original version puts one" (as that would also take into account those pieces of software that doesn't need it any more), a good guess is though "in every |/locale/en-US/<package>/| unless <package> end in |-platform|, where it's one level below (inside mac/unix/win dir)"
| Assignee | ||
Comment 10•19 years ago
|
||
(In reply to comment #9)
> (In reply to comment #6)
> > Well, I guess I already know why the current situation isn't harmful. :-)
> > localeVersion _is_ filled. It seems that this is another bug solved by
> > Henrik and/or Serhiy but not closed.
>
> It's just not always the correct one, it's a randomly guessed one (esp. in my
> install where I have two branches in the same glossary), and unfortunately one
> can't set/change it manually any more.
While I was working in the ZIP permissions bug, I've seen that the version is taken from the first product in the product table of the Write XPI dialog.
This makes me wonder: what if you have several products in the Glossary.zip and you select all of them to create an XPI but one of them has a different version than the others? I think I could gather the version values from every product with any checkbox ticked complain if any of the values diverge from the others. For example:
Product Version Neutral Win Unix Mac Region Custom
---------------------------------------------------------------
SM 1.1 1.8.1 [ ] [ ] [ ] [ ] [ ] [ ]
CZ 1.1 1.8.1 [ ] [ ] [ ] [ ] [ ] [ ]
SM 1.5 1.9.a1 [ ] [ ] [ ] [ ] [ ] [ ]
CZ 1.5 1.9.a1 [ ] [ ] [ ] [ ] [ ] [ ]
CZ 0.9.8 0.9.8 [ ] [ ] [ ] [ ] [ ] [ ]
In the previous table you could mix SM 1.1 only with CZ 1.1; SM 1.5 only with CZ 1.5; and CZ 0.9.8 would have to be selected always alone. Would this work for you?
>
> > Even if localeVersion is not empty anymore, I would like to know where a
> > contents.rdf should exist. For instance, inside en-US.jar there is a
> > contents.rdf at "/locale/en-US/communicator/" but not at
> > "/locale/en-US/communicator/bookmarks" (JARs made by MT follow this
> > convention). Is there a rule that can be safely applied to know where to
> > put a contents.rdf?
>
> The safest rule is "where the original version puts one" (as that would also
> take into account those pieces of software that doesn't need it any more)
Thank you for the info. This should be easy to get done.
> a
> good guess is though "in every |/locale/en-US/<package>/| unless <package> end
> in |-platform|, where it's one level below (inside mac/unix/win dir)"
Hum... this doesn't match current (SM 1.1beta) en-mac.jar, en-unix.jar and en-win.jar, as they don't have mac/unix/win dirs inside, and have contents.rdf following the general rule |/locale/en-US/<package>/|. en-US.jar doesn't have any |-platform| directory. Maybe you are thinking in SM 1.5 unified JAR structure? This probably shouldn't worry us too much, as SM 1.5 is expected to use source L10n, isn't it?
Comment 11•19 years ago
|
||
(In reply to comment #10)
> In the previous table you could mix SM 1.1 only with CZ 1.1; SM 1.5 only with
> CZ 1.5; and CZ 0.9.8 would have to be selected always alone. Would this work
> for you?
I personally am only using the "Export JAR" dialog since MT XPIs were too broken for me a long time ago and then I just got used to exporting JARs and applying my conversion scripts :)
> Maybe you are thinking in SM 1.5 unified JAR
> structure? This probably shouldn't worry us too much, as SM 1.5 is expected to
> use source L10n, isn't it?
Gah, yes, right, I was thinking xpfe-based trunk, which will never see a release anyways...
The "where the original has one" approach is better anyways though.
| Assignee | ||
Comment 12•19 years ago
|
||
(In reply to comment #11)
> (In reply to comment #10)
>
> > In the previous table you could mix SM 1.1 only with CZ 1.1; SM 1.5 only
> > with CZ 1.5; and CZ 0.9.8 would have to be selected always alone. Would
> > this work for you?
>
> I personally am only using the "Export JAR" dialog since MT XPIs were too
> broken for me a long time ago and then I just got used to exporting JARs and
> applying my conversion scripts :)
You know MT is using now your install.js and install.properties script, don't you? :-)
BTW, nice reminder, I was considering the Write XPI dialog only.
| Assignee | ||
Comment 13•19 years ago
|
||
(In reply to comment #11)
>
> Gah, yes, right, I was thinking xpfe-based trunk, which will never see a
> release anyways...
> The "where the original has one" approach is better anyways though.
Since current code is working right and we will stop using contents.rdf for SM 1.5, do you think it is worthy to change the current code? It's not actually a matter of complexity (I think), but of memory consumption. I would have to add another property to Component class to flag components (directories) with a contents.rdf inside them and save this info on Glossary.zip.
As I plan to implement other features more memory-demanding, wasting memory space (even if it is a small amount) on info not currently needed is something I'd rather avoid if possible.
| Reporter | ||
Comment 14•19 years ago
|
||
i must note that i never had a problem with exporting XPIs. if you have several products with differnt versions, you can click the line of the product you want to export, and MT will use that product's version. i don't think MT is built to create a single XPI with more than one product in them.
Comment 15•19 years ago
|
||
Ricardo:
SeaMonkey 1.0.x will still be with us for a few months, 1.1.x for a year or a bit more, so contents.rdf isn't dead yet - but I think current behaviour is known well enough by current MT users so leaving the code that currently determines where to write contents.rdf files should be enough for those. Maybe there should be some either automatic (fit to read jar files) or manual way to turn on/off contents.rdf completely in exported XPI/JAR files (for XPIs that can be coupled with writing install.js or install.rdf).
Making the field writable that displays the written localeVersion in the JAR export dialog (does XPI export have this as well?) would help those who have different versions in their glossary though.
| Assignee | ||
Updated•19 years ago
|
OS: Windows XP → All
| Assignee | ||
Comment 16•19 years ago
|
||
Changes have been committed to CVS now. The code compiles, but not all bugs in
which I'm working are completely covered by current code status, and no serious
testing has been done yet.
The solution I've finally gone with is to keep localeVersion field disabled, but update it so it matches the lang.version. For JAR files it is an easy solution; for XPIs, it is a bit more complex, and it basically reduces to prevent the user from choosing elements from two products with different version numbers.
I hope to stabilize the code enough to provide preliminar JAR files for you to see it working.
| Assignee | ||
Comment 17•19 years ago
|
||
We have finished the new features and bug fixing process for forthcoming
MozillaTranslator version, so I'm closing this bug with the current solution committed to CVS.
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Updated•12 years ago
|
Product: Mozilla Localizations → Mozilla Localizations Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•