[Skip to content]

Release History Beta Versions

Provides details about the changes, fixes and enhancements between the different beta versions.

1.0 Beta 10 (2002-11-14)

New features
  • Work started to provide a FAQ. There is currently only one topic: How one should submit a bug report
Bug fixes
  • Newlines after case statements were not printed (as always: only with Sun brace style). Reported by Sebastian Eigner (#638369)
  • In certain cases the indentation after printing assignments was not correct. Reported by Grzegorz Pilarczyk (#638279)
  • Array types were not correctly printed when they contained more complicated expressions. Reported by Benni Mas (#638355)
  • The settings format was not correctly updated from 1.0b7 to 1.0b8. Reported by Marc Gerstmair (#637864)
  • Code conventions were exported with platform specific encodings which could easily cause harm. Additionally no XML declaration was printed. Now UTF-8 is used and the declaration printed. Reported by Tim Moore (#637262)
  • The wrapper scripts only worked when the full pathname to the script-files were used. Reported and fixed by Kees Kuip (#637915). Thanks
  • Blank lines before blocks without associated block statements (I call them freestanding blocks) were not printed
  • Additional semicolon(s) after the last import statement caused the blank lines logic to fail, no blank lines were printed for such a (rare) case
  • JBuilder Plug-in: the Plug-in now displays an error message if no compatible log4j version could be found in the classpath and describes a work around for the problem

1.0 Beta 9 (2002-11-12)

New features

All aforementioned features were requested, sponsored and thoroughly tested by the German Techniker Krankenkasse. Hurray!

  • The sources have been internationalized
  • Jalopy now contains a simple Code Inspector that is able to inspect your sources for naming convention violations and possible code weaknesses. See the Code Inspector chapter in the manual
  • New history methods that uses checksums to better handle change detection for files. See History section. Very cool feature contributed by Michael Callum
  • Javadoc tag checking for @throws tags can now be enabled separately. See Correct @throws tags
  • Array type brackets may now be printed after the identifier. See Misc section. Requested by John Zukowski (#599239)
  • You can now specify whether Jalopy should insert a trailing empty line at the end of files in order to avoid problems with certain text formatters and processors. See Misc section. Note that Jalopy always inserts a trailing newline after EOF-comments (like footers). Requested by David Karr (#589696)
  • The order of import statement groups is now user configurable. See Import section. Requested by Jürgen Ebert (#591904)
  • The Format menu item now appears in the context menu of the Content Pane too
  • Auto-correction for Javadoc @throws tags can now be controlled separately. See Correct @throws tags for insight
  • NetBeans Plug-in: the Format action is now available for Servlet nodes too
  • JBuilder Plug-in: the Format item it now available in the context menu of content tab pane too
  • JBuilder Plug-in: Breakpoints and Bookmarks are restored after formatting
  • JDeveloper Plug-in: the Plug-in has been completely rewritten. Formatting works for workspaces too, the message output is displayed in a nice tree view. And the whole thing is now compatible with JDeveloper 9.0.3
  • The core engine is now able to track positions. The IDE Plug-ins are therefore now able to restore the mouse pointer correctly (it will be positioned before the line with the node that was nearest to the last caret position)
Bug fixes
  • The cleanup of the backup directory could lead to NPE. Reported by Mike Dubman (#617942)
  • The output of array initializers has been improved. Reported by Kate Rhodes (#617684)
  • Important statements collapsing failed because of incompatible parse tree changes between 1.0b7 and 1.0b8. Reported by Mark Ralph (#617608)
  • Handling of Javadoc comments failed for methods/ctors returning an array type. Reported by Magnus Ihse (#615039)
  • The problem with wrong indentation after assignments has gone. Reported by Timo Carl (#612049)
  • Treat different option has been corrected to work with all styles. Reported by Eric Lamontagne (#611182)
  • I've fixed some cases where Jalopy produced trailing white space on wrapping lines. There may still be others... Reported by Ralf Wiebicke (#607697)
  • The Javadoc printer failed to output HTML definition lists correctly. Reported by David Cooper (#607416)
  • The Javadoc printer failed to output HTML definition lists correct. Reported by David Cooper (#607416)
  • Array initializers inside statements were not printed correctly. Reported by Dirk Hoffmann (#607303)
  • Variable macros did (as documented) not work for names like user.name. Reported by Don Johnson (#606173)
  • Empty lines in multi-line comments produced trailing white space. Reported by Ralf Wiebicke (#605998)
  • Javadoc trailing comments were ignored. Jalopy will now (again) treat such cases as errors. Reported by Ralf Wiebicke (#604072)
  • Jalopy duplicated comments in some rare cases. Reported by David Cooper (#604065)
  • The console app failed to work on certain platforms due to class loading problems. Reported by Benjamin Geer #604038
  • No blank lines were kept for synchronized blocks. Reported by Kees Kuip #603455
  • Variable interpolation did not work in header or footers. Reported by Daniel Frey #601901
  • Jalopy lost trailing comments in certain cases. Reported by Shankar Unni, Steve Corwin, Ray Powell (#601393, #602169, #603914)
  • Jalopy failed to handle empty Javadoc standalone tags. Reported by Henrik Kjær and Don Johnson (#601204, #606163)
  • JBuilder Plug-in: the Plug-in is now compatible with JBuilder 7.0. Reported by Simeon Zverinski (#596821)
  • The example Ant task in the manual contained a syntax error. Reported by Eric Larson (#595777)
  • With generating Javadoc comments enabled, existing variable/method/class-level comments were dropped if not in Javadoc style. Reported by John Zukowski (#595164)
  • Auto-insertion of braces for brace less if-else blocks did not work as expected (for Sun brace style). Reported by John Zukowski (#595160)
  • @throws tags were wrongly inserted in some cases. Reported by Jarek Sacha (#594738)
  • Printing of empty class/interface bodies failed, if cuddling of braces was enabled. Reported by Richard Tasker and Benjamin Geer (#594076, #597080)
  • @version tags were wrapped if max. line length exceeded, and therefore failed to be updated by CVS when checked in. Reported by Johnny Cass (#592504)
  • Jalopy used to insert two many blank lines before certain statements. Reported by Kees Kuip (#592496)
  • jalopy.sh and preferences.sh failed to work (under some unix flavors) because of wrong end-of-line characters. Actually a build/CVS problem. Reported and fixed by Kees Kuip (#592487)
  • Eclipse Plug-in: upon startup of the IDE org.eclipse.swt.SWTException: invalid thread access was thrown. Reported by Dirk Jacobs (#567314)
  • Backup files were always kept if the output target was not a file
  • jEdit Plug-in: the Format current Buffer menu item was grayed out upon start-up if the buffer contained a non-Java file
  • Console Plug-in: specifying several regular expression patterns did not work. Reported by Sameer Singh
  • The .XML settings format has been revised. It should now be somewhat cleaner. These changes are transparent, the old settings format can be imported but only the new format will be exported. Those who use the .XML format should re-export their settings to avoid the auto-transformation (and of course, there are many new options)
  • The /bin directory of the distributions have been renamed to /lib. For the Console and Ant Plug-ins the /bin now only contains the wrapper scripts and the libraries moved to /lib.
  • Eclipse Plug-in: the Format label in the project view context menu no longer appears at the end. Suggested by Davor Cengija and Vincent Massol (#578331)
  • JBuilder Plug-in: the Format item in the project view context menu is now more context sensitive. It won't pop up for non-Java files. Additionally, when formatting the whole Project a confirmation message box appears
  • The @todo tag is now part of the build-in tag list
  • The Tab support has been rewritten. If tabs are enabled, *all* white space will be realized with tabs (not only leading white space as with the former implementation)
  • Denis N. Antonioli contributed several patches for the Javadoc parser:
    • The parser is now able to handle left curly braces that are not part of an inline tag
    • Attributes must not be quoted and numeric attributes may also start with %
    • The closing tags for <dd>, <dl>, <dir> are now optional
    Thank you!
  • Parameter alignment of method or constructor declarations now works regardless of the indentation settings (it did not work with custom indentation in earlier versions)
  • The preview frame no longer uses the (unmaintained) jEdit Public Domain text area but rather a standard JEditorPane with a highlighter derived from the BlueJ project (and that highlighter is again build upon the jEdit Public Domain syntax package). Users of prior betas may safely remove the file textarea-2.2.3.jar from their disks

1.0 Beta 8 (2002-08-06)

New features
  • Thanks to Frank Klomp from www.informatikatelier.com a Plug-in for Oracle JDeveloper 9i is now available. See Plug-in section
  • Jalopy now comes with a simple project manager to make switching between several code conventions easier. See Project section
  • ConsolePlugin: new option --force
  • The line wrapping for chained method calls now works for nested calls too
  • The settings dialog now comes with a live preview. Requested by Erik Dick (#563215)
  • Similar to Jindent, Jalopy is now able to perform variable interpolation for the header or footer and Javadoc comment templates. See Environment variables section. Requested by Erik Dick (#563213)
  • Similar to Jindent, you can now define custom Javadoc templates for fields, classes/interfaces, constructor and method comments. See Javadoc Templates section
  • The sorting order for the Java modifiers is now configurable. See Sorting section
  • The texts for separator comments are now user configurable. See Separation section. Requested by Dirk Jacobs (#567322).
  • The grouping of import statements can now be disabled. See Imports section. Requested by Emil A. Lefkof (#562475).
  • Lowercase "l" as trailing character for literal longs will be automatically capitalized during printing
  • The abstract modifier will be automatically removed if found for interface or interface method declarations (as these are implicitly abstract).
  • You can now specify whether Java sources should be parsed as J2SE 1.4 compatible (the default) or if sources should be parsed without treating assert as a reserved keyword (i.e. J2SE 1.3 compatible). See the General section. This change addresses bugs #565512 and #576983
  • The header detection now provides a Smart Mode for users who want to use singe-line comments for headers. If enabled, Jalopy treats the first n number of singe-line comments before the first node as part of a header and removes them. See the Header section
  • The element sorting changed: Added was a new category Static variables/initializers to avoid touching the class initialization as required by the Java language specification ("static initializers and class variable initializers are executed in textual order"). This partially addresses the feature request #545603 also. Reported by Kirk Wolf
  • The import optimization feature is now available for the Ant Plug-in too. See the Ant Plug-in chapter
Bug fixes
  • Setting for Space before Brackets didn't take effect
  • Setting for Space Before Brackets in Types didn't take effect for something like new String[0]
  • jEdit Plug-in: The integration with the Global Options dialog doesn't suffer from the resizing problems anymore
  • jEdit Plug-in: Jalopy directed all formatting messages always to the first view
  • Read-only files don't cause exceptions anymore. Jalopy will now display a warning message. Reported by Andrew Barkley (#587068)
  • Enclosed creator constructs could lead to uncompilable code. Reported by Eddy Kivits (#586450)
  • do-while blocks without enclosing braces where not treated correctly. Reported by Marcel Toele (#581394)
  • The Javadoc printer missed a blank between the @link tag and following HTML links. Reported by Brian Harriger (#581299)
  • EOL characters were not correctly translated for multi-line, special and Javadoc comments. Reported by Olivier Mengué (#572130)
  • Enabling the cuddling of empty braces lead to compilation errors if an trailing comment appeared before the opening brace. The cuddling is now disabled for such a (rare) case. Reported by Kees Kuip (#568974)
  • NPE during import that only appeared with certain JDKs. Reported by Davor Cengija (#566205)
  • The insertion of Javadoc comments did not work for classes/interfaces and fields (it was not implemented). Reported by Thomas Börkel (#564255)
  • After importing settings from a distributed location, Jalopy did not use these settings if the host was unavailable on successive invocations (but rather the build-in defaults); now the imported settings are used and a warning message issued. Reported by Thomas Börkel (#563976)
  • The Java Language Specification requires every single-line comment to be terminated by an end-of-line sequence, but Jalopy allowed a single-line-comment to be terminated by an end-of-file. Reported by Thomas Börkel (#563974)
  • Ant 1.4.1 (or earlier) caused problems because of an incompatibility with the bundled AElfred parser. Therefore the parser (and all other 3rd party libraries) are no longer bundled to enable you to selectively copy the needed libs into the Ant /lib folder. Documentation was updated to explain the issue. Reported by Larry Hamel et.al. (#563385)
  • The Java parser failed for (strange) code like if (obj.getClass() == (byte.class)). Reported by Hui Lin (#562681)
  • try/catch blocks were not correctly formatted (again only with Sun brace style). Reported by Emil A. Lefkof (#562039)
  • Chained method calls were wrongly wrapped if part of an expression. Reported by Emil A. Lefkof (#562037)
  • Fixed some bugs regarding (evil) Sun brace styling. Reported by Emil A. Lefkof, Thomas Börkel, Larry Hamel and Christian Halstrick, Anders Johansson (#562034, #564247, #569306, #569031, #580600)
  • The settings format was not correctly updated between 1.0b6 and 1.0b7 causing an IllegalArgumentException if the history feature was disabled. Reported by Martin Spiller (#561398, #561675)
  • As the comment preserving/printing implementation has been rewritten, trailing comment support should now work in nearly all cases. At least all reported issues are now treated correctly. Reported by Stephane Houle, Emil A. Lefkof, Kees Kuip, John Wilson (#559222, #565820, #562034, #578664)
  • The user selected brace style did not take effect for anonymous inner classes. Reported by Ian Brown (#545431)
  • Fixed a minor GUI bug in the Javadoc panel (column headers did not show up using Windows L&F). Reported by Thomas Sauzedde (#544404)
  • JBuilder Plug-in: it now checks whether the classpath is correctly set up (whether all defined libraries exist) and if something seems to be broken, the import optimization feature is enabled to avoid errors (a dialog appears to inform you about the misconfiguration)
  • JBuilder Plug-in: the Jalopy Options... menu item now appears in the Options group of the Tools menu.
  • jEdit Plug-in: the Plug-in does not use ErrorList anymore, but rather relies on the MessageView Plug-in which is bundled with the distribution (as it is not yet available through the jEdit Plugin Central)
  • The sorting logic for variable declarations now compares by access modifiers first, then (new!) type name and only if these two are equal by name (identifier)
  • The Javadoc printer now inserts a newline after every found <br> tag (only happens if Javadoc parsing is enabled). This addresses the "Bug" reported by Tony Falabella (that was no bug but rather the behavior I found sufficient) (#562502)
  • The default setting for the backup level changed, it is now set to "0" (no backups are kept)
  • The settings dialog is no longer a modal dialog (necessary for the live preview)
  • Started from the command line, the settings dialog now appears in the task bar (under Win32). Suggested by Knut Wannheden
  • The bundled ANTLR runtime has been repackaged to avoid versioning problems
  • Apart from the ANTLR runtime, the binary distributions no longer bundle the needed 3rd party libraries. Thus the installation procedure for some Plug-ins requires more care: you have to manually remove outdated 3rd party libraries before you copy the .jars provided with Jalopy into the Plug-in/module folder of your application (Applies to Ant, Console, JBuilder and jEdit, if done manually)
  • Some shipped 3rd party jars we're updated: log4j to 1.2.6, Oro to 2.0.6, JAXP to 1.2.

1.0 Beta 7 (2002-05-26)

New features
  • The wrapping behavior for throws clauses is now more configurable. See Wrapping section. Requested by Stephane Houle (#559222)
  • Indentation for extends, implements and throws can now be specified explicitly. See Indentation section
  • Chained method calls are now wrapped (if line wrapping is enabled, of course). You can either force wrapping after every call (Refer to the Wrapping section) or let wrapping happen automatically. Requested by Stephane Houle (#559222)
Bug fixes
  • Sometimes stdin was not formatted. Reported and fixed by Kees Kuip (#559503)
  • 1.0b6 failed to work with J2SE 1.3.0 due to a bug in the handling of the index list .jar entry. Ant 1.5beta1 named it quot;INDEX.LIST" but J2SE 1.3.0 expects "Index.list" which in turn lead to class loading problems. Reported by Steve Bromley (#559704) and Joel Alaux (#559240)
  • Console Plug-in: Parsing a non-valid Java file with stdin always resulted in an exit code "0". It now returns "1" in such cases. Reported by Kees Kuip (#560709)
  • The file history failed to work (because of an initialization error)
  • The wrapper scripts for the Console Plug-in failed to work (I forgot to rename the startup class that has changed in 1.0b6). Reported by Ronen Rotstain
  • The JBuilder Plug-in is now compatible with jVI. Reported by Rich Kadel (#559761)
  • Javadoc tags were (intentionally) only printed if the Javadoc comment belonged to a class/interface or method/ctor declaration. Reported by Tony Falabella (#559357)
  • Specifying a relative file as input source could lead to a file loss in case of RuntimeExceptions during the processing and a backup level of "0". Reported by Kees Kuip (#558353)
  • The NetBeans module failed to function properly due to a wrong Manifest .jar entry. Reported by Nico Max and Davide Baroncelli (#558560)
  • If Space around Shift operators was disabled, Jalopy failed to add white space around the instanceof operator. Reported by Roger Kemp (#558482)
  • Fixed a small but annoying bug regarding the alignment of assignments. Reported by GilloS (#558638)
  • The detection logic for debug logging calls has been slightly improved. Calls like Configuration.debug() won't be treated as logging calls anymore
  • The custom Javadoc tag definitions are not stored in distinct files anymore but rather go into the settings file (to make it portable across system boundaries)
  • The Ant task attribute handling changed: if you omit any optional attribute now the corresponding settings will be used for *all* attributes

1.0 Beta 6 (2002-05-19)

New features
  • Thanks to Roman Sarychev, Jalopy now provides the ability to import/export settings in an .XML format (#549177)
  • Jalopy is now able to keep original blank lines. See Separation section for details (#555914)
  • Modifiers of declarations can now be sorted. See Sort section for details
  • You can now enable the auto-insertion of an enclosing conditional for logging calls. See Misc section for details. Requested by Larry Hamel (#550336)
  • Parameters of method definitions can now be aligned. See Indentation section. Requested by Gary Bentley (#551205)
  • The default grouping depth is now user configurable. See Imports section. Requested by Larry Hamel
  • Added new options (before and after curly braces, blocks...) to customize the blank lines behavior. See Separation section
  • You can now print a blank between array type and initializer. Requested by David Weitzman (#548888)
  • Jalopy is now able to load its settings from an Internet address. Refer to the General section of the manual. Cool feature requested by Sven van't Veer
  • You can now use stdin/stdout redirection from the command line. If no input file(s) are specified, Jalopy will start listening on stdin. Note that the command line interface is now only available via the Console Plug-in! See Examples section
  • For array initializers you can now force a specific number of elements to be printed on each line or whether all elements should be printed on one line. See Wrapping section
  • Eclipse Plug-in: the Packages view context menu now contains a formatting menu item
Bug fixes
  • Eclipse Plug-in: Fixed a bug in the shutdown hook. Only occurred if one had not formatted several files at once during a session. Reported by Eric Vickery
  • Multi-line comments were not printed correctly if parsing of multi-line comments was disabled and the individual lines not starting with a leading asterix. Reported by Tony Falabella (#554141)
  • Javadoc generation failed if Parse/Format tags was disabled. Reported by Gary Bentley (#551194)
  • Serial version UID check box didn't save. Reported by Kevin Duffey (#551604)
  • Formatting an opened file with one of the Plug-ins did not create a backup file. Reported by Warren Nicholls (#545077)
  • Custom Javadoc tag definitions are now loaded correctly and thus working. Reported by Arnd Empting (#547028)
  • Fixed an trailing comment bug for the Sun brace styling. Reported by Martin Spiller (#545616)
  • Eclipse Plug-in: After formatting the active editor, the IBeam cursor was not restored but rather the default cursor showed up
  • Line wrapping for while and do-while expression parts now working (I forgot the markers)
  • Fixed a blank lines issue for singe-line comments (printed one extra behind left curly braces, this is now user configurable)
  • Fixed another blank lines issue for the Sun brace style (missed one blank line between blocks. Reported by Bradley Smith (#545941, #544459)
  • EOF comments weren't always treated correctly (in case of singe-line comments). Reported by Ian Brown (#544706)
  • jEdit Plug-in: Updated to work with 4.0 final. It now won't work with any prior release (#544100)
  • NetBeans Plug-in: fixed a build problem causing the .nbm file to be missing in the distro archive. Reported by Brian Ewins (#544162)
  • Fixed a minor bug in the JavadocPrinter regarding the printing of lists
  • Footers were always removed no matter whether enabled or disabled
  • Left curly brace for array initialization expression now regards the selected brace style
  • The license terms have changed. The core runtime and most of the Plug-ins are now released under a BSD license. Due to license restrictions of a 3rd party library, the command line interface has been removed from *ALL* distributions and a new Plug-in was created: the Console Plug-in.
  • JBuilder Plug-in: switching project does not bring up a blocking progress dialog anymore. The class repository is loaded in a background thread
  • All file dialogs are not opened directly anymore but are accessible via an intermediate component that provides a history
  • Eclipse Plug-in: Updated the plugin.xml to work with the latest stable build (20020416). This change only regards the menu item to invoke the Jalopy settings dialog; this item now appears under the 'Window' menu as the 'Workbench' menu has been gone
  • The Javadoc parser now recognizes <br/> as a valid HTML tag. (#547028)
  • The Javadoc parser now checks whether any custom tag definition was added/removed since the last run and therefore needs reloading
  • Specifying an empty string input via Jalopy#setInput(String, String) no longer throws IllegalArgumentException, instead the input is handled like an up-to-date file
  • Load... and Save... buttons on the General settings page has been renamed to Import... and Export...
  • Changed the comment handling of labeled statements: if the following loop had comments before, these were printed before the labeled statement, now they will be printed before the loop statement
  • The build scripts has been updated to use Ant 1.5beta1 features. Prior Ant releases won't work anymore
  • Updated the bundled log4j distribution to 1.2.1. Adopted the new naming scheme and renamed all Category and Priority instances. Note that 1.2 is *no* drop-in replacement (no matter what the log4j docu says) as they renamed a public (sic!) field I have to use
  • jEdit Plug-in: The menu item to display the Jalopy settings dialog can now be added to the context menu

1.0 Beta 5 (2000-04-14)

New features
  • AbstractPlugin.java now comes with multi-processor support, so all IDE Plug-ins should operate faster on multi-processor machines. Refer to the Misc section of the manual
  • Ant Plug-in: Added multi-processor support, new parameter threads to specify the number of threads to use
  • Declaration and assignments aligning now available. Refer to the Indentation section of the manual
  • Separation (blank lines) behavior now configurable. Refer to the Separation section of the manual
  • Added Eclipse Plug-in (needs Eclipse 2.0)
  • Jalopy now supports the common convention of using a single @see tag instead of all the other tags and won't insert any missing Javadoc tags in such cases. Same applies if the inline tag {@inheritDoc} is found in the description
  • Work started to provide an extended index for the user manual.
Bug fixes
  • Javadoc add/remove didn't work for @return tag
  • The editable combo boxes (NumberComboBoxEditor.java) caused exceptions on losing focus
  • Javadoc now also generated for methods/ctors without params.
  • Ant Plug-in: Changed the configuration of the message output. It is now controlled by a single parameter loglevel. This may force you to update your build scripts. Refer to the Ant section of the manual to read about the list of valid parameters
  • The source base has been split into different modules (to make CVS happy and life easier) and the build system has changed accordingly
  • The web site and all documentation is now auto-generated out of .XML files (using the Ant style task and DocBook XSL 1.50.0/Saxon 6.5.1)
  • The entries of the history viewer are now sorted
  • The web site has a new look

1.0 Beta 4 (2000-03-20)

New features
  • Jalopy now provides some decent user documentation. Many thanks to Larry Hamel for the proof-reading
  • The line wrapping logic is now fully implemented
  • New line wrapping option: You can now force the wrapping for parameter lists of method calls. Note that this option only applies to those lists that contain another method call. Refer to the Wrap always section of the manual. Nice feature suggested by David Beutel
  • Continuation indentation is now available for ternary if-else expressions too. Refer to the Indentation section of the manual
  • New option: You can now specify whether you want indentation realized with tabs instead of spaces. Refer to the Indentation section of the manual. This feature was kindly donated by David Beutel
  • The history feature is now more user configurable. You can specify whether you want to have it enabled at all and what policy you want to use. Choose between the comment based history (which inserts a small header on top of every file) or a file-driven history. Refer to the Indentation section of the manual. The history feature is now *disabled* by default
  • Added two new wrapping options: Before extends keyword and Before implements keyword. Enabling any of them will force a newline before the given keyword. Refer to the Wrap always section of the manual. Requested by John Bishop
  • New option to control the printing of labels. You can now specify whether a line break should be printed after labels or not. Refer to the Wrap always section of the manual
Bug fixes
  • Small bug fix regarding trailing comments and array initialization
  • Line wrapping for parameter lists was always performed, no matter what preference setting given
  • For ternary if-else statements, parentheses was always inserted for the expression part if Insert parentheses around expressions was enabled. Now parentheses are only inserted if actually needed
  • Indent labels option didn't show up on the indentation settings page
  • The Javadoc auto-generation facility no longer inserts @throws tags for throws clauses that are catched in the method body
  • Settings pages Braces and Block style now merged into one page Braces with two tabs Style and Misc
  • Cancel button of the Progress monitor dialog renamed to Stop to reflect the fact that some files might have changed
  • Settings page Javadoc cleaned up
  • Specifying an identify key to delete existing headers/footers is now enforced

1.0 Beta 3 (2000-03-10)

New features
  • New option: You can now specify whether you want to retain first column comments vs. indenting them relative to their position in the code. Refer to the Indentation section of the manual
  • New option: You can now use different brace styles for class/method blocks and other types of blocks (for Sun, GNU and Custom style)
Bug fixes
  • The Javadoc parser rework lead to an error with the Javadoc @throws tags verification. This has been fixed now (Actually only a build problem)
  • If Space before Case colon was enabled, no space was printed for the default keyword
  • The comment creation only worked if the comment parsing and tag checking was enabled too
  • Formatting a non-file input produced wrong updates of the history header
  • The line-wrapping logic changed/improved somewhat

1.0 Beta 2 (2002-03-05)

New features
  • Custom Javadoc tag definitions now available
  • New option: You can now choose whether you want an empty statement inserted into empty braces to make the intension obvious
  • New option: You can now specify whether if-statements should generally use continuation indent. This option was added to address the fact that conventional indentation could make seeing the body difficult (as outlined in the Sun Java Conventions guide)
  • New option: Line wrapping can now be performed before or after operators
  • New option: You can now specify template texts for auto-inserted Javadoc tags.
  • NetBeans Plug-in added (for NetBeans 3.3.1 and higher)
  • jEdit Plug-in: updated to work with jEdit 4.0prev1 and higher
  • JBuilder Plug-in: added the Format and Settings actions to the popup menu of the editor pane
  • Ant Plug-in: new parameter style to set the settings file to use
Bug fixes
  • Fixed a bug regarding the wrong printing of parenthesis for certain rare cases
  • Correction of mispelled Javadoc standalone tags failed if the correct amount of tags was given for the method/ctor
  • No space was printed after array elements for arrays that fit in one line
  • Printing of trailing comments now works much more reliable
  • No message was reported in case the user specified an invalid input file on the command line
  • Progress dialog didn't show progress for files with an opened editor view
  • If no arguments were given on the command line, no warning was printed. Now the usage notes will appear
  • Fixed a horrible bug in the JBuilder Plug-in which caused wrong class repository updates if one switched JDKs
  • Fixed an error in the initialization process of the logging facility for Plug-ins using the AbstractPlugin skeleton which hindered the updating of the errors/warnings count in the progress dialog
  • All Plug-ins now only available as bundles. This will certainly pertain until a branding mechanism is available to check whether a given Plug-in will work with a given Jalopy runtime (a la NetBeans?)
  • Changed/refactored some method signatures in the client API for consistency and ease of use
  • The Javadoc parser has been reworked to allow both custom standalone and inline tags
  • Some API documentation enhancements, updated the build script to only generate the documentation for the public client API, removed the documentation for the Plug-ins from the distribution Javadoc
  • Moved the logic to set the settings file to use, from the command line interface into Jalopy.java to let Plug-ins easily set the settings file to use
  • Updated the used ANTLR version to 2.7.2a2. Compiled with optimizations and without debugging info results in smaller archive sizes
  • Many build-script improvements. It should now be possible to build a Jalopy runtime version without the need of Plug-in related 3rd-party libraries
  • The Jalopy runtime classes and all needed library classes are now bundled into one .jar
  • The customizer mini editor is no longer part of the runtime .jar

1.0 Beta 1 (2002-02-13)

New features
  • jEdit Plug-in added (for jEdit 3.2.2)
  • The progress dialog now includes a cancel button
Bug fixes
  • Settings dialog did not close when invoked on the command line with java Preferences
  • Error in build script fixed (JavadocTokenTypes.txt now included in the .jars) to make the Javadoc auto-correction work
  • Braces indentation not printed for left curly braces
  • JBuilder Plug-in: Registered directories need to be reparsed on every startup for the import expansion/collapsing to work reliably
  • Changed default package depth for packages java, javax, gnu in the settings (former was 3, now uses 2)
  • Changed the SwingWorker implementation to the one found in Doug Lea's util.concurrent package, refactored AbstractPlugin.java to use an inner class dereived from SwingWorker.java instead of extending SwingWorker.java itself
  • Formatting a single file doesn't bring up the progress dialog anymore, but rather shows the system wait cursor and blocks all input
  • Removed the Javadoc documentation from the Plug-in distributions

Initial beta version (2002-02-10)

What is Jalopy?

Jalopy is a world-class source code formatter for Java. It automates and enforces all aspects of source code layout—to meet a certain coding style without putting any burden on individual developers.

Learn more

Who needs it?

Jalopy is for everyone involved with source code editing. It scales from single developer usage to large scale enterprise deployment and seamlessly integrates with your favorite Java IDE or build tool.

Go and see yourself

I want some!

Concentrate on your problem domain and don’t waste time shuffling characters around. Pricing starts at USD $40 for a single-user license. Buy now using secure online purchase or wire transfer.

What are you waiting for?

Learn the details

Deploy, configure and use the software to best meet your needs. Download the printable user’s guide and learn everything there is to know to put Jalopy’s advanced feature set to full use.

Download (.pdf - 7.2MB)