libgdamm 3.99.0 released

11. November 2008

After working the last couple of weeks for Openismus on updating libgdamm to the new API of libgda 4.0 I can finally announce libgdamm 3.99.0, the first unstable release of what will eventually become libgdamm 4.0.

It breaks API with the existing libgdamm 3.x line and replaces various classes with superior implementations. This should bring a lot better performance. Thanks to Vivien Malerba for his great work on libgda and for fixing all the C++ relevant bugs I filed.

You can download libgdamm here: http://download.gnome.org/sources/libgdamm/3.99/

Now, we can finally start to port glom to the new API and fix bugs!

So after Google was so kind to pay me a flight from europe to the US and back I attended the Summer of Code mentor summit 2008 in Mountain View/CA.

The whole (un)conference was absolutly awesome with cool session interesting talks and tons of great people around. It is really nice to meet open source hackers from so many different projects and cultures. Leslie did a great job to make everybode happy in and outside the conference. (And yes, the Google cafΓ©teria is probably one of the best in the world).

Lot’s of people ask me why GNOME only send one mentor and I really think that is a pity. So please, if there will be a SoC in 2009 (which is likely) and you mentor some student then go to the mentor summit and I am sure you will not regret it.

After the summit some nice people from the tor project brought me back to San Francisco and showed me their “Hacker space” and some nice Burrito restaurant. This is my last day here now in one of the coolest hostels of the world and I have to say that I enjoyed it a lot.

Looking forward to another 13 hours flight and 8 hour timeshift πŸ˜‰

Anjuta startup time

9. October 2008

Anjuta start-up is really quite slow, taking about 5 seconds even if no session is loaded. So, I tried to find out what happens and why it is slow, using Frederico’s tools:

1.5 seconds => ld for linking about 80 libraries (will be improved by removing the deprecated bonobo/gnomeui/gnome-vfs stuff)

1.5 seconds => gtk_icon_theme_get_default()

2 seconds => loading the plugins

So, I think there is not much to improve for linking other then to remove some dependencies. For the plugins loading I hope to make some improvements but these are pretty big libraries so it might be difficult. But what annoys me is that the loading of the icon cache takes so long though it should actually get a shared object from the screen. Or am I wrong here? This is no cold start-up, the GNOME Desktop was already fully up. Any chance to shorten this time?

Update: alexl points out that it is because of the gtk-icon-cache being out-of-date and indeed running gtk-update-icon-cache on several directories fixed the issue. Anyway, I wonder if gtk+/gnome/something else should check for an up-to-date icon theme in the background and update it when idle.

Anjuta 2.5.90 released

19. August 2008

Anjuta team proudly announces the first unstable release Anjuta
DevStudio 2.5.90 that will eventually lead us to stable 2.6.0 release,
code named Cyclone. This is an unstable release, so be sure to adjust
your expectations accordingly. This is release is for upcoming GNOME
2.23.90 release.

There has been a huge changes done in this release from the last one,
both in terms of adding new features and improving existing ones. Also
large amount code cleanup to remove use of deprecated APIs was done.

Most important changes:

  • New git plugin
  • Improved build plugin allowing out of source builds and different configurations for debugging and profiling
  • Autocompletion for the gtksourceview editor

Thanks for this release to (alphabetically):
Halton Huo
Sabastien Granjoux
Massimo Cora
Arun Raghavan
Marc Lorber
Johannes Schmid
Ignacio Casal Quinteiro
Louis-Francis RattΓ©-Boulianne
Yuriy Penkin
Abderrahim Kitouni
James Liggett

and on Localizations:

Clytie Siddall,
Ignacio Casal Quinteiro
Jorge Gonzalez
Yannig Marchegay
Djihed Afifi
Yuriy Penkin
Yannig Marchegay
Johannes Schmid
Ihar Hrachyshka
Jovan Naumovski
Duarte Loreto
Theppitak Karoonboonyanan
Yair Hershkovitz
Nickolay V. Shmyrev
Ilkka Tuohela

Download: ?http://ftp.gnome.org/pub/GNOME/sources/anjuta/2.5/
Screenshots: http://anjuta.org/screen-shots
Features: http://anjuta.org/features

Dependencies:
=============
gdl: http://ftp.gnome.org/pub/GNOME/sources/gdl/2.23/
gnome-build: http://ftp.gnome.org/pub/GNOME/sources/gnome-build/2.23/

Translations updates:
=====================
ar, be@latin, de, es, fi, gl, he, mk, oc, pt, ru, th, vi

Updates and bugfixes:
=====================
* Fix #536372: Write __MAX_BAUX instead of __MAX_BAUD
* Fix a crash when GNOME Terminal is not installed
* now search for symbols can be done also in global tags. Added a new
parameter
to search function and adjusted dependencies on different plugins.
* Put tables.sql into distribution
* Fix #536889 anjuta doesn’t pass “make check”
* Fixed #537398 – crash in Anjuta IDE: Closed project
* Fix #537134: critical warnings tools->plugin_deactivate
* Fix #534523: anjuta parses filenames from make wrong
GMatchInfo need to be freed even when regex fail in build_get_summary
* Fixed a possible bug where the project-manager plugin is deactivated
twice.
* Fix #536375: libsocket not included cause build fail on Solaris
* Add new scratchbox 1 plugin implementing IAnjutaEnvironment
* Enabled tooltips for recent files to identify full paths.
* Ported file-manager to gio
* Fix #530215 – Have a message area like gedit
* Using glib/gi18n.h instead of libgnome/gnome-i18n.h
* Fixed a crash on file selection. Gave enough buffer for the formated
time print.
* Restore text focus on switching editor with ALT+X and
navigating from local-symbols view.
* Fixed #528699 – Auto-indent ignores spaces-per-indent settings
* Fix #538798: UI selected tab document differs from real one
* Fix again #538798: UI selected tab document differs from real one
* Fix #538921 – Duplicated folders
* Fix #539726 – Completing port to GIO
* Fix #513156 – Get rid of libgnome(ui)
* Fix #538443 – Missing files in POTFILES.in
* Fix #538906 – Enable state “Max actions” when “No limit” toggled
* Fix #449620 – Implement autocompletion for gtksourceview editor
* Fix #540731 – Port editor to gio
* Fixed loading of files from the command line
* Fixed crash when double-clicking on a breakpoint.
* Change (nearly) all interfaces to use GFile* instead of uris
Document all shell variables
* Fixed #541313 – Crash on saving file
* Fix #515954 – create_global_tags.sh: wrong anjuta-tags path
* Fixed global tags loading
* Fix bug #538217: Run in terminal option isn’t remembered
* Fix bug: Debugger sources directories isn’t remembered neither
* Fixed “Hide binary files”
* Fix #539551 – AutoComplete doesn’t work
* Fix #539551 – AutoComplete doesn’t work
* Fix #357697 – readonly file can be edited
* Fix #511762 – Multiple selection don’t work well when hitting enter
* Fix #535173 – UI isn’t updated on closing all documents
* Fix #500962 – Further icons
* Fix #475244 – AC_SUBST() not needed after PKG_CHECK_MODULES()
* Fix #518594 – Get rid of .anjuta and follow fd.o specifications
* Fixed #541689 – Filter buttons added
* Fixed symbol-db plugin for threaded libgda calls
* Show all completions even when the editor makes own suggestions
* #541941 – Crash on searching with regular expression
* Fixed #542838 – create_global_tags.sh is creating tags in root
directory
* Added ‘continue global tags scan after abort’ feature.
* Allow to build project outside source directory (fix #540782)
* Fix crash on closing project due to the previous patch
* Add more options for build command: parallel make, keep going on error
and keep message untranslated
* Fix another crash on closing project with a file outside project
* Fix #375640: Allow user to stop a build in progress
* Fix #534566: expand shell variable in configure parameters
* Fix #543889: Crash typing in configuration field
* Fix #522825: Opening files from shell disable build->compile menu
* Fix configuration name not displayed, error when compiling target
outside project
* Fix #543978: GPL license shown in COPYING file irrespective of
which license selected
* Fix #544190: Crash double click on item in stack trace
* Fix #530630: Scintilla hand up after hit return
* Fix #544841 – Cursor set on a wrong line when I click
* Fix several memory leaks in build plugin
* Keep all command data in one object
* Fix #544495: Memory leak
* Avoid using the same function name in interfaces implemented
by the same object to avoid trouble with bindings
* Fix crash on 64bits machine due to the previous change (thanks
Ignacio)
* Fix #543149 Project doesn’t rebuild when file is changed
* Bug #529270 – GSoc: Git Plugin, alpha release 3.
* Add header file to expose libanjuta versioning information.
* Add a preference for the new visible whitespace feature of
gtksourceview
* Pull GIO into the libraries that libanjuta links against. (Bug
#546394)
* Fix #542432 – Svn diff doesn’t work correctly
Convert the output of svn diff from localce to utf-8
* Fix #545673 – A bug in isymbol_get_file function
Use g_file_new_for_uri() instead of g_file_new_for_path
* Fix #546620 – Build- and make dist fixes (with some small changes)
* Fix #420279 – INS and OVR do not immediately change in status bar
* Save files in their original encoding
* Use a fallback dialog if the document was not added to the
document-manager
yet (#545557 – Crash pressing on message view)
* Fix #493818 Close project with opened target properties dialog opened
crash Anjuta
* 545624 – Toolbar broken
* Lots of improvements to symbol-db
* Use uf8_strlen instead of strlen to avoid selection problem with
non-ASCII search strings (see #440637 comment 15)
* New git plugin (Anjuta GSoC project)

Happy coding!

GUADEC in retrospection

15. July 2008

GUADEC

GUADEC itself was great, nice people, awesome location and fantastic weather. Thanks to everyone making this possible. I have a little thing to critisise though: IMHO the schedule had some issues! Some really interesting talks were scheduled in the Opening Hours or in the After Hours which not really many people attended. On the core days, some important talks happened at the same time and I don’t think it’s a good idea to schedule anything against the Lightning talks. Some other people I talked to had a similiar opinion but that may of course still just be a small group. Anyway, I would love if some experienced GNOME people could check the schedule for such conflicts next year.

Party

  • Opening Cocktails: missed due to great view from appartment…
  • Boat Party: Maybe the best GNOME party ever, I doubt that everybody can remember the whole evening. Talked to lots of people though sometimes conversation was rather off-topic. Thanks to the people at Collabora for organizing the event!
  • Closing Party: Well, either I was to tired from the day before or it simply wasn’t that good.

GNOME 3.0 (aka 2.30)

The last days I thought a lot about what our goal for 3.0 should be and how we could probably achieve them. First, I think the decision to break API/ABI is good in general as it will remove maintaining tasks for old and deprecated modules from some very important people.Β  Doing this together with Gtk+ 3.0 also sound very reasonable.

Schedule: To achieve more than just the usual small steps between our releases and instead have the time for some bigger things I would propose to leave out GNOME 2.28. That does not mean there will be no GNOME 2.28 release but that there will be no new features but of course string additions, documentation additions and bug-fixes. That would leave developers a reasonable timeframe to get some bigger changes in and port everything to 3.0 in time.

Gtk+ 3.0: Most of the things that Imendio proposes sound reasonable but we should really try to get CSS-like theming because it will attract much more designers to create themes.

Goals: Define clearly now what our goals for GNOME 3.0 are and how we want to achieve them. Maybe the best thing is to have a brainstorm place (on the wiki) and somebody who organizes those ideas in a way that the community/release team can make decisions based on clear concepts. Some of the things that are important to me:

  • Better file handling: Frederico had some very nice ideas on that and I think he is right with most of the things he proposed. Of course it would be cool to have a versioned file-system but we haven’t yet and of course some UI ideas might not be perfect. Who cares? Let’s implement what we can do now immediately and enhance it when we have more technologies available. This is something that does not really have to wait for 3.0
  • Rethink the panel: Our current panel is not really a modern user interface and as Frederico also said, you have to click too often. And it wastes too much screen-space. I don’t have the perfect solution yet but having those fading sidetabs might be an idea but I am sure there are some other interesting things to think about. I would really encourage people to create mock-ups for a future desktop design.
  • More power to the WindowManager: I don’t really like the idea of having an entry in the titlebar but it’s really time to use the available space for something more useful than the window title. Another thing I would love to have is a “Minimize to Icon” button.
  • Better default theme: Clearlooks is nice but if you compare it to other desktop environments it looks really conservative. I don’t like the idea of being conservative…

Postcard with GNOME stamp

Brought to you by Michael, Mathias and the nice people at PTT (Turkish postal service).

Create the vision

10. June 2008

(for all who are just not interested in useless “Future of GNOME”-discussion – just open a beer or scroll down)

Personally, I think Andy has started the right discussion and the approaching GUADEC is also a good time for it.

The whole GNOME community really needs to start thinking about the next generation Desktop –Β  whatever that will be. Maybe it’s very similar to the current Desktop but sure it will just be better. Andy mentions some good ideas though 3D and desktop effects may not be the only truth.

But let’s assume we want to go into the desktop effects direction, what would we want there? GNOME was always meant to be clean and easy to use and we should continue this. Until now, desktop effects are just “effects”, they look spectacular but there is now real need to have them despite impressing your neighbor. Let’s change this! Let’s have desktop effects in a way that they improve the user interaction. Usually that means that computers should act more like the physical world but not by copying the annoyances of the physical world but by using work-flows developed thousands of years ago. That could mean to put documents aside or to stack them or do whatever you find appropriate.

The main problem of such abstract visions is that they are visions. We don’t need more visions, we need implementations. When you compare our current development libraries with those available before last GUADEC we have made a big step with clutter and other things now available. Perhaps it’s now time to include such things in mainline GNOME in an incremental way without breaking everything. So everybody: take the ideas that are mentioned on the planet and create the next generation desktop instead of talking of it. I already said to much…

BTW, the first thing I would love to see is a more fancy (and useful) GNOME panel…

LinuxTag 2008 Berlin

29. May 2008

If anyone is attending LinuxTag, I will have a talk about the GNOME Development tools on Saturday 15:00 o’clock in Room “Paris”. It will be in German, a short description is available through the link below:

Β GNOME Entwicklungswerkzeuge

I won’t have much time to be there at other times so don’t really expect to meet me at the conference.

Update: The slides

Anjuta status update

30. April 2008

So, we all have been busy to improve anjuta over the past weeks. Now, there are also some user visible changes in the UI:

  • Sebastien implemented a new Run plugin which eliminates the mess of having a Build->Execute and Debug->Execute which both do not really fit. Instead, there is now a new “Run” menu which allows you to run programs (with or without debugger) and set a lot of parameters including environment variables of all kind.
  • Due to popular request I started a document-manager bug-fixing day and added some of gedit features to anjuta (#529528 and #453702). There is now a “Documents” menu that allows switching between the open documents (by the menu and by keyboard). To avoid cluttering the menu bar too much, the “Goto” menu is now a submenu of the “View” menu as I guess people either use accels to access these items or rarely use them.
  • Work on the new symbol database continues. Massimo is doing a great job and the project-wide symbol are already working great (requires libgda-v4). Now, we have to work on the system wide symbols to autocomplete all libraries bound to the project.

Screenshots coming soon…

When looking into screenshots of KDE, Windows Vista or MacOS X you will notice that they killed most of the grey from their Desktop and replaced it by colors or black. None of the themes is absolutely great but they all look very pretty and modern.

I am a really bad artist but when I look at our Clearlooks or Ubuntu Human themes I feel they are very drab. This is not about usability which is definitely great but just about the impression you get the first time you fire-up your GNOME Desktop. Everything grey, grey panels, grey window, grey taskbar, etc. Too much grey. Too much 90’s.

Of course grey has the advantage of being a neutral color but couldn’t we set some colored accents on the Desktop? Has everything to be clean, cold and neutral?

As I said before, I am bad artist and won’t be much help on this topic but might anybody want to add a bit more color to the clearlooks theme? The clearlooks engine is really rocking but I think we could gain a much better user impression with more and better colors. I searched on art.gnome.org but did not find anything that could fill this gap for me.