Re: External dependency proposal: Vala



On Mon, 2009-10-12 at 18:43 +0300, Zeeshan Ali (Khattak) wrote:
> On Mon, Oct 12, 2009 at 6:35 PM, Jürg Billeter <j bitron ch> wrote:
> > On Mon, 2009-10-12 at 11:10 -0400, Ryan Lortie wrote:
> >> I'd like to propose Vala as an official external dependency for GNOME
> >> 2.30.
> >>
> >> [...]
> >>
> >> This is therefore a 'special' external dependency: it would only be
> >> required when building from git (or hacking on the code).
> >>
> >> It makes sense that we depend on the most recently available version at
> >> this point -- 0.7.7.
> >
> > Vala 0.8.0 will be released this week and from this point on, the
> > language syntax is considered stable and no backward incompatible
> > changes will be applied during the 0.8 series. We also intend to keep
> > backward compatibility with 0.8 when releasing 1.x, assuming we don't
> > find severe issues in the syntax in the meantime.
> 
>   That is really good to know and takes away my main reason to
> distribute generated files in rygel release tarballs but what about
> the bindings (ones bundled with vala)? They are still far from perfect
> AFAIK.

While I can't guarantee binding stability at this point, many binding
fixes don't break backward compatibility. As Vala bindings are very
close to the API of the C library there are not many structural changes
in bindings, at least in bindings of GObject-based libraries.

Most binding bugs are either missing memory management annotations where
a fix just fixes a leak without breaking backward compatibility or it's
a more severe bug where the method was previously unusable, which is
also not really a backward compatibility issue.

If you notice a backward incompatible change that could be avoided,
please let me know and I'll try to retain backward compatibility as far
as possible.

However, I don't think it's really a problem to distribute generated
files in general as long as you also ship the .vala sources. This has
been done with files generated from, for example, bison and flex, for a
long time. You should avoid putting generated files in git but you're
not doing this anyway, as far as I know.

Jürg



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]