You can subscribe to this list here.
| 2005 |
Jan
|
Feb
|
Mar
(41) |
Apr
(9) |
May
|
Jun
|
Jul
(39) |
Aug
(38) |
Sep
(135) |
Oct
(220) |
Nov
(75) |
Dec
(74) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2006 |
Jan
(44) |
Feb
(160) |
Mar
(49) |
Apr
(69) |
May
(40) |
Jun
(52) |
Jul
(47) |
Aug
(51) |
Sep
(19) |
Oct
(22) |
Nov
(36) |
Dec
(76) |
| 2007 |
Jan
(154) |
Feb
(165) |
Mar
(186) |
Apr
(143) |
May
(175) |
Jun
(133) |
Jul
(203) |
Aug
(177) |
Sep
(136) |
Oct
|
Nov
|
Dec
|
|
From: Christopher W. <caw...@us...> - 2005-09-18 15:17:50
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29728/src/org/rubypeople/rdt/internal/ui/rubyeditor Modified Files: RubyEditorActionContributor.java RubyDocumentProvider.java ToggleCommentAction.java RubySourceViewer.java Log Message: clean up warnings Index: RubySourceViewer.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubySourceViewer.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** RubySourceViewer.java 30 Jul 2005 21:34:55 -0000 1.3 --- RubySourceViewer.java 18 Sep 2005 15:17:42 -0000 1.4 *************** *** 7,13 **** package org.rubypeople.rdt.internal.ui.rubyeditor; - import java.util.Arrays; - - import org.eclipse.jface.text.BadLocationException; import org.eclipse.jface.text.DocumentCommand; import org.eclipse.jface.text.IDocument; --- 7,10 ---- Index: ToggleCommentAction.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/ToggleCommentAction.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ToggleCommentAction.java 12 Mar 2005 16:52:13 -0000 1.1 --- ToggleCommentAction.java 18 Sep 2005 15:17:42 -0000 1.2 *************** *** 15,25 **** import java.util.ResourceBundle; - import org.eclipse.swt.custom.BusyIndicator; - import org.eclipse.swt.widgets.Display; - import org.eclipse.swt.widgets.Shell; - import org.eclipse.jface.dialogs.MessageDialog; - import org.eclipse.jface.viewers.ISelection; - import org.eclipse.jface.text.BadLocationException; import org.eclipse.jface.text.IDocument; --- 15,19 ---- *************** *** 32,40 **** import org.eclipse.jface.text.source.ISourceViewer; import org.eclipse.jface.text.source.SourceViewerConfiguration; ! import org.eclipse.ui.texteditor.ITextEditor; import org.eclipse.ui.texteditor.ResourceAction; import org.eclipse.ui.texteditor.TextEditorAction; - import org.rubypeople.rdt.internal.ui.RubyPlugin; --- 26,36 ---- import org.eclipse.jface.text.source.ISourceViewer; import org.eclipse.jface.text.source.SourceViewerConfiguration; ! import org.eclipse.jface.viewers.ISelection; ! import org.eclipse.swt.custom.BusyIndicator; ! import org.eclipse.swt.widgets.Display; ! import org.eclipse.swt.widgets.Shell; import org.eclipse.ui.texteditor.ITextEditor; import org.eclipse.ui.texteditor.ResourceAction; import org.eclipse.ui.texteditor.TextEditorAction; import org.rubypeople.rdt.internal.ui.RubyPlugin; Index: RubyEditorActionContributor.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyEditorActionContributor.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** RubyEditorActionContributor.java 5 Mar 2005 20:49:49 -0000 1.8 --- RubyEditorActionContributor.java 18 Sep 2005 15:17:42 -0000 1.9 *************** *** 7,13 **** import org.eclipse.ui.IWorkbenchActionConstants; import org.eclipse.ui.IWorkbenchPage; import org.eclipse.ui.texteditor.BasicTextEditorActionContributor; import org.eclipse.ui.texteditor.ITextEditor; - import org.eclipse.ui.texteditor.ITextEditorActionConstants; import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds; import org.eclipse.ui.texteditor.RetargetTextEditorAction; --- 7,13 ---- import org.eclipse.ui.IWorkbenchActionConstants; import org.eclipse.ui.IWorkbenchPage; + import org.eclipse.ui.actions.ActionFactory; import org.eclipse.ui.texteditor.BasicTextEditorActionContributor; import org.eclipse.ui.texteditor.ITextEditor; import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds; import org.eclipse.ui.texteditor.RetargetTextEditorAction; *************** *** 64,69 **** bars.setGlobalActionHandler(ITextEditorActionDefinitionIds.GOTO_NEXT_ANNOTATION, fNextAnnotation); bars.setGlobalActionHandler(ITextEditorActionDefinitionIds.GOTO_PREVIOUS_ANNOTATION, fPreviousAnnotation); ! bars.setGlobalActionHandler(ITextEditorActionConstants.NEXT, fNextAnnotation); ! bars.setGlobalActionHandler(ITextEditorActionConstants.PREVIOUS, fPreviousAnnotation); } } --- 64,69 ---- bars.setGlobalActionHandler(ITextEditorActionDefinitionIds.GOTO_NEXT_ANNOTATION, fNextAnnotation); bars.setGlobalActionHandler(ITextEditorActionDefinitionIds.GOTO_PREVIOUS_ANNOTATION, fPreviousAnnotation); ! bars.setGlobalActionHandler(ActionFactory.NEXT.getId(), fNextAnnotation); ! bars.setGlobalActionHandler(ActionFactory.PREVIOUS.getId(), fPreviousAnnotation); } } Index: RubyDocumentProvider.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyDocumentProvider.java,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** RubyDocumentProvider.java 12 Jul 2005 22:09:40 -0000 1.19 --- RubyDocumentProvider.java 18 Sep 2005 15:17:42 -0000 1.20 *************** *** 8,13 **** import org.eclipse.core.resources.IMarker; import org.eclipse.core.resources.IResource; - import org.eclipse.core.resources.IResourceRuleFactory; - import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; --- 8,11 ---- |
|
From: Christopher W. <caw...@us...> - 2005-09-18 15:11:18
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28433/src/org/rubypeople/rdt/internal/core/builder Modified Files: RubyBuilder.java Log Message: add TODO note that we don't use a common way for determining what are ruby files between the builder and core code vs the UI code (RubyFileMatcher) Index: RubyBuilder.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/RubyBuilder.java,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** RubyBuilder.java 15 Sep 2005 02:19:50 -0000 1.10 --- RubyBuilder.java 18 Sep 2005 15:11:10 -0000 1.11 *************** *** 121,124 **** --- 121,125 ---- } if (resource.getType() != IResource.FILE) continue; + // FIXME This uses the Util class to check if teh filename looks like a ruby file, use behavior like RubyFileMatcher if (!org.rubypeople.rdt.internal.core.util.Util.isRubyLikeFileName(resource.getName())) continue; files.add(resource); |
|
From: Christopher W. <caw...@us...> - 2005-09-18 15:10:18
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28268/src/org/rubypeople/rdt/internal/ui Modified Files: TC_RubyViewerFilter.java Added Files: TC_RubyFileMatcher.java Log Message: recognize "Rakefile" as a ruby file. recognize ".yml" files as ruby related. read first line of a file (if it is unknwon if it's ruby related) and check for '#!' and 'ruby'. If they're there, assume the file is a ruby file. (NOTE: This may slow down opening/creating a ruby project when the project has a large set of 'unknown' files [don't match normal names or extensions for ruby]) Index: TC_RubyViewerFilter.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/TC_RubyViewerFilter.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** TC_RubyViewerFilter.java 12 Mar 2005 15:41:31 -0000 1.6 --- TC_RubyViewerFilter.java 18 Sep 2005 15:10:09 -0000 1.7 *************** *** 64,67 **** --- 64,85 ---- } + public void testFilterShowsYMLFiles() throws Exception { + IProject project = ResourceTools.createProject("TCRubyViewerFilter"); + IFile file = project.getFile("TCRubyViewerFilterFile.yml"); + assertTrue(filter.select(null, null, file)); + } + + public void testFilterShowsRakefiles() throws Exception { + IProject project = ResourceTools.createProject("TCRubyViewerFilter"); + IFile file = project.getFile("Rakefile"); + assertTrue(filter.select(null, null, file)); + } + + public void testFilterShowsGemFiles() throws Exception { + IProject project = ResourceTools.createProject("TCRubyViewerFilter"); + IFile file = project.getFile("TCRubyViewerFilterFile.gem"); + assertTrue(filter.select(null, null, file)); + } + public void testFilterShowsFolders() throws Exception { IProject project = ResourceTools.createProject("TCRubyViewerFilter"); --- NEW FILE: TC_RubyFileMatcher.java --- package org.rubypeople.rdt.internal.ui; import junit.framework.TestCase; import org.rubypeople.eclipse.shams.resources.ShamFile; public class TC_RubyFileMatcher extends TestCase { private RubyFileMatcher matcher; protected void setUp() throws Exception { super.setUp(); matcher = new RubyFileMatcher(); } public void testHasRubyEditorAssociationIfContainsRubyShebang() { ShamFile file = new ShamFile("fake", false); file.setContents("#! /usr/local/bin/ruby\nputs 'Hello World!'\n"); assertTrue(matcher.hasRubyEditorAssociation(file)); } public void testRakefileHasRubyEditorAssociation() { ShamFile file = new ShamFile("Rakefile", false); assertTrue(matcher.hasRubyEditorAssociation(file)); } public void testGemHasRubyEditorAssociation() { ShamFile file = new ShamFile("syntax.gem", false); assertTrue(matcher.hasRubyEditorAssociation(file)); } public void testGemspecHasRubyEditorAssociation() { ShamFile file = new ShamFile("syntax.gemspec", false); assertTrue(matcher.hasRubyEditorAssociation(file)); } public void testYAMLHasRubyEditorAssociation() { ShamFile file = new ShamFile("database.yml", false); assertTrue(matcher.hasRubyEditorAssociation(file)); } public void testRHTMLHasRubyEditorAssociation() { ShamFile file = new ShamFile("index.rhtml", false); assertTrue(matcher.hasRubyEditorAssociation(file)); } // TODO Test that a user can add new files which are associated } |
|
From: Christopher W. <caw...@us...> - 2005-09-18 15:10:13
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28253/src/org/rubypeople/rdt/internal/ui Modified Files: RubyFileMatcher.java Log Message: recognize "Rakefile" as a ruby file. recognize ".yml" files as ruby related. read first line of a file (if it is unknwon if it's ruby related) and check for '#!' and 'ruby'. If they're there, assume the file is a ruby file. (NOTE: This may slow down opening/creating a ruby project when the project has a large set of 'unknown' files [don't match normal names or extensions for ruby]) Index: RubyFileMatcher.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/RubyFileMatcher.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** RubyFileMatcher.java 12 Mar 2005 15:32:31 -0000 1.2 --- RubyFileMatcher.java 18 Sep 2005 15:10:05 -0000 1.3 *************** *** 12,15 **** --- 12,18 ---- package org.rubypeople.rdt.internal.ui; + import java.io.BufferedReader; + import java.io.IOException; + import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Collection; *************** *** 19,22 **** --- 22,26 ---- import org.eclipse.core.resources.IFile; + import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.Platform; import org.eclipse.jface.util.ListenerList; *************** *** 31,73 **** /** * RubyViewerFilter uses the Editor mappings for recognising and filtering files ! * Both Editor mappings from plugin.xml and creating using the preferences page are considered */ public class RubyFileMatcher { public static final int PROP_MATCH_CRITERIA = 1; ! private String[] rubyFileExtensions; ! private String[] rubyFileNames; ! private ListenerList propChangeListeners; private IPropertyListener propertyListener = new IPropertyListener() { ! public void propertyChanged(Object source, int property) { ! if (property == IEditorRegistry.PROP_CONTENTS && source instanceof IEditorRegistry) { ! createFileExtensions() ; ! firePropertyChange(PROP_MATCH_CRITERIA) ; } } ! } ; /** ! * The set of files that are generally associated with Ruby, ! * but aren't editable by the RubyEditor (they're not ruby code) */ private static Set RUBY_NON_EDITABLE_EXTENSIONS = new HashSet(); static { RUBY_NON_EDITABLE_EXTENSIONS.add("yaml"); RUBY_NON_EDITABLE_EXTENSIONS.add("rhtml"); RUBY_NON_EDITABLE_EXTENSIONS.add("gem"); RUBY_NON_EDITABLE_EXTENSIONS.add("gemspec"); } ! public RubyFileMatcher() { ! propChangeListeners = new ListenerList() ; ! this.createFileExtensions() ; ! WorkbenchPlugin.getDefault().getEditorRegistry().addPropertyListener(propertyListener) ; } public void addPropertyChangeListener(IPropertyListener propListener) { ! propChangeListeners.add(propListener) ; } ! private void firePropertyChange(final int type) { Object[] array = propChangeListeners.getListeners(); --- 35,85 ---- /** * RubyViewerFilter uses the Editor mappings for recognising and filtering files ! * Both Editor mappings from plugin.xml and creating using the preferences page ! * are considered */ public class RubyFileMatcher { + + private static final String RUBY = "ruby"; + private static final String SHEBANG = "#!"; public static final int PROP_MATCH_CRITERIA = 1; ! private String[] rubyFileExtensions; ! private String[] rubyFileNames; ! private ListenerList propChangeListeners; ! private IPropertyListener propertyListener = new IPropertyListener() { ! public void propertyChanged(Object source, int property) { ! if (property == IEditorRegistry.PROP_CONTENTS ! && source instanceof IEditorRegistry) { ! createFileExtensions(); ! firePropertyChange(PROP_MATCH_CRITERIA); } } ! }; /** ! * The set of files that are generally associated with Ruby, but aren't ! * editable by the RubyEditor (they're not ruby code) */ private static Set RUBY_NON_EDITABLE_EXTENSIONS = new HashSet(); static { RUBY_NON_EDITABLE_EXTENSIONS.add("yaml"); + RUBY_NON_EDITABLE_EXTENSIONS.add("yml"); RUBY_NON_EDITABLE_EXTENSIONS.add("rhtml"); RUBY_NON_EDITABLE_EXTENSIONS.add("gem"); RUBY_NON_EDITABLE_EXTENSIONS.add("gemspec"); } ! public RubyFileMatcher() { ! propChangeListeners = new ListenerList(); ! this.createFileExtensions(); ! WorkbenchPlugin.getDefault().getEditorRegistry().addPropertyListener( ! propertyListener); } public void addPropertyChangeListener(IPropertyListener propListener) { ! propChangeListeners.add(propListener); } ! private void firePropertyChange(final int type) { Object[] array = propChangeListeners.getListeners(); *************** *** 81,90 **** } } ! public void createFileExtensions() { List extensions = new ArrayList(); extensions.addAll(createDefaultExtensions()); List filenames = new ArrayList(); ! IFileEditorMapping[] mappings = WorkbenchPlugin.getDefault().getEditorRegistry().getFileEditorMappings(); for (int i = 0; i < mappings.length; i++) { IFileEditorMapping mapping = mappings[i]; --- 93,104 ---- } } ! public void createFileExtensions() { List extensions = new ArrayList(); extensions.addAll(createDefaultExtensions()); List filenames = new ArrayList(); ! filenames.addAll(createDefaultFilenames()); ! IFileEditorMapping[] mappings = WorkbenchPlugin.getDefault() ! .getEditorRegistry().getFileEditorMappings(); for (int i = 0; i < mappings.length; i++) { IFileEditorMapping mapping = mappings[i]; *************** *** 94,104 **** if (descriptor.getId().equals(IRubyConstants.EDITOR_ID)) { // a mapping can also use a filename instead of a suffix ! if (mapping.getExtension() != null && mapping.getExtension().length() != 0) { extensions.add(mapping.getExtension()); break; } ! if (mapping.getName() != null && mapping.getName().length() != 0) { filenames.add(mapping.getName()); ! break ; } } --- 108,120 ---- if (descriptor.getId().equals(IRubyConstants.EDITOR_ID)) { // a mapping can also use a filename instead of a suffix ! if (mapping.getExtension() != null ! && mapping.getExtension().length() != 0) { extensions.add(mapping.getExtension()); break; } ! if (mapping.getName() != null ! && mapping.getName().length() != 0) { filenames.add(mapping.getName()); ! break; } } *************** *** 106,118 **** } } ! this.rubyFileExtensions = (String[]) extensions.toArray(new String[extensions.size()]); ! this.rubyFileNames = (String[]) filenames.toArray(new String[filenames.size()]); } ! private Collection createDefaultExtensions() { return RUBY_NON_EDITABLE_EXTENSIONS; } ! public boolean hasRubyEditorAssociation(IFile file) { String fileExtension = file.getFileExtension(); for (int i = 0; i < rubyFileExtensions.length; i++) { --- 122,152 ---- } } ! this.rubyFileExtensions = (String[]) extensions ! .toArray(new String[extensions.size()]); ! this.rubyFileNames = (String[]) filenames.toArray(new String[filenames ! .size()]); } ! ! /** ! * The default list of full filenames for ruby related files. ! * ! * @return a Collection of filenames associated with ruby projects. ! */ ! private Collection createDefaultFilenames() { ! Set set = new HashSet(); ! set.add("Rakefile"); ! return set; ! } ! ! /** ! * The default list of file extensions for ruby related files. ! * ! * @return a Collection of file extensions associated with ruby files. ! */ private Collection createDefaultExtensions() { return RUBY_NON_EDITABLE_EXTENSIONS; } ! public boolean hasRubyEditorAssociation(IFile file) { String fileExtension = file.getFileExtension(); for (int i = 0; i < rubyFileExtensions.length; i++) { *************** *** 121,125 **** } } ! String fileName = file.getName() ; for (int i = 0; i < rubyFileNames.length; i++) { if (rubyFileNames[i].equalsIgnoreCase(fileName)) { --- 155,159 ---- } } ! String fileName = file.getName(); for (int i = 0; i < rubyFileNames.length; i++) { if (rubyFileNames[i].equalsIgnoreCase(fileName)) { *************** *** 127,137 **** } } ! return false; } ! ! public boolean isRubyRunFile(IFile file) { ! return this.hasRubyEditorAssociation(file) ; } - } - --- 161,198 ---- } } ! return containsRubyShebang(file); } ! ! /** ! * Read the first line and check for '#!' and 'ruby' If we find them, assume ! * this is a ruby file. ! * ! * @param file ! * The file to check ! * @return ! */ ! private boolean containsRubyShebang(IFile file) { ! BufferedReader reader = null; ! try { ! reader = new BufferedReader(new InputStreamReader(file ! .getContents())); ! String firstLine = reader.readLine(); ! if (firstLine == null) ! return false; ! if (firstLine.contains(SHEBANG) && firstLine.contains(RUBY)) ! return true; ! } catch (CoreException e) { ! e.printStackTrace(); ! } catch (IOException e) { ! e.printStackTrace(); ! } finally { ! try { ! if (reader != null) ! reader.close(); ! } catch (IOException e) { ! e.printStackTrace(); ! } ! } ! return false; } } |
|
From: Markus B. <mba...@us...> - 2005-09-18 14:58:51
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt/intro In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25721/intro Modified Files: rdtNewsExtensionContent.xml rdtTutorialsExtensionContent.xml rdtOverviewExtensionContent.xml Log Message: alt-style and style attributes required another path Index: rdtTutorialsExtensionContent.xml =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt/intro/rdtTutorialsExtensionContent.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** rdtTutorialsExtensionContent.xml 28 Nov 2004 12:01:46 -0000 1.1 --- rdtTutorialsExtensionContent.xml 18 Sep 2005 14:58:41 -0000 1.2 *************** *** 1,11 **** ! <?xml version="1.0" encoding="UTF-8" ?> ! <introContent> ! <!-- Extension to the SDK Tutorials Page. --> ! <extensionContent alt-style="intro/css/rdt.properties" style="intro/css/rdtTutorials.css" path="tutorials/page-content/endAnchor"> ! <group label="Ruby Development Tools" id="rdt" style-id="tutorials-group"> ! <link url="http://org.eclipse.ui.intro/showStandby?partId=org.eclipse.platform.cheatsheet&input=org.rubypeople.rdt.cheatsheets.webservices" label="Introduction to RDT" id="rdt-introduction" style-id="tutorials-link"> ! <text>Learn how to create ruby projects and how to run and debug ruby programs using soap4r as example</text> ! </link> ! </group> ! </extensionContent> </introContent> \ No newline at end of file --- 1,11 ---- ! <?xml version="1.0" encoding="UTF-8" ?> ! <introContent> ! <!-- Extension to the SDK Tutorials Page. --> ! <extensionContent alt-style="css/rdt.properties" style="css/rdtTutorials.css" path="tutorials/page-content/endAnchor"> ! <group label="Ruby Development Tools" id="rdt" style-id="tutorials-group"> ! <link url="http://org.eclipse.ui.intro/showStandby?partId=org.eclipse.platform.cheatsheet&input=org.rubypeople.rdt.cheatsheets.webservices" label="Introduction to RDT" id="rdt-introduction" style-id="tutorials-link"> ! <text>Learn how to create ruby projects and how to run and debug ruby programs using soap4r as example</text> ! </link> ! </group> ! </extensionContent> </introContent> \ No newline at end of file Index: rdtNewsExtensionContent.xml =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt/intro/rdtNewsExtensionContent.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** rdtNewsExtensionContent.xml 28 Nov 2004 12:01:46 -0000 1.1 --- rdtNewsExtensionContent.xml 18 Sep 2005 14:58:41 -0000 1.2 *************** *** 1,9 **** ! <?xml version="1.0" encoding="UTF-8" ?> ! <introContent> ! <!-- Extension to the SDK What's New Page. --> ! <extensionContent alt-style="intro/css/rdt.properties" path="news/page-content/noteworthy-links/generalAnchor"> ! <link label="Ruby Development Tools" url="http://org.eclipse.ui.intro/showHelpTopic?id=/org.rubypeople.rdt.doc.user/html/ch04.html" id="rdt-noteworthy" style-id="noteworthy-link"> ! <text>News about RDT for this release</text> ! </link> ! </extensionContent> </introContent> \ No newline at end of file --- 1,9 ---- ! <?xml version="1.0" encoding="UTF-8" ?> ! <introContent> ! <!-- Extension to the SDK What's New Page. --> ! <extensionContent alt-style="css/rdt.properties" path="news/page-content/noteworthy-links/generalAnchor"> ! <link label="Ruby Development Tools" url="http://org.eclipse.ui.intro/showHelpTopic?id=/org.rubypeople.rdt.doc.user/html/ch04.html" id="rdt-noteworthy" style-id="noteworthy-link"> ! <text>News about RDT for this release</text> ! </link> ! </extensionContent> </introContent> \ No newline at end of file Index: rdtOverviewExtensionContent.xml =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt/intro/rdtOverviewExtensionContent.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** rdtOverviewExtensionContent.xml 28 Nov 2004 12:01:46 -0000 1.1 --- rdtOverviewExtensionContent.xml 18 Sep 2005 14:58:41 -0000 1.2 *************** *** 1,9 **** ! <?xml version="1.0" encoding="UTF-8" ?> ! <introContent> ! <!-- Extension to the SDK Overview Page. --> ! <extensionContent alt-style="intro/css/rdt.properties" style="intro/css/rdtOverview.css" path="overview/page-content/overview-links/endAnchor"> ! <link label="Ruby Development Tools" url="http://org.eclipse.ui.intro/showHelpTopic?id=/org.rubypeople.rdt.doc.user/html/index.html" id="rdt"> ! <text>Overview of the Ruby Development Tools (RDT)</text> ! </link> ! </extensionContent> </introContent> \ No newline at end of file --- 1,9 ---- ! <?xml version="1.0" encoding="UTF-8" ?> ! <introContent> ! <!-- Extension to the SDK Overview Page. --> ! <extensionContent alt-style="css/rdt.properties" style="css/rdtOverview.css" path="overview/page-content/overview-links/endAnchor"> ! <link label="Ruby Development Tools" url="http://org.eclipse.ui.intro/showHelpTopic?id=/org.rubypeople.rdt.doc.user/html/index.html" id="rdt"> ! <text>Overview of the Ruby Development Tools (RDT)</text> ! </link> ! </extensionContent> </introContent> \ No newline at end of file |
|
From: Markus B. <mba...@us...> - 2005-09-18 14:40:56
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22247/src/org/rubypeople/rdt/debug/core/tests Modified Files: TC_DebuggerCommunicationTest.java Log Message: set timeout to 60 secs Index: TC_DebuggerCommunicationTest.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests/TC_DebuggerCommunicationTest.java,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** TC_DebuggerCommunicationTest.java 18 Sep 2005 12:48:01 -0000 1.35 --- TC_DebuggerCommunicationTest.java 18 Sep 2005 14:40:45 -0000 1.36 *************** *** 94,98 **** } } ! private static long TIMEOUT_MS = 20000 ; private Process process; private OutputRedirectorThread rubyStdoutRedirectorThread; --- 94,98 ---- } } ! private static long TIMEOUT_MS = 60000 ; private Process process; private OutputRedirectorThread rubyStdoutRedirectorThread; |
|
From: Markus B. <mba...@us...> - 2005-09-18 14:21:08
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.tests.all/src/org/rubypeople/rdt/tests/all In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17884/src/org/rubypeople/rdt/tests/all Added Files: TS_RdtAllUnitTests.java TS_RdtAllFunctionalTests.java Log Message: splittet RdtAllTests into unit and functional tests --- NEW FILE: TS_RdtAllFunctionalTests.java --- package org.rubypeople.rdt.tests.all; import junit.framework.Test; import junit.framework.TestSuite; import org.rubypeople.rdt.internal.core.TS_Core; import org.rubypeople.rdt.internal.formatter.TC_CodeFormatter; import org.rubypeople.rdt.debug.core.tests.TS_Debug; import org.rubypeople.rdt.internal.debug.ui.tests.launcher.TS_Launcher; import org.rubypeople.rdt.internal.launching.tests.TS_Launching; import org.rubypeople.rdt.internal.ui.TS_UiTests; public class TS_RdtAllFunctionalTests { public static Test suite() { TestSuite suite = new TestSuite("RDT all functional tests"); //$JUnit-BEGIN$ // org.rubypeople.rdt.debug.core.tests suite.addTest(TS_Debug.suite()); //$JUnit-END$ return suite; } } --- NEW FILE: TS_RdtAllUnitTests.java --- package org.rubypeople.rdt.tests.all; import junit.framework.Test; import junit.framework.TestSuite; import org.rubypeople.rdt.internal.core.TS_Core; import org.rubypeople.rdt.internal.formatter.TC_CodeFormatter; import org.rubypeople.rdt.debug.core.tests.TS_Debug; import org.rubypeople.rdt.internal.debug.ui.tests.launcher.TS_Launcher; import org.rubypeople.rdt.internal.launching.tests.TS_Launching; import org.rubypeople.rdt.internal.ui.TS_UiTests; public class TS_RdtAllUnitTests { public static Test suite() { TestSuite suite = new TestSuite("RDT all unit tests"); //$JUnit-BEGIN$ // org.rubypeople.rdt.core.tests suite.addTest(TS_Core.suite()); suite.addTestSuite(TC_CodeFormatter.class) ; // org.rubypeople.rdt.launching.tests suite.addTest(TS_Launching.suite()); // org.rubypeople.rdt.ui.tests suite.addTest(TS_UiTests.suite()); // org.rubypeople.rdt.debug.ui.tests suite.addTest(TS_Launcher.suite()); //$JUnit-END$ return suite; } } |
|
From: Markus B. <mba...@us...> - 2005-09-18 14:21:08
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.tests.all In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17884 Modified Files: test.xml Log Message: splittet RdtAllTests into unit and functional tests Index: test.xml =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.tests.all/test.xml,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** test.xml 24 Oct 2004 13:32:45 -0000 1.4 --- test.xml 18 Sep 2005 14:20:53 -0000 1.5 *************** *** 35,43 **** <property name="plugin-name" value="${plugin-name}"/> <property name="classname" ! value="org.rubypeople.rdt.tests.all.TS_RdtAllTests"/> ! <property name="vmargs" value="-Drdt.rubyInterpreter="${rdt.rubyInterpreter}""/> </ant> ! </target> --- 35,48 ---- <property name="plugin-name" value="${plugin-name}"/> <property name="classname" ! value="org.rubypeople.rdt.tests.all.TS_RdtAllUnitTests"/> <property name="vmargs" value="-Drdt.rubyInterpreter="${rdt.rubyInterpreter}""/> </ant> ! <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}"> ! <property name="data-dir" value="${rdt-tests-workspace}"/> ! <property name="plugin-name" value="${plugin-name}"/> ! <property name="classname" ! value="org.rubypeople.rdt.tests.all.TS_RdtAllFunctionalTests"/> ! <property name="vmargs" value="-Drdt.rubyInterpreter="${rdt.rubyInterpreter}""/> ! </ant> </target> |
|
From: Markus B. <mba...@us...> - 2005-09-18 12:48:11
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29733/src/org/rubypeople/rdt/debug/core/tests Modified Files: TC_DebuggerCommunicationTest.java Log Message: Added sleep after destroying the ruby process Index: TC_DebuggerCommunicationTest.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests/TC_DebuggerCommunicationTest.java,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** TC_DebuggerCommunicationTest.java 18 Sep 2005 12:27:23 -0000 1.34 --- TC_DebuggerCommunicationTest.java 18 Sep 2005 12:48:01 -0000 1.35 *************** *** 230,233 **** --- 230,237 ---- process.destroy(); System.out.println("Ruby process had to be destroyed."); + // wait so that the debugger port will be availabel for the next test + // There seems to be a delay after the destroying of a process and + // freeing the server port + Thread.sleep(5000) ; } |
|
From: Markus B. <mba...@us...> - 2005-09-18 12:36:58
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.build/bootstrap In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27563/bootstrap Modified Files: run.sh Log Message: buildTarget: default should be main overwritable with RDT_BUILD_TARGET Index: run.sh =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.build/bootstrap/run.sh,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** run.sh 18 Sep 2005 10:21:29 -0000 1.9 --- run.sh 18 Sep 2005 12:36:49 -0000 1.10 *************** *** 25,29 **** # buildTarget can be one of the build targets defined in $buildfile: # main, preBuild, fetch, generate, process, assemble, package, postBuild, clean ! buildTarget=${RDT_BUILD_TARGET:+main} echo Starting eclipse in $eclipseDir, $vm --- 25,29 ---- # buildTarget can be one of the build targets defined in $buildfile: # main, preBuild, fetch, generate, process, assemble, package, postBuild, clean ! buildTarget=${RDT_BUILD_TARGET:-main} echo Starting eclipse in $eclipseDir, $vm |
|
From: Markus B. <mba...@us...> - 2005-09-18 12:27:31
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25775/src/org/rubypeople/rdt/debug/core/tests Modified Files: TC_DebuggerCommunicationTest.java Log Message: added timeout for the tests Index: TC_DebuggerCommunicationTest.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests/TC_DebuggerCommunicationTest.java,v retrieving revision 1.33 retrieving revision 1.34 diff -C2 -d -r1.33 -r1.34 *** TC_DebuggerCommunicationTest.java 18 Sep 2005 10:36:08 -0000 1.33 --- TC_DebuggerCommunicationTest.java 18 Sep 2005 12:27:23 -0000 1.34 *************** *** 8,13 **** --- 8,15 ---- import java.net.Socket; + import junit.framework.Assert; import junit.framework.TestCase; + import org.jruby.internal.runtime.ThreadService; import org.rubypeople.rdt.core.RubyCore; import org.rubypeople.rdt.internal.debug.core.ExceptionSuspensionPoint; *************** *** 32,38 **** /* ! public static TestSuite suite() { ! TestSuite suite = new TestSuite(); //suite.addTest(new TC_DebuggerCommunicationTest("testConstants")); //suite.addTest(new TC_DebuggerCommunicationTest("testConstantDefinedInBothClassAndSuperclass")); --- 34,40 ---- /* ! public static junit.framework.TestSuite suite() { ! junit.framework.TestSuite suite = new junit.framework.TestSuite(); //suite.addTest(new TC_DebuggerCommunicationTest("testConstants")); //suite.addTest(new TC_DebuggerCommunicationTest("testConstantDefinedInBothClassAndSuperclass")); *************** *** 48,53 **** //suite.addTest(new TC_DebuggerCommunicationTest("testVariableInstanceNested")); //suite.addTest(new TC_DebuggerCommunicationTest("testStaticVariableInstanceNested")); ! suite.addTest(new TC_DebuggerCommunicationTest("testException")); ! //suite.addTest(new TC_DebuggerCommunicationTest("testNameError")); //suite.addTest(new TC_DebuggerCommunicationTest("testVariablesInObject")); //suite.addTest(new TC_DebuggerCommunicationTest("testStaticVariables")); --- 50,55 ---- //suite.addTest(new TC_DebuggerCommunicationTest("testVariableInstanceNested")); //suite.addTest(new TC_DebuggerCommunicationTest("testStaticVariableInstanceNested")); ! //suite.addTest(new TC_DebuggerCommunicationTest("testException")); ! suite.addTest(new TC_DebuggerCommunicationTest("testNameError")); //suite.addTest(new TC_DebuggerCommunicationTest("testVariablesInObject")); //suite.addTest(new TC_DebuggerCommunicationTest("testStaticVariables")); *************** *** 71,75 **** return suite; } ! */ --- 73,78 ---- return suite; } ! */ ! *************** *** 91,94 **** --- 94,98 ---- } } + private static long TIMEOUT_MS = 20000 ; private Process process; private OutputRedirectorThread rubyStdoutRedirectorThread; *************** *** 97,100 **** --- 101,108 ---- private PrintWriter out; private MultiReaderStrategy multiReaderStrategy; + + // for timeout handling + private Thread mainThread ; + private Thread timeoutThread ; public TC_DebuggerCommunicationTest(String arg0) { *************** *** 161,166 **** --- 169,179 ---- else { // being run as "pure" JUnit Test without Eclipse running + // getResource delivers a URL, so we get slashes as Fileseparator includeDir = getClass().getResource("/").getFile(); includeDir += "../../org.rubypeople.rdt.launching/ruby" ; + // if on windows, remove a leading slash + if (includeDir.startsWith("/") && File.separatorChar == '\\') { + includeDir = includeDir.substring(1); + } } // the ruby interpreter on linux does not like quotes, so we use them only if really necessary *************** *** 181,187 **** --- 194,219 ---- throw new RuntimeException("Temp directory does not exist: " + getTmpDir()); } + // if a reader hangs, because the expected data from the ruby process + // does not arrive, it gets interrupted from the timeout watchdog. + mainThread = Thread.currentThread() ; + timeoutThread = new Thread() { + public void run() { + try { + while (true) { + System.out.println("Starting timeout watchdog."); + Thread.sleep(TIMEOUT_MS); + System.out.println("Timeout reached."); + mainThread.interrupt(); + } + } catch (InterruptedException e) { + System.out.println("Watchdog deactivated."); + } + } + } ; + timeoutThread.start() ; } public void tearDown() throws Exception { + timeoutThread.interrupt() ; if (process == null || socket == null) { // here we go it there was an error in the creation of the process (process == null) *************** *** 203,207 **** rubyStdoutRedirectorThread.join(); System.out.println("..done"); ! System.out.println("Waiting for stdout redirector thread.."); rubyStderrRedirectorThread.join(); System.out.println("..done"); --- 235,239 ---- rubyStdoutRedirectorThread.join(); System.out.println("..done"); ! System.out.println("Waiting for stderr redirector thread.."); rubyStderrRedirectorThread.join(); System.out.println("..done"); *************** *** 239,243 **** } } ! public void testNameError() throws Exception { createSocket(new String[] { "puts 'x'" }); --- 271,275 ---- } } ! public void testNameError() throws Exception { createSocket(new String[] { "puts 'x'" }); |
|
From: Markus B. <mba...@us...> - 2005-09-18 11:24:00
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26728/src/org/rubypeople/rdt/debug/core/tests Modified Files: TC_ReadStrategyTest.java Log Message: fixed testMultiReaderStrategyWithMultipleTags Index: TC_ReadStrategyTest.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests/TC_ReadStrategyTest.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** TC_ReadStrategyTest.java 12 Mar 2005 15:41:44 -0000 1.3 --- TC_ReadStrategyTest.java 18 Sep 2005 11:23:50 -0000 1.4 *************** *** 113,117 **** testTagReaderThread.start(); Thread.sleep(500); // wait for threads to be started ! writer.println("<testTag><testTag/><testTag/></testTag>") ; writer.flush() ; testTagReaderThread.join(); --- 113,117 ---- testTagReaderThread.start(); Thread.sleep(500); // wait for threads to be started ! writer.println("<testTag><testTag><testTag/><testTag/></testTag>") ; writer.flush() ; testTagReaderThread.join(); |
|
From: Markus B. <mba...@us...> - 2005-09-18 10:36:16
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6381/src/org/rubypeople/rdt/debug/core/tests Modified Files: TC_DebuggerCommunicationTest.java Log Message: avoid quotes in-I arguments for the ruby interpreter Index: TC_DebuggerCommunicationTest.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests/TC_DebuggerCommunicationTest.java,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 *** TC_DebuggerCommunicationTest.java 16 Sep 2005 20:53:04 -0000 1.32 --- TC_DebuggerCommunicationTest.java 18 Sep 2005 10:36:08 -0000 1.33 *************** *** 143,147 **** public void startRubyProcess() throws Exception { ! String cmd = TC_DebuggerCommunicationTest.RUBY_INTERPRETER + " -I " + createIncludeDir() + " -I" + getTmpDir().replace('\\', '/') + " -reclipseDebugVerbose.rb " + getRubyTestFilename(); System.out.println("Starting: " + cmd); process = Runtime.getRuntime().exec(cmd); --- 143,147 ---- public void startRubyProcess() throws Exception { ! String cmd = TC_DebuggerCommunicationTest.RUBY_INTERPRETER + " -I" + createIncludeDir() + " -I" + getTmpDir().replace('\\', '/') + " -reclipseDebugVerbose.rb " + getRubyTestFilename(); System.out.println("Starting: " + cmd); process = Runtime.getRuntime().exec(cmd); *************** *** 164,168 **** includeDir += "../../org.rubypeople.rdt.launching/ruby" ; } ! return '"' + includeDir + '"'; } --- 164,174 ---- includeDir += "../../org.rubypeople.rdt.launching/ruby" ; } ! // the ruby interpreter on linux does not like quotes, so we use them only if really necessary ! if (includeDir.indexOf(" ") == -1) { ! return includeDir ; ! } ! else { ! return '"' + includeDir + '"'; ! } } |
|
From: Markus B. <mba...@us...> - 2005-09-18 10:21:40
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.build/bootstrap In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3396/bootstrap Modified Files: run.sh Log Message: define noclean instead of clean; new variable buildTarget Index: run.sh =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.build/bootstrap/run.sh,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** run.sh 13 Jul 2005 22:05:15 -0000 1.8 --- run.sh 18 Sep 2005 10:21:29 -0000 1.9 *************** *** 14,18 **** arch=${RDT_ARCH:-x86} usePserver=${RDT_USE_PSERVER:+-DusePserver=true} ! testClean=${RDT_TEST_CLEAN:+-Dclean=true} dontRunTests=${RDT_DONT_RUN_TESTS:+-DdontRunTests=true} --- 14,19 ---- arch=${RDT_ARCH:-x86} usePserver=${RDT_USE_PSERVER:+-DusePserver=true} ! # the default is to clean up before testing, it can be avoided by defining noclean ! testNoclean=${RDT_TEST_NOCLEAN:+-Dnoclean=true} dontRunTests=${RDT_DONT_RUN_TESTS:+-DdontRunTests=true} *************** *** 22,28 **** buildfile=$eclipseDir/plugins/org.eclipse.pde.build_$pdeBuildPluginVersion/scripts/build.xml echo Starting eclipse in $eclipseDir, $vm ! cmd="$vm -cp $eclipseDir/startup.jar org.eclipse.core.launcher.Main -ws $ws -os $os -application org.eclipse.ant.core.antRunner -buildfile $buildfile -data $buildDirectory/workspace $verboseAnt $usePserver $dontRunTests -Dbasews=$ws -Dbaseos=$os -Dbasearch=$arch -Dbuilder=$bootstrapDir $testClean -DjavacFailOnError=true -DbuildDirectory=$buildDirectory -DbaseLocation=$eclipseDir -DeclipseAutomatedTestHome=$eclipseAutomatedTestHome -Drdt.rubyInterpreter="$rubyInterpreter" -Drdt-tests-workspace=$buildDirectory/workspace-rdt-tests -Ddocbook.root=$docbookRoot" echo $cmd exec $cmd \ No newline at end of file --- 23,32 ---- buildfile=$eclipseDir/plugins/org.eclipse.pde.build_$pdeBuildPluginVersion/scripts/build.xml + # buildTarget can be one of the build targets defined in $buildfile: + # main, preBuild, fetch, generate, process, assemble, package, postBuild, clean + buildTarget=${RDT_BUILD_TARGET:+main} echo Starting eclipse in $eclipseDir, $vm ! cmd="$vm -cp $eclipseDir/startup.jar org.eclipse.core.launcher.Main -ws $ws -os $os -application org.eclipse.ant.core.antRunner -buildfile $buildfile $buildTarget -data $buildDirectory/workspace $verboseAnt $usePserver $dontRunTests -Dbasews=$ws -Dbaseos=$os -Dbasearch=$arch -Dbuilder=$bootstrapDir $testNoclean -DjavacFailOnError=true -DbuildDirectory=$buildDirectory -DbaseLocation=$eclipseDir -DeclipseAutomatedTestHome=$eclipseAutomatedTestHome -Drdt.rubyInterpreter="$rubyInterpreter" -Drdt-tests-workspace=$buildDirectory/workspace-rdt-tests -Ddocbook.root=$docbookRoot" echo $cmd exec $cmd \ No newline at end of file |
|
From: Markus B. <mba...@us...> - 2005-09-17 21:49:58
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.ui/expressions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8243/expressions Modified Files: rdt.xml Log Message: updated expressions: instance methods are sorted Index: rdt.xml =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.ui/expressions/rdt.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** rdt.xml 7 Mar 2005 20:52:43 -0000 1.1 --- rdt.xml 17 Sep 2005 21:49:51 -0000 1.2 *************** *** 14,23 **** <expression description="instance methods, including methods from superclasses" ! name="instance methods incl. inherited">%s.class.instance_methods(true) </expression> <expression description="instance methods of the methods from superclasses" ! name="instance methods excl. inherited">%s.class.instance_methods(false) </expression> --- 14,23 ---- <expression description="instance methods, including methods from superclasses" ! name="instance methods incl. inherited">%s.class.instance_methods(true).sort </expression> <expression description="instance methods of the methods from superclasses" ! name="instance methods excl. inherited">%s.class.instance_methods(false).sort </expression> |
|
From: Markus B. <mba...@us...> - 2005-09-17 21:49:00
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.doc.user/images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8101/images Modified Files: debug.png Added Files: variableViewShowClassesAndConstants.png codeReloadContextMenu.png expressionViewWithInspectResult.png Log Message: new screenshots --- NEW FILE: expressionViewWithInspectResult.png --- (This appears to be a binary file; contents omitted.) Index: debug.png =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.doc.user/images/debug.png,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsblke8W and /tmp/cvsnxRJgq differ --- NEW FILE: codeReloadContextMenu.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: variableViewShowClassesAndConstants.png --- (This appears to be a binary file; contents omitted.) |
|
From: Markus B. <mba...@us...> - 2005-09-17 21:48:17
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.doc.user In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7961 Modified Files: docbook.xml Log Message: updated debug part, added TODOs for other parts Index: docbook.xml =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.doc.user/docbook.xml,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** docbook.xml 10 Sep 2005 12:04:24 -0000 1.15 --- docbook.xml 17 Sep 2005 21:48:08 -0000 1.16 *************** *** 10,14 **** happen automatically are documented here. </para> ! <sect1> <title>Ruby Interpreter</title> <para> --- 10,14 ---- happen automatically are documented here. </para> ! <section> <title>Ruby Interpreter</title> <para> *************** *** 20,34 **** and tests. </para> ! </sect1> ! <sect1> <title>Ruby Project file</title> <para> RDT now requires a builder in the .project file for ruby projects. ! When RDT is loaded, (or when a project is opened, ruby projects will ! be automatically upgraded. </para> ! </sect1> ! <sect1> ! <title>Ruby Perpsective</title> <para> The ruby perspective now includes the standard Eclipse views for --- 20,34 ---- and tests. </para> ! </section> ! <section> <title>Ruby Project file</title> <para> RDT now requires a builder in the .project file for ruby projects. ! When RDT is loaded, (or when a project is opened), ruby projects will ! be automatically upgraded. TODO: What user interaction is required? </para> ! </section> ! <section> ! <title>Ruby Perspective</title> <para> The ruby perspective now includes the standard Eclipse views for *************** *** 37,45 **** upgraded. </para> ! </sect1> </chapter> <chapter id="GettingStarted"> <title>Getting Started</title> ! <sect1 id="preparingTheWorkbench"> <title> Preparing the Workbench </title> <para> In this section, you will verify that the workbench is --- 37,45 ---- upgraded. </para> ! </section> </chapter> <chapter id="GettingStarted"> <title>Getting Started</title> ! <section id="preparingTheWorkbench"> <title> Preparing the Workbench </title> <para> In this section, you will verify that the workbench is *************** *** 59,63 **** mechanisms, please see the Getting Started chapter of the Workbench User Guide. </para> ! <sect2 id="importantSettings"> <title>Important Settings</title> <orderedlist> --- 59,63 ---- mechanisms, please see the Getting Started chapter of the Workbench User Guide. </para> ! <section id="importantSettings"> <title>Important Settings</title> <orderedlist> *************** *** 84,93 **** </listitem> </orderedlist> ! </sect2> ! </sect1> </chapter> <chapter id="Concepts"> <title>Concepts</title> ! <sect1 id="rubyProjects"> <title>Ruby projects</title> <para>A Ruby project contains source code and related files for --- 84,93 ---- </listitem> </orderedlist> ! </section> ! </section> </chapter> <chapter id="Concepts"> <title>Concepts</title> ! <section id="rubyProjects"> <title>Ruby projects</title> <para>A Ruby project contains source code and related files for *************** *** 102,111 **** source container. This is the recommended organization for simple projects. </listitem> </itemizedlist> </para> ! </sect1> ! <sect1 id="RubyPerspectives"> <title>Ruby perspectives</title> <para>The Ruby development tools contribute the following perspectives to the workbench:</para> ! <sect2 id="RubyPerspectives_Ruby"> <title>Ruby</title> <para>A perspective designed for working with Ruby projects. It --- 102,111 ---- source container. This is the recommended organization for simple projects. </listitem> </itemizedlist> </para> ! </section> ! <section id="RubyPerspectives"> <title>Ruby perspectives</title> <para>The Ruby development tools contribute the following perspectives to the workbench:</para> ! <section id="RubyPerspectives_Ruby"> <title>Ruby</title> <para>A perspective designed for working with Ruby projects. It *************** *** 118,123 **** <listitem>Problems View</listitem> </itemizedlist> ! </sect2> ! <sect2 id="RubyPerspectives_RubyDebug"> <title>Debug</title> <para>A perspective designed for debugging your Ruby program. --- 118,123 ---- <listitem>Problems View</listitem> </itemizedlist> ! </section> ! <section id="RubyPerspectives_RubyDebug"> <title>Debug</title> <para>A perspective designed for debugging your Ruby program. *************** *** 132,138 **** <listitem> Console </listitem> </itemizedlist> ! </sect2> ! </sect1> ! <sect1 id="RubyResourcesView"> <title>Ruby Resources View</title> <para>The Ruby Resources View provides the same features as the --- 132,138 ---- <listitem> Console </listitem> </itemizedlist> ! </section> ! </section> ! <section id="RubyResourcesView"> <title>Ruby Resources View</title> <para>The Ruby Resources View provides the same features as the *************** *** 155,160 **** <graphic fileref="../images/rubyResources.png" format="PNG"/> </figure> ! </sect1> ! <sect1 id="RubyEditor"> <title>Ruby Editor</title> <para>The Ruby editor provides specialized features for editing --- 155,160 ---- <graphic fileref="../images/rubyResources.png" format="PNG"/> </figure> ! </section> ! <section id="RubyEditor"> <title>Ruby Editor</title> <para>The Ruby editor provides specialized features for editing *************** *** 176,180 **** opening Ruby elements, such as types, methods, or fields, from other views.</para> ! <sect2 id="CodeCompletion"> <title>Code completion</title> <para> If you press Ctrl+space in the ruby editor, a list with --- 176,180 ---- opening Ruby elements, such as types, methods, or fields, from other views.</para> ! <section id="CodeCompletion"> <title>Code completion</title> <para> If you press Ctrl+space in the ruby editor, a list with *************** *** 187,192 **** of any suggestions you will get no suggestions. </para> ! </sect2> ! <sect2 id="CodeFormatting"> <title>Code formatting</title> <para>The code formatter formats either the whole file or the --- 187,192 ---- of any suggestions you will get no suggestions. </para> ! </section> ! <section id="CodeFormatting"> <title>Code formatting</title> <para>The code formatter formats either the whole file or the *************** *** 229,235 **** regular expressions might be indented.</para> </warning> ! </sect2> ! </sect1> ! <sect1 id ="ConsoleView"> <title>Console View</title> <para>The console view contains the output of a program. If the --- 229,235 ---- regular expressions might be indented.</para> </warning> ! </section> ! </section> ! <section id ="ConsoleView"> <title>Console View</title> <para>The console view contains the output of a program. If the *************** *** 246,251 **** format="PNG"/> </figure> ! </sect1> ! <sect1 id="OutlineView"> <title>Outline View</title> <para> The outline view displays the structure of the currently --- 246,251 ---- format="PNG"/> </figure> ! </section> ! <section id="OutlineView"> <title>Outline View</title> <para> The outline view displays the structure of the currently *************** *** 255,260 **** <graphic fileref="../images/outline.png" format="PNG"/> </figure> ! </sect1> ! <sect1 id="ProblemsView"> <title>Problems View</title> <para> --- 255,267 ---- <graphic fileref="../images/outline.png" format="PNG"/> </figure> ! </section> ! <section id="RiView"> ! <title>RI View</title> ! <para> ! <!-- TODO: add figure, describe how to use the ri view when adding rdoc in a ruby file in the workbench, ! external task --> ! </para> ! </section> ! <section id="ProblemsView"> <title>Problems View</title> <para> *************** *** 262,276 **** You can read more about this view in the Workbench User Guide </para> ! </sect1> ! <sect1 id="TaskList"> <title>Task List</title> <para> ! The task list shows you a list of tasks in your workspace. You can read more about this view in the Workbench User Guide </para> ! </sect1> ! <sect1 id="RunningARubyApplication"> <title>Running a Ruby application</title> ! <sect2 id="ContextMenu"><title>Starting from Ruby Resource View</title> <para> The context menu of a ruby file in the Ruby Resource View has a run entry from which the file can be started in --- 269,284 ---- You can read more about this view in the Workbench User Guide </para> ! </section> ! <section id="TaskList"> <title>Task List</title> <para> ! The task list shows you a list of tasks in your workspace. ! <!-- TODO: add figure, how to configure, default tokens, where can the occur --> You can read more about this view in the Workbench User Guide </para> ! </section> ! <section id="RunningARubyApplication"> <title>Running a Ruby application</title> ! <section id="ContextMenu"><title>Starting from Ruby Resource View</title> <para> The context menu of a ruby file in the Ruby Resource View has a run entry from which the file can be started in *************** *** 280,285 **** <graphic fileref="../images/runContextMenu.png" format="PNG"/> </figure> ! </sect2> ! <sect2 id="MainMenu"><title>Starting from main menu</title> <para>The Run main menu also offers a menu point for starting a ruby application. Which file is started is determined by the --- 288,293 ---- <graphic fileref="../images/runContextMenu.png" format="PNG"/> </figure> ! </section> ! <section id="MainMenu"><title>Starting from main menu</title> <para>The Run main menu also offers a menu point for starting a ruby application. Which file is started is determined by the *************** *** 293,298 **** <graphic fileref="../images/runMenu.png" format="PNG"/> </figure> ! </sect2> ! <sect2 id="Configuration"> <title>Run configuration</title> <para>Every time a file is started from one of the described --- 301,306 ---- <graphic fileref="../images/runMenu.png" format="PNG"/> </figure> ! </section> ! <section id="Configuration"> <title>Run configuration</title> <para>Every time a file is started from one of the described *************** *** 325,333 **** format="PNG"/> </figure> ! </sect2> ! </sect1> ! <sect1 id="RunningATest::UnitTest"> <title>Running a Test::Unit Test</title> ! <sect2 id="ContextMenu"><title>Starting from Ruby Resource View</title> <para> The context menu of a ruby file in the Ruby Resource View has a Test::Unit entry from which the file can be started in --- 333,341 ---- format="PNG"/> </figure> ! </section> ! </section> ! <section id="RunningATest::UnitTest"> <title>Running a Test::Unit Test</title> ! <section id="TestUnitContextMenu"><title>Starting from Ruby Resource View</title> <para> The context menu of a ruby file in the Ruby Resource View has a Test::Unit entry from which the file can be started in *************** *** 337,342 **** <graphic fileref="../images/runTestContextMenu.png" format="PNG"/> </figure> ! </sect2> ! <sect2 id="MainMenu"><title>Starting from main menu</title> <para>The Run main menu also offers a menu point for starting a Test::Unit Test. Which file is started is determined by the --- 345,350 ---- <graphic fileref="../images/runTestContextMenu.png" format="PNG"/> </figure> ! </section> ! <section id="TestUnitMainMenu"><title>Starting from main menu</title> <para>The Run main menu also offers a menu point for starting a Test::Unit Test. Which file is started is determined by the *************** *** 350,355 **** <graphic fileref="../images/runTestMenu.png" format="PNG"/> </figure> ! </sect2> ! <sect2 id="Test::UnitTestConfiguration"> <title>Test::Unit Test Run Configuration</title> <para>Every time a test is started from one of the described --- 358,363 ---- <graphic fileref="../images/runTestMenu.png" format="PNG"/> </figure> ! </section> ! <section id="Test::UnitTestConfiguration"> <title>Test::Unit Test Run Configuration</title> <para>Every time a test is started from one of the described *************** *** 382,467 **** format="PNG"/> </figure> ! </sect2> ! </sect1> ! <sect1 id="usingTheDebugger"> ! <title>Using the Debugger</title> ! <sect2> <title>Prerequisites</title> ! <para>If you can debug your ruby application depends on the ! version of the ruby interpreter you are using. Ruby 1.6.8 ! works on both Linux and Windows, 1.8.0 and 1.8.2 works also on ! Windows. For further information see <ulink ! url="http://213.203.244.123/wiki/wiki.phtml#Prerequisites_for_the_debugger"></ulink> ! </para> ! ! </sect2> ! <sect2 id="debuggingYourApplication"> ! <title>Debugging your Application</title> <itemizedlist> <listitem> ! <para>Open your ruby file and set a breakpoint like you ! would set a breakpoint in a java file</para> </listitem> <listitem> ! <para>Select <emphasis>Run > Debug As > Ruby ! Application</emphasis>. The Debug perspective will open:</para> ! <figure> ! <title>Debug Perspective</title> ! <graphic fileref="../images/debug.png" ! format="PNG"/> ! </figure> ! </listitem> ! <listitem> ! <para>In the launch view use <emphasis> step into, step ! over, step return</emphasis> to step through the ! code. Use the <emphasis>resume button </emphasis> ! to resume the application. </para> </listitem> <listitem> ! <para>In the variable view:</para> ! <itemizedlist> ! <listitem> ! <para>Press <emphasis>Show Type ! Names</emphasis> to show the type of each ! variable</para> ! </listitem> ! <listitem> ! <para>Check <emphasis>Show Constants</emphasis> ! to display constants, check <emphasis>Show ! Class Variables</emphasis> to display class ! variables </para> ! </listitem> ! </itemizedlist> ! <para> In the screenshot above the java debug actions ! are disabled, so that only the ruby debug commands ! <emphasis>Show Constants</emphasis> and ! <emphasis>Show Class Variables</emphasis> appear. ! If you want to disable/enable either ruby or java ! debug actions, go to<emphasis> Window > ! Preferences > Debug > Debug Action ! Groups</emphasis> and select the appropriate debug ! actions. </para> </listitem> </itemizedlist> ! <sect3> <title>Variables view</title> ! <para> The Variables view shows instance variables, class ! variables and constants of objects. Use the "Show Type ! Names" button on the view bar to display/hide the names ! of type.</para> ! <figure> ! <title>Variables View with type names mode on</title> ! <graphic fileref="../images/variableViewWithTypes.png" ! format="PNG"/> ! </figure> ! <para> In the above screenshot there is a variable barney ! of type person. The object is represented by the return ! value of the to_s method, in this case ! "#<Person:0x2ae7d20>". There is one instance ! variable @name of type String and value "Barney".</para> ! <sect4> <title>Arrays</title> <para>Assume the following code:</para> <programlisting> <![CDATA[ class Person --- 390,484 ---- format="PNG"/> </figure> ! </section> ! </section> ! <section id="usingTheDebugger"> ! <title>Debugger</title> ! <section id="DebuggingPrerequisites"> <title>Prerequisites</title> ! <para>If you can debug your ruby application depends on the version of the ! ruby interpreter you are using. Ruby 1.6.8 works on both Linux and ! Windows, 1.8.0 and 1.8.2 works also on Windows. </para> ! ! </section> ! <section id="startDebugSession"> ! <title>Start a debug session</title> <itemizedlist> <listitem> ! <para>Open your ruby file and set a breakpoint like you would set a ! breakpoint in a java file</para> </listitem> <listitem> ! <para>Select <emphasis>Run > Debug As > Ruby ! Application</emphasis>. The Debug perspective will open:</para> ! </listitem> <listitem> ! <para>In the launch view use <emphasis> step into, step over, step ! return</emphasis> to step through the code. Use the ! <emphasis>resume button </emphasis> to resume the ! application. </para> </listitem> </itemizedlist> ! <figure> ! <title>Debug Perspective</title> ! <graphic fileref="../images/debug.png" format="PNG"/> ! </figure> ! </section> ! <section id="views"> ! <title>Debug views</title> ! <para>The debug perspective contains the following views per default: ! Debug, Variables, Breakpoints, Editor, Outline, Console and Tasks. ! In addition to these there are two more view for the debug perspective: ! the Expression and Display view. The Expression view will be opened for ! displaying the results of inspect commands (runtime evaluation). The ! Display view allows to enter arbitrary ruby commands for evalutaion. ! </para> ! ! <section id="VariablesView"> <title>Variables view</title> ! <para>The variables view shows the variables available in the stack ! trace which is selected in the Debug view </para> ! <section id="ShowConstantsAndClasses"> ! <title>Show Constants and Classes</title> ! <para>Check <emphasis>Show Constants</emphasis> to display ! constants, check <emphasis>Show Class ! Variables</emphasis> to display class variables </para> ! ! <para> If you compare the default variable view with the ! screenshot above you will notice that there are a lot more menu ! commands available. They are for java debug targets. You can ! customize the variable view to show ruby debug commands only: ! Go to<emphasis> Window > Preferences > General > ! Capabilities</emphasis> and deselect ! <emphasis>Development</emphasis>. It is a little ! bewildering to switch off Development here, but it means only ! to disable Java development and not Ruby development</para> ! <figure> ! <title>Variables View with type names mode on</title> ! <graphic ! fileref="../images/variableViewShowClassesAndConstants.png" ! format="PNG"/> ! </figure> ! </section> ! <section id="ShowTypeName"> ! <title>Show Type Names</title> ! <figure> ! <title>Variables View with type names mode on</title> ! <graphic ! fileref="../images/variableViewWithTypes.png" ! format="PNG"/> ! </figure> ! <para> In the above screenshot there is a variable barney of type ! person. The object is represented by the return value of the ! to_s method, in this case "#<Person:0x2ae7d20>". ! There is one instance variable @name of type String and value ! "Barney".</para> ! </section> ! <section> <title>Arrays</title> <para>Assume the following code:</para> + + <programlisting> <![CDATA[ class Person *************** *** 479,576 **** persons << Person.new('Moe') ]]> </programlisting> ! <para> After the last assignment the variable view ! shows the content of the array. Note that the name ! appears as description for the object, because to_s ! is overriden.</para> <figure> <title>Array presentation in Variables View</title> ! <graphic ! fileref="../images/arrayInVariablesView.png" format="PNG"/> </figure> ! </sect4> ! <sect4> <title>Hashes</title> ! <para> In order to show how hashes are presented in the ! variables view, a hash is created:</para> <programlisting><![CDATA[ persons = Hash[ Person.new('Lisa') => Person.new('Marge'), Person.new('Maggie') => Person.new('Marge')] ]]> </programlisting> ! <para>The view shows the name of the hash with the ! number of elements in the first place. If you ! expand the item, there will be a line for every ! key/value pair in the hash. Expanding a key/value ! pair will show the content of the value. If you ! want to know more about the key, select "Inspect ! key" from the context menu:</para> <figure> <title>Hash presentation in Variables View</title> ! <graphic ! fileref="../images/hashInVariablesView.png" format="PNG"/> </figure> ! </sect4> ! </sect3> ! <sect3> <title>Breakpoints view</title> ! <para>Use the Breakpoints view to remove ruby ! breakpoints.</para> ! </sect3> ! <sect3> <title>Expressions view</title> ! <para> Results of ruby expression evaluation are ! displayed here. Evaluation takes place: </para> <itemizedlist> <listitem> ! <para>If you select text in the editor and run ! "Inspect" from the context menu</para> </listitem> <listitem> ! <para>If you use the display view to enter ruby expressions</para> </listitem> <listitem> ! <para>If you select "inspect key" in the context ! menu of a hash value in the variable view</para> </listitem> </itemizedlist> ! </sect3> ! <sect3> <title>Display view</title> ! <para> Enter your text in the Display view and run "Ruby ! inspect" from the context menu. The Expression view ! will open and show the resitemizedlistt of the ! expression. The expression is evaluated in the context ! of the selected stack frame in the Launch view.</para> ! <para> The following example shows an expression which ! creates a hash with all global variables mapped to ! their values (the "Content Assist" menu entry is only ! valid in the context of a java program):</para> <figure> <title>Display View</title> ! <graphic fileref="../images/displayView.png" format="PNG"/> </figure> ! <para>The Expressions view shows the ! resitemizedlistt:</para> <figure> <title>Global variables in Expression View</title> ! <graphic ! fileref="../images/expressionViewWithGlobalVariables.png" format="PNG"/> </figure> ! </sect3> ! </sect2> ! <sect2 id="debuggingRubyLibraries"> <title>Debugging into ruby libraries</title> ! <para> If there are exceptions in a ruby library file, the ! program halts there and the ruby file is opened read only. ! That is because the library file is not part of the eclipse ! workspace. In order to edit such a file, a ruby project can ! be created upon the library directory: </para> <itemizedlist> <listitem> ! <para>Select <emphasis>New > Project > Ruby Project</emphasis></para> </listitem> --- 496,669 ---- persons << Person.new('Moe') ]]> </programlisting> ! <para> After the last assignment the variable view shows the ! content of the array. Note that the name appears as ! description for the object, because to_s is ! overriden.</para> <figure> <title>Array presentation in Variables View</title> ! <graphic fileref="../images/arrayInVariablesView.png" format="PNG"/> </figure> ! </section> ! <section> <title>Hashes</title> ! <para> In order to show how hashes are presented in the variables ! view, a hash is created:</para> ! ! <programlisting><![CDATA[ persons = Hash[ Person.new('Lisa') => Person.new('Marge'), Person.new('Maggie') => Person.new('Marge')] ]]> </programlisting> ! <para>The view shows the name of the hash with the number of ! elements in the first place. If you expand the item, there will ! be a line for every key/value pair in the hash. Expanding a ! key/value pair will show the content of the value. If you want ! to know more about the key, select "Inspect key" from the ! context menu:</para> <figure> <title>Hash presentation in Variables View</title> ! <graphic fileref="../images/hashInVariablesView.png" format="PNG"/> </figure> ! </section> ! </section> ! <section id="BreakpointsView"> <title>Breakpoints view</title> ! <para>Use the Breakpoints view to remove ruby breakpoints.</para> ! </section> ! <section id="ExpressionsView"> <title>Expressions view</title> ! <para> Results of ruby expression evaluation are displayed here. ! Evaluation takes place: </para> <itemizedlist> <listitem> ! <para>If you select text in the editor, open the context menu ! and run "Inspect" or a quick inspect expression with ! "Inspect..."</para> </listitem> <listitem> ! <para>If you use the display view to enter ruby expressions</para> </listitem> <listitem> ! <para>If you select "inspect key" in the context menu of a hash ! value in the variable view</para> </listitem> </itemizedlist> ! <figure id="expressionViewWithInspectResult"> ! <title>Expression view with result from quick inspect</title> ! <graphic ! fileref="../images/expressionViewWithInspectResult.png" ! format="PNG"/> ! </figure> ! </section> ! <section id="DisplayView"> <title>Display view</title> ! <para> Enter your text in the Display view and run "Ruby inspect" from ! the context menu. The Expression view will open and show the ! resitemizedlistt of the expression. The expression is evaluated ! in the context of the selected stack frame in the Launch ! view.</para> ! <para> The following example shows an expression which creates a hash ! with all global variables mapped to their values (the "Content ! Assist" menu entry is only valid in the context of a java ! program):</para> <figure> <title>Display View</title> ! <graphic fileref="../images/displayView.png" format="PNG"/> </figure> ! <para>The Expressions view shows the resitemizedlistt:</para> <figure> <title>Global variables in Expression View</title> ! <graphic ! fileref="../images/expressionViewWithGlobalVariables.png" format="PNG"/> </figure> ! </section> ! </section> ! <section id="codeReload"> ! <title>Automatic code reload</title> ! <para>If there is a debug session every file you edit and save will be ! reloaded from the interpreter. This allows to debug and change a ruby ! application without restarting. While this is a convenient feature, ! there are some drawbacks to consider:</para> ! <itemizedlist> ! <listitem> ! <para>The code reload does not affect the current stack trace. The ! current stack frame will not be reentered and will be finished ! with the old code. So, if you change the code of a method this ! method will be finished with old code and the next call to this ! method will use the new code. That means that Drop to Frame ! functionality is not available.</para> ! </listitem> ! <listitem> ! <para>The interpreter reloads the file with the updated content ! and therefore also executes the code at the main level. That ! might turn the application in an undesirable state. </para> ! </listitem> ! <listitem> ! <para>You cannot delete methods by reloading. </para> ! </listitem> ! </itemizedlist> ! </section> ! <section id="quickInspect"> ! <title>Inspection shortcuts</title> ! ! <para> In a debug session the display view allows to enter arbitrary ! expressions and have them evaluated. Inspection shortcuts are a more ! convenient way to evaluate frequently used expression. They can be ! applied directly to a selection in the editor without using the Display ! view. The shortcuts are defined in ! <emphasis>Preferences->Ruby->Evaluation ! Expressions</emphasis>. There you can create, delete and modify ! expressions. Every expression has a name, description and ruby code. ! The ruby code may contain the placeholder <emphasis>%s</emphasis> ! which will be replaced with the selection before evaluation. There are ! some examples in the following table.</para> ! <table frame="topbot"> ! <title></title> ! <tgroup cols="3"> ! <thead> ! <row> ! <entry>name</entry> ! <entry>ruby code</entry> ! <entry>explanation</entry> ! </row> ! </thead> ! <tbody> ! <row> ! <entry>Global variables</entry> ! <entry>h={}; global_variables.each { |v| h[v] = ! eval(v) }; h</entry> ! <entry>This is an expression without context </entry> ! ! </row> ! ! <row> ! <entry>instance methods incl. inherited</entry> ! <entry> ! %s.class.instance_methods(true).sort</entry> ! <entry>In this expression %s will be replaced with the ! current selection in the editor</entry> ! </row> ! </tbody> ! </tgroup> ! </table> ! ! <para>See <xref linkend="expressionViewWithInspectResult"/> for an ! usage example. </para> ! ! </section> ! <section id="debuggingRubyLibraries"> <title>Debugging into ruby libraries</title> ! <para> If there are exceptions in a ruby library file, the program halts ! there and the ruby file is opened read only. That is because the library ! file is not part of the eclipse workspace. In order to edit such a file, a ! ruby project can be created upon the library directory: </para> <itemizedlist> <listitem> ! <para>Select <emphasis>New > Project > Ruby Project</emphasis></para> </listitem> *************** *** 579,633 **** </listitem> <listitem> ! <para>In the section <emphasis>Project ! contents</emphasis> deselect <emphasis>Use ! Default</emphasis> and enter the directory, e.g ! /usr/local/lib/site-ruby/1.6. Note, that there must ! be write access to that directory, because eclipse wants to create a .project file. </para> </listitem> </itemizedlist> ! </sect2> ! <sect2> <title>Known limitations</title> ! <para>The ruby debugger is still under development and there ! are some limitations, which must be considered when ! debugging your application:</para> <itemizedlist> <listitem> ! <para>In order to get the debug information about the ! running program, eclipse starts a ruby debugger ! before the execution of your application and talks ! to that ruby debugger via socket. Currently this ! socket is set to 1098 and if this socket is bound ! already debugging is not possible. (The java ! debugger searches for a free socket before; that ! behaviour should be implemented for the ! ruby debugger as well)</para> </listitem> <listitem> ! <para>Threads are not refreshed regularly, i.e. you do ! not see the threads your application creates before ! a breakpoint (or exception or end of step) is ! reached</para> </listitem> <listitem> ! <para>Only one ruby program can be debugged ! concurrently (there is a socket bind exception if ! you try to debug more than on ruby program at the ! same time)</para> </listitem> <listitem> ! <para>Breakpoints are not saved when eclipse is ! closed</para> </listitem> </itemizedlist> ! <sect3> <title>Writing Bug Reports</title> ! <para>In order to provide useful information in case of ! errors, you shoitemizedlistd turn on verbose mode for ! the ruby debugger:</para> <orderedlist> <listitem> ! <para>open file ECLIPSE_HOME/plugins/org.rubypeople.rdt.launching/ruby/eclipseDebug.rb</para> </listitem> --- 672,720 ---- </listitem> <listitem> ! <para>In the section <emphasis>Project contents</emphasis> ! deselect <emphasis>Use Default</emphasis> and enter the ! directory, e.g /usr/local/lib/site-ruby/1.6. Note, that ! there must be write access to that directory, because eclipse wants to create a .project file. </para> </listitem> </itemizedlist> ! </section> ! <section id="DebugKnownLimitations"> <title>Known limitations</title> ! <para>The ruby debugger is still under development and there are some ! limitations, which must be considered when debugging your ! application:</para> <itemizedlist> <listitem> ! <para>In order to get the debug information about the running ! program, eclipse starts a ruby debugger before the execution ! of your application and talks to that ruby debugger via ! socket. Currently this socket is set to 1098 and if this socket ! is bound already debugging is not possible. (The java ! debugger searches for a free socket before; that behaviour ! should be implemented for the ruby debugger as well)</para> </listitem> <listitem> ! <para>Threads are not refreshed regularly, i.e. you do not see the ! threads your application creates before a breakpoint (or ! exception or end of step) is reached</para> </listitem> <listitem> ! <para>Only one ruby program can be debugged concurrently (there ! is a socket bind exception if you try to debug more than on ruby ! program at the same time)</para> </listitem> <listitem> ! <para>Breakpoints are not saved when eclipse is closed</para> </listitem> </itemizedlist> ! <section> <title>Writing Bug Reports</title> ! <para>In order to provide useful information in case of errors, you ! shoitemizedlistd turn on verbose mode for the ruby ! debugger:</para> <orderedlist> <listitem> ! <para>open file ECLIPSE_HOME/plugins/org.rubypeople.rdt.launching/ruby/eclipseDebug.rb</para> </listitem> *************** *** 639,662 **** </listitem> <listitem> ! <para>After you started debugging, the console ! shows additional information (appears red, if ! stderr is printed red): </para> <figure> ! <title>Verbose debug information in ! console</title> ! <graphic fileref="../images/verboseConsole.png" format="PNG"/> </figure> </listitem> <listitem> ! <para>go to <ulink ! url="http://sourceforge.net/projects/rubyeclipse"></ulink> ! and add the console output to your bug report.</para> </listitem> </orderedlist> ! </sect3> ! </sect2> ! </sect1> </chapter> <chapter id="TipsNTricks"> --- 726,748 ---- </listitem> <listitem> ! <para>After you started debugging, the console shows ! additional information (appears red, if stderr is ! printed red): </para> <figure> ! <title>Verbose debug information in console</title> ! <graphic fileref="../images/verboseConsole.png" format="PNG"/> </figure> </listitem> <listitem> ! <para>go to <ulink ! url="http://sourceforge.net/projects/rubyeclipse"> ! </ulink> and add the console output to your bug report.</para> </listitem> </orderedlist> ! </section> ! </section> ! </section> </chapter> <chapter id="TipsNTricks"> |
|
From: Markus B. <mba...@us...> - 2005-09-17 21:45:28
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.ui/cheatsheets In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7643/cheatsheets Modified Files: WebServices.xml Log Message: updated and enhanced with Index: WebServices.xml =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.ui/cheatsheets/WebServices.xml,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** WebServices.xml 2 Dec 2004 21:20:51 -0000 1.6 --- WebServices.xml 17 Sep 2005 21:45:18 -0000 1.7 *************** *** 2,160 **** <cheatsheet title="Using RDT"> <intro href="/org.eclipse.platform.doc.user/reference/ref-cheatsheets.htm"> ! <description> This cheat sheet is an introduction to the Ruby Development Tools (RDT) and ! uses a real world scenario to show how the RDT can be leveraged in your work with ruby. ! As a prerequiste you need to get and install soap4r 1.5.2. Although it is included ! since ruby 1.8.1, you will need it because of the wsdl2ruby.rb file, which is not part ! of ruby 1.8.1 or later. To start working on this cheat sheet, click the "Click to ! Begin" button below. </description> </intro> ! <item href="/org.rubypeople.rdt.doc.user/html/ch01.html" title="Interpreter setup"> ! <description> Make sure you have registered at least one ruby interpreter with RDT. Click ! on the help button if you don't know how to do that. </description> </item> ! <item ! href="/org.rubypeople.rdt.doc.user/html/ch02s02.html" ! title="Switch to Ruby Perspective"> ! <action ! pluginId="org.rubypeople.rdt.debug.ui" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenRubyPerspectiveAction"/> ! <description> Use the "Click to Perform" button to open the ruby perspective. ! This can also be done manually by choosing "Window->Open ! Perspective->Other..." from the main menu and selecting "Ruby" from ! the dialog which opens. ! </description> ! </item> <item title="Create Ruby project on soap4r"> ! <action pluginId="org.rubypeople.rdt.debug.ui" param1="soap4r" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenNewRubyProjectWizardAction"/> ! <description> In order to run wsdl2ruby.rb from the soap4r package, you create a ruby ! project called soap4r on top of the soap4r installation directory at first. After ! clicking the "Click to Perform" button below, the "New Ruby ! Project" wizard will open. The project name "soap4r" is already entered. ! Disable the "Use Default" checkbox in the project content area and use the ! browse button to select the directory to which you have unzipped the soap4r tar ball. ! </description> </item> <item title="Create MyWebservice project"> ! <action pluginId="org.rubypeople.rdt.debug.ui" param1="MyWebservice" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenNewRubyProjectWizardAction"/> ! <description> In this step you create a new project within your workspace, which will be ! used to hold the wsdl file and the generated code from this file. The project is called ! "MyWebservice" The "Click to Perform" button opens the "New ! Ruby Project" wizard again. This time you can leave the "Use Default" ! checkbox enabled. This will create the project as a subdirectory into your workspace ! location. </description> </item> <item title="Add wsdl file to MyWebservice"> ! <action pluginId="org.rubypeople.rdt.debug.ui" param1="MyWebservice" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.CreateWsdlFileAction"/> ! <description> Add a new file called sample.wsdl to the MyWebservice project. In the dialog ! which "Click to Perform" brings up you only have to enter the file name ! "sample.wsdl". The MyWebservice project is already selected as the container ! of this new resource. </description> </item> ! <item href="/org.rubypeople.rdt.doc.user/html/ch02s03.html" title="Add content to sample.wsdl"> ! <action pluginId="org.rubypeople.rdt.debug.ui" param1="/cheatsheets/Sample.wsdl" ! param2="/MyWebservice/sample.wsdl" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.CopyContentAction"/> ! <description> In the last step you have created the file "sample.wsdl". But why ! is it not there? It is, but is filtered out: In the Ruby Resources views menu deselect ! "Show Ruby Files only" (this can be found by clicking the down arrow in the ! Ruby Resources view MenuBar, in the menu of options). The "Click to Perform" ! buttons copies sample content to the wsdl file. The content is copied from the ! Sample.wsdl file which ships with RDT. </description> </item> ! <item title="Run wsdl2ruby.rb" href="/org.rubypeople.rdt.doc.user/html/ch02s07.html"> ! <description> Open the soap4r project. Open the bin directory and right-click the ! "wsdl2ruby.rb" file to open the context menu. Choose "Run->Run Ruby ! Application". Check the console for the output of the process. There you find the ! required command line options. </description> </item> ! <item title="Modify the run configuration for server generation" ! href="/org.rubypeople.rdt.doc.user/html/ch02s07.html"> ! <action pluginId="org.rubypeople.rdt.debug.ui" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenRunConfigurationAction"/> ! <description> "Click to Perform" opens the run configuration dialog, which is ! also available as Run->Run... from the main menu. The running of wsdl2ruby.rb in the ! last step has created a run-configuration named "wsdl2ruby.rb". Rename it to ! "wsdl-gen-server" Now open the Arguments tab and add "--wsdl sample.wsdl ! --type server" to the program arguments. Then you change the working directory to ! the directory of the MyWebservice project. Therefore you must know where your workspace ! resides on the local disk: If you have forgotten which workspace you are using or where ! it resides, you can choose "File->Switch Workspace". </description> </item> <item title="Check generated server files"> ! <description> The execution of the last step should have generated three files. Because ! they have been created on the file system from the outside, you must execute ! "Refresh" from the context menu of the MyWebservice project. Then you should ! see the new files: webServiceExample.rb, webServiceExampleServant.rb and ! webServiceExampleService.rb. If they are not there or are empty, check the console for ! error messages. If there is a stack trace in the console, you can double-click to open ! the specified file locations. </description> </item> ! <item title="Create Run-Configuration for client generation" ! href="/org.rubypeople.rdt.doc.user/html/ch02s07.html"> ! <action pluginId="org.rubypeople.rdt.debug.ui" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenRunConfigurationAction"/> ! <description> "Click to Perform" opens the run configuration dialog again. ! Perform "Duplicate" from the context menu of the wsdl-gen-server run ! configuration. A duplicate "wsdl-gen-server (1)" will be generated. Rename it ! to "wsdl-gen-client", change the argument "--type server" to "--type client" and click "Run". </description> </item> - <item title="A Note on Run-Configurations" - href="/org.rubypeople.rdt.doc.user/html/ch02s07.html"> - <description> At this point you have created two run-configurations for the wsdl2ruby.rb - file: wsdl-gen-server and wsdl-gen-client. These configurations will be stored in your - workspace and therefore survive restarts of eclipse. You can start them via - "Run->Run History" from the main menu or from the run configuration dialog - opened with "Run->Run...". But because there is more than one - Run-Configuation for the same file, the context menu "Run Ruby Application" - of wsdl2ruby.rb and the "Run->Run As->Ruby Application" from the main menu - are now without function. Although they are still enabled, choosing them does nothing. - This was just an information, use the "Click to Complete" button to proceed. - </description> - </item> <item title="Check generated client files"> ! <description> Click "Refresh" on the MyWebservice project to display the two ! newly generated files: webServiceExampleDriver.rb and webServiceExampleServiceClient.rb. </description> </item> ! <item href="/org.rubypeople.rdt.doc.user/html/ch02s08.html" title="Check ruby version"> ! <description> Please note there are limitations in the ruby versions which are suitable for ! debugging. On Linux there is a restriction to ruby 1.6, on windows ruby 1.8.2 works ! fine but 1.8.1 does not. See help for more details. If your version of ruby ! does not meet these requirements, use "Run->Run Ruby Application" instead of ! "Debug->Debug Ruby Application" in the next step for starting the server. ! </description> ! </item> ! <item href="/org.rubypeople.rdt.doc.user/html/ch02s08.html" title="Debug server"> ! <description> Open the editor for ! webServiceExampleServant.rb (by double-clicking it in the "Ruby Resources" ! view) and set a breakpoint in the line which raises the NotImplementedError. A ! breakpoint can be set and removed either by double-clicking on the vertical bar at the ! left side of the editor or by using the context menu on that bar. Start the debugger ! with "Debug->Debug Ruby Application" from the context menu of ! webServiceExampleService.rb. ! </description> </item> ! <item title="Run client" href="/org.rubypeople.rdt.doc.user/html/ch02s07.html"> ! <action pluginId="org.rubypeople.rdt.debug.ui" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenRunConfigurationAction"/> ! <description> Use the "Click to perform" button or select "Run->Run..." ! from the main menu to open the run configuration dialog. Select "Ruby ! Application" and click "New". Rename the newly created run configuration ! to "run-client" Select webServiceExampleServiceClient.rb as the file to be ! run with the "Browse" button. Go the Arguments Tab and add ! "http://localhost:10080/" as program argument. Click Run. </description> </item> ! <item href="/org.rubypeople.rdt.doc.user/html/ch02s08.html" title="Breakpoint hit"> ! <description> After a while the clients request will trigger the breakpoint in the server ! process. If you haven't debugged before, you will be asked whether to switch to the ! debug perspective or not. You should confirm the switch. In the debug perspective you ! can see where the server process halted and examine the programs state. E.g. you can ! see that the user variable is nil. Being at the end of this sheet you hopefully know ! enough about RDT to modify the client to deliver a useful user object to the server... </description> </item> </cheatsheet> \ No newline at end of file --- 2,190 ---- <cheatsheet title="Using RDT"> <intro href="/org.eclipse.platform.doc.user/reference/ref-cheatsheets.htm"> ! <description> This cheat sheet is an introduction to the Ruby Development Tools ! (RDT) and uses a real world scenario to show how the RDT can be leveraged in your ! work with ruby. As a prerequiste you need to get and install soap4r 1.5.5: extract ! soap4r-1_5_5.tar.gz and run install.rb. Although soap4r is included since ! ruby 1.8.1, you will need it because of the wsdl2ruby.rb file, which is not part of ! ruby 1.8.1 or later. Extract so To start working on this cheat sheet, click the ! "Click to Begin" button below. </description> </intro> ! <item href="/org.rubypeople.rdt.doc.user/html/ch02.html#importantSettings" ! title="Interpreter setup"> ! <description> Make sure you have registered at least one ruby interpreter with RDT. ! Click on the help button if you don't know how to do that. </description> </item> ! <item title="Switch to Ruby Perspective"> ! <action pluginId="org.rubypeople.rdt.debug.ui" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenRubyPerspectiveAction"/> ! <description> Use the "Click to Perform" button to open the ruby ! perspective. This can also be done manually by choosing "Window->Open ! Perspective->Other..." from the main menu and selecting ! "Ruby" from the dialog which opens. </description> ! </item> <item title="Create Ruby project on soap4r"> ! <action pluginId="org.rubypeople.rdt.debug.ui" param1="soap4r" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenNewRubyProjectWizardAction"/> ! <description> In order to run wsdl2ruby.rb from the soap4r package, you create a ruby ! project called soap4r on top of the soap4r installation directory at first. ! After clicking the "Click to Perform" button below, the "New ! Ruby Project" wizard will open. The project name "soap4r" is ! already entered. Disable the "Use Default" checkbox in the project ! content area and use the browse button to select the directory to which you have ! unzipped the soap4r tar ball. </description> </item> <item title="Create MyWebservice project"> ! <action pluginId="org.rubypeople.rdt.debug.ui" param1="MyWebservice" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenNewRubyProjectWizardAction"/> ! <description> In this step you create a new project within your workspace, which will ! be used to hold the wsdl file and the generated code from this file. The project is ! called ! "MyWebservice" The "Click to Perform" button opens the ! "New Ruby Project" wizard again. This time you can leave the ! "Use Default" checkbox enabled. This will create the project as a ! subdirectory into your workspace location. </description> </item> <item title="Add wsdl file to MyWebservice"> ! <action pluginId="org.rubypeople.rdt.debug.ui" param1="MyWebservice" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.CreateWsdlFileAction"/> ! <description> Add a new file called sample.wsdl to the MyWebservice project. In the ! dialog which "Click to Perform" brings up you only have to enter the ! file name ! "sample.wsdl". The MyWebservice project is already selected as the ! container of this new resource. </description> </item> ! <item title="Add content to sample.wsdl"> ! <action pluginId="org.rubypeople.rdt.debug.ui" ! param1="/cheatsheets/Sample.wsdl" param2="/MyWebservice/sample.wsdl" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.CopyContentAction"/> ! <description> In the last step you have created the file "sample.wsdl". ! But why is it not there? It is, but is filtered out: In the Ruby Resources views menu ! deselect ! "Show Ruby Files only" (this can be found by clicking the down arrow in ! the Ruby Resources view MenuBar, in the menu of options). The "Click to ! Perform" buttons copies sample content to the wsdl file. The content is ! copied from the Sample.wsdl file which ships with RDT. </description> </item> ! <item title="Run wsdl2ruby.rb" ! href="/org.rubypeople.rdt.doc.user/html/ch03s10.html"> ! <description> Open the soap4r project. Open the bin directory and right-click the ! "wsdl2ruby.rb" file to open the context menu. Choose ! "Run->Run Ruby Application". Check the console for the output of the ! process. There you find the required command line options. </description> </item> ! <item title="Modify the run configuration for server generation"> ! <action pluginId="org.rubypeople.rdt.debug.ui" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenRunConfigurationAction"/> ! <description> "Click to Perform" opens the run configuration dialog, ! which is also available as Run As->Run... from the main menu. The running of ! wsdl2ruby.rb in the last step has created a run-configuration named ! "wsdl2ruby.rb". Rename it to ! "wsdl-gen-server" Now open the Arguments tab and add "--wsdl ! sample.wsdl --type server" to the program arguments. Then you change the ! working directory to the directory of the MyWebservice project. Therefore you ! must know where your workspace resides on the local disk: If you have forgotten ! which workspace you are using or where it resides, you can choose ! "File->Switch Workspace". </description> </item> <item title="Check generated server files"> ! <description> The execution of the last step should have generated three files. ! Because they have been created on the file system from the outside, you must ! execute ! "Refresh" from the context menu of the MyWebservice project. Then ! you should see the new files: webServiceExample.rb, ! webServiceExampleServant.rb and webServiceExampleService.rb. If they are ! not there or are empty, check the console for error messages. If there is a stack ! trace in the console, you can double-click to open the specified file locations. ! </description> </item> ! <item title="Create Run-Configuration for client generation"> ! <action pluginId="org.rubypeople.rdt.debug.ui" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenRunConfigurationAction"/> ! <description> "Click to Perform" opens the run configuration dialog ! again. Perform "Duplicate" from the context menu of the ! wsdl-gen-server run configuration. A duplicate "wsdl-gen-server ! (1)" will be generated. Rename it to "wsdl-gen-client", ! change the argument "--type server" to "--type client" and click "Run". </description> </item> <item title="Check generated client files"> ! <description> Click "Refresh" on the MyWebservice project to display ! the two newly generated files: webServiceExampleDriver.rb and webServiceExampleServiceClient.rb. </description> </item> ! <item href="/org.rubypeople.rdt.doc.user/html/ch03s12.html#DebugKnownLimitations" ! title="Check ruby version"> ! <description> Please note there are limitations in the ruby versions which are ! suitable for debugging. On Linux there is a restriction to ruby 1.6, on windows ! ruby 1.8.2 works fine but 1.8.1 does not. See Help->Help Contents for more ! details. If your version of ruby does not meet these requirements, use ! "Run->Run Ruby Application" instead of ! "Debug->Debug Ruby Application" in the next step for starting the ! server. </description> </item> ! <item title="Debug server"> ! <description> Open the editor for webServiceExampleServant.rb (by ! double-clicking it in the "Ruby Resources" view) and set a ! breakpoint in the line which raises the NotImplementedError. A breakpoint can ! be set and removed either by double-clicking on the vertical bar at the left side ! of the editor or by using the context menu on that bar. Start the debugger with ! "Debug->Debug Ruby Application" from the context menu of ! webServiceExampleService.rb. </description> ! </item> ! <item title="Modify the client"> ! <description> If you look at the client code in webServiceExampleServiceClient.rb ! you will notice that the user variable is set to nil. Assign a new user object ! instead, e.b. with User.new('myID', 'myName'). Save the editor with the icon ! from the toolbar or ctrl+s.</description> ! </item> ! <item title="Run the client"> ! <action pluginId="org.rubypeople.rdt.debug.ui" class="org.rubypeople.rdt.internal.debug.ui.cheatsheets.webservice.OpenRunConfigurationAction"/> ! <description> Use the "Click to perform" button or select ! "Run->Run..." from the main menu to open the run configuration ! dialog. Select "Ruby Application" and click "New". ! Rename the newly created run configuration to "run-client". Select ! webServiceExampleServiceClient.rb as the file to be run with the ! "Browse" button. Go the Arguments Tab and add ! "http://localhost:10080/" as program argument. Click Run. ! </description> </item> ! <item href="/org.rubypeople.rdt.doc.user/html/ch03s12.html#startDebugSession" ! title="Breakpoint hit"> ! <description> After a while the clients request will trigger the breakpoint in the ! server process. If you haven't debugged before, you will be asked whether to ! switch to the debug perspective or not. You should confirm the switch. In the ! debug perspective you can see where the server process halted and examine the ! program state. E.g. in the Variables view you can see the attribute values of ! the user object. </description> ! </item> ! <item title="Edit the server code"> ! <description>If you have a look at ! the wsdl file, you'll discover that the addUser method expects an integer as return ! value. Therefore you can replace the raise command with "return 0" and ! save the new code. When you save the code the ruby interpreter, which runs the ! server, also reloads the code. Now resume the server with the resume button, ! "Run->Resume" or F8.</description> ! </item> ! <item href="/org.rubypeople.rdt.doc.user/html/ch03s12.html#codeReload" ! title="Check the output of the client"> ! <description> In the Debug view you can see that the client has terminated. In order to ! see its output, select the terminated process. After that the Console shows the ! output of the client, which is a stack trace showing the NotImplementedError: ! although the interpreter has reloaded the new content of ! webServiceExampleServant.rb it finished the stack with the old code. ! Therefore we must run the client again.</description> ! </item> ! <item title="Run the client again"> ! <description> Now run the client again with "Run->Run ! History->run-client", wait for the breakpoint and resume again. The ! console displays 0, the result of the addUser method, instead of the stack trace. </description> </item> + <item title="End"> + <description> This tutorial has given you a short overview of RDT. Please mind that + RDT is an an open source project and needs the feedback and contributions + from the users. Please visit http://www.rubypeople.org/ if you want to help to + further improve RDT.</description> + </item> </cheatsheet> \ No newline at end of file |
|
From: Markus B. <mba...@us...> - 2005-09-16 20:54:00
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14856 Modified Files: plugin.xml Log Message: added reference to rdt.core due to inclusion path calculation Index: plugin.xml =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/plugin.xml,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** plugin.xml 12 Mar 2005 15:41:45 -0000 1.8 --- plugin.xml 16 Sep 2005 20:53:53 -0000 1.9 *************** *** 22,25 **** --- 22,26 ---- <import plugin="org.rubypeople.rdt.launching"/> <import plugin="org.eclipse.core.runtime"/> + <import plugin="org.rubypeople.rdt.core"/> </requires> |
|
From: Markus B. <mba...@us...> - 2005-09-16 20:53:12
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14646/src/org/rubypeople/rdt/debug/core/tests Modified Files: TC_DebuggerCommunicationTest.java Log Message: call RubyCore.getOSDirectory for creating the includeDir if eclipse runs, more useful RuntimeExceptions in case of an error in the ruby process Index: TC_DebuggerCommunicationTest.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests/TC_DebuggerCommunicationTest.java,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** TC_DebuggerCommunicationTest.java 13 Jul 2005 14:26:28 -0000 1.31 --- TC_DebuggerCommunicationTest.java 16 Sep 2005 20:53:04 -0000 1.32 *************** *** 5,12 **** --- 5,14 ---- import java.io.InputStreamReader; import java.io.PrintWriter; + import java.net.ConnectException; import java.net.Socket; import junit.framework.TestCase; + import org.rubypeople.rdt.core.RubyCore; import org.rubypeople.rdt.internal.debug.core.ExceptionSuspensionPoint; [...1255 lines suppressed...] *** 943,947 **** runToLine(3) ; runToLine(4) ; ! out.println("v local") ; localVariables = getVariableReader().readVariables(createStackFrame()); assertEquals("8", localVariables[0].getValue().getValueString()); --- 962,966 ---- runToLine(3) ; runToLine(4) ; ! sendRuby("v local") ; localVariables = getVariableReader().readVariables(createStackFrame()); assertEquals("8", localVariables[0].getValue().getValueString()); *************** *** 949,951 **** --- 968,972 ---- + } + |
|
From: Markus B. <mba...@us...> - 2005-09-16 20:51:38
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14371/src/org/rubypeople/rdt/debug/core/tests Modified Files: OutputRedirectorThread.java Log Message: stores lastLine for better error reporting from TC_DebuggerCommunicationTest Index: OutputRedirectorThread.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.debug.core.tests/src/org/rubypeople/rdt/debug/core/tests/OutputRedirectorThread.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** OutputRedirectorThread.java 14 Jan 2003 21:59:03 -0000 1.1 --- OutputRedirectorThread.java 16 Sep 2005 20:51:30 -0000 1.2 *************** *** 8,11 **** --- 8,12 ---- public class OutputRedirectorThread extends Thread { private InputStream inputStream; + private String lastLine = "No output." ; public OutputRedirectorThread(InputStream aInputStream) { inputStream = aInputStream; *************** *** 15,23 **** System.out.println("OutputRedirectorThread started."); BufferedReader br = new BufferedReader(new InputStreamReader(inputStream)); ! ! String line; try { while ((line = br.readLine()) != null) { System.out.println("RUBY: " + line); } } catch (IOException e) { --- 16,24 ---- System.out.println("OutputRedirectorThread started."); BufferedReader br = new BufferedReader(new InputStreamReader(inputStream)); ! String line ; try { while ((line = br.readLine()) != null) { System.out.println("RUBY: " + line); + lastLine = line ; } } catch (IOException e) { *************** *** 26,28 **** --- 27,33 ---- System.out.println("OutputRedirectorThread stopped."); } + + public String getLastLine() { + return lastLine ; + } } |
|
From: Markus B. <mba...@us...> - 2005-09-15 20:40:10
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt-feature In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9198 Modified Files: feature.xml Log Message: changed version of epic.regexp to 0.1.4 Index: feature.xml =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt-feature/feature.xml,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** feature.xml 27 Mar 2005 06:35:23 -0000 1.27 --- feature.xml 15 Sep 2005 20:40:03 -0000 1.28 *************** *** 156,160 **** download-size="0" install-size="0" ! version="0.1.3"/> <plugin --- 156,160 ---- download-size="0" install-size="0" ! version="0.1.4"/> <plugin |
|
From: Markus B. <mba...@us...> - 2005-09-15 20:40:00
|
Update of /cvsroot/rubyeclipse/org.epic.regexp In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9161 Modified Files: plugin.xml Log Message: changed version of epic.regexp to 0.1.4 Index: plugin.xml =================================================================== RCS file: /cvsroot/rubyeclipse/org.epic.regexp/plugin.xml,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** plugin.xml 13 Sep 2005 18:32:00 -0000 1.3 --- plugin.xml 15 Sep 2005 20:39:53 -0000 1.4 *************** *** 4,8 **** id="org.epic.regexp" name="Regexp Plug-in" ! version="0.1.3" provider-name="Epic Project" class="org.epic.regexp.RegExpPlugin"> --- 4,8 ---- id="org.epic.regexp" name="Regexp Plug-in" ! version="0.1.4" provider-name="Epic Project" class="org.epic.regexp.RegExpPlugin"> |
|
From: Christopher W. <caw...@us...> - 2005-09-15 02:19:59
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2469/src/org/rubypeople/rdt/internal/core Modified Files: RubyScript.java Log Message: close our streams properly! (d'oh I suck) Index: RubyScript.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScript.java,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** RubyScript.java 7 Sep 2005 21:24:29 -0000 1.13 --- RubyScript.java 15 Sep 2005 02:19:50 -0000 1.14 *************** *** 29,32 **** --- 29,33 ---- import java.io.IOException; import java.io.InputStreamReader; + import java.io.Reader; import java.util.Map; *************** *** 286,292 **** public String getSource() { // TODO Cache the contents and only reload if the file hasn't changed! try { StringBuffer buffer = new StringBuffer(); ! BufferedReader reader = new BufferedReader(new InputStreamReader(underlyingFile.getContents())); String line = null; while ((line = reader.readLine()) != null) { --- 287,295 ---- public String getSource() { // TODO Cache the contents and only reload if the file hasn't changed! + BufferedReader reader = null; + String source = null; try { StringBuffer buffer = new StringBuffer(); ! reader = new BufferedReader(new InputStreamReader(underlyingFile.getContents())); String line = null; while ((line = reader.readLine()) != null) { *************** *** 294,304 **** buffer.append("\n"); } ! return buffer.toString(); } catch (CoreException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } ! return null; } --- 297,313 ---- buffer.append("\n"); } ! source = buffer.toString(); } catch (CoreException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); + } finally { + try { + if (reader != null) reader.close(); + } catch (IOException e) { + e.printStackTrace(); + } } ! return source; } |
|
From: Christopher W. <caw...@us...> - 2005-09-15 02:19:57
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2469/src/org/rubypeople/rdt/internal/core/builder Modified Files: RubyBuilder.java Log Message: close our streams properly! (d'oh I suck) Index: RubyBuilder.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/RubyBuilder.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** RubyBuilder.java 6 Aug 2005 22:57:33 -0000 1.9 --- RubyBuilder.java 15 Sep 2005 02:19:50 -0000 1.10 *************** *** 7,10 **** --- 7,11 ---- import java.io.InputStream; import java.io.InputStreamReader; + import java.io.Reader; import java.util.ArrayList; import java.util.Date; *************** *** 231,234 **** --- 232,236 ---- for (int i = 0; i < unitsLength; i++) { checkCancel(monitor); + Reader reader = null; try { IFile file = units[i]; *************** *** 238,243 **** removeProblemsAndTasksFor(file); try { ! parser.parse(units[i].getName(), new InputStreamReader(file.getContents())); } catch (SyntaxException e) { MarkerUtility.createSyntaxError(file, e); --- 240,246 ---- removeProblemsAndTasksFor(file); + reader = new InputStreamReader(file.getContents()); try { ! parser.parse(units[i].getName(), reader); } catch (SyntaxException e) { MarkerUtility.createSyntaxError(file, e); *************** *** 250,253 **** --- 253,262 ---- } catch (IOException e) { RubyCore.log(e); + } finally { + try { + reader.close(); + } catch (IOException e) { + e.printStackTrace(); + } } warnings.clear(); |