| Security |
| Improved XSS prevention | LPE-1029 |
| Filters are not applied to URLs of the form /widget/c/portal/* | LPE-1124 |
| Malicious JavaScript can be inserted into the Directory portlet | LPE-1131 |
| Guest can have configuration permission | LPE-1014 |
| Malicious JavaScript can be inserted into the Polls portlet | LPE-1100 |
| Performance |
| Filters are not applied to URLs of the form /widget/c/portal/* | LPE-1124 |
| Possible memory leak when using CAS | LPE-1058 |
| WSRP has been rewritten | LPE-1089 |
| Language servlet requests are not cached | LPE-1165 |
| General |
| Role listeners are not called after a role is removed from a user | LPE-1033 |
| Monitoring support for portal and portlet operations | LPE-1042 |
| Friendly URLs that cannot start with a locale ID | LPE-1043 |
| Unable to change look and feel of some pages | LPE-1061 |
| Google Apps integration | LPE-1065 |
| Users are not redirected to the correct page | LPE-1067 |
| MVCPortlets can now automatically copy parameters from ActionRequest to RenderRequest | LPE-1071 |
| Portlet errors are not displayed | LPE-1073 |
| Standardized filters to extend BasePortalFilter | LPE-1081 |
| Improve speed of indexing users and ldap import/export | LPE-1092 |
| Validator.isXml does not recognize <root /> as XML | LPE-1101 |
| Cannot restart Liferay portal from WebSphere | LPE-1103 |
| Friendly URL using i18n Servlet Defined in web.xml is Replaced With LanguageId in All Links | LPE-1111 |
| Ant build-lang may translate the languages incorrectly | LPE-1149 |
| New script to build all services and wsdd's automatically | LPE-1151 |
| WSRP support has been moved to a plugin | LPE-1153 |
| Browser does not open after Tomcat 6 starts | LPE-1156 |
| Some html <input> tags are not closed properly | LPE-1052 |
| SAXReaderImpl & ExceptionTranslator's stack traces are incomplete | LPE-1066 |
| Added Switzerland Region Information | LPE-1117 |
| Incorrect HTML used in loading animation | LPE-1147 |
| Authentication |
| Unable to import from LDAP | LPE-1013 |
| Unable to change passwords if using LDAP password policy | LPE-1030 |
| Possible memory leak when using CAS | LPE-1058 |
| Cannot access "Add Application" menu using NTLM and IE | LPE-1017 |
| Option to not require password for basic authentication | LPE-1031 |
| Administrator passwords do not get synced with LDAP | LPE-1045 |
| Static passwords may be displayed to the user incorrectly after account creation | LPE-1056 |
| Cannot use FCKeditor to upload images | LPE-1080 |
| Sample RequestHeaderAutoLogin | LPE-1085 |
| LDAP export may fail if jobtitle is empty | LPE-1133 |
| Enabling LDAP export throws an exception | LPE-1020 |
| Updating user that does not exist in LDAP throws an exception | LPE-1095 |
| Control Panel |
| New option to prevent users from editing screen name and email | LPE-1041 |
| Some Wiki links do not work in the control panel | LPE-1049 |
| Changes to the list of available languages is not saved | LPE-1068 |
| Search Data in the Redirect URL of the Control Panel's Organization Admin Becomes Too Long For Some Browsers | LPE-1076 |
| Cannot add more than one address to a user / organization | LPE-1110 |
| Converting permission algorithms may not work | LPE-1118 |
| Cannot Open a Window to Change the Portal Logo for Certain Languages in IE6 | LPE-1134 |
| Header column is too short in plugins configuration | LPE-1075 |
| Database |
| Quickly adding social activities results in a duplicate key exception | LPE-1015 |
| Liferay does not start if database is sharded | LPE-1064 |
| Counter service's database connection times out | LPE-1102 |
| "Invalid object name" error occurs if using SQL Server 2000 | LPE-1152 |
| Finished adding support for Java Persistence Query Language | LPE-1038 |
| Corrupt database do not get upgraded | LPE-1047 |
| ShardLocalServiceUtil is more robust | LPE-1083 |
| Upgrade may fail if database supports altering column name but not column type | LPE-1093 |
| QueryPos can now take an array of values | LPE-1104 |
| Automatically detect and fix incorrect user entries in the database | LPE-1161 |
| Added Switzerland Region Information | LPE-1117 |
| Export / Import (LAR) |
| Web Content / Journal articles do not show up in searches after a site import | LPE-1046 |
| Journal Content Portlet Exports the Most Recent Article, Regardless of Approval Status | LPE-1055 |
| Extension Environment |
| New mechanism to override the default resource-actions permissions | LPE-1106 |
| Remove unused file from ext environment | LPE-1148 |
| Framework / API |
| Quickly adding social activities results in a duplicate key exception | LPE-1015 |
| Added a business rules engine | LPE-1099 |
| JavaScript framework for accessing portal properties | LPE-1016 |
| New method to get the number of message board post across all communities | LPE-1018 |
| Removed spring-test.jar | LPE-1036 |
| New methods to dynamically set headers when using HttpUtil.URLto*() | LPE-1062 |
| Methods in PortletResponseUtil can now take a MimeResponse | LPE-1079 |
| New Axis ServletUtil class | LPE-1082 |
| Service builder will now auto-generate localization methods | LPE-1087 |
| New util method to create a localization map based on a XML | LPE-1088 |
| WSRP has been rewritten | LPE-1089 |
| QueryPos can now take an array of values | LPE-1104 |
| New method to access PortletRequest from a SearchContainer | LPE-1107 |
| Simplify API for sending messages on the message bus | LPE-1108 |
| Allow plugins and ext environment to configure destinations on the message bus | LPE-1109 |
| New constructor for SearchContainer | LPE-1113 |
| Allow plugins to configure PortletBag with other portlets | LPE-1114 |
| New Content-Length constant for HttpHeaders class | LPE-1121 |
| New method to access the latest response's cookies | LPE-1122 |
| New $ constant for StringPool | LPE-1123 |
| liferay-portlet.xml now honors full URLs for CSS and JS | LPE-1125 |
| StringServletOutputStream can now take a ByteArrayOutputStream | LPE-1127 |
| New ResourceRetriever interface for accessing resources | LPE-1128 |
| get*Uuid() methods are now auto-generated | LPE-1130 |
| Classes that extend PrimitiveWrapper are now Comparable | LPE-1157 |
| Automatically detect and fix incorrect user entries in the database | LPE-1161 |
| Portal level polling mechanism for portlets | LPE-884 |
| High Availability / Clustering |
| Load balancing for Solr | LPE-1145 |
| JavaScript |
| Unable to delete comments | LPE-1012 |
| Unable to expand/collapse all when publishing to live or remote | LPE-1006 |
| JavaScript framework for accessing portal properties | LPE-1016 |
| Cannot access "Add Application" menu using NTLM and IE | LPE-1017 |
| Some javascript is not minified correctly and throws an exception | LPE-1050 |
| The list of pages in Manage Pages does not update when pages are added/deleted | LPE-1090 |
| Portal level polling mechanism for portlets | LPE-884 |
| Localization |
| New util method to create a localization map based on a XML | LPE-1088 |
| LocalizationUtil may return the wrong XML when removing a language | LPE-1097 |
| Friendly URL using i18n Servlet Defined in web.xml is Replaced With LanguageId in All Links | LPE-1111 |
| Ant build-lang may translate the languages incorrectly | LPE-1149 |
| Language servlet requests are not cached | LPE-1165 |
| Permissions |
| Guest can have configuration permission | LPE-1014 |
| Allow user groups to be a member of organizations | LPE-1053 |
| User Groups can now be assigned to community roles and organization roles | LPE-1120 |
| Migrating to permission algorithm 5 or 6 fails | LPE-1007 |
| Cannot access "Add Application" menu using NTLM and IE | LPE-1017 |
| Guest users cannot view blog entries | LPE-1021 |
| Members assigned by usergroup to organizations do not have the appropriate permissions | LPE-1167 |
| Improved script for migrating to permission algorithm 5 & 6 | LPE-1084 |
| Default permissions for the Owner role | LPE-1105 |
| New mechanism to override the default resource-actions permissions | LPE-1106 |
| Plugin Portlet - Chat |
| Chat portlet does not work with 3rd party JavaScript libraries | LPE-1139 |
| Portal level polling mechanism for portlets | LPE-884 |
| Chat portlet's Online Friends tab is cut off | LPE-1141 |
| The alt attribute is missing from the image tags in Chat/Weather/WOL portlets | LPE-1142 |
| Plugin Portlet - Google Gadget |
| Google Gadgets portlet does not work | LPE-1132 |
| Google Gadget portlet does not work | LPE-1003 |
| Plugin Portlet - Google Maps |
| Get directions does not work in Google Maps Plugins | LPE-1098 |
| Plugin Portlet - Google Search |
| Remove Google search portlet | LPE-1115 |
| Plugin Portlet - Weather |
| Images in Weather portlet do not show up | LPE-1002 |
| The alt attribute is missing from the image tags in Chat/Weather/WOL portlets | LPE-1142 |
| Plugin Portlet - WOL |
| WOL Summary portlet shows Twitter account | LPE-1004 |
| Summary portlet shows link for Blogs even if user doesn't have a blog | LPE-1146 |
| The alt attribute is missing from the image tags in Chat/Weather/WOL portlets | LPE-1142 |
| Plugin Portlets |
| Class loading issues with PluginsMessagingConfigurator in plugins | LPE-1048 |
| Allow plugins to configure PortletBag with other portlets | LPE-1114 |
| liferay-portlet.xml now honors full URLs for CSS and JS | LPE-1125 |
| Plugin Web - Solr Search Engine |
| Added ability to toggle auto-commit in Solr plugin | LPE-1143 |
| Basic authentication for Solr | LPE-1144 |
| Load balancing for Solr | LPE-1145 |
| Search results is not ordered by relevance | LPE-524 |
| Plugins |
| Unable to specify a portlet's available window states in portlet.xml | LPE-1096 |
| Deploying plugins to WebSphere no longer requires adding ibm-web-ext.xmi | LPE-1138 |
| Portlet |
| Portlets With Refresh Enabled Do Not Retain Their Window State | LPE-1060 |
| Adding tags with special characters may cause javscript errors | LPE-1069 |
| Refresh icon disappears | LPE-1074 |
| The refresh portlet icon only works once | LPE-1077 |
| Unable to specify a portlet's available window states in portlet.xml | LPE-1096 |
| ConfigurationAction now has access to the resource lifecycle | LPE-882 |
| Portlet - Activities |
| Quickly adding social activities results in a duplicate key exception | LPE-1015 |
| Activities portlet now tracks Image Gallery activities | LPE-1119 |
| Activities portlet does not work on community and organization pages | LPE-1136 |
| Portlet - Admin |
| Converting permission algorithms may not work | LPE-1118 |
| Portlet - Blog |
| The FCKeditor does not appear when using Firefox | LPE-1129 |
| Guest users cannot view blog entries | LPE-1021 |
| Some javascript is not minified correctly and throws an exception | LPE-1050 |
| Blog Entry Titles With Special Characters Such As "?" Cause Blog Entry Links to be Invalid | LPE-929 |
| The Blogs portlet default value for Maximum Items to Display can cause confusion | LPE-1011 |
| Portlet - Breadcrumb |
| Guest can have configuration permission | LPE-1014 |
| Option to show organizations / communities in breadcrumb | LPE-1044 |
| Portlet - Directory |
| Malicious JavaScript can be inserted into the Directory portlet | LPE-1131 |
| Portlet - Document Library |
| Old versions of Document Library files may not fully download | LPE-1000 |
| Cannot change the folder of a document in Document Library | LPE-1019 |
| Document Library, Image Gallery and Wiki allows files up to 3GB | LPE-1026 |
| An empty path causes WebDAV to throw an exception | LPE-1035 |
| No error message when uploading multiple files | LPE-1162 |
| Portlet - Enterprise Admin |
| New option to prevent users from editing screen name and email | LPE-1041 |
| Cannot add more than one address to a user / organization | LPE-1110 |
| Cannot Open a Window to Change the Portal Logo for Certain Languages in IE6 | LPE-1134 |
| User advanced search should default active to true | LPE-1094 |
| Portlet - Image Gallery |
| Document Library, Image Gallery and Wiki allows files up to 3GB | LPE-1026 |
| Activities portlet now tracks Image Gallery activities | LPE-1119 |
| No error message when uploading multiple files | LPE-1162 |
| Portlet - Journal / Web Content |
| Web Content Display indexes are not removed when removing the portlet from a page | LPE-1028 |
| The FCKeditor does not appear when using Firefox | LPE-1129 |
| Dynamically generated links in Web Content / Journal articles | LPE-1032 |
| Some javascript is not minified correctly and throws an exception | LPE-1050 |
| Journal Content Portlet Exports the Most Recent Article, Regardless of Approval Status | LPE-1055 |
| Added parent-structure-id attribute to the Journal / Web Content structure XML | LPE-1137 |
| Portlet - Message Boards |
| New method to get the number of message board post across all communities | LPE-1018 |
| Message Board threadcounts and postcounts may be incorrect | LPE-1150 |
| Portlet - Navigation |
| Guest can have configuration permission | LPE-1014 |
| Portlet - Plugin Installer |
| Header column is too short in plugins configuration | LPE-1075 |
| Portlet - Polls |
| Malicious JavaScript can be inserted into the Polls portlet | LPE-1100 |
| Portlet - Requests |
| Community administrator cannot approve membership requests | LPE-1140 |
| Friend requests may get confirmed or ignored involuntarily | LPE-786 |
| Portlet - Search |
| Added title and meta descriptions to search results | LPE-1027 |
| Portlet - Shopping |
| Guest can have configuration permission | LPE-1014 |
| Portlet - Sign In |
| Guest can have configuration permission | LPE-1014 |
| Portlet - Site Map |
| Guest can have configuration permission | LPE-1014 |
| Portlet - Wiki |
| Document Library, Image Gallery and Wiki allows files up to 3GB | LPE-1026 |
| Some Wiki links do not work in the control panel | LPE-1049 |
| Links in the Wiki RSS is broken | LPE-1154 |
| Improved display style of Wiki headers | LPE-1034 |
| Wiki page tags overlap with the title | LPE-1234 |
| Search |
| Some search results are not listed for authenticated users | LPE-1024 |
| Web Content / Journal articles do not show up in searches after a site import | LPE-1046 |
| Tags with multiple words are not searchable | LPE-1070 |
| Lucene search is more robust | LPE-1091 |
| Search results is not ordered by relevance | LPE-524 |
| Improved search term highlighting in search results | LPE-1023 |
| Staging |
| Unable to expand/collapse all when publishing to live or remote | LPE-1006 |
| Links in staging results in a redirect loop after a session timeout | LPE-1072 |
| TagLib |
| Option to show organizations / communities in breadcrumb | LPE-1044 |
| Javascript Validation of Maximum Length on text (area) fields does not work correctly on cut and paste | LPE-1057 |
| Adding tags with special characters may cause javscript errors | LPE-1069 |
| Cannot use CSS to change the column width in <liferay-ui:search-iterator> | LPE-1022 |
| Themes |
| Community logo is not used on private pages | LPE-1001 |
| Themes do not display correctly when using Jboss | LPE-1063 |
| Improved SEO for the default theme | LPE-1025 |
| Upgrade |
| Upgrading an Oracle database fails because it cannot modify column type | LPE-1008 |
| Upgrade will fail if a job title is over 75 characters | LPE-1009 |
| Upgrading may delete comments and cause you to be unable to add comments | LPE-1039 |
| Some subscriptions are lost during upgrade | LPE-1059 |
| Corrupt database do not get upgraded | LPE-1047 |
| Improved script for migrating to permission algorithm 5 & 6 | LPE-1084 |
| Upgrade may fail if database supports altering column name but not column type | LPE-1093 |
| Upgrading social activities logs an unnecessary exception | LPE-1051 |