CINXE.COM
Blueprints : Alvin
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr"> <head> <base href="https://blueprints.launchpad.net/~gaotao1989/+specs" /> <meta charset="UTF-8" /> <title>Blueprints : Alvin</title> <link rel="apple-touch-icon" sizes="180x180" href="/@@/apple-touch-icon.png?v=2022" /> <link rel="icon" type="image/png" sizes="32x32" href="/@@/favicon-32x32.png?v=2022" /> <link rel="icon" type="image/png" sizes="16x16" href="/@@/favicon-16x16.png?v=2022" /> <link rel="manifest" href="/@@/site.webmanifest?v=2022" /> <link rel="mask-icon" href="/@@/safari-pinned-tab.svg?v=2022" color="#e9531f" /> <link rel="shortcut icon" href="/@@/favicon.ico?v=2022" /> <meta name="msapplication-TileColor" content="#da532c" /> <meta name="msapplication-config" content="/@@/browserconfig.xml?v=2022" /> <meta name="theme-color" content="#ffffff" /> <link type="text/css" rel="stylesheet" media="screen, print" href="/+icing/rev1519c6efe8e9bd78e6c5ebf2eb5bcb040b95ad32/combo.css" /> <meta property="og:title" content="Blueprints : Alvin" /> <meta property="og:type" content="website" /> <meta property="og:image" content="/@@/launchpad-og-image.png" /> <meta property="og:url" content="https://blueprints.launchpad.net/~gaotao1989/+specs" /> <meta property="og:site_name" content="Launchpad" /> <script type="text/javascript"> var LP = { cache: {}, links: {} }; </script> <script type="text/javascript">var cookie_scope = '; Path=/; Secure; Domain=.launchpad.net';</script> <script type="text/javascript" src="/+combo/rev1519c6efe8e9bd78e6c5ebf2eb5bcb040b95ad32/?yui/yui/yui-min.js&lp/meta.js&yui/loader/loader-min.js"></script> <script type="text/javascript"> var raw = null; if (LP.devmode) { raw = 'raw'; } YUI.GlobalConfig = { combine: true, comboBase: '/+combo/rev1519c6efe8e9bd78e6c5ebf2eb5bcb040b95ad32/?', root: 'yui/', filter: raw, debug: false, fetchCSS: false, maxURLLength: 2000, groups: { lp: { combine: true, base: '/+combo/rev1519c6efe8e9bd78e6c5ebf2eb5bcb040b95ad32/?lp/', comboBase: '/+combo/rev1519c6efe8e9bd78e6c5ebf2eb5bcb040b95ad32/?', root: 'lp/', // comes from including lp/meta.js modules: LP_MODULES, fetchCSS: false } } }</script> <script type="text/javascript"> // we need this to create a single YUI instance all events and code // talks across. All instances of YUI().use should be based off of // LPJS instead. var LPJS = new YUI(); </script> <script id="base-layout-load-scripts" type="text/javascript"> //<![CDATA[ LPJS.use('base', 'node', 'console', 'event', 'oop', 'lp', 'lp.app.foldables','lp.app.sorttable', 'lp.app.inlinehelp', 'lp.app.links', 'lp.bugs.bugtask_index', 'lp.bugs.subscribers', 'lp.app.ellipsis', 'lp.code.branchmergeproposal.diff', 'lp.views.global', function(Y) { Y.on("domready", function () { var global_view = new Y.lp.views.Global(); global_view.render(); Y.lp.app.sorttable.SortTable.init(); Y.lp.app.inlinehelp.init_help(); Y.lp.activate_collapsibles(); Y.lp.app.foldables.activate(); Y.lp.app.links.check_valid_lp_links(); }); Y.on('lp:context:web_link:changed', function(e) { window.location = e.new_value; }); }); //]]> </script> <script id="base-helper-functions" type="text/javascript"> //<![CDATA[ // This code is pulled from lp.js that needs to be available on every // request. Pulling here to get it outside the scope of the YUI block. function setFocusByName(name) { // Focus the first element matching the given name which can be focused. var nodes = document.getElementsByName(name); var i, node; for (i = 0; i < nodes.length; i++) { node = nodes[i]; if (node.focus) { try { // Trying to focus a hidden element throws an error in IE8. if (node.offsetHeight !== 0) { node.focus(); } } catch (e) { LPJS.use('console', function(Y) { Y.log('In setFocusByName(<' + node.tagName + ' type=' + node.type + '>): ' + e); }); } break; } } } function selectWidget(widget_name, event) { if (event && (event.keyCode === 9 || event.keyCode === 13)) { // Avoid firing if user is tabbing through or simply pressing // enter to submit the form. return; } document.getElementById(widget_name).checked = true; } //]]> </script> </head> <body id="document" itemscope="" itemtype="http://schema.org/WebPage" class="tab-specifications main_side public yui3-skin-sam"> <div class="yui-d0"> <div id="locationbar" class="login-logout"> <div id="logincontrol"><a href="https://blueprints.launchpad.net/~gaotao1989/+login">Log in / Register</a></div> </div><!--id="locationbar"--> <div id="watermark" class="watermark-apps-portlet"> <div> <a href="https://launchpad.net/~gaotao1989"><img alt="" width="64" height="64" src="/@@/person-logo" /></a> </div> <div class="wide"> <h2 id="watermark-heading"><a href="https://launchpad.net/~gaotao1989">Alvin</a></h2> </div> <!-- Application Menu --> <ul class="facetmenu"> <li class="overview"><a href="https://launchpad.net/~gaotao1989">Overview</a></li> <li class="branches"><a href="https://code.launchpad.net/~gaotao1989">Code</a></li> <li class="bugs"><a href="https://bugs.launchpad.net/~gaotao1989">Bugs</a></li> <li class="specifications active"><span>Blueprints</span></li> <li class="translations"><a href="https://translations.launchpad.net/~gaotao1989">Translations</a></li> <li class="answers"><a href="https://answers.launchpad.net/~gaotao1989">Answers</a></li> </ul> </div> <div class="yui-t4"> <div id="maincontent" class="yui-main"> <div class="yui-b" dir="ltr"> <div class="context-publication"> <h1>Blueprints involving Alvin</h1> <div id="registration" class="registering"> </div> </div> <div id="request-notifications"> </div> <div> <p> Launchpad lets projects track the features they intend to implement over the next few releases. We call each feature proposal a "blueprint", and it can be a single paragraph placeholder for the idea, or a full-blown development specification. Once a blueprint is in Launchpad, we can generate reports of the project roadmap, as well as notifying interested developers of blueprint status changes. It's a great way to build a small community around an idea, feature or proposal. </p> <p> This is also a good way to keep track of the features a particular person is interested in. </p> <p> If you are interested in understanding the Blueprints tracker in more detail then you should take a look at the system documentation, where you can learn the best practices for effective community building and release management with Launchpad. </p> <ul class="horizontal"> <li> <a class="info sprite" href="https://help.launchpad.net/BlueprintDocumentation">Read more about tracking blueprints</a> </li> </ul> </div> </div><!-- yui-b --> </div><!-- yui-main --> <div id="side-portlets" class="yui-b side"> <div id="global-actions" class="portlet vertical"> <ul> <li> <a class="menu-link-assignee sprite blueprint" href="https://blueprints.launchpad.net/~gaotao1989/+specs?role=assignee" title="List specs for which Alvin is the assignee">Assignee</a> </li> <li> <a class="menu-link-drafter sprite blueprint" href="https://blueprints.launchpad.net/~gaotao1989/+specs?role=drafter" title="List specs drafted by Alvin">Drafter</a> </li> <li> <a class="menu-link-approver sprite blueprint" href="https://blueprints.launchpad.net/~gaotao1989/+specs?role=approver" title="List specs with Alvin is supposed to approve">Approver</a> </li> <li> <a class="menu-link-subscriber sprite blueprint" href="https://blueprints.launchpad.net/~gaotao1989/+specs?role=subscriber">Subscriber</a> </li> <li> <a class="menu-link-registrant sprite blueprint" href="https://blueprints.launchpad.net/~gaotao1989/+specs?role=registrant" title="List specs registered by Alvin">Registrant</a> </li> <li> <a class="menu-link-workload sprite info" href="https://blueprints.launchpad.net/~gaotao1989/+specworkload" title="Show all specification work assigned">Workload</a> </li> </ul> </div> <div class="portlet" id="portlet-blueprints"> <h2> <span class="see-all"><a href="/~gaotao1989">All blueprints</a></span> Latest blueprints</h2> <ul> </ul> </div> </div><!-- yui-b side --> </div><!-- yui-t4 --> <div id="footer" class="footer"> <div class="lp-arcana"> <div class="lp-branding"> <a href="https://launchpad.net/"><img src="/@@/launchpad-footer-logo.svg" alt="Launchpad" width="65" height="18" /></a> • <a href="https://launchpad.net/+tour">Take the tour</a> • <a href="https://help.launchpad.net/">Read the guide</a> <form id="globalsearch" method="get" accept-charset="UTF-8" action="https://launchpad.net/+search"> <input type="search" id="search-text" name="field.text" /> <input type="image" src="/@@/search" style="vertical-align:5%" alt="Search Launchpad" /> </form> </div> </div> <div class="colophon"> © 2004 <a href="http://canonical.com/">Canonical Ltd.</a> • <a href="https://launchpad.net/legal">Terms of use</a> • <a href="https://www.ubuntu.com/legal/dataprivacy">Data privacy</a> • <a href="/feedback">Contact Launchpad Support</a> • <a href="http://blog.launchpad.net/">Blog</a> • <a href="https://canonical.com/careers">Careers</a> • <a href="https://ubuntu.social/@launchpadstatus">System status</a> <span id="lp-version"> • 1519c6e (<a href="https://dev.launchpad.net/">Get the code!</a>) </span> </div> </div> </div><!-- yui-d0--> <script id="json-cache-script">LP.cache = {"related_features": {}, "context": {"self_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989", "web_link": "https://launchpad.net/~gaotao1989", "resource_type_link": "https://blueprints.launchpad.net/api/devel/#person", "all_specifications_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/all_specifications", "valid_specifications_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/valid_specifications", "recipes_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/recipes", "time_zone": "UTC", "private": false, "is_valid": true, "is_team": false, "account_status": "Active", "visibility": "Public", "name": "gaotao1989", "display_name": "Alvin", "logo_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/logo", "is_probationary": true, "id": "tag:launchpad.net:2008:redacted", "karma": 0, "homepage_content": null, "description": null, "mugshot_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/mugshot", "languages_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/languages", "hide_email_addresses": false, "date_created": "2013-06-24T02:13:21.066096+00:00", "sshkeys_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/sshkeys", "is_ubuntu_coc_signer": false, "gpg_keys_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/gpg_keys", "wiki_names_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/wiki_names", "irc_nicknames_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/irc_nicknames", "jabber_ids_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/jabber_ids", "social_accounts_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/social_accounts", "memberships_details_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/memberships_details", "open_membership_invitations_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/open_membership_invitations", "confirmed_email_addresses_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/confirmed_email_addresses", "team_owner_link": null, "preferred_email_address_link": "tag:launchpad.net:2008:redacted", "mailing_list_auto_subscribe_policy": "Ask me when I join a team", "archive_link": null, "ppas_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/ppas", "sub_teams_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/sub_teams", "super_teams_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/super_teams", "members_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/members", "admins_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/admins", "participants_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/participants", "deactivated_members_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/deactivated_members", "expired_members_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/expired_members", "invited_members_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/invited_members", "members_details_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/members_details", "proposed_members_collection_link": "https://blueprints.launchpad.net/api/devel/~gaotao1989/proposed_members", "account_status_history": "tag:launchpad.net:2008:redacted", "http_etag": "\"56d0f0aa534bfeb248a24051b2050bf105719bf2-807daa80ec6513177ddefe283f30c6098661ee14\""}};</script> </body> <!-- Facet name: specifications Page type: main_side Has global search: True Has application tabs: True Has side portlets: True At least 14 queries/external actions issued in 0.13 seconds Features: {'profiling.enabled': None, 'hard_timeout': '5000', 'js.yui_version': None, 'app.mainsite_only.canonical_url': None, 'app.maintenance_message': None, 'baselayout.careers_link.disabled': None, 'visible_render_time': None} r1519c6e --> </html>