| = Release notes for Gerrit 2.10 |
| |
| |
| Gerrit 2.10 is now available: |
| |
| link:https://www.gerritcodereview.com/download/gerrit-2.10.war[ |
| https://www.gerritcodereview.com/download/gerrit-2.10.war] |
| |
| Gerrit 2.10 includes the bug fixes done with |
| link:ReleaseNotes-2.9.1.html[Gerrit 2.9.1], |
| link:ReleaseNotes-2.9.2.html[Gerrit 2.9.2], |
| link:ReleaseNotes-2.9.3.html[Gerrit 2.9.3] and |
| link:ReleaseNotes-2.9.4.html[Gerrit 2.9.4]. |
| These bug fixes are *not* listed in these release notes. |
| |
| == Important Notes |
| |
| |
| *WARNING:* This release contains schema changes. To upgrade: |
| ---- |
| java -jar gerrit.war init -d site_path |
| ---- |
| |
| *WARNING:* When upgrading from an existing site that was initialized with Gerrit |
| version 2.6 to version 2.9.1, the primary key column order will be updated for |
| some tables. It is therefore important to upgrade the site with the `init` program, |
| rather than only copying the .war file over the existing one. |
| |
| It is recommended to run the `init` program in interactive mode. Warnings will |
| be suppressed in batch mode. |
| |
| *WARNING:* Upgrading to 2.10.x requires the server be first upgraded to 2.8 |
| (or 2.9) and then to 2.10.x. If you are upgrading from 2.8.x or |
| later, you may ignore this warning and upgrade directly to 2.10.x. |
| |
| *WARNING:* The `auth.allowGoogleAccountUpgrade` setting is no longer supported. |
| |
| *WARNING:* When upgrading from version 2.8.4 or older with a site that uses |
| Bouncy Castle Crypto, new versions of the libraries will be downloaded. The old |
| libraries should be manually removed from site's `lib` folder to prevent the |
| startup failure described in |
| link:https://code.google.com/p/gerrit/issues/detail?id=3084[Issue 3084]. |
| |
| |
| == Release Highlights |
| |
| |
| * Support for externally loaded plugins. |
| + |
| Plugins can be implemented in Scala or Groovy using the |
| link:https://gerrit-review.googlesource.com/\#/admin/projects/plugins/scripting/groovy-provider[ |
| Groovy provider] and |
| link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/scripting/scala-provider[ |
| Scala provider] plugins. |
| |
| * Customizable 'My' menu. |
| + |
| Users can customize the contents of the 'My' menu in the top menu. Administrators |
| can configure the default contents of the menu. |
| |
| |
| == New Features |
| |
| |
| === Web UI |
| |
| |
| ==== Global |
| |
| * Add 'All-Users' project to store meta data for all users. |
| |
| * Administrators can customize the default contents of the 'My' menu. |
| |
| * Add 'My' > 'Groups' menu entry that shows the list of own groups. |
| |
| * Allow UiActions to perform redirects without JavaScript. |
| |
| |
| ==== Change Screen |
| |
| |
| * Display avatar for author, committer, and change owner. |
| |
| * Remove message box when editing topic of change. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2573[Issue 2573]: |
| Add option to quickly add current user as reviewer of a change. |
| + |
| An 'Add Me' button is displayed next to the 'Add' button when searching for |
| reviewers to add to a change. This allows users to quickly add themselves as a |
| reviewer on the change without having to type their name in the search |
| box. |
| |
| * Link project name to dashboard. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2667[Issue 2667]: |
| Allow to customize Submit button label and tooltip. |
| |
| |
| ==== Side-by-Side Diff Screen |
| |
| * Allow the user to select the syntax highlighter. |
| |
| * Add `Shift-a` keybinding to show/hide left side. |
| |
| * Allow to toggle empty pane for added and deleted files. |
| |
| * Add syntax highlighting of the commit message. |
| |
| |
| ==== Change List / Dashboards |
| |
| * Remove age operator when drilling down from a dashboard to a query. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2646[Issue 2646]: |
| Add option to show Change-ID in the change table. |
| |
| * Make the own user dashboard available under '/dashboard/self'. |
| |
| * Add 'R' key binding to refresh custom dashboards. |
| + |
| Account dashboards, search results and the change screen refresh their content |
| when 'R' is pressed. The same binding is added for custom dashboards. |
| |
| |
| ==== Project Screens |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2751[Issue 2751]: |
| Add support for filtering by regex in project list screen. |
| |
| * Disable content merge option if project's merge strategy is fast forward only. |
| |
| * Add branch actions to 'Projects > Branches' view. |
| |
| ==== User Preferences |
| |
| |
| * Users can customize the contents of the 'My' menu from the preferences |
| screen. |
| |
| * link:http://code.google.com/p/gerrit/issues/detail?id=2628[Issue 2628]: |
| Replace 'Display name in review category' preference with a list of options. |
| + |
| Including new options 'Show Abbreviated Name' to display abbreviated reviewer |
| names and 'Show Username' to show usernames in the change list. |
| |
| |
| === Secondary Index / Search |
| |
| |
| * Allow to search projects by prefix. |
| |
| * Add search fields for number of changed lines. |
| |
| * Add suggestions for 'is:pending' and 'status:pending'. |
| |
| * Add 'pending' as alias for 'open'. |
| |
| * link:http://code.google.com/p/gerrit/issues/detail?id=2545[Issue 2545]: |
| Support `topic:""` to find changes with no topic. |
| |
| * Search more fields in the default search query. |
| + |
| If a search is given with only a text, search over a variety of fields |
| rather than just the project name. |
| |
| |
| === ssh |
| |
| |
| * Expose SSHD backend in |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/cmd-show-connections.html[ |
| `show connections`] SSH command. |
| |
| * Add support for JCE (Java Cryptography Extension) ciphers. |
| |
| === REST API |
| |
| |
| ==== General |
| |
| |
| * Remove `kind` attribute from REST containers. |
| |
| * Support `AcceptsPost` on non top-level REST collections. |
| |
| * Accept `HEAD` in RestApiServlet. |
| |
| ==== Accounts |
| |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-accounts.html#get-user-preferences[ |
| Get user preferences]. |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-accounts.html#set-user-preferences[ |
| Set user preferences]. |
| |
| ==== Changes |
| |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2338[Issue 2338]: |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-changes.html#create-change[ |
| Create change]. |
| |
| * Add `other-branches` option on |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-changes.html#get-mergeable[ |
| Get mergeable] endpoint. |
| + |
| If the `other-branches` option is specified, the mergeability will also be |
| checked for all other branches. |
| |
| ==== Config |
| |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-config.html#list-tasks[ |
| List tasks]. |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-config.html#get-task[ |
| Get task]. |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-config.html#delete-task[ |
| Delete task]. |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-config.html#list-caches[ |
| List caches]. |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-config.html#flush-cache[ |
| Flush cache]. |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-config.html#flush-several-caches[ |
| Flush several caches]. |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-config.html#flush-all-caches[ |
| Flush all caches]. |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-config.html#get-summary[ |
| Get server summary]. |
| |
| ==== Projects |
| |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-projects.html#ban-commit[ |
| Ban commits]. |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-projects.html#get-content[ |
| Get the content of a file from a certain commit]. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2604[Issue 2604]: |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-projects.html#get-commit[ |
| Get an arbitrary commit from a project]. |
| |
| * link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-projects.html#get-reflog[ |
| Get the reflog of a branch]. |
| |
| * Add option 'S' to |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-projects.html#list-projects[ |
| list projects endpoint] to support query offset. |
| |
| |
| === Daemon |
| |
| |
| * Add change subject to output of change URL on push. |
| |
| * Indicate trivial rebase and commit message update on push. |
| |
| * Add support for |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/user-upload.html#review_labels[ |
| adding review labels on changes] during git push. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2634[Issue 2634]: |
| Add change kind to PatchSetCreatedEvent. |
| |
| |
| === Configuration |
| |
| * Use |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/config-gerrit.html#core.useRecursiveMerge[ |
| recursive merge] by default. |
| |
| * Allow to configure the |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/config-gerrit.html#download.archive[ |
| available download archive formats]. |
| |
| * Add support for |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/database-setup.html#createdb_maxdb[ |
| SAP MaxDB]. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2041[Issue 2041]: |
| Allow |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/config-labels.html#label_defaultValue[ |
| configuration of a default value for a label]. |
| |
| * Allow projects to |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/config-project-config.html#mimetype-section[ |
| configure MIME types for files]. |
| |
| * Allow to configure |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/config-gerrit.html#gc[ |
| periodic garbage collection of all projects]. |
| |
| * Remove `auth.allowGoogleAccountUpgrade` setting. |
| + |
| It's been more than 5 years since Gerrit ran on Google AppEngine. It is assumed |
| that everyone has upgraded their installations to a modern 2.x based server, and |
| will not need to have this upgrade path enabled. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2618[Issue 2618]: |
| Remove `label.Label-Name.abbreviation` setting. |
| + |
| The setting was no longer used, so it has been removed. |
| |
| * New `httpd.registerMBeans` setting. |
| + |
| The |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/config-gerrit.html#httpd.registerMBeans[ |
| `httpd.registerMBeans` setting] allows to enable (or disable) registration of |
| Jetty MBeans for Java JMX. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2600[Issue 2600]: |
| Add documentation of how to |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/install-j2ee.html#tomcat[ |
| configure Tomcat] to allow embedded slashes. |
| |
| |
| === Misc |
| |
| * Don't allow empty user name and passwords in InternalAuthBackend. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2596[Issue 2596]: |
| Add change-owner parameter to gerrit hooks. |
| |
| |
| === Plugins |
| |
| * Support for externally loaded plugins. |
| + |
| Plugins can be implemented in Scala or Groovy using the |
| link:https://gerrit-review.googlesource.com/\#/admin/projects/plugins/scripting/groovy-provider[ |
| Groovy provider] and |
| link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/scripting/scala-provider[ |
| Scala provider] plugins. |
| |
| * Allow plugins to replace the WebSession implementation. |
| + |
| Plugins can replace the existing implementation with the statement: |
| `DynamicItem.bind(binder(), WebSession.class).to(...);` |
| in a module designated as a `<Gerrit-HttpModule>` in the manifest. |
| + |
| Just the Cache implementation used for web sessions can be changed |
| by binding to a subclass of the now abstract `CacheBasedWebSession` |
| which supplies the Cache in the superclass constructor. |
| + |
| This is a step towards solving web session issues with multi-master. |
| + |
| The link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/websession-flatfile[ |
| websession-flatfile plugin] replaces the built-in Gerrit WebSession implementation |
| with one that uses a flat file based cache. |
| |
| * Allow http and ssh plugins to replace the Gerrit-provided DynamicItem. |
| |
| * New extension point to listen to usage data published events. |
| + |
| Plugins implementing the `UsageDataPublishedListener` can listen to |
| events published about usage data. |
| |
| * New extension point to link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/dev-plugins.html#pre-upload-hook[ |
| register JGit PreUploadHook]. |
| + |
| Plugins may register PreUploadHook instances in order to get |
| notified when JGit is about to upload a pack. This may be useful |
| for those plugins which would like to monitor usage in Git |
| repositories. |
| |
| * New link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/config-validation.html#pre-upload-validation[ |
| pre-upload validation extension point]. |
| + |
| Plugins implementing the `UploadValidationListener` interface can |
| perform additional validation checks before any upload operations |
| (clone, fetch, pull). The validation is executed right before Gerrit |
| begins to send a pack back to the git client. |
| |
| * New link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/dev-plugins.html#links-to-external-tools[ |
| external tool links extension points]. |
| + |
| Plugins can now contribute project links that will be displayed on the project |
| list screen in the 'Repository Browser' column, and revision links that will be |
| shown on the change screen. |
| |
| * Allow creation of persistent caches after server is started. |
| + |
| This enables plugins to create own persistent caches when they are |
| installed. |
| |
| * Make gerrit's HttpServletRequest and HttpServletResponse visible to http |
| plugins. |
| |
| * New extensions in the Java Plugin API: |
| |
| ** Query changes |
| ** Create/get/list projects |
| ** Get/set review status |
| ** Create change |
| ** Get account |
| ** Star/unstar changes |
| ** Check if revision needs rebase |
| |
| == Bug Fixes |
| |
| === General |
| |
| * Use fixed rate instead of fixed delay for log file compression. |
| + |
| Log file compression was scheduled using a fixed delay. This caused the start |
| times to drift over time. Use a fixed rate instead so that the compression |
| reoccurs at the same time every day. |
| |
| * Don't email project watchers on new draft changes. |
| + |
| If a draft change is created by pushing to `refs/drafts/master`, only the reviewers |
| explicitly named on the command line (which may be empty) should be notified of |
| the change. Users watching the project should not be notified, as the change has |
| not yet been published. |
| |
| * Fix resource exhaustion due to unclosed LDAP connection. |
| + |
| When `auth.type` is set to `LDAP` (not `LDAP_BIND`), two LDAP connections are |
| made, but one was not being closed. This eventually caused resource exhaustion |
| and LDAP authentications failed. |
| |
| === Access Permissions |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2995[Issue 2995]: |
| Fix faulty behaviour in `BLOCK` permission. |
| + |
| `BLOCK` can be overruled with `ALLOW` on the same project, however there was a |
| bug when a child of the above project duplicates the `ALLOW` permission. In this |
| case the `BLOCK` would always win for the child, even though the `BLOCK` was |
| overruled in the parent. |
| |
| === Web UI |
| |
| ==== General |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2595[Issue 2595]: |
| Make gitweb redirect to login. |
| + |
| Gitweb redirects to the login page if the user isn't currently logged. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2631[Issue 2631]: |
| Re-arrange info at footer of Gerrit web UI pages. |
| + |
| Move the Gerrit info link so that there are no links close to the next page link. |
| |
| * Only create All-Projects ACL once. |
| + |
| If `refs/meta/config` already existed it was overwritten with default configuration |
| if a site administrator ran `java -war gerrit.war init -d /some/existing/site --batch`. |
| |
| |
| ==== Change Screen |
| |
| * Don't linkify trailing dot or comma in messages. |
| + |
| As linkifying trailing dots and trailing commas does more harm than |
| good, we only treat dots and commas as being part of urls, if they are |
| neither followed by whitespace nor occur at the end of a string. |
| |
| * Re-enable the 'Cherry Pick' button after canceling the dialog. |
| + |
| If the dialog was canceled, the button remained disabled and could not be |
| used again. |
| |
| * Improve message when removing a reviewer. |
| |
| * link:http://code.google.com/p/gerrit/issues/detail?id=527[Issue 527]: |
| Preserve line breaks in inline and review comments. |
| |
| * Always show 'No Score' as label help for zero votings. |
| |
| * Only reset the edited commit message text on cancel. |
| |
| * Only include message on quick approve if reply is open. |
| |
| * List reviewers with dummy approvals on closed changes. |
| |
| * link:http://code.google.com/p/gerrit/issues/detail?id=2890[Issue 2890]: |
| Enable scrollbars for "Edit Commit Message" TextArea. |
| |
| * Use current time instead of submitter time for cherry-picked commits. |
| + |
| Cherry picking with the submitter time could cause massive clock skew |
| in the Git commit graph if the server was shutdown before the submit could |
| finish, and restarted hours later. |
| |
| * Fix exception when clicking on a binary file without being signed in. |
| |
| |
| ==== Side-By-Side Diff |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2970[Issue 2970]: |
| Fix misalignment of side A and side B for long insertion/deletion blocks. |
| |
| * Give B side full width when A side is hidden. |
| |
| * Fix scroll alignment when showing hidden A side. |
| |
| * Bind Shift-N to search-prev in vim mode. |
| |
| * Allow text selection in diff header. |
| |
| * Display diff header on mode changes and renames. |
| |
| * Document Shift-{Left,Right} in `?` help popup. |
| |
| * Show `[` and `]` shortcut keys in nav arrow tooltips. |
| |
| * Disable "Render = Slow" mode on files over 4000 lines. |
| |
| * Keep keyboard bindings alive after click in padding. |
| |
| * Jump to the first change on either side. |
| |
| * Expand margin between paragraphs in comments. |
| |
| * Include content on identical files with mode change. |
| |
| |
| ==== User Settings |
| |
| * Avoid loading all SSH keys when adding a new one. |
| |
| |
| === Secondary Index / Search |
| |
| |
| * Omit corrupt changes from search results. |
| |
| * Allow illegal label names from default search predicate. |
| |
| === REST |
| |
| ==== General |
| |
| * Fix REST API responses for 3xx and 4xx classes. |
| |
| ==== Changes |
| |
| * Fix inconsistent behaviour in the |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-changes.html#add-reviewer[ |
| add reviewer endpoint] |
| + |
| When adding a single reviewer to a change, it was possible to use the endpoint |
| to add a user who had no visibility to the change or whose account was invalid. |
| |
| |
| ==== Changes |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2583[Issue 2583]: |
| Reject inline comments on files that do not exist in the patch set. |
| |
| * Allow forcing mergeability check on |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-changes.html#get-mergeable[ |
| Get mergeable]. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2622[Issue 2622]: |
| Respect patch set visibility for messages. |
| + |
| Messages retrieval didn't check for patch set visbility and thus messages for |
| draft patch sets were returned back to the client. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2782[Issue 2782]: |
| Add missing documentation of the |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-changes.html#get-related-changes[ |
| Get Related Changes] endpoint. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2723[Issue 2723]: |
| Clarify the response info in the |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-changes.html#get-change-detail[ |
| Get Change Detail] endpoint. |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2693[Issue 2693]: |
| Clarify the response info in the |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/rest-api-changes.html#list-comments[ |
| List Comments] endpoint. |
| |
| === SSH |
| |
| |
| * Prevent double authentication for the same public key. |
| + |
| This is a workaround for link:https://issues.apache.org/jira/browse/SSHD-300[ |
| SSHD-300]. |
| |
| * Let `kill` SSH command only kill tasks that are visible to the caller. |
| |
| * Require 'Administrate Server' capability to see server summary output from |
| link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.10/cmd-show-caches.html[ |
| `show-caches`] command. |
| |
| * Include all command arguments in SSH log entry. |
| + |
| The SSH log only included the first argument. This prevented the repository name |
| from being logged when `git receive-pack` was executed instead of `git-receive-pack`. |
| |
| |
| === Daemon |
| |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2284[Issue 2284]: |
| More detailed error message when failing to upload new change. |
| + |
| When the uploaded change cannot be created on the underlying Git repository, a |
| more descriptive error message is displayed on both client and server side. This |
| allows to troubleshoot internal errors (e.g. JGit lock failures or other causes) |
| and help out in the resolution. |
| |
| * Enforce HTTP password checking on gitBasicAuth. |
| |
| * Fix missing commit messages on submodule direct pushes. |
| + |
| The commit message in superproject was missing on submodule's |
| directly pushed changes. |
| |
| |
| === Plugins |
| |
| ==== General |
| |
| |
| * link:https://code.google.com/p/gerrit/issues/detail?id=2895[Issue 2895]: |
| Fix reload of plugins that use DynamicItem. |
| |
| * Invoke `StartPluginListener` and `ReloadPluginListener` only after start/reload |
| is fully done. |
| |
| * Set `Last-Modified` on cached Documentation resources. |
| |
| * Return HTTP 304 for not modified SmallResources. |
| |
| * Fix ChangeListener auto-registered implementations. |
| |
| ==== Replication |
| |
| |
| * Move replication logs into a separate file. |
| |
| * Promote replication scheduled logs to info. |
| |
| * Show replication ID in the log and in show-queue command. |
| |
| |
| == Upgrades |
| |
| |
| * Update Guava to 17.0 |
| |
| * Update Guice to 4.0-beta5 |
| |
| * Update GWT to 2.6.1 |
| |
| * Update httpclient to 4.3.4 |
| |
| * Update httpcore to 4.3.2 |
| |
| * Update Jcraft SSH to 0.1.51 |
| |
| * Update Jetty to 9.2 |
| |
| * Update JGit to 3.6.2.201501210735-r |
| |
| * Update log4j to 1.2.17 |
| |
| * Update Servlet API to 8.0.5 |
| |
| * Update slf4j to 1.7.7 |
| |
| * Update Velocity to 1.7 |
| |