Closed Bug 389071 Opened 17 years ago Closed 16 years ago

[ru] Replace current Russian Spellchecking Dictionary with Alexander Lebedev's dictionary

Categories

(Mozilla Localizations :: ru / Russian, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: unghost, Assigned: unghost)

References

Details

(Keywords: fixed1.9.0.2)

Attachments

(1 file)

We (Russian localization team) would like to replace current russian spellchecking dictionary with another one (created by Alexander Lebedev)
There are several reasons for this decision:
1) Alexander Lebedev is actively maintaining his dictionary. Current russian spellchecking dictionary is not maintained anymore by it's author.
2) Quality of Alexander Lebedev's dictionary is higher and it includes more words than current one.
3) It includes support for "yo" letter, so we can also fix Bug 343465 with it.

The main question is license of Alexander Lebedev's dictionary. It states:
------------------------------------------------------------------------
LICENSE
=======

The main components of RUS-ISPELL package:

    * the Russian affix file (russian.aff.koi) and
    * a set of dictionaries (base.koi, abbrev.koi, computer.koi,
      for_name.koi, geography.koi, rare.koi, science.koi)

in their original encoding (koi8-r) and any other encoding produced
from it as well as affix file and dictionaries prepared from the
above files for MySpell spell checker are copyright (c) 1997-2004
by Alexander Lebedev.

Permission to use, copy, redistribute is granted.  Permission to
redistribute modifications in patch form is granted.  Permission
to redistribute binaries made of modified sources is granted.
All other rights reserved.

Alexander Lebedev
------------------------------------------------------------------------

I've exchanged few e-mails about it with Gervase Markham and pasting relevant parts of them here:

------------------------------------------------------------------------
>>> LICENSE
>>> =======
>>>
>>> The main components of RUS-ISPELL package:
>>>
>>>     * the Russian affix file (russian.aff.koi) and
>>>     * a set of dictionaries (base.koi, abbrev.koi, computer.koi,
>>>       for_name.koi, geography.koi, rare.koi, science.koi)
>>>
>>> in their original encoding (koi8-r) and any other encoding produced
>>> from it as well as affix file and dictionaries prepared from the
>>> above files for MySpell spell checker are copyright (c) 1997-2004
>>> by Alexander Lebedev.
>>>
>>> Permission to use, copy, redistribute is granted.  Permission to
>>> redistribute modifications in patch form is granted.  Permission
>>> to redistribute binaries made of modified sources is granted.
>>> All other rights reserved.
>
> The only problem I see with this is the requirement that modifications 
> must be distributed in patch form. This is generally considered free, 
> but inconvenient.
>
> It talks about the redistribution of binaries. Are these files 
> compiled before they are shipped with Firefox?
Yes, all these files (Russian affix file (russian.aff.koi) and set of 
dictionaries (base.koi, abbrev.koi, computer.koi, for_name.koi, 
geography.koi, rare.koi, science.koi)) are compiled in 2 files - ru.aff 
and ru.dic. These 2 files checked in CVS and shipped with Firefox (and 
go to /dictionaries subdirectory in Firefox program folder after 
installing).
>
>> I've talked about this license with some FOSS people and they think 
>> that it's BSD-like license. AFAIK, BSD-licensed code is compatible 
>> with Mozilla license and can be checked in Mozilla's CVS.
>
> Apart from the bit about patches, this is true.
>
>> I know that you are busy person, but can you please take a look at 
>> this license and tell me if this license allows me to check in this 
>> dictionary in Mozilla CVS. If it's not compatible, can you please 
>> tell me what should be changed in it to make it BSD-compatible.
>
> Well, ideally he would just use the BSD or MIT license :-) Are you in 
> touch with the guy who wrote the dictionary?
>
Yes, I've talked with him. He doesn't like idea to change this license.
He said "This license works for me and I'm not ready to make any changes
in it right now".
------------------------------------------------------------------------

Alexander Lebedev's dictionary can be downloaded from http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries/ru_RU_yo.zip
It's home page is ftp://scon155.phys.msu.su/pub/russian/ispell/
So here's the problem: our aim is that code which we ship by default needs to be under a license which is compatible with all three of our core licenses - the MPL, the LGPL and the GPL. Examples of compatible licenses are the tri-license, and BSD-like licences.

Mr Lebedev's license nearly, but not quite, fits these criteria. The problem is the statement that "Permission to redistribute modifications in patch form is granted." The restriction "in patch form" is not compatible with the GPL, because the GPL does not permit the addition of further restrictions than those already in the GPL itself. 

This problem was also a problem with the original Qt Public License (QPL) issued by Troll Tech.
http://lists.kde.org/?l=kde-licensing&m=91246716922723&w=2

How much of a problem this is depends on how keen Mr Lebedev is to maintain this restriction. If he doesn't mind too much, then the best thing would be for him to switch to a BSD license, which has the same effect as the other terms in his statement. This would also give him additional legal protection, because it includes a disclaimer.

I would be happy to write an email to Mr Lebedev, explaining the situation.

Gerv
(In reply to comment #1)
> So here's the problem: our aim is that code which we ship by default needs to
> be under a license which is compatible with all three of our core licenses -
> the MPL, the LGPL and the GPL. Examples of compatible licenses are the
> tri-license, and BSD-like licences.
I wonder, can be code, placed in /l10n repository, considered as "shipped by default"?
AFAIK, all tarballs of Mozilla's code contain only en-US code. If someone want to get /l10n code, he should use CVS. Is using CVS can be considered as "shipping by default"?

Frankly, I consider problem with "patches" theoretical, not real-life. I can not imagine situation that someone in Mozilla wants to make any changes in russian dictionary. All trademarks' names like "mozilla, firefox, thunderbird..." are written in latin alphabet and hardly can be included to russian spell-check dictionary. 

> I would be happy to write an email to Mr Lebedev, explaining the situation.
So are you going to write him in near future? Can you please elaborate?
(In reply to comment #2)
> I wonder, can be code, placed in /l10n repository, considered as "shipped by
> default"?

Yes, if it is part of a build (and a dictionary included by default, of course is).

> Frankly, I consider problem with "patches" theoretical, not real-life. 

The GPL an MPL do not differentiate between 'theoretical' or 'real-life'... Something either is GPL/MPL-compliant, or not. In this case, Lebedev's dictionary is not.


> I can
> not imagine situation that someone in Mozilla wants to make any changes in
> russian dictionary. All trademarks' names like "mozilla, firefox,
> thunderbird..." are written in latin alphabet and hardly can be included to
> russian spell-check dictionary. 

Well, someone outside from Mozilla may want to change something in the dictionary (in his own build). That's what open source is all about. :)

Go to http://www.mozilla.com/en-US/firefox/all.html , search for Russian. Yes, we would be shipping this by default.

> So are you going to write him in near future? Can you please elaborate?

I said I am happy to write to him. I will do so if the consensus in this bug is that that's the right thing to do.

Gerv
(In reply to comment #4)
> I said I am happy to write to him. I will do so if the consensus in this bug is
> that that's the right thing to do.
I think that it's right thing to do.
What's his email address?

Gerv
Oh, and does he speak English? If not, will you translate the letter for me?

Gerv
(In reply to comment #6)
> What's his email address?
swan@scon155.phys.msu.su

(In reply to comment #7)
> Oh, and does he speak English? If not, will you translate the letter for me?
His home page in English is http://scon155.phys.msu.su/eng/lebedev.html . He has several publications, written in English.
So I think that he speaks English.

I've sent him a mail, and I'll let you know what he says.

Gerv
(In reply to comment #9)
> I've sent him a mail, and I'll let you know what he says.
> 
Gerv, had you got any response from Alexander Lebedev?

Yes. I got an initial response, and replied with some suggestions as to how he might tweak the licensing. I haven't had a response to that message, though. I will ping him again.

Gerv
I pinged him again on the 3rd of October but still haven't had a response of any sort :-( Not sure what else I can do.

Gerv
So, Mr. Lebedev has changed license of his dictionary to BSD-like license (see ftp://scon155.phys.msu.su/pub/russian/ispell/LICENSE).
Gerv, can you please confirm that dictionary, distributed under above-mentioned license, is eligible to be included in Mozilla code repository?
Yes, that's fine. 

We need to make sure that a copy of the licence text is included in about:licence in builds which ship with the dictionary. At the moment, we include the text for all dictionaries by default, which sucks. But until we have a better way, once we start shipping this you will need to provide a patch to about:licence (which is duplicated in at least two files - be careful) adding the licence text.

Gerv
Depends on: 451409
Attached patch Sort of a patchSplinter Review
Sort of patch to ask approval for 1.9.0.2. Whole patch is > 5 megabytes, so I left only license changes (already reviewed by Gerv in Bug 451409)
Attachment #334926 - Flags: approval1.9.0.2?
Summary: Replace current Russian Spellchecking Dictionary with Alexander Lebedev's dictionary → [ru] Replace current Russian Spellchecking Dictionary with Alexander Lebedev's dictionary
Comment on attachment 334926 [details] [diff] [review]
Sort of a patch

a=me, please land this with a check-in comment referencing this bug and my approval, and the licence change bug. Please use the fixed1.9.0.2 and verified1.9.0.2 keywords to track landing and testing.
Attachment #334926 - Flags: approval1.9.0.2? → approval1.9.0.2+
Fixed on CVS:
Checking in hunspell/license.txt;
/l10n/l10n/ru/extensions/spellcheck/hunspell/license.txt,v  <--  license.txt
new revision: 1.2; previous revision: 1.1
done
Checking in hunspell/ru.aff;
/l10n/l10n/ru/extensions/spellcheck/hunspell/ru.aff,v  <--  ru.aff
new revision: 1.2; previous revision: 1.1
done
Checking in hunspell/ru.dic;
/l10n/l10n/ru/extensions/spellcheck/hunspell/ru.dic,v  <--  ru.dic
new revision: 1.3; previous revision: 1.2
done
Pushed to l10n-central:
http://hg.mozilla.org/l10n-central/index.cgi/ru/rev/fda82294ded3
Status: NEW → RESOLVED
Closed: 16 years ago
Keywords: fixed1.9.0.2
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: