Index: wp-includes/post-template.php
===================================================================
--- wp-includes/post-template.php	(revision 12593)
+++ wp-includes/post-template.php	(working copy)
@@ -949,158 +949,6 @@
 }
 
 /**
- * Retrieve HTML content of attachment image with link.
- *
- * @since 2.0.0
- * @deprecated Use {@link wp_get_attachment_link()}
- * @see wp_get_attachment_link() Use instead.
- *
- * @param int $id Optional. Post ID.
- * @param bool $fullsize Optional, default is false. Whether to use full size image.
- * @param array $max_dims Optional. Max image dimensions.
- * @param bool $permalink Optional, default is false. Whether to include permalink to image.
- * @return string
- */
-function get_the_attachment_link($id = 0, $fullsize = false, $max_dims = false, $permalink = false) {
-	$id = (int) $id;
-	$_post = & get_post($id);
-
-	if ( ('attachment' != $_post->post_type) || !$url = wp_get_attachment_url($_post->ID) )
-		return __('Missing Attachment');
-
-	if ( $permalink )
-		$url = get_attachment_link($_post->ID);
-
-	$post_title = esc_attr($_post->post_title);
-
-	$innerHTML = get_attachment_innerHTML($_post->ID, $fullsize, $max_dims);
-	return "<a href='$url' title='$post_title'>$innerHTML</a>";
-}
-
-/**
- * Retrieve icon URL and Path.
- *
- * @since 2.1.0
- * @deprecated Use {@link wp_get_attachment_image_src()}
- * @see wp_get_attachment_image_src() Use instead.
- *
- * @param int $id Optional. Post ID.
- * @param bool $fullsize Optional, default to false. Whether to have full image.
- * @return array Icon URL and full path to file, respectively.
- */
-function get_attachment_icon_src( $id = 0, $fullsize = false ) {
-	$id = (int) $id;
-	if ( !$post = & get_post($id) )
-		return false;
-
-	$file = get_attached_file( $post->ID );
-
-	if ( !$fullsize && $src = wp_get_attachment_thumb_url( $post->ID ) ) {
-		// We have a thumbnail desired, specified and existing
-
-		$src_file = basename($src);
-		$class = 'attachmentthumb';
-	} elseif ( wp_attachment_is_image( $post->ID ) ) {
-		// We have an image without a thumbnail
-
-		$src = wp_get_attachment_url( $post->ID );
-		$src_file = & $file;
-		$class = 'attachmentimage';
-	} elseif ( $src = wp_mime_type_icon( $post->ID ) ) {
-		// No thumb, no image. We'll look for a mime-related icon instead.
-
-		$icon_dir = apply_filters( 'icon_dir', get_template_directory() . '/images' );
-		$src_file = $icon_dir . '/' . basename($src);
-	}
-
-	if ( !isset($src) || !$src )
-		return false;
-
-	return array($src, $src_file);
-}
-
-/**
- * Retrieve HTML content of icon attachment image element.
- *
- * @since 2.0.0
- * @deprecated Use {@link wp_get_attachment_image()}
- * @see wp_get_attachment_image() Use instead of.
- *
- * @param int $id Optional. Post ID.
- * @param bool $fullsize Optional, default to false. Whether to have full size image.
- * @param array $max_dims Optional. Dimensions of image.
- * @return string HTML content.
- */
-function get_attachment_icon( $id = 0, $fullsize = false, $max_dims = false ) {
-	$id = (int) $id;
-	if ( !$post = & get_post($id) )
-		return false;
-
-	if ( !$src = get_attachment_icon_src( $post->ID, $fullsize ) )
-		return false;
-
-	list($src, $src_file) = $src;
-
-	// Do we need to constrain the image?
-	if ( ($max_dims = apply_filters('attachment_max_dims', $max_dims)) && file_exists($src_file) ) {
-
-		$imagesize = getimagesize($src_file);
-
-		if (($imagesize[0] > $max_dims[0]) || $imagesize[1] > $max_dims[1] ) {
-			$actual_aspect = $imagesize[0] / $imagesize[1];
-			$desired_aspect = $max_dims[0] / $max_dims[1];
-
-			if ( $actual_aspect >= $desired_aspect ) {
-				$height = $actual_aspect * $max_dims[0];
-				$constraint = "width='{$max_dims[0]}' ";
-				$post->iconsize = array($max_dims[0], $height);
-			} else {
-				$width = $max_dims[1] / $actual_aspect;
-				$constraint = "height='{$max_dims[1]}' ";
-				$post->iconsize = array($width, $max_dims[1]);
-			}
-		} else {
-			$post->iconsize = array($imagesize[0], $imagesize[1]);
-			$constraint = '';
-		}
-	} else {
-		$constraint = '';
-	}
-
-	$post_title = esc_attr($post->post_title);
-
-	$icon = "<img src='$src' title='$post_title' alt='$post_title' $constraint/>";
-
-	return apply_filters( 'attachment_icon', $icon, $post->ID );
-}
-
-/**
- * Retrieve HTML content of image element.
- *
- * @since 2.0.0
- * @deprecated Use {@link wp_get_attachment_image()}
- * @see wp_get_attachment_image() Use instead.
- *
- * @param int $id Optional. Post ID.
- * @param bool $fullsize Optional, default to false. Whether to have full size image.
- * @param array $max_dims Optional. Dimensions of image.
- * @return string
- */
-function get_attachment_innerHTML($id = 0, $fullsize = false, $max_dims = false) {
-	$id = (int) $id;
-	if ( !$post = & get_post($id) )
-		return false;
-
-	if ( $innerHTML = get_attachment_icon($post->ID, $fullsize, $max_dims))
-		return $innerHTML;
-
-
-	$innerHTML = esc_attr($post->post_title);
-
-	return apply_filters('attachment_innerHTML', $innerHTML, $post->ID);
-}
-
-/**
  * Wrap attachment in <<p>> element before content.
  *
  * @since 2.0.0
Index: wp-includes/l10n.php
===================================================================
--- wp-includes/l10n.php	(revision 12593)
+++ wp-includes/l10n.php	(working copy)
@@ -67,21 +67,6 @@
 		return substr( $string, 0, $last_bar );
 }
 
-/**
- * Translates $text like translate(), but assumes that the text
- * contains a context after its last vertical bar.
- *
- * @since 2.5
- * @uses translate()
- *
- * @param string $text Text to translate
- * @param string $domain Domain to retrieve the translated text
- * @return string Translated text
- */
-function translate_with_context( $text, $domain = 'default' ) {
-	return before_last_bar( translate( $text, $domain ) );
-}
-
 function translate_with_gettext_context( $text, $context, $domain = 'default' ) {
 	$translations = &get_translations_for_domain( $domain );
 	return apply_filters( 'gettext_with_context', $translations->translate( $text, $context ), $text, $context, $domain );
@@ -204,12 +189,6 @@
 	return esc_html( translate_with_gettext_context( $single, $context, $domain ) );
 }
 
-function __ngettext() {
-	_deprecated_function( __FUNCTION__, '2.8', '_n()' );
-	$args = func_get_args();
-	return call_user_func_array('_n', $args);
-}
-
 /**
  * Retrieve the plural or single form based on the amount.
  *
@@ -221,7 +200,7 @@
  * to the 'ngettext' filter hook along with the same parameters. The expected
  * type will be a string.
  *
- * @since 1.2.0
+ * @since 2.8.0
  * @uses $l10n Gets list of domain translated string (gettext_reader) objects
  * @uses apply_filters() Calls 'ngettext' hook on domains text returned,
  *		along with $single, $plural, and $number parameters. Expected to return string.
@@ -252,16 +231,6 @@
 }
 
 /**
- * @deprecated Use _n_noop()
- */
-function __ngettext_noop() {
-	_deprecated_function( __FUNCTION__, '2.8', '_n_noop()' );
-	$args = func_get_args();
-	return call_user_func_array('_n_noop', $args);
-
-}
-
-/**
  * Register plural strings in POT file, but don't translate them.
  *
  * Used when you want do keep structures with translatable plural strings and
@@ -276,7 +245,7 @@
  *  $message = $messages[$type];
  *  $usable_text = sprintf(_n($message[0], $message[1], $count), $count);
  *
- * @since 2.5
+ * @since 2.8.0
  * @param $single Single form to be i18ned
  * @param $plural Plural form to be i18ned
  * @return array array($single, $plural)
Index: wp-includes/bookmark.php
===================================================================
--- wp-includes/bookmark.php	(revision 12593)
+++ wp-includes/bookmark.php	(working copy)
@@ -80,21 +80,6 @@
 }
 
 /**
- * Retrieve bookmark data based on ID.
- *
- * @since 2.0.0
- * @deprecated Use get_bookmark()
- * @see get_bookmark()
- *
- * @param int $bookmark_id ID of link
- * @param string $output Either OBJECT, ARRAY_N, or ARRAY_A
- * @return object|array
- */
-function get_link($bookmark_id, $output = OBJECT, $filter = 'raw') {
-	return get_bookmark($bookmark_id, $output, $filter);
-}
-
-/**
  * Retrieves the list of bookmarks
  *
  * Attempts to retrieve from the cache first based on MD5 hash of arguments. If
Index: wp-includes/formatting.php
===================================================================
--- wp-includes/formatting.php	(revision 12593)
+++ wp-includes/formatting.php	(working copy)
@@ -2265,22 +2265,6 @@
 }
 
 /**
- * Performs esc_url() for database or redirect usage.
- *
- * @see esc_url()
- * @deprecated 2.8.0
- *
- * @since 2.3.1
- *
- * @param string $url The URL to be cleaned.
- * @param array $protocols An array of acceptable protocols.
- * @return string The cleaned URL.
- */
-function sanitize_url( $url, $protocols = null ) {
-	return clean_url( $url, $protocols, 'db' );
-}
-
-/**
  * Convert entities, while preserving already-encoded entities.
  *
  * @link http://www.php.net/htmlentities Borrowed from the PHP Manual user notes.
@@ -2318,23 +2302,6 @@
 }
 
 /**
- * Escape single quotes, specialchar double quotes, and fix line endings.
- *
- * The filter 'js_escape' is also applied by esc_js()
- *
- * @since 2.0.4
- *
- * @deprecated 2.8.0
- * @see esc_js()
- *
- * @param string $text The text to be escaped.
- * @return string Escaped text.
- */
-function js_escape( $text ) {
-	return esc_js( $text );
-}
-
-/**
  * Escaping for HTML blocks.
  *
  * @since 2.8.0
@@ -2349,20 +2316,6 @@
 }
 
 /**
- * Escaping for HTML blocks
- * @deprecated 2.8.0
- * @see esc_html()
- */
-function wp_specialchars( $string, $quote_style = ENT_NOQUOTES, $charset = false, $double_encode = false ) {
-	if ( func_num_args() > 1 ) { // Maintain backwards compat for people passing additional args
-		$args = func_get_args();
-		return call_user_func_array( '_wp_specialchars', $args );
-	} else {
-		return esc_html( $string );
-	}
-}
-
-/**
  * Escaping for HTML attributes.
  *
  * @since 2.8.0
@@ -2377,21 +2330,6 @@
 }
 
 /**
- * Escaping for HTML attributes.
- *
- * @since 2.0.6
- *
- * @deprecated 2.8.0
- * @see esc_attr()
- *
- * @param string $text
- * @return string
- */
-function attribute_escape( $text ) {
-	return esc_attr( $text );
-}
-
-/**
  * Escape a HTML tag name.
  *
  * @since 2.5.0
Index: wp-includes/deprecated.php
===================================================================
--- wp-includes/deprecated.php	(revision 12593)
+++ wp-includes/deprecated.php	(working copy)
@@ -125,7 +125,7 @@
 function start_wp() {
 	global $wp_query, $post;
 
-	_deprecated_function( __FUNCTION__, '1.5', __('new WordPress Loop')  );
+	_deprecated_function( __FUNCTION__, '1.5', __('new WordPress Loop') );
 
 	// Since the old style loop is being used, advance the query iterator here.
 	$wp_query->next_post();
@@ -487,6 +487,7 @@
  * Gets the links associated with the named category.
  *
  * @since 1.0.1
+ * @deprecated 2.1
  * @deprecated Use wp_list_bookmarks()
  * @see wp_list_bookmarks()
  *
@@ -495,7 +496,7 @@
  * @return bool|null
  */
 function wp_get_linksbyname($category, $args = '') {
-	_deprecated_function(__FUNCTION__, '0.0', 'wp_list_bookmarks()');
+	_deprecated_function( __FUNCTION__, '2.1', 'wp_list_bookmarks()' );
 
 	$defaults = array(
 		'after' => '<br />',
@@ -661,13 +662,14 @@
  * Gets the auto_toggle setting.
  *
  * @since 0.71
+ * @deprecated 2.1
  * @deprecated No alternative function available
  *
  * @param int $id The category to get. If no category supplied uses 0
  * @return int Only returns 0.
  */
 function get_autotoggle($id = 0) {
-	_deprecated_function( __FUNCTION__, '2.1'  );
+	_deprecated_function( __FUNCTION__, '2.1' );
 	return 0;
 }
 
@@ -741,6 +743,7 @@
 
 /**
  * @since 0.71
+ * @deprecated 2.1
  * @deprecated Use wp_dropdown_categories()
  * @see wp_dropdown_categories()
  *
@@ -776,6 +779,77 @@
 }
 
 /**
+ * {@internal Missing Short Description}}
+ *
+ * @since unknown
+ * @deprecated 2.6.0
+ * @deprecated Use wp_category_checklist()
+ * @see wp_category_checklist()
+ *
+ * @param unknown_type $default
+ * @param unknown_type $parent
+ * @param unknown_type $popular_ids
+ */
+function dropdown_categories( $default = 0, $parent = 0, $popular_ids = array() ) {
+	_deprecated_function( __FUNCTION__, '2.6', 'wp_category_checklist()' );
+	global $post_ID;
+	wp_category_checklist($post_ID);
+}
+
+/**
+ * {@internal Missing Short Description}}
+ *
+ * @since unknown
+ * @deprecated 2.6.0
+ * @deprecated Use wp_link_category_checklist()
+ * @see wp_link_category_checklist()
+ *
+ * @param unknown_type $default
+ */
+function dropdown_link_categories( $default = 0 ) {
+	_deprecated_function( __FUNCTION__, '2.6', 'wp_link_category_checklist()' );
+	global $link_id;
+	wp_link_category_checklist($link_id);
+}
+
+/**
+ * Display the HTML dropdown list of categories.
+ *
+ * @since unknown
+ * @deprecated 2.1.0
+ * @deprecated Use wp_dropdown_categories()
+ * @see wp_dropdown_categories()
+ *
+ * @param unknown_type $currentcat
+ * @param unknown_type $currentparent
+ * @param unknown_type $parent
+ * @param unknown_type $level
+ * @param unknown_type $categories
+ * @return unknown
+ */
+function wp_dropdown_cats( $currentcat = 0, $currentparent = 0, $parent = 0, $level = 0, $categories = 0 ) {
+	_deprecated_function( __FUNCTION__, '2.1', 'wp_dropdown_categories()' );
+	if (!$categories )
+		$categories = get_categories( array('hide_empty' => 0) );
+
+	if ( $categories ) {
+		foreach ( $categories as $category ) {
+			if ( $currentcat != $category->term_id && $parent == $category->parent) {
+				$pad = str_repeat( '&#8211; ', $level );
+				$category->name = esc_html( $category->name );
+				echo "\n\t<option value='$category->term_id'";
+				if ( $currentparent == $category->term_id )
+					echo " selected='selected'";
+				echo ">$pad$category->name</option>";
+				wp_dropdown_cats( $currentcat, $currentparent, $category->term_id, $level +1, $categories );
+			}
+		}
+	} else {
+		return false;
+	}
+}
+
+/**
  * @since 2.1
  * @deprecated 2.1
  * @deprecated Use wp_tiny_mce().
@@ -943,29 +1017,47 @@
  * Print the permalink to the RSS feed.
  *
  * @since 0.71
+ * @deprecated 2.3
  * @deprecated Use the_permalink_rss()
  * @see the_permalink_rss()
  *
  * @param string $file
  */
 function permalink_single_rss($deprecated = '') {
-	_deprecated_function(__FUNCTION__, '0.0', 'the_permalink_rss()');
+	_deprecated_function( __FUNCTION__, '2.3', 'the_permalink_rss()' );
 	the_permalink_rss();
 }
 
 /**
+ * Retrieve bookmark data based on ID.
+ *
+ * @since 2.0.0
+ * @deprecated 2.1.0
+ * @deprecated Use get_bookmark()
+ * @see get_bookmark()
+ *
+ * @param int $bookmark_id ID of link
+ * @param string $output Either OBJECT, ARRAY_N, or ARRAY_A
+ * @return object|array
+ */
+function get_link($bookmark_id, $output = OBJECT, $filter = 'raw') {
+	_deprecated_function( __FUNCTION__, '2.1', 'get_bookmark()' );
+	return get_bookmark($bookmark_id, $output, $filter);
+}
+
+/**
  * Gets the links associated with category.
  *
- * @see get_links() for argument information that can be used in $args
  * @since 1.0.1
- * @deprecated Use get_bookmarks()
- * @see get_bookmarks()
+ * @deprecated 2.1
+ * @deprecated Use wp_list_bookmarks()
+ * @see wp_list_bookmarks()
  *
  * @param string $args a query string
  * @return null|string
  */
 function wp_get_links($args = '') {
-	_deprecated_function(__FUNCTION__, '0.0', 'wp_list_bookmarks()');
+	_deprecated_function( __FUNCTION__, '2.1', 'wp_list_bookmarks()' );
 
 	if ( strpos( $args, '=' ) === false ) {
 		$cat_id = $args;
@@ -997,6 +1089,7 @@
  * Gets the links associated with category by id.
  *
  * @since 0.71
+ * @deprecated 2.1
  * @deprecated Use get_bookmarks()
  * @see get_bookmarks()
  *
@@ -1162,7 +1255,7 @@
  * @param bool $count the number of links in the db
  */
 function links_popup_script($text = 'Links', $width=400, $height=400, $file='links.all.php', $count = true) {
-	_deprecated_function( __FUNCTION__, '2.1'  );
+	_deprecated_function( __FUNCTION__, '2.1' );
 
 	if ( $count )
 		$counts = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->links");
@@ -1320,17 +1413,18 @@
  *
  */
 function documentation_link() {
-	_deprecated_function( __FUNCTION__, '2.5', '' );
+	_deprecated_function( __FUNCTION__, '2.5' );
 	return;
 }
 
 /**
  * Unused function.
  *
+ * @since unknown
  * @deprecated 2.5
 */
 function gzip_compression() {
-	_deprecated_function( __FUNCTION__, '2.5', '' );
+	_deprecated_function( __FUNCTION__, '2.5' );
 	return false;
 }
 
@@ -1417,7 +1511,7 @@
  * @return string The author's description.
  */
 function get_the_author_description() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'description\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'description\')' );
 	return get_the_author_meta('description');
 }
 
@@ -1430,7 +1524,7 @@
  * @see the_author_meta()
  */
 function the_author_description() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'description\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'description\')' );
 	the_author_meta('description');
 }
 
@@ -1445,7 +1539,7 @@
  * @return string The author's login name (username).
  */
 function get_the_author_login() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'login\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'login\')' );
 	return get_the_author_meta('login');
 }
 
@@ -1458,7 +1552,7 @@
  * @see the_author_meta()
  */
 function the_author_login() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'login\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'login\')' );
 	the_author_meta('login');
 }
 
@@ -1473,7 +1567,7 @@
  * @return string The author's first name.
  */
 function get_the_author_firstname() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'first_name\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'first_name\')' );
 	return get_the_author_meta('first_name');
 }
 
@@ -1486,7 +1580,7 @@
  * @see the_author_meta()
  */
 function the_author_firstname() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'first_name\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'first_name\')' );
 	the_author_meta('first_name');
 }
 
@@ -1501,7 +1595,7 @@
  * @return string The author's last name.
  */
 function get_the_author_lastname() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'last_name\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'last_name\')' );
 	return get_the_author_meta('last_name');
 }
 
@@ -1514,7 +1608,7 @@
  * @see the_author_meta()
  */
 function the_author_lastname() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'last_name\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'last_name\')' );
 	the_author_meta('last_name');
 }
 
@@ -1529,7 +1623,7 @@
  * @return string The author's nickname.
  */
 function get_the_author_nickname() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'nickname\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'nickname\')' );
 	return get_the_author_meta('nickname');
 }
 
@@ -1542,7 +1636,7 @@
  * @see the_author_meta()
  */
 function the_author_nickname() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'nickname\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'nickname\')' );
 	the_author_meta('nickname');
 }
 
@@ -1557,7 +1651,7 @@
  * @return string The author's username.
  */
 function get_the_author_email() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'email\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'email\')' );
 	return get_the_author_meta('email');
 }
 
@@ -1570,7 +1664,7 @@
  * @see the_author_meta()
  */
 function the_author_email() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'email\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'email\')' );
 	the_author_meta('email');
 }
 
@@ -1585,7 +1679,7 @@
  * @return string The author's ICQ number.
  */
 function get_the_author_icq() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'icq\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'icq\')' );
 	return get_the_author_meta('icq');
 }
 
@@ -1598,7 +1692,7 @@
  * @see the_author_meta()
  */
 function the_author_icq() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'icq\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'icq\')' );
 	the_author_meta('icq');
 }
 
@@ -1613,7 +1707,7 @@
  * @return string The author's Yahoo! IM name.
  */
 function get_the_author_yim() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'yim\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'yim\')' );
 	return get_the_author_meta('yim');
 }
 
@@ -1626,7 +1720,7 @@
  * @see the_author_meta()
  */
 function the_author_yim() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'yim\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'yim\')' );
 	the_author_meta('yim');
 }
 
@@ -1641,7 +1735,7 @@
  * @return string The author's MSN address.
  */
 function get_the_author_msn() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'msn\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'msn\')' );
 	return get_the_author_meta('msn');
 }
 
@@ -1654,7 +1748,7 @@
  * @see the_author_meta()
  */
 function the_author_msn() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'msn\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'msn\')' );
 	the_author_meta('msn');
 }
 
@@ -1669,7 +1763,7 @@
  * @return string The author's AIM address.
  */
 function get_the_author_aim() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'aim\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'aim\')' );
 	return get_the_author_meta('aim');
 }
 
@@ -1682,7 +1776,7 @@
  * @deprecated Use the_author_meta('aim')
  */
 function the_author_aim() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'aim\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'aim\')' );
 	the_author_meta('aim');
 }
 
@@ -1698,7 +1792,7 @@
  * @return string The author's display name.
  */
 function get_author_name( $auth_id = false ) {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'display_name\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'display_name\')' );
 	return get_the_author_meta('display_name', $auth_id);
 }
 
@@ -1713,7 +1807,7 @@
  * @return string The URL to the author's page.
  */
 function get_the_author_url() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'url\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'url\')' );
 	return get_the_author_meta('url');
 }
 
@@ -1726,7 +1820,7 @@
  * @see the_author_meta()
  */
 function the_author_url() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'url\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'url\')' );
 	the_author_meta('url');
 }
 
@@ -1741,7 +1835,7 @@
  * @return int The author's ID.
  */
 function get_the_author_ID() {
-	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'ID\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'get_the_author_meta(\'ID\')' );
 	return get_the_author_meta('ID');
 }
 
@@ -1754,7 +1848,7 @@
  * @see the_author_meta()
 */
 function the_author_ID() {
-	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'ID\')'  );
+	_deprecated_function( __FUNCTION__, '2.8', 'the_author_meta(\'ID\')' );
 	the_author_meta('ID');
 }
 
@@ -1793,7 +1887,7 @@
  * @param int $encode_html Optional. How to encode the content.
  */
 function the_content_rss($more_link_text='(more...)', $stripteaser=0, $more_file='', $cut = 0, $encode_html = 0) {
-	_deprecated_function( __FUNCTION__, '2.9', 'the_content_feed'  );
+	_deprecated_function( __FUNCTION__, '2.9', 'the_content_feed()' );
 	$content = get_the_content($more_link_text, $stripteaser, $more_file);
 	$content = apply_filters('the_content_rss', $content);
 	if ( $cut && !$encode_html )
@@ -1839,7 +1933,7 @@
  * @return string HTML stripped out of content with links at the bottom.
  */
 function make_url_footnote( $content ) {
-	_deprecated_function( __FUNCTION__, '2.9', ''  );
+	_deprecated_function( __FUNCTION__, '2.9' );
 	preg_match_all( '/<a(.+?)href=\"(.+?)\"(.*?)>(.+?)<\/a>/', $content, $matches );
 	$links_summary = "\n";
 	for ( $i=0; $i<count($matches[0]); $i++ ) {
@@ -1857,6 +1951,35 @@
 }
 
 /**
+ * Retrieve the plural or single form based on the amount.
+ *
+ * @since 2.1.0
+ * @deprecated 2.8.0
+ * @deprecated Use _n()
+ * @see _n()
+ */
+function __ngettext() {
+	_deprecated_function( __FUNCTION__, '2.8', '_n()' );
+	$args = func_get_args();
+	return call_user_func_array('_n', $args);
+}
+
+/**
+ * Register plural strings in POT file, but don't translate them.
+ *
+ * @since 2.5.0
+ * @deprecated 2.8.0
+ * @deprecated Use _n_noop()
+ * @see _n_noop()
+ */
+function __ngettext_noop() {
+	_deprecated_function( __FUNCTION__, '2.8', '_n_noop()' );
+	$args = func_get_args();
+	return call_user_func_array('_n_noop', $args);
+
+}
+
+/**
  * Retrieve translated string with vertical bar context
  *
  * Quite a few times, there will be collisions with similar translatable text
@@ -1879,8 +2002,8 @@
  * @return string Translated context string without pipe
  */
 function _c( $text, $domain = 'default' ) {
-	_deprecated_function(__FUNCTION__, '2.9', '_x' );
-	return translate_with_context( $text, $domain );
+	_deprecated_function( __FUNCTION__, '2.9', '_x()' );
+  return before_last_bar( translate( $text, $domain ) );
 }
 
 /**
@@ -1896,7 +2019,262 @@
  *
  */
 function _nc( $single, $plural, $number, $domain = 'default' ) {
-	_deprecated_function(__FUNCTION__, '2.9', '_nx' );
+	_deprecated_function( __FUNCTION__, '3.0', '_nx()' );
 	return before_last_bar( _n( $single, $plural, $number, $domain ) );
 }
-?>
+
+/**
+ * Translates $text like translate(), but assumes that the text
+ * contains a context after its last vertical bar.
+ *
+ * @since 2.5
+ * @deprecated 3.0.0
+ * @deprecated Use _x()
+ * @see _x()
+ * @uses translate()
+ *
+ * @param string $text Text to translate
+ * @param string $domain Domain to retrieve the translated text
+ * @return string Translated text
+ */
+function translate_with_context( $text, $domain = 'default' ) {f
+
+	_deprecated_function( __FUNCTION__, '3.0', '_x()' );
+	return before_last_bar( translate( $text, $domain ) );
+}
+
+/**
+ * Retrieve HTML content of attachment image with link.
+ *
+ * @since 2.0.0
+ * @deprecated 2.5.0
+ * @deprecated Use wp_get_attachment_link()
+ * @see wp_get_attachment_link()
+ *
+ * @param int $id Optional. Post ID.
+ * @param bool $fullsize Optional, default is false. Whether to use full size image.
+ * @param array $max_dims Optional. Max image dimensions.
+ * @param bool $permalink Optional, default is false. Whether to include permalink to image.
+ * @return string
+ */
+function get_the_attachment_link($id = 0, $fullsize = false, $max_dims = false, $permalink = false) {
+	_deprecated_function( __FUNCTION__, '2.5', 'wp_get_attachment_link()' );
+	$id = (int) $id;
+	$_post = & get_post($id);
+
+	if ( ('attachment' != $_post->post_type) || !$url = wp_get_attachment_url($_post->ID) )
+		return __('Missing Attachment');
+
+	if ( $permalink )
+		$url = get_attachment_link($_post->ID);
+
+	$post_title = esc_attr($_post->post_title);
+
+	$innerHTML = get_attachment_innerHTML($_post->ID, $fullsize, $max_dims);
+	return "<a href='$url' title='$post_title'>$innerHTML</a>";
+}
+
+/**
+ * Retrieve icon URL and Path.
+ *
+ * @since 2.1.0
+ * @deprecated 2.5.0
+ * @deprecated Use wp_get_attachment_image_src()
+ * @see wp_get_attachment_image_src()
+ *
+ * @param int $id Optional. Post ID.
+ * @param bool $fullsize Optional, default to false. Whether to have full image.
+ * @return array Icon URL and full path to file, respectively.
+ */
+function get_attachment_icon_src( $id = 0, $fullsize = false ) {
+	_deprecated_function( __FUNCTION__, '2.5', 'wp_get_attachment_image_src()' );
+	$id = (int) $id;
+	if ( !$post = & get_post($id) )
+		return false;
+
+	$file = get_attached_file( $post->ID );
+
+	if ( !$fullsize && $src = wp_get_attachment_thumb_url( $post->ID ) ) {
+		// We have a thumbnail desired, specified and existing
+
+		$src_file = basename($src);
+		$class = 'attachmentthumb';
+	} elseif ( wp_attachment_is_image( $post->ID ) ) {
+		// We have an image without a thumbnail
+
+		$src = wp_get_attachment_url( $post->ID );
+		$src_file = & $file;
+		$class = 'attachmentimage';
+	} elseif ( $src = wp_mime_type_icon( $post->ID ) ) {
+		// No thumb, no image. We'll look for a mime-related icon instead.
+
+		$icon_dir = apply_filters( 'icon_dir', get_template_directory() . '/images' );
+		$src_file = $icon_dir . '/' . basename($src);
+	}
+
+	if ( !isset($src) || !$src )
+		return false;
+
+	return array($src, $src_file);
+}
+
+/**
+ * Retrieve HTML content of icon attachment image element.
+ *
+ * @since 2.0.0
+ * @deprecated 2.5.0
+ * @deprecated Use wp_get_attachment_image()
+ * @see wp_get_attachment_image()
+ *
+ * @param int $id Optional. Post ID.
+ * @param bool $fullsize Optional, default to false. Whether to have full size image.
+ * @param array $max_dims Optional. Dimensions of image.
+ * @return string HTML content.
+ */
+function get_attachment_icon( $id = 0, $fullsize = false, $max_dims = false ) {
+	_deprecated_function( __FUNCTION__, '2.5', 'wp_get_attachment_image()' );
+	$id = (int) $id;
+	if ( !$post = & get_post($id) )
+		return false;
+
+	if ( !$src = get_attachment_icon_src( $post->ID, $fullsize ) )
+		return false;
+
+	list($src, $src_file) = $src;
+
+	// Do we need to constrain the image?
+	if ( ($max_dims = apply_filters('attachment_max_dims', $max_dims)) && file_exists($src_file) ) {
+
+		$imagesize = getimagesize($src_file);
+
+		if (($imagesize[0] > $max_dims[0]) || $imagesize[1] > $max_dims[1] ) {
+			$actual_aspect = $imagesize[0] / $imagesize[1];
+			$desired_aspect = $max_dims[0] / $max_dims[1];
+
+			if ( $actual_aspect >= $desired_aspect ) {
+				$height = $actual_aspect * $max_dims[0];
+				$constraint = "width='{$max_dims[0]}' ";
+				$post->iconsize = array($max_dims[0], $height);
+			} else {
+				$width = $max_dims[1] / $actual_aspect;
+				$constraint = "height='{$max_dims[1]}' ";
+				$post->iconsize = array($width, $max_dims[1]);
+			}
+		} else {
+			$post->iconsize = array($imagesize[0], $imagesize[1]);
+			$constraint = '';
+		}
+	} else {
+		$constraint = '';
+	}
+
+	$post_title = esc_attr($post->post_title);
+
+	$icon = "<img src='$src' title='$post_title' alt='$post_title' $constraint/>";
+
+	return apply_filters( 'attachment_icon', $icon, $post->ID );
+}
+
+/**
+ * Retrieve HTML content of image element.
+ *
+ * @since 2.0.0
+ * @deprecated 2.5.0
+ * @deprecated Use wp_get_attachment_image()
+ * @see wp_get_attachment_image()
+ *
+ * @param int $id Optional. Post ID.
+ * @param bool $fullsize Optional, default to false. Whether to have full size image.
+ * @param array $max_dims Optional. Dimensions of image.
+ * @return string
+ */
+function get_attachment_innerHTML($id = 0, $fullsize = false, $max_dims = false) {
+	_deprecated_function( __FUNCTION__, '2.5', 'wp_get_attachment_image()' );
+	$id = (int) $id;
+	if ( !$post = & get_post($id) )
+		return false;
+
+	if ( $innerHTML = get_attachment_icon($post->ID, $fullsize, $max_dims))
+		return $innerHTML;
+
+
+	$innerHTML = esc_attr($post->post_title);
+
+	return apply_filters('attachment_innerHTML', $innerHTML, $post->ID);
+}
+
+/**
+ * Performs esc_url() for database or redirect usage.
+ *
+ * @since 2.3.1
+ * @deprecated 2.8.0
+ * @deprecated Use esc_url_raw()
+ * @see esc_url_raw()
+ * @see esc_url()
+ *
+ * @param string $url The URL to be cleaned.
+ * @param array $protocols An array of acceptable protocols.
+ * @return string The cleaned URL.
+ */
+function sanitize_url( $url, $protocols = null ) {
+	_deprecated_function( __FUNCTION__, '2.8', 'esc_url_raw()' );
+	return clean_url( $url, $protocols, 'db' );
+}
+
+/**
+ * Escape single quotes, specialchar double quotes, and fix line endings.
+ *
+ * The filter 'js_escape' is also applied by esc_js()
+ *
+ * @since 2.0.4
+ * @deprecated 2.8.0
+ * @deprecated Use esc_js()
+ * @see esc_js()
+ *
+ * @param string $text The text to be escaped.
+ * @return string Escaped text.
+ */
+function js_escape( $text ) {
+	_deprecated_function( __FUNCTION__, '2.8', 'esc_js()' );
+	return esc_js( $text );
+}
+
+/**
+ * Escaping for HTML attributes.
+ *
+ * @since 2.0.6
+ * @deprecated 2.8.0
+ * @deprecated Use esc_attr()
+ * @see esc_attr()
+ *
+ * @param string $text
+ * @return string
+ */
+function attribute_escape( $text ) {
+	_deprecated_function( __FUNCTION__, '2.8', 'esc_attr()' );
+	return esc_attr( $text );
+}
+
+/**
+ * Escaping for HTML blocks.
+ *
+ * Functionality of wp_specialchars() was transfered to _wp_specialchars() when
+ * the esc_*() functions were introduced in 2.8.0. wp_specialchars() was maintained
+ * for backwards compatability to call esc_html() or _wp_specialchars().
+ *
+ * @since 1.2.2
+ * @deprecated 2.8.0
+ * @deprecated Use esc_html()
+ * @see esc_html()
+ * @see _wp_specialchars()
+ */
+function wp_specialchars( $string, $quote_style = ENT_NOQUOTES, $charset = false, $double_encode = false ) {
+	_deprecated_function( __FUNCTION__, '2.8', 'esc_html()' );
+	if ( func_num_args() > 1 ) { // Maintain backwards compat for people passing additional args
+		$args = func_get_args();
+		return call_user_func_array( '_wp_specialchars', $args );
+	} else {
+		return esc_html( $string );
+	}
+}
+?>
\ No newline at end of file
Index: wp-includes/pluggable.php
===================================================================
--- wp-includes/pluggable.php	(revision 12593)
+++ wp-includes/pluggable.php	(working copy)
@@ -1634,9 +1634,10 @@
 
 if ( !function_exists('wp_setcookie') ) :
 /**
- * Sets a cookie for a user who just logged in.
+ * Sets a cookie for a user who just logged in. This function is deprecated.
  *
  * @since 1.5
+ * @deprecated 2.5
  * @deprecated Use wp_set_auth_cookie()
  * @see wp_set_auth_cookie()
  *
@@ -1656,9 +1657,10 @@
 
 if ( !function_exists('wp_clearcookie') ) :
 /**
- * Clears the authentication cookie, logging the user out.
+ * Clears the authentication cookie, logging the user out. This function is deprecated.
  *
  * @since 1.5
+ * @deprecated 2.5
  * @deprecated Use wp_clear_auth_cookie()
  * @see wp_clear_auth_cookie()
  */
@@ -1670,25 +1672,26 @@
 
 if ( !function_exists('wp_get_cookie_login') ):
 /**
- * Gets the user cookie login.
+ * Gets the user cookie login. This function is deprecated.
  *
  * This function is deprecated and should no longer be extended as it won't be
  * used anywhere in WordPress. Also, plugins shouldn't use it either.
  *
  * @since 2.0.3
+ * @deprecated 2.5
  * @deprecated No alternative
  *
  * @return bool Always returns false
  */
 function wp_get_cookie_login() {
-	_deprecated_function( __FUNCTION__, '2.5', '' );
+	_deprecated_function( __FUNCTION__, '2.5' );
 	return false;
 }
 endif;
 
 if ( !function_exists('wp_login') ) :
 /**
- * Checks a users login information and logs them in if it checks out.
+ * Checks a users login information and logs them in if it checks out. This function is deprecated.
  *
  * Use the global $error to get the reason why the login failed. If the username
  * is blank, no error will be set, so assume blank username on that case.
@@ -1707,6 +1710,7 @@
  * @return bool False on login failure, true on successful check
  */
 function wp_login($username, $password, $deprecated = '') {
+	_deprecated_function( __FUNCTION__, '2.5', 'wp_signon()' );
 	global $error;
 
 	$user = wp_authenticate($username, $password);
Index: wp-admin/includes/template.php
===================================================================
--- wp-admin/includes/template.php	(revision 12593)
+++ wp-admin/includes/template.php	(working copy)
@@ -426,31 +426,11 @@
 	return $result;
 }
 
-//
-// Category Checklists
-//
-
 /**
  * {@internal Missing Short Description}}
  *
  * @since unknown
- * @deprecated Use {@link wp_link_category_checklist()}
- * @see wp_link_category_checklist()
- *
- * @param unknown_type $default
- * @param unknown_type $parent
- * @param unknown_type $popular_ids
  */
-function dropdown_categories( $default = 0, $parent = 0, $popular_ids = array() ) {
-	global $post_ID;
-	wp_category_checklist($post_ID);
-}
-
-/**
- * {@internal Missing Short Description}}
- *
- * @since unknown
- */
 class Walker_Category_Checklist extends Walker {
 	var $tree_type = 'category';
 	var $db_fields = array ('parent' => 'parent', 'id' => 'term_id'); //TODO: decouple this
@@ -580,22 +560,7 @@
  * {@internal Missing Short Description}}
  *
  * @since unknown
- * @deprecated Use {@link wp_link_category_checklist()}
- * @see wp_link_category_checklist()
  *
- * @param unknown_type $default
- */
-function dropdown_link_categories( $default = 0 ) {
-	global $link_id;
-
-	wp_link_category_checklist($link_id);
-}
-
-/**
- * {@internal Missing Short Description}}
- *
- * @since unknown
- *
  * @param unknown_type $link_id
  */
 function wp_link_category_checklist( $link_id = 0 ) {
@@ -2402,39 +2367,6 @@
  *
  * @since unknown
  *
- * @param unknown_type $currentcat
- * @param unknown_type $currentparent
- * @param unknown_type $parent
- * @param unknown_type $level
- * @param unknown_type $categories
- * @return unknown
- */
-function wp_dropdown_cats( $currentcat = 0, $currentparent = 0, $parent = 0, $level = 0, $categories = 0 ) {
-	if (!$categories )
-		$categories = get_categories( array('hide_empty' => 0) );
-
-	if ( $categories ) {
-		foreach ( $categories as $category ) {
-			if ( $currentcat != $category->term_id && $parent == $category->parent) {
-				$pad = str_repeat( '&#8211; ', $level );
-				$category->name = esc_html( $category->name );
-				echo "\n\t<option value='$category->term_id'";
-				if ( $currentparent == $category->term_id )
-					echo " selected='selected'";
-				echo ">$pad$category->name</option>";
-				wp_dropdown_cats( $currentcat, $currentparent, $category->term_id, $level +1, $categories );
-			}
-		}
-	} else {
-		return false;
-	}
-}
-
-/**
- * {@internal Missing Short Description}}
- *
- * @since unknown
- *
  * @param unknown_type $meta
  */
 function list_meta( $meta ) {
