This release brings substantial performance improvements, one new rule an various small improvements.
License keys have to be added again!
The way license information is stored changed. For this reason, all previously added license keys need to be added again.
The license key can be added as follows: preferences → jSparrow → License → “Update license key”.
We thank you for your understanding!
Applying rules takes only half the time now!
Process improvements to the rule engine led to an overall reduced time for applying all refactorings in the “Select Rules” wizard. Measurements show that running jSparrow on projects only takes a fraction of the time it previously took.
Remove Deprecated Date Constructs
Some java.util.Date constructors like new Date(int year, int month, int day), new Date(int year, int month, int date, int hrs, int min) and new Date(int year, int month, int date, int hrs, int min, int sec) are deprecated and the Calendar should be used instead. This rule searches for deprecated calendar instances, introduces calendar instances and sets the time corresponding to the parameters in the deprecated constructor, and replaces the latter with an invocation of Calendar.getTime(). For instance, the following code:
// Deprecated Date Constructor Date date = new Date(90, 1, 31);
will be replaced with:
// Calendar instead of deprecated constructor Calendar calendar = Calendar.getInstance(); calendar.set(1990, 1, 31); Date date = calendar.getTime();
Note that the date constructor is implicitly adding 1900 to the first argument (i.e. year), whereas Calendar.set is expecting the exact year value. Therefore, the rule takes care of preparing the parameters of the Calendar.set properly.
If the deprecated constructor is used in a field initialization, then an initializer block is introduced for creating the calendar and initalizing the field properly. See the before/after table.
Removal of the obsolete “Field Naming Convention Rule”
Since the introduction of the “Rename Fields Rule” (Context Menu → jSparrow → Rename Fields Rule), the “Field Naming Convention Rule” became obsolete. The “Rename Fields Rule” offers more options and has better performance.
Adjustment of the “Time Saved”
On the summary page the value of “Time Saved” now uses man-days, meaning eight-hour working days. Man-days are a more management-friendly unit than 24-hour working days and correspond better with current laws about working hours.
Minor UI improvements
- Removal of the obsolete tag “logging”
- This tag is obsolete in the “Select Rules” wizard, since all logging related refactorings are bundled in the “Logging Rule” wizard.
- The “Add all” button is no longer enabled if only disabled rules are present
- Removal of the word “Apply” in the context menu
- Added a minimum width to the “Select Rules” wizard
- Bugfix to avoid UI freezes when committing survey results
- Bugfix that prevents a rare case where it was possible to select no profile