[Gtk-sharp-list] Towards GTK# 3.0

Bertrand Lorentz bertrand.lorentz at gmail.com
Mon Jul 30 16:36:56 UTC 2012


Hi Mike,

Thanks for sharing your thoughts. Some comments below.

On Sat, Jul 28, 2012 at 10:08 AM, Mike Kestner <mkestner at gmail.com> wrote:
> Hi Bertrand,
>
> On Fri, Jul 27, 2012 at 8:01 AM, Bertrand Lorentz
> <bertrand.lorentz at gmail.com> wrote:
>
>> When I tried to run the Banshee GTK3 branch, the main issue I hit was
>> in fact a regression in GTK+ itself:
>> https://bugzilla.gnome.org/show_bug.cgi?id=679232
>> I guess it's a good sign about the state of the bindings themselves. ;)
>
> I think the binding itself is in pretty good shape, and has been for a
> while now.  There were a few tweaks needed for the Banshee port.  MD
> would be another good test, but I doubt you will talk anyone into a v3
> port of it.

That is also my impression after talking to a few MD guys. The
cost/benefit is just not there for them.

>> So I think we should try to push out a 2.99.0 release as soon as
>> possible. Of course, it needs to be marked as beta, and targeted for
>> applications developpers to start porting their apps and maybe provide
>> feedback.
>>
>> What you guys think still needs to be done for that release, and
>> before a proper 3.0 release ?
>
> I guess it depends on who your target is for a 2.99.0 release.  To
> make Gtk# 3 a replacement for Gtk# 2.12 going forward, a 3.0 release
> would ideally also provide:

My idea behind doing a 2.99.0 release is to get other devs to start
porting their apps, with Linux apps as primary target. That would help
detect if there are API areas we missed or that can be easily
improved.
So I see the points you mention below as nice-to-have for 2.99.0.

> API Documentation:  the api docs have been stubbed for the new API,
> but none of it has been filled in.  I know that's not exactly a
> showstopper compared to 2.12.  There would need to be a plan for how
> to distribute the stubs, though.  The monodoc viewer doesn't include
> v3 docs.  Integrating with the on-line docs would require coordination
> with the go-mono.com owner or a new provider.

I tried to integrate the docs into monodoc, but I just got duplicate
entries under the "GNOME Libraries". So any help with that is welcome.

> Porting Guide: Most people who are interested in 3.0 seem to be
> wanting to remove a 2.x dependency in existing applications.  I
> haven't heard of anyone clamoring for the new APIs in 3.0, because to
> my (albeit limited) knowledge, there isn't much new capability.  Most
> of the interest seems to be related to inclusion in a linux
> distribution or desktop app set, and being current and supported and
> not dead 'n stuff.  So having some documentation on how to port would
> likely be valuable.

I think the migration guide from GTK is a good starting point:
http://developer.gnome.org/gtk3/stable/gtk-migrating-2-to-3.html
Adapting it to C# would already be good. What do you think the best
format and place for that migration guide would be ? Under go-mono.com
I guess ?

> Installers:  If you release a 2.99 without windows and mac installers,
> I would expect the first question that will come in will be "When will
> the windows installer be ready?"  Maybe I'm wrong about this, though,
> since most of the interest in v3 seems to be Gnome3 and linux
> distribution driven.

Good point about the installers.
I guess it only makes sense to provide an installer for a platform if
GTK is good enough on that platform.
I'm not sure about the status of GTK on Windows and OSX, I'll try to
get more information about this from GTK devs I can find at GUADEC.
I'll try to look into the Windows installer. If someone with a Mac
could look at the OSX installer that would be great.

In any case, we need to communicate clearly about what platforms are
currently supported when we push out the 2.99.0 release.

> MD/Stetic support: given the porting focus of existing apps, and their
> limited reliance on stetic, maybe this isn't a big issue.  But the
> existing MD designer will not allow you to develop Gtk# 3 apps.  It
> may be a challenging problem to solve, given that MD is a 2.12 app.
> Might be a fun hack if someone has the itch.

Agreed, I see that as rather low priority.

> Those are the main things that demoralized me from pursuing this in my
> own spare time.  :-)  I wish you guys luck.  I'm willing to answer
> questions and maybe fix a bug or two along the way if it would help.

Thanks for all your work so far !

-- 
Bertrand Lorentz


More information about the Gtk-sharp-list mailing list