[Skip to content]

History

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

1.9.2_88 (2009-01-14)

New features

#0000634: NetBeans 6.5 compatible Plug-in. Please refer to the Plug-in section in the manual for more information
#0000619: IntelliJ IDEA 8.0 compatible Plug-in. Please refer to the Plug-in section in the manual for more information
#0000624: JDeveloper 11g compatible Plug-in. Please refer to the Plug-in section in the manual for more information
#0000630: The style of annotations was not configurable enough. Two new options have been added to allow the configuration of the parentheses behavior: "Wrap after left parenthesis" and "Wrap before right parenthesis". Suggested by Mike Smith
#0000425: It's now possible to configure annotations to never wrap. Three options control this behavior: "Wrap after left parenthesis", "Wrap after annotation member" and "Wrap before right parenthesis". All have to be set to "Never wrap" in order to yield the desired result. Suggested by Chris Beams, Matthew Baird
#0000621: Eclipse Plug-in: New preference page to specify an url for settings synchronization. You can control whether synchronization is performed on each formatting run or only once a day. Suggested by Henry Richter
#0000607: The installer is now able to create Eclipse update-sites as well as NetBeans update centers. Please refer to the Installation section in the users's manual for more information. Suggested by Henry Richter
#0000596: Eclipse and IDEA Plug-ins: Files may now be automatically checked-out from SCM when formatting is triggered. Please refer to the Global section in the user's manual for more information. Suggested by Ziad Aouad
#0000597: The preview dialog may now display whitespace characters like blank space and tabs. Via the new "View" menu in the menu bar, you can also disable the display of end-of-line markers. Suggested by Joachim Ehm
#0000591: The preferences GUI now provides a hint about the persistence behavior when the configuration window is opened. Some users — especially on the Windows platform — find it difficult to understand that there is no distinct button to dismiss the dialog. Suggested by Ziad Aouad

Changes

#0000631: The Wrapping preferences page has been streamlined to allow easier configuration and better comprehension. Many options have been consolidated into a tree view where it is now easier to preview the consequences of different options
#0000595: As a consequence of the bugfix, annotation members are now separated by blank lines by default (depends on your general blank lines settings). If you rather prefer to avoid blank lines, you can enable the "Ignore blank lines prototypes" option
#0000632: The online help for the preferences dialog has been overhauled to provide live help at any time. When the help viewer has been opened, moving the mouse over a component of the preferences dialog will display the associated help topic in the help viewer

Bug fixes

#0000627: Eclipse Plug-in: Importing project specific settings did not work correctly with settings from Jalopy 1.8 or later. Reported by Brian Wallis
#0000614: Possible IllegalArgumentException when wrapping was forced for Chained method calls. Reported by Mark Himelstein
#0000604: The parser was not able to deal with UTF-8Y encoded files. Reported by Dr. Mark Tu
#0000595: Annotation type declarations did not correctly obey the blank lines preferences. Reported by Dr. Mark Tu
#0000617: With declaration sorting enabled, NetBeans guarded sections could be trashed. Reported by Gerard Perreault
#0000613: With modifiers sorting enabled, modifiers could be removed when specific orderings were specified. Reported by Mark Himelstein
#0000615: With modifiers sorting enabled, comments between modifiers could be removed. Reported by Mark Himelstein
#0000623: With "Insert logging conditional" enabled, a bogus conditional was added if a present conditional was part of boolean expression. Reported by Martin Heitz
#0000598: Eclipse Plug-in: When configuring the build class path, if one adds .jar files via the "Add JARs..." button, Jalopy did not to correctly resolved the project class path which could lead to all sorts of problems depending on the chosen formatting preferences. Reported by Dr. Mark Tu
#0000600: Eclipse Plug-in: Import declarations could be lost when the source file included pragma comments. Reported by Ziad Aouad
#0000594: With "Wrap on demand before right parentheses" enabled, no line break was printed before the right parentheses of the enhanced for statement. Reported by Dr. Mark Tu
#0000626: With "Mixed endline indentation", indentation for array initializers was not changed to standard indent when the line length would otherwise be exceeded
#0000606: It was not possible to import code conventions from urls with query part like http://internal.company.comviewcvs/config.xml?view=co. Reported by Henry Richter
#0000612: Changes to the code inspector preferences were not directly picked up by code inspection, but required a restart. Reported by Brad Moskowitz
#0000603: When inserting the template text for empty Javadoc @return tags, variable expression were not interpolated. Reported by Sean Crotty
#0000616: The Javadoc parser did not support tag names that contained the ! character, like @!generated. Reported by Dr. Mark Tu
#0000636: Eclipse Plug-in: Generating @see tags did not work for methods that implements an interface that is imported by a super class
#0000599: Possible java.lang.NullPointerException when "Insert-brace comments" is enabled. Reported by Robert Thaler
#0000620: Regression: The configuration dialog no longer provided a help button which could lead to the wrong conclusion that help is not available. Reported by Brad Moskowitz
#0000622: java.lang.ArrayIndexOutOfBoundsException when installing NetBeans Plug-in. Reported by Thierry de Leeuw
#0000635: Ant Plug-in: java.lang.IllegalStateExceptionn when configured to only use one thread. Reported by John Sichi
#0000601: Eclipse Plug-in: The project settings were not available via the menu bar. Reported by Ziad Aouad
#0000618: Settings from FOSS version could not be imported. Reported by Karl Krasnowsky
#0000628: Installer: Executable flag not set for runtime scripts. Reported by Jan Zuchhold and Thierry de Leeuw
#0000633: Preferences: Fixed several glitches with with Nimbus Look & Feel
#0000629: Preferences: Editing an existing search and replace pattern was not possible
#0000625: Installer: It was not possible to create a new directory during selection of installation directory. Reported by Jan Zuchhold
#0000593: The context menu was not working in the main page for the Swing-based IDE Plug-ins. Reported by Howard Lowatt

1.9.1_108 (2008-06-11)

New features

#0000589: NetBeans 6.1 compatible Plug-in. Please refer to the Plug-in section in the manual for more information
#0000590: Global exclusion filters to disable formatting for certain files/directories. Please refer to the Exclusions section in the manual for more information. Suggested by Dr. Mark Tu
#0000587: Eclipse Plug-in: Messages are no longer displayed in the Problems view. Instead a custom view is provided that is specifically suited for the specific needs of the formatter. The view is explained in detail in the Eclipse online help. Suggested by Walter Andres and Rick Hanson
#0000559: The blank lines options for curly braces have been further expanded to be able to differentiate between curly braces for classes, methods and statements. Please refer to the Separation section in the user's manual for more information. Suggested by Joachim Ehm
#0000542: Brace insertion and removal can now be controlled independently for single-if statements. Please refer to the Braces section in the user's manual for more information. Suggested by Joachim Ehm
#0000540: XDoclet tags are now sortable. Please refer to the Javadoc section in the user's manual for more information. Suggested by Joachim Ehm
#0000561: XDoclet tags that require more than one line may now be separated by blank lines. Please refer to the Javadoc section in the user's manual for more information. Suggested by Joachim Ehm
#0000541: Javadoc block tags with a single attribute may now be printed in just one line when possible. Please refer to the Javadoc section in the user's manual for more information. Suggested by Joachim Ehm
#0000539: It's now possible to enforce a specific output encoding when formatting using an IDE-Plug-in. Please refer to the Global section in the user's manual for more information. Suggested by Joachim Ehm

Changes

#0000588: The behavior of the "Remove blank lines for method prototypes" option has been altered to only remove blank lines in abstract classes between abstract methods that appear after each other. Suggested by Eric Hubert
#0000592: Removing redundant modifiers now causes only an informational logging messages instead of a warning. Suggested by Kenichi Masuko

Bug fixes

#0000579: Annotations before enum constants could be removed. Reported by Paulo Gaspar
#0000572: Regression: Wrong line break before dotted expression. Reported by Sascha Herrmann
#0000544: Weak formatting when "Sort annotations" is enabled. Reported by Christoph Meise
#0000582: Eclipse Plug-in: IllegalStateException during format-on-save when a new method was added to the source file. Reported by Povl Kvols and Jens Schröder
#0000582: Eclipse Plug-in: Delete action can be called for the default profile. Reported by Martin Heitz
#0000576: Inserting Javadoc @see tags did not correctly reference the super class. Reported by Daniel van't Ooster
#0000573: Wrongly indented annotation. Reported by Mike Smith
#0000548: IllegalStateException when using expression in annotation. Reported by Jaroslav Libert
#0000547: IllegalStateException when aligning method calls. Reported by Martin Heitz
#0000553: Missing indentation of right parenthesis for annotations. Reported by Stefan Trappeniers
#0000571: Missing alignment for array creator. Reported by Povl Kvols
#0000575: Occational NullPointerException when sorting enums. Reported by Sven Huber
#0000578: Wrongly inserted @Override annotation if two types were not in the same package. Reported by Sven Huber
#0000570: Wrongly inserted @throws tag. Reported by Martin Heitz
#0000569: Comment separator ${description} not substituted. Reported by Povl Kvols
#0000574: Missing Javadoc tag inserted even though generation disabled. Reported by Martin Heitz
#0000567: Wrong line break after multi-line comnment between separator
#0000565: Automatic insertion of logging conditionals caused one conditional for each logging call, now several calls are treated as block when possible. Reported by Sascha Herrmann
#0000563: Forcing blank lines after braces badly interfered with multi-dimensional arrays. Reported by Robert Boyd
#0000562: Spurious line break printed after left parenthesis. Reported by Lorenz Fischer
#0000552: IllegalArgumentException when printing array initializer. Reported by Frode Stokke
#0000551: Wrong number of blank lines before enum constants
#0000558: Javadoc tag correction could cause text duplication when formatting was disabled. Reported by Bert Möhlmann
#0000550: Javadoc for enum constat not printed in single line. Reported by Martin Heitz
#0000557: Import declarations removed when types are enclosed with pragma comments. Reported by Joachim Ehm
#0000556: NetBeans Plug-in: Javadoc comment generation could break guarded blocks. Reported by Frederic Barachant
#0000556: NetBeans Plug-in: NoClassDefFoundError with NetBeans 6.0.1. Reported by Andrew Lazarus
#0000556: IDEA Plug-in: IllegalStateException during format-on-save. Reported by Dan MacMillan and Mike Smith
#0000560: Javadoc tags added although {@inheritDoc} present. Reported by Bert Möhlmann
#0000580: Parser choked on Java identifiers with non ascii characters. Reported by Alain Lassine
#0000577: Eclipse Plug-in: Changes to a profile were not directly reflected in an export. One had to close the dialog first. Reported by van't Daniel Ooster
#0000584: Unexpected error during sorting. Reported by Paulo Gaspar
#0000517: Inserting @Override annotations was possible even with Java 1.4 compliance leading to compile time errors. Reported by Lorenz Fischer

1.9_126 (2008-01-11)

New features

#0000487: Align endline comments. Please refer to the Indentation section in the manual for more information. Suggested by Rich Polish and Lorenz Fischer
#0000469: Detect bean methods by field. Please refer to the Sorting section in the manual for more information. Suggested by Bert Möhlmann
#0000485: IDEA 7.0 compatible Plug-in. Please refer to the Plug-in section in the manual for more information. Suggested by Chris Herron, Dan MacMillan, Manuela Metzner
#0000465: NetBeans 6.0 compatible Plug-in. Please refer to the Plug-in section in the manual for more information
#0000467: Allow wildcard for settings class path. Please refer to the Plug-in section in the manual for more information. Suggested by Christoph Meise
#0000368: Sort annotations. Please refer to the Sorting section in the manual for more information. Suggested by Dr. Mark Tu and Jens Schröder
#0000426: New white space options for annotations. Please refer to the White Space section in the manual for more information. Suggested by Chris Beams
#0000515: Support custom file extension mappings. Please refer to the File Types section in the manual for more information. Suggested by Don Mason
#0000527: Editor dirty state can be kept during formatting. Please refer to the Global section in the manual for more information. Suggested by Martin Heitz
#0000536: Use active file in preview. Please refer to the Global section in the manual for more information. Suggested by Elmar Sonnenschein and Gregory Gerard
#0000525: Eclipse Plug-in: Support batch-formatting of working sets. Suggested by Martin Heitz

Changes

Jalopy now requires at least Java J2SE 1.4. We still recommend to use Java J2SE 5.0 or later
Jakarta ORO has been abandoned in favor of the java.util.regex regular expression implementation provided by the Java runtime. The two packages provide nearly identical regular expression capabilities and syntax and the transition should therefore be mostly transparent from a user perspective. If you should experience any problems with your regular expressions, please consult the online documentation on the Sun website or support

Bug fixes

#0000543: Eclipse Plug-in: Current caret line moved when formatting
#0000449: IllegalStateException with "Insert @Override" and varargs parameter. Reported by Adam Zell
#0000450: Missing variable alignment in nested anon inner classes. Reported by Elmar Sonnenschein
#0000451: Inline tag @inheritDoc prefixed with 2 spaces. Reported by Serge Brisson
#0000454: java.lang.StackOverflowError with "Ignore runtime exceptions". Reported by Cyrus Kalbrenner and Jens Schröder
#0000455: Imported settings lost. Reported by Reported Thaler, Jens Schröder
#0000457: Eclipse Plug-in: Problems view is not automatically displayed. Reported by Chris Beams
#0000458: "Insert missing @Override" adds annotation for methods implementing interface. Reported by Patrick Wilkes
#0000459: NetBeans Plug-in: IllegalStateException with "Insert missing @Override". Reported by Sara Refner
#0000461: Wrong indentation of multi-variable field in nested anon inner class with endline indentation
#0000462: Wrong indentation of method call chains in nested anon inner class with endline indentation
#0000463: Guarded sections lost for beaninfo types. Reported by Thierry de Leeuw
#0000464: StringIndexOutOfBoundsException when "Increase indentation on hotspots" disabled
#0000466: Annotated enum with constructor breaks formatting. Reported by Anders Wallgren
#0000467: Allow wildcard for specifying classpath. Suggested by Christoph Meise
#0000482: Max. line length exceeded in rare case with method call
#0000468: Missing description inserted although disabled for Java Beans. Reported by Bert Möhlmann
#0000471: Eclipse Plug-in: Build-in import optimization still used when custom implementation enabled. Reported by Christoph Meise
#0000472: Parser chokes on floating point literal
#0000473: java.lang.ArithmeticException due to invalid tab size setting. Reported by Hannes Schmidt
#0000474: java.lang.StackOverflowError with huge array
#0000475: Classpath not correct - imports removed. Reported by Christoph Meise
#0000476: "Insert missing override" causes IllegalStateException
#0000477: JDeveloper Plug-in: NullPointerException when formatting source file. Reported by Arnie Lachner
#0000478: "Align declaration parameters" causes huge gap. Reported by Elmar Sonnenschein
#0000479: Eclipse crash with custom import optimization. Reported by Christoph Meise
#0000480: NetBeans Plug-in: Invalid thread access during initialization. Reported by Karl Bönisch
#0000483: Unwanted blank line inserted in assignment chunk. Reported by Elmar Sonnenschein
#0000486: JDeveloper Plug-in: Formatting of file portions does not work in JDeveloper 9.0.5.2. Reported by Sascha Herrmann
#0000488: NetBeans Plug-in: NullPointerException during format. Reported by Jaroslav Libert
#0000489: IndexOutOfBoundsException with "Insert missing @Override". Reported by Anders Wallgren
#0000490: JBuilder Plug-in: Formatting file portions does not work when "Insert Annotations" is enabled. Reported by Dr. Mark Tu
#0000491: Insert identifying comments brace body limit glitch. Reported by Justin Beall
#0000492: Spurious linebreak for nested annotation. Reported by Dr. Mark Tu
#0000493: Missing line break in annotation. Reported by Dr. Mark Tu
#0000494: Eclipse Plug-in: Limit classpath to project only. Reported by Dr. Mark Tu
#0000495: Eclipse Plug-in: Incompatibility with new Eclipse 3.3 Save actions. Reported by Barak Naveh
#0000496: Javadoc comments formatted as multi-line comment. Reported by Dr. Mark Tu
#0000497: NetBeans Plug-in: Form variables inserted in wrong location after formatting. Reported by Thierry de Leeuw
#0000498: NullPointerException when formatting anon inner class. Reported by Lance Finney
#0000499: java.lang.IllegalStateException: Could not resolve type. Reported by Lance Finney
#0000500: Synchronize with external code convention not working. Reported by Lance Finney
#0000501: Compacting braces does not work correctly when formatting file portions. Reported by Lala Manjari Chand
#0000502: Invalid tag wrongly corrected. Reported by Lance Finney
#0000503: Jalopy message view not usable with several IDEA frames opened. Reported by Lance Finney
#0000504: Maven Plug-in: NullPointerException during format. Reported by Hannes Arkona
#0000505: Log4J warning message. Reported by Hannes Arkona
#0000506: Eclipse Plug-in: .xml extension required for import but not enforced on export. Reported by Joseph Hatton
#0000507: Eclipse Plug-in: Code convention always imported into active profile. Reported by Joseph Hatton
#0000509: Maven Plug-in: "failOnError" does not work correctly
#0000510: Maven Plug-in: Importing settings does not work if profile specified that does not exist. Reported by Hannes Arkona
#0000511: Maven Plug-in: NullPointerException during synchronization. Reported by Hannes Arkona
#0000512: Weak formatting of comments. Reported by Christoph Meise
#0000516: IllegalStateException with empty Javadoc template. Reported by Nick Knutson
#0000518: java.lang.IllegalArgumentException with enum constant. Reported by Jaroslav Libert
#0000519: NetBeans Plug-in: NullPointerException when formatting non-project file. Reported by Jaroslav Libert
#0000520: IllegalArgumentException with annotation array. Reported by Manuel Mall
#0000522: Eclipse Plug-in: Import optimization failed. Reported by Martin Heitz
#0000523: Missing indentation of comments. Reported by Martin Heitz
#0000524: Eclipse Plug-in: Cannot format multiple projects. Reported by Martin Heitz
#0000526: Duplicate imports not removed. Reported by Christoph Meise
#0000528: Missing indentation for dotted expression. Reported by Elmar Sonnenschein
#0000529: Line length exceeded with ternary expression
#0000530: Empty for expression part causes exceeded line length. Reported by
#0000531: Missing line break after assignment
#0000533: Line break lost. Reported by Christoph Meise
#0000534: Eclipse Plug-in: Preferences page does not work under Leopard. Reported by Elmar Sonnenschein
#0000537: Line length exceeded in anonymous inner class
#0000538: Wrong use of "Wrap never qualifier"

Prior releases

To learn about the changes in prior releases, follow the link below.

Old history »»

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 capabilities to full use.

Download (.pdf - 8.3MB)