Red Hat Bugzilla – Bug 106455
aspell-en and aspell dependency problem
Last modified: 2007-04-18 12:58:11 EDT
Description of problem:
When I attempt to build aspell-0.50.3-15, it tells me that it depends on
I think that these dependencies are reversed: aspell-en should depend on aspell,
not vice versa. (Particularly, the aspell-en SRPM should BuildRequires:
aspell-devel >= 0.51)
If they are "co-dependent" they should probably be joined into the same package,
or at least the same SRPM.
Here's the reason:
The aspell-en package uses aspell to "compile" its dictionaries. When you
install aspell-en, it uses the system's OLD aspell to compile its dictionaries.
These dictionaries are then unusable by the new aspell, causing crashes in any
program build against the new aspell.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Install aspell-0.50.3-15
2. Install aspell-en-0.51
3. Attempt to use any program built against the new aspell. (For example, and
program made in the build process described in bug 106452).
Actual Results: The program from step three will crash (and segfault, IIRC),
with an error that the dictionaries are the wrong format. (Probably the
This is because the dictionaries were "compiled" by the OLD aspell on the system
(probably the 0.33 included with RH9)
Expected Results: Program from step 3 should not crash.
> When I attempt to build aspell-0.50.3-15, it tells me that it depends on
> aspell-en-0.51. I think that these dependencies are reversed
The dependencies are the way they are because legacy aspell did bundle the
English dictionary with the binary. The new version of aspell needs to require
aspell-en to handle upgrades via anaconda... otherwise the upgrade would bump
the binary only and leave upgraded aspell without an English dictionary to use.
> If they are "co-dependent" they should probably be joined into the same package
If they were joined in the same package then aspell, which has complicated
dependencies, would need to be upgraded every time the aspell-en dictionary was
updated. It is reasonable to assume that aspell and the aspell-en will bump
versions not-in-sync and one more rapidly than the other, hence the separation.
> The aspell-en package uses aspell to "compile" its dictionaries. When you
> install aspell-en, it uses the system's OLD aspell to compile its dictionaries.
aspell-en "BuildRequires: aspell >= 0.50" and "Requires: aspell >= 0.50". I
don't see how a sane build system could build with the old aspell given these
requirements-- Our buildfarm sure won't. Also, aspell, not aspell-devel, is
needed to generate the dictionaries.