diff --git a/tomcat-uidm/webapps/docs/RELEASE-NOTES.txt b/tomcat-uidm/webapps/docs/RELEASE-NOTES.txt
index b85ba0f..99cea1c 100644
--- a/tomcat-uidm/webapps/docs/RELEASE-NOTES.txt
+++ b/tomcat-uidm/webapps/docs/RELEASE-NOTES.txt
@@ -16,15 +16,16 @@
 ================================================================================
 
 
-                     Apache Tomcat Version 6.0.41
+                     Apache Tomcat Version 7.0.77
                             Release Notes
 
 
-=============================
-KNOWN ISSUES IN THIS RELEASE:
-=============================
+=========
+CONTENTS:
+=========
 
 * Dependency Changes
+* API Stability
 * JNI Based Applications
 * Bundled APIs
 * Web application reloading and static fields in shared libraries
@@ -32,7 +33,6 @@
 * Enabling SSI and CGI Support
 * Security manager URLs
 * Symlinking static resources
-* Enabling invoker servlet
 * Viewing the Tomcat Change Log
 * Cryptographic software notice
 * When all else fails
@@ -41,17 +41,37 @@
 ===================
 Dependency Changes:
 ===================
-Tomcat 6.0 is designed to run on Java SE 5.0 and later.
+Tomcat 7.0 is designed to run on Java SE 6 and later.
 
-In addition, Tomcat 6.0 uses the Eclipse JDT Java compiler for compiling
-JSP pages.  This means you no longer need to have the complete
+In addition, Tomcat 7.0 uses the Eclipse JDT Java compiler for
+compiling JSP pages.  This means you no longer need to have the complete
 Java Development Kit (JDK) to run Tomcat, but a Java Runtime Environment
-(JRE) is sufficient.  The Eclipse JDT Java compiler is bundled with the 
+(JRE) is sufficient.  The Eclipse JDT Java compiler is bundled with the
 binary Tomcat distributions.  Tomcat can also be configured to use the
-compiler from the JDK to compile JSPs, or any other Java compiler supported 
+compiler from the JDK to compile JSPs, or any other Java compiler supported
 by Apache Ant.
 
 
+==============
+API Stability:
+==============
+The public interfaces for the following classes are fixed and will not be
+changed at all during the remaining lifetime of the 7.x series:
+- javax/**/*
+
+The public interfaces for the following classes may be added to in order to
+resolve bugs and/or add new features. No existing interface will be removed or
+changed although it may be deprecated.
+- org/apache/catalina/*
+- org/apache/catalina/comet/*
+
+Note: As Tomcat 7 matures, the above list will be added to. The list is not
+      considered complete at this time.
+
+The remaining classes are considered part of the Tomcat internals and may change
+without notice between point releases.
+
+
 =======================
 JNI Based Applications:
 =======================
@@ -76,28 +96,33 @@
 =============
 Bundled APIs:
 =============
-A standard installation of Tomcat 6.0 makes all of the following APIs available
+A standard installation of Tomcat 7.0 makes all of the following APIs available
 for use by web applications (by placing them in "lib"):
 * annotations-api.jar (Annotations package)
 * catalina.jar (Tomcat Catalina implementation)
 * catalina-ant.jar (Tomcat Catalina Ant tasks)
 * catalina-ha.jar (High availability package)
 * catalina-tribes.jar (Group communication)
-* ecj-4.3.1.jar (Eclipse JDT Java compiler)
-* el-api.jar (EL 2.1 API)
+* ecj-4.4.2.jar (Eclipse JDT Java compiler)
+* el-api.jar (EL 2.2 API)
 * jasper.jar (Jasper 2 Compiler and Runtime)
 * jasper-el.jar (Jasper 2 EL implementation)
-* jsp-api.jar (JSP 2.1 API)
-* servlet-api.jar (Servlet 2.5 API)
+* jsp-api.jar (JSP 2.2 API)
+* servlet-api.jar (Servlet 3.0 API)
+* tomcat7-websocket.jar (WebSocket 1.1 implementation)
+* tomcat-api.jar (Interfaces shared by Catalina and Jasper)
 * tomcat-coyote.jar (Tomcat connectors and utility classes)
 * tomcat-dbcp.jar (package renamed database connection pool based on Commons DBCP)
+* tomcat-jdbc.jar (Tomcat's database connection pooling solution)
+* tomcat-util.jar (Various utilities)
+* websocket-api.jar (WebSocket 1.1 API)
 
 You can make additional APIs available to all of your web applications by
 putting unpacked classes into a "classes" directory (not created by default),
 or by placing them in JAR files in the "lib" directory.
 
 To override the XML parser implementation or interfaces, use the endorsed
-mechanism of the JVM. The default configuration defines JARs located in 
+mechanism of the JVM. The default configuration defines JARs located in
 "endorsed" as endorsed.
 
 
@@ -164,59 +189,32 @@
 the check.
 
 
-=========================
-Enabling invoker servlet:
-=========================
-Starting with Tomcat 4.1.12, the invoker servlet is no longer available by
-default in all webapps. Enabling it for all webapps is possible by editing
-$CATALINA_HOME/conf/web.xml to uncomment the "/servlet/*" servlet-mapping
-definition.
-
-Using the invoker servlet in a production environment is not recommended and
-is unsupported.  More details are available on the Tomcat FAQ at
-http://tomcat.apache.org/faq/misc.html#invoker.
-
-
 ==============================
 Viewing the Tomcat Change Log:
 ==============================
 See changelog.html in this directory.
 
 
-============================================
-Multi-byte charset handling bug in Java 1.5:
-============================================
-Public versions of Sun/Oracle Java 1.5 are known to have a nasty bug in
-implementation of Charset.decode() method for certain character sets.
-
-For details, test and a list of affected character sets see:
-
-http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6196991
-https://issues.apache.org/bugzilla/show_bug.cgi?id=52579
-
-The UTF-8 charset is not affected by this issue.
-
-
 =============================
 Cryptographic software notice
 =============================
-This distribution includes cryptographic software.  The country in 
-which you currently reside may have restrictions on the import, 
-possession, use, and/or re-export to another country, of 
-encryption software.  BEFORE using any encryption software, please 
+This distribution includes cryptographic software.  The country in
+which you currently reside may have restrictions on the import,
+possession, use, and/or re-export to another country, of
+encryption software.  BEFORE using any encryption software, please
 check your country's laws, regulations and policies concerning the
-import, possession, or use, and re-export of encryption software, to 
+import, possession, or use, and re-export of encryption software, to
 see if this is permitted.  See <http://www.wassenaar.org/> for more
 information.
 
 The U.S. Government Department of Commerce, Bureau of Industry and
-Security (BIS), has classified this software as Export Commodity 
+Security (BIS), has classified this software as Export Commodity
 Control Number (ECCN) 5D002.C.1, which includes information security
 software using or performing cryptographic functions with asymmetric
 algorithms.  The form and manner of this Apache Software Foundation
 distribution makes it eligible for export under the License Exception
-ENC Technology Software Unrestricted (TSU) exception (see the BIS 
-Export Administration Regulations, Section 740.13) for both object 
+ENC Technology Software Unrestricted (TSU) exception (see the BIS
+Export Administration Regulations, Section 740.13) for both object
 code and source code.
 
 The following provides more details on the included cryptographic
