I'm trying to use the current master branch (I've tried the 3.2.92 tag
and the 3.2.5 tag as well). gst-blox opens but any attempt to open a browser causes an error message. With the current version on my machine that message is: GNU Smalltalk version 3.2.92-504a8b8 error: did not understand #blox MessageNotUnderstood(Exception)>>signal (ExcHandling.st:254) UndefinedObject(Object)>>doesNotUnderstand: #blox (SysExcept.st:1408) BLOX.BLOXBrowser.PList>>initialize (BLOXBrowser.star#VFS.ZipFile/PList.st:106) BLOX.BLOXBrowser.PList class(BLOX.BLOXBrowser.Primitive class)>>new (BLOXBrowser.star#VFS.ZipFile/View.st:152) BLOX.BLOXBrowser.PList class(BLOX.BLOXBrowser.View class)>>new:in: (BLOXBrowser.star#VFS.ZipFile/View.st:42) BLOX.BLOXBrowser.PList class>>new:in: (BLOXBrowser.star#VFS.ZipFile/PList.st:42) BLOX.BLOXBrowser.Notifier>>createWindow (BLOXBrowser.star#VFS.ZipFile/Notifier.st:147) BLOX.BLOXBrowser.Notifier>>init:debugger: (BLOXBrowser.star#VFS.ZipFile/Notifier.st:131) [] in BLOX.BLOXBrowser.Notifier class>>open: (BLOXBrowser.star#VFS.ZipFile/Notifier.st:68) [] in BlockClosure>>forkDebugger (DebugTools.star#VFS.ZipFile/Extensions.st:75) [] in Process>>onBlock:at:suspend: (Process.st:394) BlockClosure>>on:do: (BlkClosure.st:196) [] in Process>>onBlock:at:suspend: (Process.st:395) BlockClosure>>ensure: (BlkClosure.st:271) [] in Process>>onBlock:at:suspend: (Process.st:373) [] in BlockClosure>>asContext: (BlkClosure.st:182) BlockContext class>>fromClosure:parent: (BlkContext.st:68) but it's more or less the same whatever specific tag I checkout. gst-browser is nice but sometimes fails immediately with: a Smalltalk Stream:3: Aborted a Smalltalk Stream:3: Error occurred while not in byte code interpreter!! /usr/local/bin/../lib/libgst.so.7(+0x731d7)[0x7f0c69b131d7] /lib64/libc.so.6(+0x32d80)[0x7f0c68752d80] /lib64/libc.so.6(gsignal+0x37)[0x7f0c68752d07] /lib64/libc.so.6(abort+0x169)[0x7f0c687540b9] /usr/local/bin/../lib/libgst.so.7(+0x2c733)[0x7f0c69acc733] /usr/lib64/libsigsegv.so.2(+0xfa8)[0x7f0c69898fa8] /lib64/libc.so.6(+0x32d80)[0x7f0c68752d80] /usr/lib64/libglib-2.0.so.0(g_slice_alloc+0xaf)[0x7f0c4694a7f7] /usr/lib64/libgtk-x11-2.0.so.0(gtk_tree_iter_copy+0x13)[0x7f0c3c851fc3] /usr/lib64/libffi.so.6(ffi_call_unix64+0x4c)[0x7f0c69695c64] Aborted and sometimes (usually, in fact) it doesn't. However, when it does successfully boot up, the "new workspace" menu item and button do nothing, not even an error on stderr (this bug seems to be 5 years old, looking at the tracker and the mailing list). So the browser is basically useless for entering code. At the moment installing the package onto my Ubuntu laptop produces much the same experience as I have described above with the exception that in that case gst-blox doesn't even exist as far as I can see and the browser never manages to start up. So, is there any advice or suggestions? Thomas Worthington -- Sent with my mu4e _______________________________________________ help-smalltalk mailing list [hidden email] https://lists.gnu.org/mailman/listinfo/help-smalltalk |
> On 21 Jan 2016, at 18:54, [hidden email] wrote: Hi! > I'm trying to use the current master branch (I've tried the 3.2.92 tag > and the 3.2.5 tag as well). 3.2.92 and master are very close to each other. In fact the main reason to wait for 3.3 is gst-browser (deadlocks and crashes) > GNU Smalltalk version 3.2.92-504a8b8 > error: did not understand #blox > MessageNotUnderstood(Exception)>>signal (ExcHandling.st:254) > UndefinedObject(Object)>>doesNotUnderstand: #blox (SysExcept.st:1408) I have never used the blox UI and in fact it has been deprecated in 2009. Looking at the code the question is what is parentView and why is it nil at this point. View>>#parentView has the following comment: "Return view's parentView. If view is a rootView, nil is returned" PList doesn't seem to have a parentView when >>#initialize is called. This sounds like a fallout from my changes to >>#new changes I made in commit: 4a224a329b5e63ab6ed432f437eb822e995ae64d. You could try a version before that commit? > and sometimes (usually, in fact) it doesn't. However, when it does > successfully boot up, the "new workspace" menu item and button do > nothing, not even an error on stderr (this bug seems to be 5 years old, > looking at the tracker and the mailing list). So the browser is > basically useless for entering code. That is with 3.2.92? That is odd. What are the compiler flags you are using to build the VM? If you are familiar with GDB it would be nice if you could print the smalltalk stack at the time it is crashing. > At the moment installing the package onto my Ubuntu laptop produces much > the same experience as I have described above with the exception that in > that case gst-blox doesn't even exist as far as I can see and the > browser never manages to start up. gst-browser still requires the libgtk2-dev headers to be installed or symlinks in the plugin directort. I have used gst-browser mostly to browse and sometimes to debug. The known issue for me is event-loop interaction and lock-ups (re-entering the event loop while the event loop is dispatching gtk). We are on irc.freenode.net and if you would be interested to have a look I am happy to guide you. kind regards holger _______________________________________________ help-smalltalk mailing list [hidden email] https://lists.gnu.org/mailman/listinfo/help-smalltalk |
> On 21 Jan 2016, at 20:48, Holger Freyther <[hidden email]> wrote: > > PList doesn't seem to have a parentView when >>#initialize is called. This > sounds like a fallout from my changes to >>#new changes I made in commit: > 4a224a329b5e63ab6ed432f437eb822e995ae64d. You could try a version before > that commit? Okay, I have caused that fall-out. The below is a workaround. I will probably end up renaming the >>#initialize routine. This way the class browser and namespace view, senders/implementors have worked. diff --git a/packages/blox/gtk/BloxBasic.st b/packages/blox/gtk/BloxBasic.st index 2d70bf6..fea2004 100644 --- a/packages/blox/gtk/BloxBasic.st +++ b/packages/blox/gtk/BloxBasic.st @@ -39,6 +39,10 @@ Object subclass: Gui [ expose an individual protocol but internally use a Blox widget for creating their user interface.'> + Gui class >> new [ + ^self basicNew + ] + blox [ "Return instance of blox subclass which implements window" diff --git a/packages/blox/tk/BloxBasic.st b/packages/blox/tk/BloxBasic.st index 9fcd373..5e78032 100644 --- a/packages/blox/tk/BloxBasic.st +++ b/packages/blox/tk/BloxBasic.st @@ -39,6 +39,10 @@ Object subclass: Gui [ expose an individual protocol but internally use a Blox widget for creating their user interface.'> + Gui class >> new [ + ^self basicNew + ] + blox [ "Return instance of blox subclass which implements window" _______________________________________________ help-smalltalk mailing list [hidden email] https://lists.gnu.org/mailman/listinfo/help-smalltalk |
In reply to this post by Holger Freyther
Hi,
Thanks for the quick reply. I will try your suggestions here and in the other email over the weekend and let you know. I'm not that worried about blox if I can get the other browser working. What do you normally use to edit your code? I'm finding the smalltalk-mode in Emacs to be a bit weird when it comes to handling indentation. Thomas Holger Freyther writes: >> On 21 Jan 2016, at 18:54, [hidden email] wrote: > > Hi! > >> I'm trying to use the current master branch (I've tried the 3.2.92 tag >> and the 3.2.5 tag as well). > > 3.2.92 and master are very close to each other. In fact the main reason > to wait for 3.3 is gst-browser (deadlocks and crashes) > > > >> GNU Smalltalk version 3.2.92-504a8b8 >> error: did not understand #blox >> MessageNotUnderstood(Exception)>>signal (ExcHandling.st:254) >> UndefinedObject(Object)>>doesNotUnderstand: #blox (SysExcept.st:1408) > > I have never used the blox UI and in fact it has been deprecated in 2009. > Looking at the code the question is what is parentView and why is it nil > at this point. > > View>>#parentView has the following comment: > "Return view's parentView. If view is a rootView, nil is returned" > > PList doesn't seem to have a parentView when >>#initialize is called. This > sounds like a fallout from my changes to >>#new changes I made in commit: > 4a224a329b5e63ab6ed432f437eb822e995ae64d. You could try a version before > that commit? > > > >> and sometimes (usually, in fact) it doesn't. However, when it does >> successfully boot up, the "new workspace" menu item and button do >> nothing, not even an error on stderr (this bug seems to be 5 years old, >> looking at the tracker and the mailing list). So the browser is >> basically useless for entering code. > > That is with 3.2.92? That is odd. What are the compiler flags you are > using to build the VM? If you are familiar with GDB it would be nice if > you could print the smalltalk stack at the time it is crashing. > > > >> At the moment installing the package onto my Ubuntu laptop produces much >> the same experience as I have described above with the exception that in >> that case gst-blox doesn't even exist as far as I can see and the >> browser never manages to start up. > > gst-browser still requires the libgtk2-dev headers to be installed or > symlinks in the plugin directort. > > I have used gst-browser mostly to browse and sometimes to debug. The known > issue for me is event-loop interaction and lock-ups (re-entering the event > loop while the event loop is dispatching gtk). > > We are on irc.freenode.net and if you would be interested to have a look I > am happy to guide you. > > kind regards > holger -- Sent with my mu4e _______________________________________________ help-smalltalk mailing list [hidden email] https://lists.gnu.org/mailman/listinfo/help-smalltalk |
> On 21 Jan 2016, at 23:13, [hidden email] wrote: > > Hi, Hi! > Thanks for the quick reply. I will try your suggestions here and in > the other email over the weekend and let you know. I'm not that > worried about blox if I can get the other browser working. my pleasure. > What do you normally use to edit your code? I'm finding the > smalltalk-mode in Emacs to be a bit weird when it comes to handling > indentation. I use: * git grep kernel/ if I already have an idea what I search * gst-browser to look at the class methods * gst-browser and the debugger/inspector if I know what I want (and get deadlocks from time to time) * gst-sunit -p package.xml (with the option to spawn the debugger) * vim + Smalltalk removeFeature: #PackageName. PackageLoader loadPackageFromFile: '...' to reload it. In terms of gst-browser I am only aware of deadlocks in the debugger that are caused by re-entering the eventloop. I am happy to guide you through the code if you want to have a look. holger _______________________________________________ help-smalltalk mailing list [hidden email] https://lists.gnu.org/mailman/listinfo/help-smalltalk |
In reply to this post by Holger Freyther
> On 21 Jan 2016, at 21:21, Holger Freyther <[hidden email]> wrote: > > >> On 21 Jan 2016, at 20:48, Holger Freyther <[hidden email]> wrote: >> > > >> PList doesn't seem to have a parentView when >>#initialize is called. This >> sounds like a fallout from my changes to >>#new changes I made in commit: >> 4a224a329b5e63ab6ed432f437eb822e995ae64d. You could try a version before >> that commit? > > Okay, I have caused that fall-out. The below is a workaround. I will probably > end up renaming the >>#initialize routine. This way the class browser and > namespace view, senders/implementors have worked. I have fixed the workspace Do It/Print In/Inspect handling as well. Before your mail I have never used gst-blox and actually it is quite neat and from a couple of minutes trying I have a wishlist and wonder if you would like to collaborate with me on this? * TCL/TK is polled when GST is idle and if GST is really idle it will call into Tcl a lot and take some CPU. * File-Out seems to be broken (from an older change). There seems to be file-out handling in two classes and one of them looks incomplete. Should be fairly easy to fix. * Text selection (e.g. CTRL+A) does not appear to work and is probably fairly simple to fix as well. * I have seen a wrong line number in the debugger, that might be a bit more tricky to resolve. * Trying to add a variable as instance variable in the class browser didn't seem to work. In terms of gst-browser. in a 32bit Debian 8.2 I can launch gst-browser and browse the class hierachy, have simple inspect/print/do it functionality as well. holger _______________________________________________ help-smalltalk mailing list [hidden email] https://lists.gnu.org/mailman/listinfo/help-smalltalk |
Free forum by Nabble | Edit this page |