You can subscribe to this list here.
| 2002 |
Jan
(17) |
Feb
(80) |
Mar
(56) |
Apr
(79) |
May
(9) |
Jun
(60) |
Jul
(29) |
Aug
(40) |
Sep
(23) |
Oct
(6) |
Nov
(25) |
Dec
(3) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(17) |
Feb
(85) |
Mar
(22) |
Apr
(3) |
May
(18) |
Jun
(27) |
Jul
(38) |
Aug
(19) |
Sep
(15) |
Oct
(6) |
Nov
(2) |
Dec
(5) |
| 2004 |
Jan
(19) |
Feb
(26) |
Mar
(30) |
Apr
(29) |
May
(8) |
Jun
(28) |
Jul
(39) |
Aug
(17) |
Sep
(19) |
Oct
(12) |
Nov
(18) |
Dec
(9) |
| 2005 |
Jan
(5) |
Feb
(18) |
Mar
(4) |
Apr
(5) |
May
(9) |
Jun
(10) |
Jul
(15) |
Aug
(11) |
Sep
(6) |
Oct
(6) |
Nov
(11) |
Dec
(6) |
| 2006 |
Jan
(10) |
Feb
(27) |
Mar
(24) |
Apr
(39) |
May
(14) |
Jun
(14) |
Jul
(5) |
Aug
(15) |
Sep
(21) |
Oct
(25) |
Nov
(10) |
Dec
(6) |
| 2007 |
Jan
(19) |
Feb
(23) |
Mar
(10) |
Apr
(10) |
May
(10) |
Jun
(9) |
Jul
(8) |
Aug
(6) |
Sep
(10) |
Oct
(7) |
Nov
(4) |
Dec
(5) |
| 2008 |
Jan
(23) |
Feb
(13) |
Mar
(19) |
Apr
(11) |
May
(11) |
Jun
(10) |
Jul
(12) |
Aug
(19) |
Sep
(11) |
Oct
(4) |
Nov
(6) |
Dec
|
| 2009 |
Jan
(8) |
Feb
(15) |
Mar
(21) |
Apr
(12) |
May
(14) |
Jun
(9) |
Jul
(2) |
Aug
(17) |
Sep
(36) |
Oct
(31) |
Nov
(13) |
Dec
(13) |
| 2010 |
Jan
(24) |
Feb
(17) |
Mar
(32) |
Apr
(18) |
May
(9) |
Jun
(6) |
Jul
(11) |
Aug
(18) |
Sep
(7) |
Oct
(20) |
Nov
(5) |
Dec
(4) |
| 2011 |
Jan
(1) |
Feb
(5) |
Mar
(3) |
Apr
(1) |
May
(2) |
Jun
|
Jul
(1) |
Aug
(4) |
Sep
(7) |
Oct
(1) |
Nov
(3) |
Dec
(1) |
| 2012 |
Jan
(2) |
Feb
|
Mar
(1) |
Apr
(4) |
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
(1) |
Oct
(3) |
Nov
(3) |
Dec
|
| 2013 |
Jan
(1) |
Feb
(3) |
Mar
(1) |
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2014 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <no...@so...> - 2002-06-11 20:30:24
|
Refactorings item #567610, was opened at 2002-06-11 20:30 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=451586&aid=567610&group_id=44253 Category: None Group: None Status: Open Priority: 7 Submitted By: Charles Reis (csreis) Assigned to: Nobody/Anonymous (nobody) Summary: Refactor CompilerError / JUnitError Initial Comment: All the infrastructure for highlighting lists of errors is currently duplicated in the Compiler Output pane and the JUnit Output pane. This code really needs to be factored out into a common superclass (eliminating a lot of the little bugs from the copy/paste job). ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=451586&aid=567610&group_id=44253 |
|
From: <no...@so...> - 2002-06-11 20:14:53
|
Ease of use Issues item #567599, was opened at 2002-06-11 20:14 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=460211&aid=567599&group_id=44253 Category: Platform Independent Group: None Status: Open Resolution: None Priority: 4 Submitted By: Charles Reis (csreis) Assigned to: Nobody/Anonymous (nobody) Summary: Intelligent Home Key Initial Comment: It would be nice if pressing the Home key moved the caret to the first non-whitespace character on a line, rather than the left margin. Pressing it again (or when the caret is to the left of the first non-whitespace character) will then take the caret to the left margin. For example, foo = new Foo(); ^ -- caret position (press home) ^ (press home) ^ ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=460211&aid=567599&group_id=44253 |
|
From: <no...@so...> - 2002-06-11 20:10:49
|
Ease of use Issues item #567594, was opened at 2002-06-11 20:10 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=460211&aid=567594&group_id=44253 Category: Platform Independent Group: None Status: Open Resolution: None Priority: 5 Submitted By: Charles Reis (csreis) Assigned to: Nobody/Anonymous (nobody) Summary: Break selection on a dot Initial Comment: Right now, double clicking on a chunk of text highlights some notion of a "word". However, this does not break on dots, and it does break on underscores, which is not convenient for code editing. For example, the user double clicks on the first 'o' in foo below. _foo.bar(); Currently, "foo.bar" is selected, but it should select "_foo". ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=460211&aid=567594&group_id=44253 |
|
From: <no...@so...> - 2002-06-11 20:06:31
|
Feature Requests item #567587, was opened at 2002-06-11 20:06 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567587&group_id=44253 Category: User interface Group: None Status: Open Priority: 4 Submitted By: Charles Reis (csreis) Assigned to: Nobody/Anonymous (nobody) Summary: Configurable Toolbar Icon Display Initial Comment: Toolbar icons were disabled in mid-March because they weren't always immediately intuitive to beginning users. They do make the interface look significantly more professional, though, so it would be nice to have the icons be a configurable option. (Text only vs. Icons and Text vs. Icons only). ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567587&group_id=44253 |
|
From: <no...@so...> - 2002-06-11 20:04:29
|
Feature Requests item #567585, was opened at 2002-06-11 20:04 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567585&group_id=44253 Category: User interface Group: None Status: Open Priority: 4 Submitted By: Charles Reis (csreis) Assigned to: Nobody/Anonymous (nobody) Summary: Recent File List / Restore open files Initial Comment: It would be nice to have a list of the most recently used documents in the File menu. It could also be possible to have a configurable option to reopen any files that were open when DrJava closed the next time it opens. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567585&group_id=44253 |
|
From: <no...@so...> - 2002-06-11 19:57:08
|
Feature Requests item #567579, was opened at 2002-06-11 19:57 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567579&group_id=44253 Category: Interactions Group: Small (< 1 pair-week) Status: Open Priority: 5 Submitted By: Charles Reis (csreis) Assigned to: Nobody/Anonymous (nobody) Summary: View/Save Interactions History Initial Comment: It would be nice to have a menu item that allowed viewing and saving the contents of the interactions history, so that a given interactions session can be repeated (or edited into a new class). One issue involved with this is the current 500-line limit on the length of the history-- the user might need to be notified of the limit if he expects to save a longer history. Perhaps the limit could be configurable (not difficult). ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567579&group_id=44253 |
|
From: <no...@so...> - 2002-06-11 19:54:42
|
Feature Requests item #567575, was opened at 2002-06-11 19:54 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567575&group_id=44253 Category: User interface Group: Small (< 1 pair-week) Status: Open Priority: 6 Submitted By: Charles Reis (csreis) Assigned to: Nobody/Anonymous (nobody) Summary: GUI Preferences dialog Initial Comment: There should be a "Preferences" item in the Edit menu which allows editing the config values on the file. This would (perhaps optionally) write the changes out to the ".drjava" file in the user's home directory. This will require making config options updatable on the fly. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567575&group_id=44253 |
|
From: <no...@so...> - 2002-06-11 19:51:09
|
Feature Requests item #567572, was opened at 2002-06-11 19:51 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567572&group_id=44253 Category: Definitions (source editor) Group: Medium (< 1 pair-month) Status: Open Priority: 5 Submitted By: Charles Reis (csreis) Assigned to: Nobody/Anonymous (nobody) Summary: "Go to definition" in source Initial Comment: Many editors have a "Go to definition" action for fields and methods, which brings up the code where the field or method is defined. It might be possible to add this without adding too much overhead or full text parsing, maybe using the line numbers in the classfile (if the class has been compiled). This probably depends on a refactoring of the reduced model as well, with more advanced syntax analysis (detecting the defining instance). ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567572&group_id=44253 |
|
From: <no...@so...> - 2002-06-11 19:47:42
|
Feature Requests item #567571, was opened at 2002-06-11 19:47 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567571&group_id=44253 Category: Definitions (source editor) Group: Medium (< 1 pair-month) Status: Open Priority: 5 Submitted By: Charles Reis (csreis) Assigned to: Nobody/Anonymous (nobody) Summary: Advanced Syntax Highlighting Initial Comment: Several requests have been made for more emacs/JDE-like syntax highlighting, which would involve more syntax analysis in the reduced model. Pending a refactoring of the reduced model, it would be nice to have things like variable and method names highlighted in a different color, and perhaps definining instances in bold. Other highlighting suggestions are welcome here... ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=567571&group_id=44253 |
|
From: <no...@so...> - 2002-06-09 09:21:14
|
Refactorings item #566420, was opened at 2002-06-09 04:21 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=451586&aid=566420&group_id=44253 Category: None Group: None Status: Open Priority: 5 Submitted By: Peter Centgraf (centgraf) Assigned to: Nobody/Anonymous (nobody) Summary: Collapse Indent Structure Initial Comment: While performance profiling in OS X to root out some redraw problems, I noticed that the indent code runs pretty slow. This isn't a show-stopping thing, but I think we can do better. Perhaps it would be appropriate to collapse the rules tree into a single class with various functions, rather than a grouping of separate classes. In theory, this should reduce the classloading and security manager overhead significantly. Another potential optimization would be to integrate this new indent class more directly with the reduced model. I must admit that I'm not terribly familiar with the current structure of the code, but perhaps one of the original developers could move forward with these or similar ideas. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=451586&aid=566420&group_id=44253 |
|
From: <no...@so...> - 2002-06-09 09:11:31
|
Ease of use Issues item #566417, was opened at 2002-06-09 04:11 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=460211&aid=566417&group_id=44253 Category: Platform Independent Group: None Status: Open Resolution: None Priority: 5 Submitted By: Peter Centgraf (centgraf) Assigned to: Nobody/Anonymous (nobody) Summary: Platform-Specific Shortcut Key Initial Comment: http://developer.apple.com/technotes/tn/tn2042.html This page describes several techniques for making a pure Java app OS X savvy. This request is specifically for platform-tailored shortcut modifiers. Right now CTRL-whatever is hard-coded into the menu constructors, but we should instead use java.awt.Toolkit.getMenuShortcutKeyMask() to build the menu items. Full details and an example are at the URL above. Whoever implements this should also investigate InputMap and ActionMap and see if those facilities would be helpful for organizing the DrJava codebase. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=460211&aid=566417&group_id=44253 |
|
From: <no...@so...> - 2002-06-07 14:42:09
|
Bugs item #565849, was opened at 2002-06-07 09:42 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=565849&group_id=44253 Category: Definitions (source editor) Group: Serious Status: Open Resolution: None Priority: 5 Submitted By: Christopher Haynes (chaynes) Assigned to: Nobody/Anonymous (nobody) Summary: indentation error Initial Comment: Component[] hComponents = { new JLabel("Age "), ageField, new JLabel(" Life remaining "), lifeField, new JLabel(" Strength "), strengthField // the above 5 lines are indented one too many levels }; // all the following lines are indented one too many levels Component[] vComponents = { SwingUtil.hBox(hComponents), panel, new JLabel("The arrow keys move muncher. Eat all you can!"), new JLabel("Type N for new game and R to redraw.") }; ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=565849&group_id=44253 |
|
From: <no...@so...> - 2002-06-07 14:40:26
|
Bugs item #565848, was opened at 2002-06-07 09:40 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=565848&group_id=44253 Category: Interactions Group: Annoying Status: Open Resolution: None Priority: 5 Submitted By: Christopher Haynes (chaynes) Assigned to: Nobody/Anonymous (nobody) Summary: Interaction limitation Initial Comment: If I refer to class Foo in the interactions window, and Foo.class is in the current directory but I haven't compiled it yet in the current DrJava session, it complains it doesn't exist. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=565848&group_id=44253 |
|
From: <no...@so...> - 2002-06-07 14:39:18
|
Bugs item #565845, was opened at 2002-06-07 09:39 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=565845&group_id=44253 Category: Definitions (source editor) Group: Annoying Status: Open Resolution: None Priority: 5 Submitted By: Christopher Haynes (chaynes) Assigned to: Nobody/Anonymous (nobody) Summary: query replace does't scroll Initial Comment: Query replace doesn't scroll found text into view. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=565845&group_id=44253 |
|
From: <no...@so...> - 2002-06-06 17:47:56
|
Bugs item #565444, was opened at 2002-06-06 12:47 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=565444&group_id=44253 Category: User interface Group: Annoying Status: Open Resolution: None Priority: 3 Submitted By: Christopher McGraw (cmcgraw) Assigned to: Nobody/Anonymous (nobody) Summary: Closed/reopened files lose highlighting Initial Comment: In both the compilerErrorPanel and junitErrorPanel, if a file containing errors is closed, its errors are still listed in the corresponding panel. Clicking on one of those errors will reopen the file, however, since the errorListModel has been lost, the errors cannot be highlighted in the source. Nothing crashes, nor does this bug cause an instability but it's annoying to lose this functionality. Some way of keeping the positions array past file closure would go a ways towards solving this problem, but such an approach introduces other problems in itself. On the other hand, removing the entries from the error panel once the file has been closed is difficult as well. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=565444&group_id=44253 |
|
From: <no...@so...> - 2002-06-06 14:33:29
|
Bugs item #565335, was opened at 2002-06-06 14:33 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=565335&group_id=44253 Category: JUnit integration Group: Makes DrJ unstable Status: Open Resolution: None Priority: 7 Submitted By: Charles Reis (csreis) Assigned to: Christopher McGraw (cmcgraw) Summary: JUnit instability Initial Comment: In drjava-20020601-1447, Eric disabled the JUnit integration because of problems it had swith some types of test failures. Looking more closely, this appears to be partly a parsing problem (which might have been recently introduced when another problem was being addressed), but largely because only "failures" were being included, and not "errors". The JUnit TestResult object returns an enumeration of "failure" TestFailures, which occur when an assertion fails, etc, but it also returns an enumeration of "error" TestFailures, when any other type of exception (eg. NullPointer) is thrown. Our problem seems to be that we're allocating an array big enough for both, but only putting in the "failures" and not the "errors". This led to null pointer exceptions on the array elements meant for "errors". There also appear to be some parts of MainFrame which need to be updated for the JUnitErrorCaretListener. (Copy/paste job from CompileErrorCaretListener...) ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=565335&group_id=44253 |
|
From: Charles R. <cr...@ri...> - 2002-06-03 19:24:40
|
Hey everyone-- We're starting summer development on DrJava today, which means there will be more traffic again on this mailing list and on the Features/Bugs trackers. I'm guessing some of you from Comp 312 will not want to be on these lists anymore, so I wanted to warn you. I haven't figured out an easy way for you to take yourself off, but if you figure it out, feel free to post it to the list. Otherwise, just send me an email (cr...@ri...) and I can take you off the list and trackers manually. Of course, you're all more than welcome to stay on the list and continue contributing whenever you have free time, but if you know you're finished with it, just let me know. Thanks! Charlie |
|
From: Peter C. <cen...@ri...> - 2002-06-01 21:38:42
|
http://alphaworks.ibm.com/tech/jate Looks like a somewhat more advanced framework than JUnit, including code coverage tools and some other slick features. It might be worth some investigation. http://public.kitware.com/Dart/HTML/Index.shtml This project goes a step further and provides distributed building, testing, and reporting facilities. -- Peter |
|
From: <cen...@ri...> - 2002-05-22 21:35:58
|
This page describes methods to make Java apps into better OS X citizens without compromizing portability. I'll be reading through this now and creating feature/refactoring requests as appropriate. I suggest that other DrJava developers take a look at this page, too, so that future work will play nice with OS X from the beginning. http://developer.apple.com/technotes/tn/tn2042.html -- Peter |
|
From: <no...@so...> - 2002-05-16 20:23:19
|
Bugs item #556944, was opened at 2002-05-16 20:23 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=556944&group_id=44253 Category: User interface Group: None Status: Open Resolution: None Priority: 5 Submitted By: Christopher McGraw (cmcgraw) Assigned to: Nobody/Anonymous (nobody) Summary: Missing cursor/disabled text entry Initial Comment: This bug report is meant only as a log of particular idiosyncracies with the latest DrJava jar, encountered on a SunBlade100 running SunOS 5 under TWM employing different JDKs. -- using Solaris VM (build Solaris_JDK_1.2.2_07a): the cursor is not visible but is still functional, allowing text entry at any specified point within the Definitions or Interactions window. -- using Java 2 (build 1.4.0-beta2-b77): the cursor fails to appear at all and text entry is impossible in all fields. I couldn't find a workaround. -- using Java 2 (build 1.4.0-b92): no comparable difficulties Like I said, this is only being posted for future reference -- I don't think incompatibilities with past versions of the JDK have any bearing on the current direction of development ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=556944&group_id=44253 |
|
From: Eric E. A. <eri...@ma...> - 2002-05-06 22:52:57
|
Peter, Brian is pretty much gone at this point. We shouldn't expect that he'll be doing any more work on the DrJava project. But ant is not hard to learn, so if you want to add a new target to build.xml, I encourage you to go ahead and learn how to do it yourself. As a general rule of etiquette, if you want some feature added to Drjava or the build file, and you don't know how to do it yourself, you should ask someone who does know how to pair program with you. Don't ask them simply to implement it for you. For one thing, it's an imposition on their time. For another thing, it keeps knowledge locked up where it should be disseminated. If you would like, I can pair program with you to add this target, but not until after May 10. -- Eric On Monday, May 6, 2002, at 04:09 PM, Peter Centgraf wrote: > Brian (or anyone on the list with ant sk1llz), > > Could you please add a new ant target for building a Mac OS X-style > app? This would simply build a jar, copy the packaging/DrJava.app > directory to built, and move the jar into the appropriate location > inside DrJava.app. If you want to be super-cool, tar-gzip the > directory when you're done. This could be two new targets, "appl" and > "mac-tgz" maybe. I would do it myself, but I think you could probably > whip this out in a few minutes. Thanks. > > -- > Peter > > > _______________________________________________________________ > > Have big pipes? SourceForge.net is looking for download mirrors. We > supply > the hardware. You get the recognition. Email Us: > ban...@so... > _______________________________________________ > drjava-hackers mailing list > drj...@li... > https://lists.sourceforge.net/lists/listinfo/drjava-hackers |
|
From: Peter C. <cen...@ri...> - 2002-05-06 21:09:33
|
Brian (or anyone on the list with ant sk1llz), Could you please add a new ant target for building a Mac OS X-style app? This would simply build a jar, copy the packaging/DrJava.app directory to built, and move the jar into the appropriate location inside DrJava.app. If you want to be super-cool, tar-gzip the directory when you're done. This could be two new targets, "appl" and "mac-tgz" maybe. I would do it myself, but I think you could probably whip this out in a few minutes. Thanks. -- Peter |
|
From: <no...@so...> - 2002-05-06 10:16:12
|
Feature Requests item #552825, was opened at 2002-05-06 05:16 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=552825&group_id=44253 Category: User interface Group: Medium (< 1 pair-month) Status: Open Priority: 5 Submitted By: Theo Yaung (theoyaung) Assigned to: Nobody/Anonymous (nobody) Summary: timestamp checking Initial Comment: keep track of timestamps: (1) last time file was read from filesystem (2) last time file was modified when you read the file. Use those timestamps when doing disk I/O, particularly to prevent something destructive. Story: User opens a file in DrJava, but user is not an expert, and also opens it in emacs. User edits the file some in DrJava, and also in emacs. User saves the emacs version, and is about to save the DrJava version overwriting the emacs version. DrJava should warn the user that the file has changed since the last time it read it from the file system, to confirm the save-over. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438938&aid=552825&group_id=44253 |
|
From: Peter C. <cen...@ri...> - 2002-05-06 00:44:28
|
Here's a progress report on my attempts to improve DrJava performance on OS X. I've done a bit of profiling with the OptimizeIt tool from Borland (free trial download). I discovered several interesting things: MainFrame.updateFileTitle() was the culprit for most of the window updating. This method was getting called for every edit keystroke, and was updating the entire window and then the doc list. This code should only be executed when the title changes: when a modified file is saved, after a Save As, or when an unmodified file is first edited. To check this, I added a new field to MainFrame (_fileTitle) and verify this value against the current title before making expensive redraw calls. I'm still investigating whether it's possible to repaint an individual item in the JList, rather than the whole (mostly empty) list. The whole editor pane is still getting updated with each edit. That shouldn't be necessary. Resolving that is my next point of attack. Position updating adds a serious CPU cost for general editing operations. Almost all of that CPU time can be traced back to AbstractReducedModel.absOffset(). This method eats CPU for breakfast. As far as I can tell, it is retokenizing the entire source file (backwards) every time the position is updated. After clicking around in DefaultGlobalModel for about a minute, the profile showed that this function had cost over half of the total CPU time. That file is around 1600 lines, which is not unreasonable for a complex class. I don't think that a 15-20 second delay is justified just to update a line count. There has got to be a faster way of doing this. I recommend that position updating be pulled out of the main build for the time being until the serious performance problems in the reduced model are resolved or avoided. The buildTree() method in the indenting framework is eating slightly over a second of CPU time on my machine. This cost seems to be a one-time hit, but it's fairly significant. It would probably be worth a follow-up pass on the code to see if some of that time can be recovered. I plan to do a little more investigating today to see if I can slim things down before our next public release. -- Peter |
|
From: <no...@so...> - 2002-05-06 00:36:52
|
Bugs item #552691, was opened at 2002-05-05 19:36 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=552691&group_id=44253 Category: Performance Group: Annoying Status: Open Resolution: None Priority: 5 Submitted By: Peter Centgraf (centgraf) Assigned to: Nobody/Anonymous (nobody) Summary: Slow Line Number Update Initial Comment: The current implementation of AbstractReducedModel.absOffset() reparses the entire source file, backwards. This is the comment for the method implementation: /** * Package private absolute offset for tests. * We don't keep track of absolute offset as it causes too much confusion * and trouble. */ Clearly this was never intended to be used for normal editing operations. Note that this method is getting called by the column and line numbering code after every source change, which means that every keystroke or click in the definitions pane is causing the entire file to be retokenized. This will need a reimplementation or a separate absolute position-tracking mechanism in order to have reasonable performance for large files. I tried looking through the reduced model code to see if this could be added. I got lost very quickly and gave up. -- Peter ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=438935&aid=552691&group_id=44253 |