From: Kouhei S. <ko...@co...> - 2015-09-22 06:55:40
|
Hi, Ruby-GNOME2 project released Ruby-GNOME2 3.0.4: http://ruby-gnome2.osdn.jp/hiki.cgi?News_20150922_1 It is the first release announce of 3.x series. We re-implemented Ruby/GTK3 as Ruby/GObjectIntrospection based bindings at 3.0.0. It means that you can use full GTK+ 3 features. If your program that uses Ruby/GTK3 doesn't work with 3.x, please report to us. It must be a Ruby/GTK3 bug. We'll fix the bug. cedlemo is MVP for releasing 3.0.0. He updates all Ruby/GTK3 samples and confirms their behavior. Very thanks!!! == How to install % gem install gtk3 You can also use it on Windows. Here are changes since 2.2.5 (the last 2.x release): == Ruby-GNOME2 3.0.4: 2015-09-21 It is a build fix release for 32bit Windows. === Changes ==== All * Improvements * Supported auto native package installation on Arch Linux. [GitHub#553][GitHub#563] [Patch by lilole] ==== Ruby/GObjctIntrospection * Fixes * 32bit Windows: Fixed strut field accessors access wrong address. ==== Ruby/ATK * Improvements * Added (({Atk::Version.or_later?})) [GitHub#552] [Patch by cedlemo] ==== Ruby/GdkPixbuf2 * Improvements * Added (({Gdk::Pixbuf::Version.or_later?})). [GitHub#561] [Patch by cedlemo] ==== Ruby/GDK3 * Improvements * Supported GTK+ 3.17.9. [GitHub#558] [Reported by Mamoru TASAKA] ==== Ruby/GTK3 * Improvements * Updated examples. [GitHub#550] [Patch by cedlemo] ==== Ruby/ClutterGstreamer * Improvements * Added (({ClutterGst.load_version})). * Added (({ClutterGst.load_version=})). * Added (({ClutterGst::Version.or_later?})). [GitHub#556] [Patch by cedlemo] === Thanks * cedlemo * lilole * Mamoru TASAKA == Ruby-GNOME2 3.0.3: 2015-09-16 It is a compatibility improvement release of 3.0.2. === Changes ==== All * Improvements * Removed test-unit-notify gem from development dependencies. [GitHub#547] [Patch by cedlemo] ==== Ruby/GObjectIntrospection * Improvements * Supported (({GObjectIntrospection::Repository.prepend_search_path})). * Supported (({GObjectIntrospection::Repository.search_path})). * Windows: Supported requiring library after one (({GObjectIntrospection::Loader#load})). [GitHub#546] [Reported by Abby Archer] ==== Ruby/GTK3 * Improvements * Supported (({Gtk::IconSize.lookup})). [GitHub#544] [Reported by Masafumi Yokoyama] * Supported size name as argument of (({Gtk::Widget#render_icon_pixbuf})). [GitHub#544] [Reported by Masafumi Yokoyama] * Supported (({Gio::Icon})) in (({Gtk::IconTheme#lookup_icon})). [GitHub#544] [Reported by Masafumi Yokoyama] * Supported (({Gtk::TreeModel#iter_parent})). * Supported (({Gtk::TreeIter#parent})). * Updated examples. [GitHub#548] [Patch by cedlemo] * Fixes * Fixed a bug that (({Gtk::Widget.bind_template_child})) is required. [GitHub#549] [Reported by cedlemo] * Fixed a bug that default (({x_option})) and (({y_option})) values of (({Gtk::Table#attach})) is wrong. [GitHub#546] [Reported by Abby Archer] * Windows: Fixed a bug that Ruby/RSVG2 isn't required automatically. [GitHub#546] [Reported by Abby Archer] === Thanks * Masafumi Yokoyama * cedlemo * Abby Archer == Ruby-GNOME2 3.0.2: 2015-09-13 It is a compatibility improvement release of 3.0.1. === Changes ==== Ruby/GObjectIntrospection * Improvements * Supported void pointer. [GitHub#540] [Reported by Abby Archer] * Added (({GObjectIntrospection::Loader.instantiate_gobject_pointer})). ==== Ruby/GDK3 * Improvements * Supported (({Gdk::Window#user_data})). [GitHub#540] [Reported by Abby Archer] * compatibility: (({Cairo::Context#set_source_rgba})) accepts (({nil})) as alpha value. [GitHub#540] [Reported by Abby Archer] * compatibility: Added fallback feature for deprecated (({Gdk::EventScroll::Direction})). * Windows: Added hicolor-icon-theme as fallback theme. ==== Ruby/GTK3 * Improvements * compatibility: (({Gtk::Window#icon=})) accepts icon file name. [GitHub#540] [Reported by Abby Archer] * compatibility: (({Gtk::Dialog#add_button})) accepts (({Symbol})) as response ID. [GitHub#540] [Reported by Abby Archer] * Deprecated (({Gtk::ColorSelectionDialog})). * compatibility: Added fallback feature for deprecated (({Gtk::TextTag::WrapMode})). * compatibility: Added fallback feature for deprecated (({Gtk::TextBuffer#insert(iter, target, *tags)})) usage. * compatibility: Added fallback feature for deprecated (({Gtk::ButtonBox::Style})). * compatibility: Added fallback feature for deprecated (({Gtk::MessageDialog::ButtonsType})). * compatibility: Supported creating an empty image by (({Gtk::Image.new})). * compatibility: Added fallback feature for deprecated (({Gtk::ImageMenuItem.new})) usage. * Supported (({Gtk::TreeIter#next!})). * Supported (({Gtk::TreeModel#get_value})). * compatibility: Added fallback feature for deprecated (({Gtk::Alignment::Align})). * compatibility: Added fallback feature for deprecated (({Gtk::Widget#get_size_request})). * compatibility: Added fallback feature for deprecated (({Gtk::Table.new})). * compatibility: Added fallback feature for deprecated (({Gtk::Table#column_spaces})). * compatibility: Added fallback feature for deprecated (({Gtk::Table#column_spaces=})). * compatibility: Added fallback feature for deprecated (({Gtk::Table#attach})). * compatibility: Added fallback feature for deprecated (({Gtk::ToggleButton.new})). * Windows: Added missing Ruby/RSVG2 dependency. * compatibility: Added fallback feature for deprecated (({Gtk::Container#each_forall})). * Supported (({nil})) as (({size})) for (({Gtk::Image.new})). * compatibility: Added fallback feature for deprecated (({Gtk::Image.new(pixbuf)})). * compatibility: Added fallback feature for deprecated (({Gtk::Toolbar::Style})). * Supported Rubyish (({Gtk::CheckMenuItem.new})). * Fixes * Fixed samples. [GitHub#536][GitHub#541] [Patch by cedlemo] [GitHub#540] [Reported by Abby Archer] * Fixed a bug that (({Gtk::Calendar#date})) returns (({0-11})) range month value. ==== Ruby/RSVG2 * Improvements * Windows: Added missing Ruby/Pango dependency. * Windows: Updated loaders.cache for gdk-pixbuf automatically. ==== Ruby/GStreamer * Improvements * compatibility: (({Gst::TypeFindFactory#extensions})) always returns (({Array})). === Thanks * cedlemo * Abby Archer == Ruby-GNOME2 3.0.1: 2015-09-11 It is a bug fix release of 3.0.0. === Changes ==== Ruby/GLib2 * Fixes * Windows: Fixed a bug that large number flag value isn't usable. [GitHub#538] [Reported by Abby Archer] ==== Ruby/GTK3 * Improvements * Updated tutorials. [GitHub#534][GitHub#537] [Patch by cedlemo] ==== Ruby/VTE3 * Improvements * Added (({Vte::Version.or_later?})). [GitHub#535] [Patch by cedlemo] === Thanks * cedlemo * Abby Archer == Ruby-GNOME2 3.0.0: 2015-09-10 It is a GTK+ 3.16 support release. To GTK+ 3.16 support, many people helped us. Especially, cedlemo did great works. Very thanks all!!! === Changes ==== All * Improvements * Added install instruction for GitHub master branch. [GitHub#425][Patch by Hiroyuki Sato] ==== Ruby/GLib2 * Improvements * Added new APIs: * (({RVAL2GOBJGLIST})) * (({RVAL2GOBJGSLIST})) * (({rbg_rval2glist})) * (({rbg_rval2gslist})) * (({RVAL2CSTR_PTR})) * (({rbg_name_to_nick})) * (({rbgobj_class_init_func})) * (({rbgobj_register_type})) * Changed (({RVAL2CSTR})) to return (({NULL})) terminated string. If you want to get raw string that may not be terminated by (({NULL})), use (({RVAL2CSTR_PTR})). * Supported (({Symbol})) as flag value. * Added (({windows_platform?})) * Supported (({GLib::Value.new})) without value. * Supported array of flag value as (({GLib::Flags.new})) input. * Supported name, nick and (({GLib::Enum})) as (({GLib::Enum.new})) input. * Migrated to Markdown for README markup. [GitHub#484][Patch by prpr_man] * Supported (({GVariantType})). * Supported (({GVariant})). * Supported (({GBinding})). [GitHub#524][Reported by cedlemo] * Fixes * Fixed a bug that (({GLib.format_size})) doesn't work 32bit over integer value. [GitHub#413][Reported by eumario] ==== Ruby/GObjectIntrospection * Improvements * Supported non GObject struct as return value. [GitHub#286][Reported by Christopher L. Ramsey] * Supported (({list_XXX})) method name. * Supported freeing (({GList<GObjet *>})). * Supported array of struct as input argument. * Supported auto native package install on CentOS 7. * Supported (({can_XXX?})) predicate. * Supported the number of array as input argument. [Suggested by John Cupitt] * Supported array of (({GValue})) as input argument. * Supported array as return value. * Supported (({GClosure})) as input argument. * Supported (({GSList<GObject *>})) as input argument. * Supported (({GSList<GObject *>})) as output argument. [GitHub#324][Reported by cedlemo] * Supported union as input argument. * Supported array of (({guint8})) as input argument. * Supported array of (({gint32})) as input argument. * Supported class methods defined in (({XXXClass})). * Supported (({GList<GBoxed *>})) as output argument. [GitHub#389][Reported by eumario] * Supported (({GList<GInterface *>})) as return value. [GitHub#501][Reported by Christopher L. Ramsey] * Supported (({GVariant})) as return value. [GitHub#502][Reported by kitone] * Fixes * Fixed a bug that (({GList<GObjet *>})) return type method always returns nil. * Fixed a bug that not predicate is treated as predicate. * Fixed a bug that (({self})) is different. ==== Ruby/GIO2 * Improvements * Supported (({GAsyncReadyCallback})). [GitHub#302][Reported by Christopher L. Ramsey] * Added (({ActionMap#add_actions})). ==== Ruby/Pango * Improvements * Added (({Pango::Language#sample_string})). ==== Ruby/GDK3 * Improvements * Added backward compatibility APIs. [GitHub#284][Reported by Christopher L. Ramsey] * Added constants in (({Gdk::Selection})). [GitHub#254][Patch by Masafumi Yokoyama] * Added missing deprecations. [GitHub#291][Reported by Michel Boaventura] * Added (({RGBA.parse})). [GitHub#295][Reported by carlosjhr64] * Supported (({Gdk::Rectangle})). [GitHub#319][Reported by cedlemo] * Supported (({Gdk::Screen#get_setting})). [GitHub#376][Reported by cedlemo] * Added (({Gdk::Screen#get_monitor})). * Fixes * Fixed a bug that (({GDK_KEY_XXX})) raises an error. [ruby-gnome2-devel-en][Reported by Detlef Reichl] ==== Ruby/GTK3 * Improvements * Migrated to GObject Introspection based bindings from hand writing bindings. Now, all the latest API in GTK+ are supported. [Hiroshi Hatake][Detlef Reichl][cedlemo][John Cupitt] [Masafumi Yokoyama][eumario][PeterWAWood][Daiki Ueno] * Updated samples. [Patch by cedlemo] ==== Ruby/GtkSourceView3 * Improvements * Migrated to GObject Introspection based bindings from hand writing bindings. Now, all the latest API in GtkSourceView are supported. ==== Ruby/VTE3 * Improvements * Migrated to GObject Introspection based bindings from hand writing bindings. Now, all the latest API in VTE are supported. [cedlemo] ==== Ruby/GStreamer * Fixes * Fixed native package name on CentOS and Fedora. * Fixed shebang. [GitHub#507][Patch by Dmitry Marakasov] ==== Ruby/RSVG2 * Improvements * Added (({:file_name})), (({:data})) and (({:flags})) option to (({RSVG::Handle.new})). * Updated a sample. [GitHub#518][Patch by Robert A. Heiler]. * Fixes * Fixed a memory leak of (({RSVG::Handle.new_from_data})) and (({RSVG::Handle.new_from_file})). [GitHub#318][Reported by Kagetsuki] ==== Ruby/Clutter * Improvements * Added (({Clutter::Version.or_later?})). ==== Ruby/WebKit2GTK * Improvements * Added. === Thanks * Hiroshi Hatake * Christopher L. Ramsey * Masafumi Yokoyama * cedlemo * Detlef Reichl * Kagetsuki * eumario * PeterWAWood * Hiroyuki Sato * Daiki Ueno * prpr_mann * Dmitry Marakasov |
From: Stefan S. <ma...@ss...> - 2015-09-22 10:02:43
|
On Tue, 2015-09-22 at 15:55 +0900, Kouhei Sutou wrote: > Hi, > > Ruby-GNOME2 project released Ruby-GNOME2 3.0.4: > http://ruby-gnome2.osdn.jp/hiki.cgi?News_20150922_1 Great, thank you very much. Currently for Gentoo Linux we have GTK/Gnome 3.16 and still ruby-gnome2 -2.2.5 -- and in the last weeks I had many random crashes/segfaults unfortunately for my application http://www.ssalewski.de/PetEd.html.en So I did a Google search and found this announcement https://www.ruby-forum.com/topic/6876851#new Now my feeling is, that that person is not really a Ruby-Gnome core developer :-( You may have seen my plain GTK3 bindings for Nim: https://github.com/StefanSalewski?tab=repositories So I know that it is a lot of work for you and your team to make the Ruby-Gnome bindings. Would be great if we can avoid the crashes in future. I will contact Gentoo developers again and ask to put latest ruby-gnome2 in the package repositories -- they already tried with 3.02 but many test failed and gtksourceview did not compile at all, see https://bugs.gentoo.org/show_bug.cgi?id=560520 When you are interested in testing your bindings, you may try my schematics editor from my homepage. Ruby peted.rb should start with an empty sheet, and you may draw some lines or other graphic elements. That tool is indeed a very heavy test for ruby-gnome -- it is not yet finished and contains bugs caused by me. But currently often it crashes with something like /usr/lib64/ruby/site_ruby/2.2.0/gobject-introspection/repository.rb:27: [BUG] Segmentation fault at 0x00000000000018 ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux] I think that should not occur, and have no idea how to debug/fix that. Best wishes Stefan Salewski |
From: Stefan S. <ma...@ss...> - 2015-09-23 12:47:23
|
On Tue, 2015-09-22 at 22:38 +0900, Kouhei Sutou wrote: > I've fixed it at master. > Cloud you try master? > https://github.com/ruby-gnome2/ruby-gnome2/#install-from-github-mas > ter-branch I tried yesterday. First removed all the related Gentoo packages, then % git clone https://github.com/ruby-gnome2/ruby-gnome2.git % cd ruby-gnome2 % gem install --user-istall rake rake-compiler mechanize pkg-config cairo % rake gem:build % rake gem:install I added --user-install and tried without root privileges. Unfortunately rake gem:install failed for vte. There was no really helpful error description, but output was "checking for vte ... no" which should be wrong. x11-libs/vte-0.40.2 is installed from gentoo package manager, # locate vte.so /usr/lib64/libvte.so /usr/lib64/libvte.so.9 /usr/lib64/libvte.so.9.2800.2 /usr/lib64/ruby/site_ruby/2.2.0/x86_64-linux/vte.so AMD64X2 ruby-gtk3-3.0.5 # locate vte.h /usr/include/vte-2.91/vte/vte.h I was not able to locate where the error occurred. Now I tried to install 3.05 from ruby-gtk3-3.0.5.tar.gz % ruby extconf.rb % make % sudo make install Compiles, but with a lot of warnings, for example about deprecated symbols. But when i try to launch may program: /usr/lib64/ruby/site_ruby/2.2.0/gobject-introspection/loader.rb:551:in `invoke': TODO: <CellLayoutDataFunc>(func) callback is not supported yet. (NotImplementedError) from /usr/lib64/ruby/site_ruby/2.2.0/gobject -introspection/loader.rb:551:in `block in define_method' from /home/stefan/pet/pet_prop.rb:81:in `initialize' Seems to be a regression. Will investigate it, maybe I can avoid CellLayoutDataFunc. |
From: Kouhei S. <ko...@co...> - 2015-09-23 14:25:23
|
Hi, In <144...@ss...> "Re: [ruby-gnome2-devel-en] [ANN] Ruby-GNOME2 3.0.4" on Wed, 23 Sep 2015 14:38:43 +0200, Stefan Salewski <ma...@ss...> wrote: > % git clone https://github.com/ruby-gnome2/ruby-gnome2.git > % cd ruby-gnome2 > % gem install --user-istall rake rake-compiler mechanize pkg-config > cairo > % rake gem:build > % rake gem:install > > I added --user-install and tried without root privileges. Unfortunately > rake gem:install failed for vte. There was no really helpful error > description, but output was "checking for vte ... no" which should be > wrong. x11-libs/vte-0.40.2 is installed from gentoo package manager, vte-0.40.2 provides 'vte-2.91' package. It's not 'vte' package. ('vte' package is old VTE.) > Now I tried to install 3.05 from ruby-gtk3-3.0.5.tar.gz > > % ruby extconf.rb > % make > % sudo make install Why did you use 3.0.5 instead of master? You already have gtk3 by 'rake gem:install'. You don't need these command lines. It causes problems. > But when i try to launch may program: > > /usr/lib64/ruby/site_ruby/2.2.0/gobject-introspection/loader.rb:551:in > `invoke': TODO: <CellLayoutDataFunc>(func) callback is not supported > yet. (NotImplementedError) > from /usr/lib64/ruby/site_ruby/2.2.0/gobject > -introspection/loader.rb:551:in `block in define_method' > from /home/stefan/pet/pet_prop.rb:81:in `initialize' > > Seems to be a regression. Will investigate it, maybe I can avoid > CellLayoutDataFunc. It has been fixed at master. Thanks, -- kou |
From: Stefan S. <ma...@ss...> - 2015-09-23 14:36:00
|
On Wed, 2015-09-23 at 23:25 +0900, Kouhei Sutou wrote: > > vte-0.40.2 provides 'vte-2.91' package. It's not 'vte' > package. ('vte' package is old VTE.) OK, thanks. Will try to fix that. > > > Now I tried to install 3.05 from ruby-gtk3-3.0.5.tar.gz > > > > % ruby extconf.rb > > % make > > % sudo make install > > Why did you use 3.0.5 instead of master? > You already have gtk3 by 'rake gem:install'. > You don't need these command lines. It causes problems. I tried ruby-gtk3-3.0.5.tar.gz because all my tries to install git master failed yesterday, because of vte. Will try again. |
From: Kouhei S. <ko...@co...> - 2015-09-22 13:39:00
|
Hi, Thanks for your report. In <144...@ss...> "Re: [ruby-gnome2-devel-en] [ANN] Ruby-GNOME2 3.0.4" on Tue, 22 Sep 2015 11:38:43 +0200, Stefan Salewski <ma...@ss...> wrote: > Would be great if we can avoid the crashes in future. I will contact > Gentoo developers again and ask to put latest ruby-gnome2 in the > package repositories -- they already tried with 3.02 but many test > failed and gtksourceview did not compile at all, see > https://bugs.gentoo.org/show_bug.cgi?id=560520 Could your show build log for gtksourceview compile? > When you are interested in testing your bindings, you may try my > schematics editor from my homepage. Ruby peted.rb should start with an > empty sheet, and you may draw some lines or other graphic elements. > That tool is indeed a very heavy test for ruby-gnome -- it is not yet > finished and contains bugs caused by me. But currently often it crashes > with something like > > /usr/lib64/ruby/site_ruby/2.2.0/gobject-introspection/repository.rb:27: > [BUG] Segmentation fault at 0x00000000000018 > ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux] > > I think that should not occur, and have no idea how to debug/fix that. I've fixed it at master. Cloud you try master? https://github.com/ruby-gnome2/ruby-gnome2/#install-from-github-master-branch There are some bugs in your program. If an error is raised in callback (block registered by signal_connect), your program will report Ruby level backtrace, C level backtrace and so on at exit. Normally, you should not raise any error in callback because we can't recover from the error. Thanks, -- kou |
From: Stefan S. <ma...@ss...> - 2015-09-22 15:17:12
|
On Tue, 2015-09-22 at 22:38 +0900, Kouhei Sutou wrote: > Hi, > > Thanks for your report. > > Could your show build log for gtksourceview compile? Currently I have no logs, it was Mr Graaff from Gentoo Linux developer team who tried to compile gtksourceview. He has much more experience than I have, have already contacted him again. We will try to send you logs as soon as possible. > I've fixed it at master. > Cloud you try master? > https://github.com/ruby-gnome2/ruby-gnome2/#install-from-github-mas > ter-branch > Great. I will try to install that one. > There are some bugs in your program. If an error is raised > in callback (block registered by signal_connect), your > program will report Ruby level backtrace, C level backtrace > and so on at exit. > > Normally, you should not raise any error in callback because > we can't recover from the error. > > Thank you for that hint, will check that. Best regards, Stefan Salewski |
From: Stefan S. <ma...@ss...> - 2015-09-23 13:53:00
|
On Wed, 2015-09-23 at 14:38 +0200, Stefan Salewski wrote: > Will investigate it, maybe I can avoid > CellLayoutDataFunc. The good news first: I can launch my program again with 3.05 after a few fixes. But this is what is logged at the console: http://ssalewski.de/tmp/msg.txt The deprecated warnings are not a problem for me, I had that already when I port the application from gtk2 to gtk3. That is easy to fix. But all the other messages? No idea currently. For my current fixes: class ColBox < Gtk::ComboBox attr_accessor :lock Col_Name, Col_Pixbuf, Col_Full_Name = 0, 1, 2 def initialize store = Gtk::ListStore.new(String, Gdk::Pixbuf, String) Pet_Config::get_default_config.get_colors(Pet_Config::SCR_S).each{|sym, b, c| next unless s = Pet_Config::Color_Name[sym] # some colors may have no name/index, i.e. pin hot end color iter = store.append iter[Col_Name] = "(#{s})" iter[Col_Pixbuf] = Gdk::Pixbuf.new(Gdk::Pixbuf::COLORSPACE_RGB, true, 8, 12, 12) # (colorspace, has_alpha, bits_per_sample, width, height) iter[Col_Full_Name] = sym.to_s } super(:model => store) self.margin = 0 self.id_column = Col_Full_Name renderer = Gtk::CellRendererPixbuf.new self.pack_start(renderer, false) self.add_attribute(renderer, "pixbuf", Col_Pixbuf) # self.set_cell_data_func(renderer) do |w, renderer, model, iter| # Gtk::ComboBox, Gtk::CellRendererPixbuf, Gtk::ListStore, Gtk::TreeIter # r, g, b, a = Pet_Config::get_default_config.get_conf(Pet_Config::SCR_S)[iter[Col_Full_Name].to_sym] # renderer.pixbuf.fill!((r * 255).round * 16777216 + (g * 255).round * 65536 + (b * 255).round * 256 + (a * 255).round) # end That is a problem when set_cell_data_func is not available :-( And here: class Properties_Widget < Gtk::Notebook attr_accessor :main_window # ask for redraw of object if property is changed def initialize(main_window) super() @main_window = main_window @grid_sensitive_spin_button_list = Array.new self.enable_popup = true self.add(w = Box_Widget.new(self))#, :tab_label => 'Box') self.set_tab_reorderable(w, true) So I am not allowed to set the tab_label this way any more. What is the strategy to find out how to do it now? In the last years, I did it mostly by guessing, which can take really much time. That is indeed much more trouble than expected. But what can we do? GTK 3.16 is what people will use on Linux in these days, and that gives crashes with ruby-gnome2.2.5. Best regards, Stefan Salewski |
From: Kouhei S. <ko...@co...> - 2015-09-23 14:29:07
|
In <144...@ss...> "Re: [ruby-gnome2-devel-en] [ANN] Ruby-GNOME2 3.0.4" on Wed, 23 Sep 2015 15:44:20 +0200, Stefan Salewski <ma...@ss...> wrote: > On Wed, 2015-09-23 at 14:38 +0200, Stefan Salewski wrote: >> Will investigate it, maybe I can avoid >> CellLayoutDataFunc. > > The good news first: I can launch my program again with 3.05 after a > few fixes. But this is what is logged at the console: > > http://ssalewski.de/tmp/msg.txt The following warning is caused by "sudo make install": > /home/stefan/.gem/ruby/2.2.0/gems/glib2-3.0.6/lib/glib2.rb:158: warning: already initialized constant GLib::Log::DOMAIN > /usr/lib64/ruby/site_ruby/2.2.0/glib2.rb:158: warning: previous definition of DOMAIN was here "sudo make install" conflicts with "rake gem:install". You should remove /usr/lib64/ruby/site_ruby/2.2.0/glib2.rb and related files. > That is a problem when set_cell_data_func is not available :-( It's available at master. > So I am not allowed to set the tab_label this way any more. What is the strategy > to find out how to do it now? In the last years, I did it mostly by guessing, > which can take really much time. It's also available at master. Thanks, -- kou |
From: Stefan S. <ma...@ss...> - 2015-09-23 19:04:24
|
On Wed, 2015-09-23 at 18:30 +0200, Stefan Salewski wrote: > You told me to look for errors raised in callbacks in your first > post. > Will try that. Maybe I can locate the reasons for the crashes. Here is the output of ./run-test.rb &> tests.txt http://ssalewski.de/tmp/tests.txt I am not sure if that is ok, at least no crash. Unfortunately my program still crashes very often, and it seems to be not a single location in the code, but multiple. I already discovered one problem, the timing of expose and draw event, draw before first expose could not work. But there seems to be more. While there was no serious problem with GTK 3.14 and ruby-gnome2.2.5. |
From: Kouhei S. <ko...@co...> - 2015-09-24 13:26:33
|
Hi, In <144...@ss...> "Re: [ruby-gnome2-devel-en] [ANN] Ruby-GNOME2 3.0.4" on Wed, 23 Sep 2015 20:55:43 +0200, Stefan Salewski <ma...@ss...> wrote: > Here is the output of ./run-test.rb &> tests.txt If you want to run tests, use "rake test". Thanks, -- kou |
From: Stefan S. <ma...@ss...> - 2015-09-23 16:38:59
|
On Wed, 2015-09-23 at 23:28 +0900, Kouhei Sutou wrote: > "sudo make install" conflicts with "rake gem:install". You > should remove /usr/lib64/ruby/site_ruby/2.2.0/glib2.rb and > related files. Indeed. I forgot to delete the old .gem directory in my home directory. After emerge -av =x11-libs/vte-0.28.2-r207 to get an older VTE from my gentoo package manager git install works fine. It is not really clear from your pages that that old vte version is needed. I did a --user-install again, because rake and other stuff is already provided on my box by gentoo package manager, and removing all that is some work. So I did git clone https://github.com/ruby-gnome2/ruby-gnome2.git % cd ruby-gnome2 % gem install --user-install rake rake-compiler mechanize pkg-config cairo % rake gem:build % rake gem:install Followed by changing .bashrc and fixing RUBYLIB export RUBYLIB=/home/stefan/.gem/ruby/2.2.0/extensions/x86_64 -linux/2.2.0/ export PATH=$PATH:/home/stefan/.gem/ruby/2.2.0/bin Now I can launch my app, and get mostly deprecated warnings, which I will fix. Unfortunately still many crashes with messages like paint newsize /home/stefan/pet/pet_bbox.rb:17: [BUG] rb_gc_mark(): 0x0000000254d2e0 is T_NONE ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux] You told me to look for errors raised in callbacks in your first post. Will try that. Maybe I can locate the reasons for the crashes. Thanks. |
From: Kouhei S. <ko...@co...> - 2015-09-24 13:38:09
|
Hi, In <144...@ss...> "Re: [ruby-gnome2-devel-en] [ANN] Ruby-GNOME2 3.0.4" on Thu, 24 Sep 2015 00:59:28 +0200, Stefan Salewski <ma...@ss...> wrote: > [BUG] rb_gc_mark(): 0x000000032b6490 is T_NONE > > That is what I get again and again. Impossible to locate the error, > when I comment out some code, that error will arise at other places. It seems that you still use old libraries. Please put "puts $LOADED_FEATURES" before "SCSTOP = true" like the following and show the output: puts $LOADED_FEATURES SCSTOP = true Thanks, -- kou |
From: Stefan S. <ma...@ss...> - 2015-09-23 23:08:09
|
On Wed, 2015-09-23 at 20:55 +0200, Stefan Salewski wrote: > Unfortunately my program still crashes very often, and it seems to be > not a single location in the code, but multiple. I already discovered > one problem, the timing of expose and draw event, draw before first > expose could not work. But there seems to be more. While there was no > serious problem with GTK 3.14 and ruby-gnome2.2.5. [BUG] rb_gc_mark(): 0x000000032b6490 is T_NONE That is what I get again and again. Impossible to locate the error, when I comment out some code, that error will arise at other places. GC.disable at the beginning of the code makes it working fine. |
From: Stefan S. <ma...@ss...> - 2015-09-24 15:18:27
|
On Thu, 2015-09-24 at 22:37 +0900, Kouhei Sutou wrote: > It seems that you still use old libraries. > > Please put "puts $LOADED_FEATURES" before "SCSTOP = true" > like the following and show the output: > > puts $LOADED_FEATURES > SCSTOP = true Sorry, I have no idea where to put that, can not see SCTOP string somewhere. Have searched for old libraries, can find nothing. All Ruby Gnome related is in .gem directory of my home directory now. Maybe a problem is, that I have not done the git install as root? Do not think so, because generally it works. Doing all the commands git clone https://github.com/ruby-gnome2/ruby-gnome2.git % cd ruby-gnome2 % gem install rake rake-compiler mechanize pkg-config cairo % rake gem:build % rake gem:install as root may give me some trouble, because rake is still installed by gentoo package manager. Will try to remove that and install as root then. Some people advice to try compiler option -O0 when garbage collector problems occur. I guess my gcc 4.9.3 is using -O2. Can and should I change that for git rake install? |
From: Stefan S. <ma...@ss...> - 2015-09-24 16:13:48
|
On Fri, 2015-09-25 at 00:28 +0900, Kouhei Sutou wrote: > > Sorry, I have no idea where to put that, can not see SCTOP string > > somewhere. > > Ah, sorry. > I missed about it. > > It exists in "peted.rb". Sorry, stupid me. Here is the output, looks OK for me. http://ssalewski.de/tmp/features.txt This is for ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux] |
From: Kouhei S. <ko...@co...> - 2015-09-26 07:34:52
|
Hi, In <144...@ss...> "Re: [ruby-gnome2-devel-en] [ANN] Ruby-GNOME2 3.0.4" on Thu, 24 Sep 2015 18:05:07 +0200, Stefan Salewski <ma...@ss...> wrote: > Here is the output, looks OK for me. > > http://ssalewski.de/tmp/features.txt Thanks. I also confirmed that you load correct libraries. I've fixed it at mater. Could you try master again? You can get master by "git pull". I added custom mark feature to Gtk::TreeModel. Your program puts Gdk::Pixbuf object to Gtk::ListStore in Color_View. It shold be marked. Thanks, -- kou |
From: Stefan S. <ma...@ss...> - 2015-09-26 10:36:22
|
On Sat, 2015-09-26 at 16:34 +0900, Kouhei Sutou wrote: > I've fixed it at mater. Could you try master again? You can > get master by "git pull". > > I added custom mark feature to Gtk::TreeModel. Your program > puts Gdk::Pixbuf object to Gtk::ListStore in Color_View. It > shold be marked. Seems to work fine now! Only tested for a few minutes yet, and my Ruby is currently still compiled with -O0 cflags, but I think that should make no difference. Will do more testing in the next days. Thank you for your great work. |
From: Kouhei S. <ko...@co...> - 2015-09-24 15:28:48
|
Hi, In <144...@ss...> "Re: [ruby-gnome2-devel-en] [ANN] Ruby-GNOME2 3.0.4" on Thu, 24 Sep 2015 17:09:45 +0200, Stefan Salewski <ma...@ss...> wrote: >> It seems that you still use old libraries. >> >> Please put "puts $LOADED_FEATURES" before "SCSTOP = true" >> like the following and show the output: >> >> puts $LOADED_FEATURES >> SCSTOP = true > > Sorry, I have no idea where to put that, can not see SCTOP string > somewhere. Ah, sorry. I missed about it. It exists in "peted.rb". Thanks, -- kou |
From: Stefan S. <ma...@ss...> - 2015-09-25 23:31:39
|
On Fri, 2015-09-25 at 23:01 +0200, Stefan Salewski wrote: > No idea why currently. The pixbuf.fill should cause no harm, maybe > set_cell_data_func is wrong? Gdk::Pixbuf.new direct before cell.pixbuf.fill! seems to help. I am not really sure, tested only for a few minutes yet. cell.pixbuf = Gdk::Pixbuf.new(Gdk::Pixbuf::COLORSPACE_RGB, true, 8, 10, 10) # (colorspace, has_alpha, bits_per_sample, width, height) cell.pixbuf.fill!((iter[Col_R] * 255).round * 16777216 + (iter[Col_G] * 255).round * 65536 + (iter[Col_B] * 255).round * 256 + (iter[Col_A] * 255).round) Before that, I tried to use cairo instead of pixbuf.fill like s = Cairo::ImageSurface.new(Cairo::FORMAT_A1, 3, 3) cr = Cairo::Context.new(s) pixbuf = Gdk::Pixbuf.from_surface Gdk::Pixbuf.from_surface() method seems to be not available? |
From: Kouhei S. <ko...@co...> - 2015-09-26 07:40:43
|
Hi, In <144...@ss...> "Re: [ruby-gnome2-devel-en] [ANN] Ruby-GNOME2 3.0.4" on Sat, 26 Sep 2015 01:22:32 +0200, Stefan Salewski <ma...@ss...> wrote: > Gdk::Pixbuf.from_surface() method seems to be not available? It's available. Use Cairo::Surface#to_pixbuf. Thanks, -- kou |
From: Stefan S. <ma...@ss...> - 2015-09-25 21:09:59
|
On Thu, 2015-09-24 at 00:59 +0200, Stefan Salewski wrote: > [BUG] rb_gc_mark(): 0x000000032b6490 is T_NONE > > That is what I get again and again. Impossible to locate the error, > when I comment out some code, that error will arise at other places. > > GC.disable at the beginning of the code makes it working fine. I tried to do the git install of 3.06 with compiler option -O0 to ensure that compiler optimizations are not a reason for the bug. For that I had to build my Ruby with -O0 first, because rake seems to take cflags from Ruby install. With that I got a state where each startup of my app crashed with above gc error. That made debugging really easy, so I found out that this code piece in file pet_conf_ed.rb column.set_cell_data_func(renderer) do |tvc, cell, model, iter| cell.pixbuf.fill!((iter[Col_R] * 255).round * 16777216 + (iter[Col_G] * 255).round * 65536 + (iter[Col_B] * 255).round * 256 + (iter[Col_A] * 255).round) end is very important for the bugs. With cell.pixbuf.fill commented out, I got one bug in 10 minutes of testing, but with that line active I get a crash for each startup. No idea why currently. The pixbuf.fill should cause no harm, maybe set_cell_data_func is wrong? I also tried to recompile Ruby gc.c with debugging options enabled before, but the output did not gave me helpful info. |
From: Stefan S. <ma...@ss...> - 2015-09-26 18:50:51
|
On Tue, 2015-09-22 at 15:55 +0900, Kouhei Sutou wrote: > Hi, > > Ruby-GNOME2 project released Ruby-GNOME2 3.0.4: > http://ruby-gnome2.osdn.jp/hiki.cgi?News_20150922_1 I have just fixed the deprecated warnings in my application. I am not absolutely sure, but may these 4 remaining warnings be caused not by my application, but by your ruby-gnome2 bingings itself? /home/stefan/.gem/ruby/2.2.0/gems/gobject-introspection-3.0.6/lib/gobject-introspection/callable-info.rb: line 46 GLib-GObject-WARNING **:The property GtkWidget:style is deprecated and shouldn't be used anymore. It will be removed in a future version. /home/stefan/.gem/ruby/2.2.0/gems/gobject-introspection-3.0.6/lib/gobject-introspection/loader.rb: line 307 GLib-GObject-WARNING **:The property GtkButton:use-stock is deprecated and shouldn't be used anymore. It will be removed in a future version. /home/stefan/.gem/ruby/2.2.0/gems/gobject-introspection-3.0.6/lib/gobject-introspection/loader.rb: line 307 GLib-GObject-WARNING **:The property GtkSettings:gtk-button-images is deprecated and shouldn't be used anymore. It will be removed in a future version. /home/stefan/.gem/ruby/2.2.0/gems/gobject-introspection-3.0.6/lib/gobject-introspection/collection-reader.rb: line 29 GLib-GObject-WARNING **:The property GtkImageMenuItem:image is deprecated and shouldn't be used anymore. It will be removed in a future version. This is for GTK/GNOME 3.16 on Linux |
From: Stefan S. <ma...@ss...> - 2015-09-27 23:57:55
|
On Sun, 2015-09-27 at 10:42 +0900, Kouhei Sutou wrote: > It's caused by your application. Add the following code: > > button.always_show_image = true Thanks for your hints. All works fine currently, I have tested for one hour without a crash. Good enough for github now I think, so I pushed the sources to https://github.com/StefanSalewski/Ruby-PET Message at startup is now /home/stefan/.gem/ruby/2.2.0/gems/gobject-introspection-3.0.6/lib/gobject-introspection/loader.rb: line 537 GLib-GObject-WARNING **:The property GtkWidget:style is deprecated and shouldn't be used anymore. It will be removed in a future version. /home/stefan/.gem/ruby/2.2.0/gems/gobject-introspection-3.0.6/lib/gobject-introspection/loader.rb: line 335 GLib-GObject-WARNING **:The property GtkImageMenuItem:image is deprecated and shouldn't be used anymore. It will be removed in a future version. >From my understanding that results from the bindings only, not from my code. Best wishes, Stefan |
From: Kouhei S. <ko...@co...> - 2015-09-28 13:13:05
|
Hi, In <144...@ss...> "Re: [ruby-gnome2-devel-en] [ANN] Ruby-GNOME2 3.0.4" on Mon, 28 Sep 2015 01:48:44 +0200, Stefan Salewski <ma...@ss...> wrote: > All works fine currently, I have tested for one hour without a crash. Good work! We'll release a new version soon. > From my understanding that results from the bindings only, not from my code. Yes. Thanks, -- kou |