(cross-posted from the Anjuta News Blog)

Today Anjuta 2.31.3 was released today and it brings some nice features and bug fixes (see NEWS)

What’s new?

  • Massimo Cora’ put a lot of energy into the speed of the symbol database population and brough it down to about 15 seconds for 1000 files.
  • Abderrahim Kitouni finished up his GSoc ’08 work and the language support for vala got merged into trunk. This means we now have autocompletion and calltips for Vala.
  • Naba Kumar ported the class-inheritance plugin from GnomeCanvas to FooCanvas, made it much faster and integrated it back into master

What’s happening behind the scenes?

  • Sébastien Granjoux worked hard on the new project-manager branch but unfortunately it won’t be finished in this cycle. But once it is finished it should bring a much better project management to anjuta.
  • Naba Kumar is working on improving the database queries for the symbol-db which should in the end result in faster and better autocompletion and in general better code.
  • James Liggett started working on a completely new and innovative interface to the git version control system. It will integrate version control much better into the workflow.
  • Abderrahim Kitouni also worked on a plugin loader for python and javascript plugins. In the end we should hopefully support even more plugin languages with gobject-introspection. He blogged about it.
  • In general we follow the development of libpeas with much interest. This might replace our own plugin infrastructure in the future.
  • The glade plugin was cleaned up. It doesn’t provide any new features (actually, some were even removed) but it should be more stable now. This work is targeted to allow to drag signal handlers from glade right into the code. Currently this mostly meant cleaning glade internals but there is still hope finish it for 3.0.

How you can help!

  • Test the latest release and file bugs! Though declared as “unstable” it should be equally stable as 2.30.x.
  • Help us fixing bugs! There is lots of stuff to do including a new icon (we would like to keep the horse which was a unicorn before the horn was ripped off, otherwise you are pretty free) and a new splashscreen.
  • Help to improve language support! We have language support plugins for C/C++, JavaScript and Vala now but most of the Anjuta developers are C coders. We need people to test this and if possible also fix it. Vala support is written in Vala itself which should make it easier for you.
  • Documentation, especially tutorials are another point were you can help us and any potential GNOME contributor in getting started with Anjuta.

Sorry, this is going to be a rant…

Some distributions like Ubuntu tend to have their own bugtracker for all packages and people will report bugs there (in this example bugs.launchpad.net). This is not a bad thing in general as it might be possible to generate better debugging info if you know the exact binary package.

This requires bugs to be added upstream though because no developer will ever have a look in downstream bug trackers. For core packages of a distribution that has the manpower to do this that should be OK and as those packages might be patched in some way it might be useful to report bugs downstream and decide manually if and how to report them upstream.

However for packages where there is nobody to review the downstream bugs I would really prefer if the downstream bug-tracker will just forward the bug to the upstream bug-tracker (probably doing some internal duplicate filtering in between).  I am more happily getting some incomplete bug reports than missing  the interesting ones because they never reach the upstream tracker.

So, launchpad developers: Do you think that’s doable. There are so many great options in launchpad that I think adding this one shouldn’t be too difficult. By accident I stumbled across some very interesting reports in launchpad and I would have loved to have these reports upstream.

Thanks!

Re: Anjuta UI work

5. April 2010

Today, I finally took the time to fix the optical trash from the embedded tab change I did some time ago:

Anjuta with correct tab buttons

Voilà, tabs look like they should now. Actually this wasn’t that easy to implement and requires a custom GtkContainer widget which is a bit painful to write. There might be some possible improvements in using the correct border/shadow for the notebook but I haven’t figured out a better way until now.

This post is a spin off from the recent foundation-list discussion regarding the future direction of GNOME. It was pointed out that GNOME might not be a very attractive platform for new developers. The reasons was among others that there is nothing like a standard way of developing GNOME applications. Of course, everybody is somehow using automake and autoconf and some editor and bugzilla but not more than that.

Compared to windows, about any new developer will stumble over Visual Studio. On Mac, it is the same with XCode. For these tools there is tons of documentation, tutorial and books available and they are actively promoted with the platform.

For GNOME 3.0 we should also start having something like this. This doesn’t mean than present developers have to change their development model but they should be aware that their personal model might not be suitable for new developers especially those with no Linux/free software experience. As such, we should promote the tools we have to make life of new developers easier and ensure that they work with the workflow of a specific project.

In a perfect world, I would announce a hackfest here now, but I won’t 😉 But I would encourage people to help  anyway. I have setup a wiki page to collect ideas. The major points are in my opinion:

  • Write good tutorials how to build GNOME applications without touching command-line
  • Setup a website (maybe on library.gnome.org) hosting all the information for getting started with GNOME development

Everybody is invited to contribute!

For my fellow Vala hackers…

23. February 2010

Symbol Manager with Vala symbols …I proudly present support for Vala symbols in the Anjuta Symbol Manager. This will mean you can browser and search your project symbols like you can in C and JavaScript. This will either work with the automake backend of the project manager for automake >= 1.11 with Vala support or at your option with the new directory backend for automake < 1.11 or custom Makefile rules.

Credits go to Abderrahim Kitouni (former GSoC student) for writing the vala parser for ctags. We hope to add full Vala support including autocompletion and probably debugging before 3.0.

In related news, Anjuta 2.29.91 “Vala la révolution” was released with many stability fixes today. Give it some testing. Naba already did an awesome job in filing bugs for a lot of small but annoying issues. Follow his example 😉

Javascript support in anjuta

21. December 2009

Finally, after far too long time I found time today to merge Maxim’s great Javascript support patches from GSoC 2009 into master. You find screenshots and more information on his blog.

Thanks a lot for your work Maxim!

P.S.: Remember that scipting is for loosers while C is for real (wo)men 😉

The great people from gedit/gtksourceview finally implemented a new completion engine for GtkSourceView which allows us to drop lot of ugly custom code in Anjuta. But it also has some cool features:

  • Combine auto-completions from different sources (called “providers”)
  • Add auto-completions in an asynchronous way
  • Support to add extra information to the auto-completions

For now, Anjuta uses only the first two but it’s really planned to add API Help for symbols.

Despite having a more stable and tested code and a nicer UI that means that he will never be disturbed while typing because the editor is searching for auto-completions to appear. Instead all this now happens in background and it really feels fast. This also gives us a possibility to add macros/snippets directly into the auto-completion framework. Screenshot:

completion

There are also some other interesting things coming soon:

  • a better engine for C++ (auto-completion of class-members, etc.)
  • GSoc JavaScript plugin which needs to be merged
  • a new bison/flex based automake parser as project-manager backend (probably won’t be finished until 3.0)
  • a completely rewritten git UI

Anjuta UI work

12. June 2009

Based on the awesome work from Joel Holdsworth making it possible to add custom widgets to the dock item grips, I finally patched anjuta to use this ability. This can save quite a bunch of pixels:

Anjuta with new buttons in grip feature

Anjuta with new buttons in grip feature

Old pixel-wasting version

Old pixel-wasting version

There may be still some style issues especially for the message window tabs. Suggestions welcome!

I just created a tiny ppa which contains anjuta and gdl 2.26.2 as Ubuntu is a bit slow in updating those. If you are a jaunty user I really recommend an update to the latest stable version which contains some important bug-fixes:

PPA for Johannes Schmid

Anjuta News Blog

6. April 2009

Just some self-promotion: The Anjuta News Blog already has some interesting entries and might be worth reading. It should hopefully appear on news.gnome.org soon, too