← Back to team overview

launchpad-reviewers team mailing list archive

[Merge] lp:~jtv/launchpad/minilint-4 into lp:launchpad

 

Jeroen T. Vermeulen has proposed merging lp:~jtv/launchpad/minilint-4 into lp:launchpad.

Requested reviews:
  Launchpad code reviewers (launchpad-reviewers)

For more details, see:
https://code.launchpad.net/~jtv/launchpad/minilint-4/+merge/80699

= Summary =

Fixing some lint in files we touched recently.

= Launchpad lint =

Some lint still remains, where I was reluctant to mess with the code too much:

Checking for conflicts and issues in changed files.

Linting changed files:
  lib/canonical/lazr/doc/pidfile.txt
  lib/lp/bugs/stories/bug-also-affects/xx-also-affects-upstream-private-bug.txt
  lib/lp/bugs/model/tests/test_bug.py
  lib/lp/bugs/stories/bug-also-affects/xx-bug-also-affects.txt
  lib/canonical/launchpad/icing/style-3-0.css
  lib/lp/bugs/browser/tests/special/bugs-fixed-elsewhere.txt
  lib/lp/bugs/model/bugtask.py

./lib/lp/bugs/stories/bug-also-affects/xx-bug-also-affects.txt
     260: want exceeds 78 characters.
./lib/canonical/launchpad/icing/style-3-0.css
      58: Unknown Property name.: -moz-border-radius
      59: Unknown Property name.: -webkit-border-radius
      60: Unknown Property name.: -khtml-border-radius
      61: Unknown Property name.: border-radius
     154: Unknown Property name.: word-wrap
     201: Invalid value for "CSS Level 2.1" property: -moz-pre-wrap: white-space
     202: Invalid value for "CSS Level 2.1" property: -o-pre-wrap: white-space
     204: Unknown Property name.: word-wrap
     290: Unknown Property name.: disabled
     761: Unknown Property name.: -webkit-border-bottom-right-radius
     762: Unknown Property name.: -webkit-border-bottom-left-radius
     763: Unknown Property name.: -moz-border-radius-bottomright
     764: Unknown Property name.: -moz-border-radius-bottomleft
     765: Unknown Property name.: border-bottom-right-radius
     766: Unknown Property name.: border-bottom-left-radius
     846: Invalid value for "CSS Box Module Level 3/CSS Level 2.1" property: -moz-scrollbars-vertical: overflow
    1110: Unknown Property name.: -moz-border-radius
    1111: Unknown Property name.: -o-border-radius
    1112: Unknown Property name.: -webkit-border-radius
    1168: Unknown Property name.: filter
    1169: Unknown Property name.: -ms-filter
    1254: Unknown Property name.: -moz-box-shadow
    1255: Unknown Property name.: -webkit-box-shadow
    1256: Unknown Property name.: box-shadow
    1257: Unknown Property name.: -webkit-border-radius
    1258: Unknown Property name.: -moz-border-radius
    1259: Unknown Property name.: border-radius
    1280: Invalid value for "CSS Level 2.1" property: no-wrap: white-space
    1403: Unknown Property name.: -moz-border-radius
    1404: Unknown Property name.: -webkit-border-radius
    1405: Unknown Property name.: -khtml-border-radius
    1406: Unknown Property name.: border-radius
    1440: Unknown Property name.: -moz-border-radius
    1441: Unknown Property name.: -webkit-border-radius
    1442: Unknown Property name.: -khtml-border-radius
    1443: Unknown Property name.: border-radius
    1450: Unknown Property name.: -moz-border-radius
    1451: Unknown Property name.: -webkit-border-radius
    1452: Unknown Property name.: -khtml-border-radius
    1453: Unknown Property name.: border-radius
    1459: Unknown Property name.: -moz-border-radius
    1460: Unknown Property name.: -webkit-border-radius
    1461: Unknown Property name.: -khtml-border-radius
    1462: Unknown Property name.: border-radius
    1590: Unknown Property name.: filter
    1591: Unknown Property name.: -ms-filter
    2038: Invalid value for "CSS Level 2.1" property: rgba(125, 0, 0, 0.9): background-color
    2040: Unknown Property name.: text-shadow
    2044: Unknown Property name.: -moz-box-shadow
    2045: Unknown Property name.: -webkit-box-shadow
    2046: Unknown Property name.: box-shadow
     127: Line exceeds 78 characters.
    1007: Line exceeds 78 characters.
    1444: Line exceeds 78 characters.
    2021: Line exceeds 78 characters.
    2214: Line exceeds 78 characters.
    2215: Line exceeds 78 characters.
    2284: Line exceeds 78 characters.
    2285: Line exceeds 78 characters.
      38: I003: To few newlines before selectors.
      41: I003: To few newlines before selectors.
      46: I003: To few newlines before selectors.
      50: I003: To few newlines before selectors.
      55: I003: To few newlines before selectors.
      64: I003: To few newlines before selectors.
      67: I003: To few newlines before selectors.
      70: I003: To few newlines before selectors.
      74: I003: To few newlines before selectors.
      77: I003: To few newlines before selectors.
      80: I003: To few newlines before selectors.
      84: I003: To few newlines before selectors.
      84: I004: Selector must be on a new line.
      89: I003: To few newlines before selectors.
      92: I003: To few newlines before selectors.
      96: I003: To few newlines before selectors.
     100: I003: To few newlines before selectors.
     104: I003: To few newlines before selectors.
     109: I002: To many newlines before selectors.
     126: I003: To few newlines before selectors.
     129: I007: Each declarations should start on a new line.
     132: I003: To few newlines before selectors.
     136: I003: To few newlines before selectors.
     140: I003: To few newlines before selectors.
     144: I014: Rule declarations should end indented on a single new line.
     144: I003: To few newlines before selectors.
     148: I003: To few newlines before selectors.
     152: I003: To few newlines before selectors.
     157: I004: Selector must be on a new line.
     157: I004: Selector must be on a new line.
     157: I004: Selector must be on a new line.
     157: I004: Selector must be on a new line.
     157: I004: Selector must be on a new line.
     161: I003: To few newlines before selectors.
     166: I003: To few newlines before selectors.
     172: I003: To few newlines before selectors.
     178: I003: To few newlines before selectors.
     181: I003: To few newlines before selectors.
     185: I003: To few newlines before selectors.
     185: I004: Selector must be on a new line.
     185: I004: Selector must be on a new line.
     185: I004: Selector must be on a new line.
     185: I004: Selector must be on a new line.
     185: I004: Selector must be on a new line.
     185: I004: Selector must be on a new line.
     189: I003: To few newlines before selectors.
     192: I003: To few newlines before selectors.
     195: I003: To few newlines before selectors.
     195: I004: Selector must be on a new line.
     195: I004: Selector must be on a new line.
     195: I004: Selector must be on a new line.
     195: I004: Selector must be on a new line.
     199: I003: To few newlines before selectors.
     206: I003: To few newlines before selectors.
     206: I004: Selector must be on a new line.
     209: I003: To few newlines before selectors.
     209: I004: Selector must be on a new line.
     213: I003: To few newlines before selectors.
     217: I003: To few newlines before selectors.
     220: I003: To few newlines before selectors.
     220: I004: Selector must be on a new line.
     220: I004: Selector must be on a new line.
     225: I003: To few newlines before selectors.
     225: I004: Selector must be on a new line.
     228: I003: To few newlines before selectors.
     231: I003: To few newlines before selectors.
     240: I003: To few newlines before selectors.
     243: I003: To few newlines before selectors.
     246: I003: To few newlines before selectors.
     249: I003: To few newlines before selectors.
     252: I003: To few newlines before selectors.
     258: I004: Selector must be on a new line.
     267: I003: To few newlines before selectors.
     267: I004: Selector must be on a new line.
     270: I003: To few newlines before selectors.
     270: I004: Selector must be on a new line.
     273: I003: To few newlines before selectors.
     273: I004: Selector must be on a new line.
     273: I004: Selector must be on a new line.
     274: I004: Selector must be on a new line.
     274: I004: Selector must be on a new line.
     279: I003: To few newlines before selectors.
     283: I003: To few newlines before selectors.
     283: I004: Selector must be on a new line.
     286: I003: To few newlines before selectors.
     286: I004: Selector must be on a new line.
     288: I014: Rule declarations should end indented on a single new line.
     289: I003: To few newlines before selectors.
     295: I003: To few newlines before selectors.
     295: I004: Selector must be on a new line.
     299: I003: To few newlines before selectors.
     299: I004: Selector must be on a new line.
     303: I003: To few newlines before selectors.
     306: I003: To few newlines before selectors.
     309: I003: To few newlines before selectors.
     312: I003: To few newlines before selectors.
     321: I003: To few newlines before selectors.
     334: I003: To few newlines before selectors.
     337: I003: To few newlines before selectors.
     340: I003: To few newlines before selectors.
     343: I003: To few newlines before selectors.
     346: I003: To few newlines before selectors.
     349: I003: To few newlines before selectors.
     352: I003: To few newlines before selectors.
     355: I003: To few newlines before selectors.
     355: I004: Selector must be on a new line.
     359: I003: To few newlines before selectors.
     359: I004: Selector must be on a new line.
     362: I003: To few newlines before selectors.
     362: I004: Selector must be on a new line.
     365: I003: To few newlines before selectors.
     365: I004: Selector must be on a new line.
     368: I003: To few newlines before selectors.
     368: I004: Selector must be on a new line.
     373: I003: To few newlines before selectors.
     373: I004: Selector must be on a new line.
     376: I003: To few newlines before selectors.
     376: I004: Selector must be on a new line.
     379: I003: To few newlines before selectors.
     379: I004: Selector must be on a new line.
     382: I003: To few newlines before selectors.
     382: I004: Selector must be on a new line.
     385: I003: To few newlines before selectors.
     385: I004: Selector must be on a new line.
     388: I003: To few newlines before selectors.
     393: I003: To few newlines before selectors.
     398: I003: To few newlines before selectors.
     402: I003: To few newlines before selectors.
     405: I003: To few newlines before selectors.
     409: I003: To few newlines before selectors.
     412: I003: To few newlines before selectors.
     416: I003: To few newlines before selectors.
     419: I003: To few newlines before selectors.
     422: I003: To few newlines before selectors.
     428: I003: To few newlines before selectors.
     432: I003: To few newlines before selectors.
     438: I003: To few newlines before selectors.
     444: I003: To few newlines before selectors.
     450: I003: To few newlines before selectors.
     458: I003: To few newlines before selectors.
     465: I003: To few newlines before selectors.
     468: I003: To few newlines before selectors.
     472: I003: To few newlines before selectors.
     474: I007: Each declarations should start on a new line.
     478: I003: To few newlines before selectors.
     484: I003: To few newlines before selectors.
     489: I003: To few newlines before selectors.
     494: I003: To few newlines before selectors.
     497: I003: To few newlines before selectors.
     502: I003: To few newlines before selectors.
     506: I003: To few newlines before selectors.
     511: I003: To few newlines before selectors.
     522: I002: To many newlines before selectors.
     530: I003: To few newlines before selectors.
     533: I003: To few newlines before selectors.
     533: I004: Selector must be on a new line.
     536: I003: To few newlines before selectors.
     537: I004: Selector must be on a new line.
     541: I003: To few newlines before selectors.
     541: I004: Selector must be on a new line.
     546: I003: To few newlines before selectors.
     546: I004: Selector must be on a new line.
     549: I003: To few newlines before selectors.
     549: I004: Selector must be on a new line.
     552: I003: To few newlines before selectors.
     552: I004: Selector must be on a new line.
     555: I003: To few newlines before selectors.
     555: I004: Selector must be on a new line.
     558: I003: To few newlines before selectors.
     561: I003: To few newlines before selectors.
     564: I003: To few newlines before selectors.
     567: I003: To few newlines before selectors.
     570: I003: To few newlines before selectors.
     575: I003: To few newlines before selectors.
     575: I004: Selector must be on a new line.
     578: I003: To few newlines before selectors.
     581: I003: To few newlines before selectors.
     582: I008: Each declaration must be indented with 4 spaces.
     587: I003: To few newlines before selectors.
     590: I003: To few newlines before selectors.
     594: I003: To few newlines before selectors.
     597: I003: To few newlines before selectors.
     600: I003: To few newlines before selectors.
     606: I003: To few newlines before selectors.
     610: I003: To few newlines before selectors.
     616: I003: To few newlines before selectors.
     619: I003: To few newlines before selectors.
     624: I003: To few newlines before selectors.
     629: I003: To few newlines before selectors.
     629: I004: Selector must be on a new line.
     633: I003: To few newlines before selectors.
     637: I003: To few newlines before selectors.
     637: I004: Selector must be on a new line.
     637: I004: Selector must be on a new line.
     640: I003: To few newlines before selectors.
     643: I003: To few newlines before selectors.
     643: I004: Selector must be on a new line.
     644: I004: Selector must be on a new line.
     644: I004: Selector must be on a new line.
     649: I003: To few newlines before selectors.
     652: I003: To few newlines before selectors.
     652: I004: Selector must be on a new line.
     655: I003: To few newlines before selectors.
     656: I004: Selector must be on a new line.
     657: I004: Selector must be on a new line.
     658: I004: Selector must be on a new line.
     661: I003: To few newlines before selectors.
     664: I003: To few newlines before selectors.
     664: I004: Selector must be on a new line.
     667: I003: To few newlines before selectors.
     667: I004: Selector must be on a new line.
     671: I003: To few newlines before selectors.
     671: I004: Selector must be on a new line.
     674: I003: To few newlines before selectors.
     678: I003: To few newlines before selectors.
     684: I003: To few newlines before selectors.
     687: I003: To few newlines before selectors.
     690: I003: To few newlines before selectors.
     690: I004: Selector must be on a new line.
     693: I003: To few newlines before selectors.
     696: I003: To few newlines before selectors.
     699: I003: To few newlines before selectors.
     703: I003: To few newlines before selectors.
     703: I004: Selector must be on a new line.
     704: I004: Selector must be on a new line.
     705: I008: Each declaration must be indented with 4 spaces.
     709: I003: To few newlines before selectors.
     712: I003: To few newlines before selectors.
     716: I003: To few newlines before selectors.
     716: I004: Selector must be on a new line.
     721: I003: To few newlines before selectors.
     724: I003: To few newlines before selectors.
     728: I003: To few newlines before selectors.
     733: I003: To few newlines before selectors.
     736: I003: To few newlines before selectors.
     739: I003: To few newlines before selectors.
     742: I003: To few newlines before selectors.
     742: I004: Selector must be on a new line.
     747: I003: To few newlines before selectors.
     747: I004: Selector must be on a new line.
     751: I003: To few newlines before selectors.
     758: I003: To few newlines before selectors.
     776: I003: To few newlines before selectors.
     779: I003: To few newlines before selectors.
     779: I004: Selector must be on a new line.
     782: I003: To few newlines before selectors.
     785: I003: To few newlines before selectors.
     788: I003: To few newlines before selectors.
     791: I003: To few newlines before selectors.
     794: I003: To few newlines before selectors.
     799: I003: To few newlines before selectors.
     802: I003: To few newlines before selectors.
     805: I003: To few newlines before selectors.
     808: I003: To few newlines before selectors.
     811: I003: To few newlines before selectors.
     814: I003: To few newlines before selectors.
     819: I003: To few newlines before selectors.
     822: I003: To few newlines before selectors.
     829: I003: To few newlines before selectors.
     829: I004: Selector must be on a new line.
     832: I003: To few newlines before selectors.
     835: I003: To few newlines before selectors.
     840: I003: To few newlines before selectors.
     848: I003: To few newlines before selectors.
     854: I003: To few newlines before selectors.
     859: I003: To few newlines before selectors.
     862: I003: To few newlines before selectors.
     863: I008: Each declaration must be indented with 4 spaces.
     880: I003: To few newlines before selectors.
     884: I003: To few newlines before selectors.
     885: I008: Each declaration must be indented with 4 spaces.
     890: I003: To few newlines before selectors.
     894: I003: To few newlines before selectors.
     898: I003: To few newlines before selectors.
     904: I003: To few newlines before selectors.
     904: I004: Selector must be on a new line.
     910: I003: To few newlines before selectors.
     913: I003: To few newlines before selectors.
     913: I004: Selector must be on a new line.
     918: I003: To few newlines before selectors.
     921: I014: Rule declarations should end indented on a single new line.
     922: I003: To few newlines before selectors.
     925: I003: To few newlines before selectors.
     929: I003: To few newlines before selectors.
     932: I003: To few newlines before selectors.
     936: I003: To few newlines before selectors.
     937: I008: Each declaration must be indented with 4 spaces.
     940: I014: Rule declarations should end indented on a single new line.
     944: I003: To few newlines before selectors.
     946: I014: Rule declarations should end indented on a single new line.
     947: I003: To few newlines before selectors.
     950: I003: To few newlines before selectors.
     953: I003: To few newlines before selectors.
     956: I003: To few newlines before selectors.
     956: I004: Selector must be on a new line.
     959: I003: To few newlines before selectors.
     963: I003: To few newlines before selectors.
     966: I003: To few newlines before selectors.
     970: I003: To few newlines before selectors.
     976: I003: To few newlines before selectors.
     982: I003: To few newlines before selectors.
     985: I003: To few newlines before selectors.
     988: I003: To few newlines before selectors.
     990: I014: Rule declarations should end indented on a single new line.
     991: I003: To few newlines before selectors.
     994: I003: To few newlines before selectors.
     999: I003: To few newlines before selectors.
    1002: I003: To few newlines before selectors.
    1005: I003: To few newlines before selectors.
    1010: I003: To few newlines before selectors.
    1011: I008: Each declaration must be indented with 4 spaces.
    1016: I003: To few newlines before selectors.
    1025: I004: Selector must be on a new line.
    1025: I004: Selector must be on a new line.
    1033: I003: To few newlines before selectors.
    1033: I004: Selector must be on a new line.
    1039: I003: To few newlines before selectors.
    1043: I003: To few newlines before selectors.
    1046: I003: To few newlines before selectors.
    1050: I003: To few newlines before selectors.
    1053: I003: To few newlines before selectors.
    1058: I003: To few newlines before selectors.
    1061: I003: To few newlines before selectors.
    1064: I003: To few newlines before selectors.
    1069: I003: To few newlines before selectors.
    1072: I003: To few newlines before selectors.
    1078: I003: To few newlines before selectors.
    1079: I008: Each declaration must be indented with 4 spaces.
    1083: I003: To few newlines before selectors.
    1088: I003: To few newlines before selectors.
    1095: I003: To few newlines before selectors.
    1098: I003: To few newlines before selectors.
    1103: I003: To few newlines before selectors.
    1109: I003: To few newlines before selectors.
    1119: I003: To few newlines before selectors.
    1122: I003: To few newlines before selectors.
    1126: I003: To few newlines before selectors.
    1131: I003: To few newlines before selectors.
    1137: I002: To many newlines before selectors.
    1144: I003: To few newlines before selectors.
    1147: I003: To few newlines before selectors.
    1150: I003: To few newlines before selectors.
    1156: I003: To few newlines before selectors.
    1156: I004: Selector must be on a new line.
    1159: I003: To few newlines before selectors.
    1162: I003: To few newlines before selectors.
    1166: I003: To few newlines before selectors.
    1167: I008: Each declaration must be indented with 4 spaces.
    1167: I008: Each declaration must be indented with 4 spaces.
    1168: I008: Each declaration must be indented with 4 spaces.
    1168: I009: Wrong separator on property: value pair.
    1170: I014: Rule declarations should end indented on a single new line.
    1171: I003: To few newlines before selectors.
    1174: I003: To few newlines before selectors.
    1181: I003: To few newlines before selectors.
    1184: I003: To few newlines before selectors.
    1187: I003: To few newlines before selectors.
    1190: I003: To few newlines before selectors.
    1193: I014: Rule declarations should end indented on a single new line.
    1194: I003: To few newlines before selectors.
    1197: I003: To few newlines before selectors.
    1200: I003: To few newlines before selectors.
    1208: I003: To few newlines before selectors.
    1212: I003: To few newlines before selectors.
    1219: I003: To few newlines before selectors.
    1230: I003: To few newlines before selectors.
    1235: I003: To few newlines before selectors.
    1241: I003: To few newlines before selectors.
    1246: I003: To few newlines before selectors.
    1261: I003: To few newlines before selectors.
    1265: I003: To few newlines before selectors.
    1268: I003: To few newlines before selectors.
    1273: I003: To few newlines before selectors.
    1277: I003: To few newlines before selectors.
    1282: I003: To few newlines before selectors.
    1287: I003: To few newlines before selectors.
    1290: I003: To few newlines before selectors.
    1290: I004: Selector must be on a new line.
    1299: I003: To few newlines before selectors.
    1305: I003: To few newlines before selectors.
    1309: I003: To few newlines before selectors.
    1309: I004: Selector must be on a new line.
    1313: I003: To few newlines before selectors.
    1315: I008: Each declaration must be indented with 4 spaces.
    1319: I003: To few newlines before selectors.
    1319: I004: Selector must be on a new line.
    1324: I003: To few newlines before selectors.
    1324: I004: Selector must be on a new line.
    1329: I003: To few newlines before selectors.
    1333: I003: To few newlines before selectors.
    1336: I003: To few newlines before selectors.
    1341: I003: To few newlines before selectors.
    1344: I003: To few newlines before selectors.
    1350: I003: To few newlines before selectors.
    1356: I003: To few newlines before selectors.
    1360: I003: To few newlines before selectors.
    1363: I003: To few newlines before selectors.
    1366: I014: Rule declarations should end indented on a single new line.
    1366: I003: To few newlines before selectors.
    1367: I008: Each declaration must be indented with 4 spaces.
    1371: I003: To few newlines before selectors.
    1374: I003: To few newlines before selectors.
    1378: I003: To few newlines before selectors.
    1382: I003: To few newlines before selectors.
    1385: I003: To few newlines before selectors.
    1392: I002: To many newlines before selectors.
    1399: I003: To few newlines before selectors.
    1410: I003: To few newlines before selectors.
    1414: I003: To few newlines before selectors.
    1418: I003: To few newlines before selectors.
    1421: I003: To few newlines before selectors.
    1422: I007: Each declarations should start on a new line.
    1424: I014: Rule declarations should end indented on a single new line.
    1425: I003: To few newlines before selectors.
    1431: I003: To few newlines before selectors.
    1436: I003: To few newlines before selectors.
    1449: I003: To few newlines before selectors.
    1457: I003: To few newlines before selectors.
    1466: I003: To few newlines before selectors.
    1469: I003: To few newlines before selectors.
    1474: I003: To few newlines before selectors.
    1476: I014: Rule declarations should end indented on a single new line.
    1477: I003: To few newlines before selectors.
    1481: I003: To few newlines before selectors.
    1484: I003: To few newlines before selectors.
    1487: I003: To few newlines before selectors.
    1490: I003: To few newlines before selectors.
    1494: I003: To few newlines before selectors.
    1494: I004: Selector must be on a new line.
    1495: I004: Selector must be on a new line.
    1495: I004: Selector must be on a new line.
    1498: I003: To few newlines before selectors.
    1502: I003: To few newlines before selectors.
    1503: I008: Each declaration must be indented with 4 spaces.
    1509: I003: To few newlines before selectors.
    1513: I003: To few newlines before selectors.
    1519: I003: To few newlines before selectors.
    1524: I002: To many newlines before selectors.
    1529: I008: Each declaration must be indented with 4 spaces.
    1535: I014: Rule declarations should end indented on a single new line.
    1540: I003: To few newlines before selectors.
    1541: I008: Each declaration must be indented with 4 spaces.
    1550: I003: To few newlines before selectors.
    1553: I003: To few newlines before selectors.
    1558: I003: To few newlines before selectors.
    1562: I003: To few newlines before selectors.
    1567: I003: To few newlines before selectors.
    1571: I003: To few newlines before selectors.
    1577: I002: To many newlines before selectors.
    1584: I003: To few newlines before selectors.
    1588: I003: To few newlines before selectors.
    1590: I009: Wrong separator on property: value pair.
    1592: I014: Rule declarations should end indented on a single new line.
    1595: I002: To many newlines before selectors.
    1598: I003: To few newlines before selectors.
    1602: I003: To few newlines before selectors.
    1606: I003: To few newlines before selectors.
    1609: I003: To few newlines before selectors.
    1612: I003: To few newlines before selectors.
    1617: I002: To many newlines before selectors.
    1617: I004: Selector must be on a new line.
    1620: I003: To few newlines before selectors.
    1620: I004: Selector must be on a new line.
    1621: I004: Selector must be on a new line.
    1624: I003: To few newlines before selectors.
    1624: I004: Selector must be on a new line.
    1625: I004: Selector must be on a new line.
    1628: I003: To few newlines before selectors.
    1628: I004: Selector must be on a new line.
    1631: I003: To few newlines before selectors.
    1631: I004: Selector must be on a new line.
    1632: I004: Selector must be on a new line.
    1633: I004: Selector must be on a new line.
    1634: I004: Selector must be on a new line.
    1637: I003: To few newlines before selectors.
    1637: I004: Selector must be on a new line.
    1640: I003: To few newlines before selectors.
    1640: I004: Selector must be on a new line.
    1643: I003: To few newlines before selectors.
    1643: I004: Selector must be on a new line.
    1644: I004: Selector must be on a new line.
    1647: I003: To few newlines before selectors.
    1647: I004: Selector must be on a new line.
    1648: I004: Selector must be on a new line.
    1651: I003: To few newlines before selectors.
    1651: I004: Selector must be on a new line.
    1652: I004: Selector must be on a new line.
    1653: I004: Selector must be on a new line.
    1656: I003: To few newlines before selectors.
    1656: I004: Selector must be on a new line.
    1657: I004: Selector must be on a new line.
    1660: I003: To few newlines before selectors.
    1660: I004: Selector must be on a new line.
    1663: I003: To few newlines before selectors.
    1663: I004: Selector must be on a new line.
    1666: I003: To few newlines before selectors.
    1666: I004: Selector must be on a new line.
    1669: I003: To few newlines before selectors.
    1669: I004: Selector must be on a new line.
    1672: I003: To few newlines before selectors.
    1672: I004: Selector must be on a new line.
    1673: I004: Selector must be on a new line.
    1678: I002: To many newlines before selectors.
    1681: I003: To few newlines before selectors.
    1681: I004: Selector must be on a new line.
    1684: I003: To few newlines before selectors.
    1684: I004: Selector must be on a new line.
    1685: I004: Selector must be on a new line.
    1688: I003: To few newlines before selectors.
    1688: I004: Selector must be on a new line.
    1691: I003: To few newlines before selectors.
    1691: I004: Selector must be on a new line.
    1694: I003: To few newlines before selectors.
    1694: I004: Selector must be on a new line.
    1697: I003: To few newlines before selectors.
    1697: I004: Selector must be on a new line.
    1700: I003: To few newlines before selectors.
    1700: I004: Selector must be on a new line.
    1701: I004: Selector must be on a new line.
    1704: I003: To few newlines before selectors.
    1704: I004: Selector must be on a new line.
    1707: I003: To few newlines before selectors.
    1707: I004: Selector must be on a new line.
    1710: I003: To few newlines before selectors.
    1710: I004: Selector must be on a new line.
    1713: I003: To few newlines before selectors.
    1713: I004: Selector must be on a new line.
    1716: I003: To few newlines before selectors.
    1716: I004: Selector must be on a new line.
    1719: I003: To few newlines before selectors.
    1719: I004: Selector must be on a new line.
    1722: I003: To few newlines before selectors.
    1722: I004: Selector must be on a new line.
    1725: I003: To few newlines before selectors.
    1728: I014: Rule declarations should end indented on a single new line.
    1728: I003: To few newlines before selectors.
    1733: I002: To many newlines before selectors.
    1736: I014: Rule declarations should end indented on a single new line.
    1736: I003: To few newlines before selectors.
    1739: I003: To few newlines before selectors.
    1739: I004: Selector must be on a new line.
    1742: I003: To few newlines before selectors.
    1745: I003: To few newlines before selectors.
    1748: I003: To few newlines before selectors.
    1748: I004: Selector must be on a new line.
    1751: I003: To few newlines before selectors.
    1751: I004: Selector must be on a new line.
    1754: I003: To few newlines before selectors.
    1754: I004: Selector must be on a new line.
    1757: I003: To few newlines before selectors.
    1757: I004: Selector must be on a new line.
    1758: I004: Selector must be on a new line.
    1761: I003: To few newlines before selectors.
    1761: I004: Selector must be on a new line.
    1764: I003: To few newlines before selectors.
    1767: I003: To few newlines before selectors.
    1770: I003: To few newlines before selectors.
    1774: I003: To few newlines before selectors.
    1777: I003: To few newlines before selectors.
    1780: I003: To few newlines before selectors.
    1780: I004: Selector must be on a new line.
    1783: I003: To few newlines before selectors.
    1783: I004: Selector must be on a new line.
    1786: I003: To few newlines before selectors.
    1786: I004: Selector must be on a new line.
    1787: I004: Selector must be on a new line.
    1790: I003: To few newlines before selectors.
    1790: I004: Selector must be on a new line.
    1791: I004: Selector must be on a new line.
    1794: I003: To few newlines before selectors.
    1794: I004: Selector must be on a new line.
    1797: I003: To few newlines before selectors.
    1797: I004: Selector must be on a new line.
    1800: I003: To few newlines before selectors.
    1803: I003: To few newlines before selectors.
    1806: I003: To few newlines before selectors.
    1813: I002: To many newlines before selectors.
    1817: I003: To few newlines before selectors.
    1821: I003: To few newlines before selectors.
    1825: I003: To few newlines before selectors.
    1829: I003: To few newlines before selectors.
    1833: I003: To few newlines before selectors.
    1837: I003: To few newlines before selectors.
    1844: I002: To many newlines before selectors.
    1851: I003: To few newlines before selectors.
    1854: I003: To few newlines before selectors.
    1858: I003: To few newlines before selectors.
    1861: I003: To few newlines before selectors.
    1864: I003: To few newlines before selectors.
    1867: I003: To few newlines before selectors.
    1870: I003: To few newlines before selectors.
    1879: I002: To many newlines before selectors.
    1883: I004: Selector must be on a new line.
    1883: I004: Selector must be on a new line.
    1886: I003: To few newlines before selectors.
    1886: I004: Selector must be on a new line.
    1887: I004: Selector must be on a new line.
    1887: I004: Selector must be on a new line.
    1890: I003: To few newlines before selectors.
    1893: I003: To few newlines before selectors.
    1896: I003: To few newlines before selectors.
    1899: I003: To few newlines before selectors.
    1902: I003: To few newlines before selectors.
    1905: I003: To few newlines before selectors.
    1908: I003: To few newlines before selectors.
    1911: I003: To few newlines before selectors.
    1929: I002: To many newlines before selectors.
    1937: I003: To few newlines before selectors.
    1940: I003: To few newlines before selectors.
    1940: I004: Selector must be on a new line.
    1940: I004: Selector must be on a new line.
    1943: I003: To few newlines before selectors.
    1948: I003: To few newlines before selectors.
    1951: I003: To few newlines before selectors.
    1956: I003: To few newlines before selectors.
    1960: I003: To few newlines before selectors.
    1961: I008: Each declaration must be indented with 4 spaces.
    1971: I003: To few newlines before selectors.
    1974: I003: To few newlines before selectors.
    1975: I008: Each declaration must be indented with 4 spaces.
    1983: I003: To few newlines before selectors.
    1984: I008: Each declaration must be indented with 4 spaces.
    2001: I003: To few newlines before selectors.
    2006: I003: To few newlines before selectors.
    2011: I003: To few newlines before selectors.
    2014: I003: To few newlines before selectors.
    2025: I003: To few newlines before selectors.
    2028: I003: To few newlines before selectors.
    2048: I003: To few newlines before selectors.
    2056: I003: To few newlines before selectors.
    2056: I004: Selector must be on a new line.
    2060: I003: To few newlines before selectors.
    2069: I003: To few newlines before selectors.
    2081: I002: To many newlines before selectors.
    2091: I003: To few newlines before selectors.
    2097: I002: To many newlines before selectors.
    2103: I003: To few newlines before selectors.
    2109: I002: To many newlines before selectors.
    2117: I003: To few newlines before selectors.
    2117: I004: Selector must be on a new line.
    2120: I003: To few newlines before selectors.
    2121: I008: Each declaration must be indented with 4 spaces.
    2128: I003: To few newlines before selectors.
    2131: I003: To few newlines before selectors.
    2134: I003: To few newlines before selectors.
    2137: I003: To few newlines before selectors.
    2140: I003: To few newlines before selectors.
    2148: I014: Rule declarations should end indented on a single new line.
    2149: I003: To few newlines before selectors.
    2154: I003: To few newlines before selectors.
    2159: I003: To few newlines before selectors.
    2171: I003: To few newlines before selectors.
    2175: I003: To few newlines before selectors.
    2175: I004: Selector must be on a new line.
    2182: I002: To many newlines before selectors.
    2189: I003: To few newlines before selectors.
    2194: I003: To few newlines before selectors.
    2198: I003: To few newlines before selectors.
    2202: I003: To few newlines before selectors.
    2206: I003: To few newlines before selectors.
    2220: I003: To few newlines before selectors.
    2225: I003: To few newlines before selectors.
    2230: I003: To few newlines before selectors.
    2248: I002: To many newlines before selectors.
    2258: I003: To few newlines before selectors.
    2261: I003: To few newlines before selectors.
    2264: I003: To few newlines before selectors.
    2274: I003: To few newlines before selectors.
    2277: I003: To few newlines before selectors.
    2292: I003: To few newlines before selectors.
    2295: I003: To few newlines before selectors.
-- 
https://code.launchpad.net/~jtv/launchpad/minilint-4/+merge/80699
Your team Launchpad code reviewers is requested to review the proposed merge of lp:~jtv/launchpad/minilint-4 into lp:launchpad.
=== modified file 'lib/canonical/launchpad/icing/style-3-0.css'
--- lib/canonical/launchpad/icing/style-3-0.css	2011-10-26 03:37:10 +0000
+++ lib/canonical/launchpad/icing/style-3-0.css	2011-10-28 17:12:26 +0000
@@ -59,7 +59,7 @@
     -webkit-border-radius: 5px 5px 0 0;
     -khtml-border-radius: 5px 5px 0 0;
     border-radius: 5px 5px 0 0;
-    height:2em;
+    height: 2em;
     }
 .footer .lp-arcana img {
     vertical-align: middle;
@@ -206,7 +206,7 @@
 div.left, div.right {
     width: 50%;
     }
-div.left, .cves{
+div.left, .cves {
     clear: both;
     float: left;
     }
@@ -344,11 +344,11 @@
     padding-left: 1em;
     }
 ol {
-   margin-left: 1.8em;
+    margin-left: 1.8em;
     }
 ol li {
-   list-style: decimal outside;
-   }
+    list-style: decimal outside;
+    }
 li {
     padding-bottom: .3em;
     }
@@ -376,7 +376,7 @@
 ul.meeting, li.meeting {
     list-style-image: url(/@@/meeting);
     }
-ul.rss, li.rss  {
+ul.rss, li.rss {
     list-style-image: url(/@@/rss);
     }
 ul.translation, li.translation {
@@ -608,7 +608,7 @@
     border-style: dotted none none none;
     }
 table.sortable a.sortheader {
-    color:#666;
+    color: #666;
     font-weight: bold;
     text-decoration: none;
     display: block;
@@ -803,7 +803,7 @@
     vertical-align: middle;
     }
 input {
-    visibility:inherit;
+    visibility: inherit;
     }
 input[type=radio] {
     margin-left: 1em;
@@ -817,7 +817,7 @@
     max-width: 60em;
     }
 button {
-    padding:0;
+    padding: 0;
     }
 button.overlay-close-button {
     float: right;
@@ -1090,7 +1090,7 @@
     border: solid #666;
     border-width: 1px 2px 2px 1px;
     padding: 5px 5px 5px 5px;
-    width:44em;
+    width: 44em;
     }
 .sml-informational::before {
     content: url('/@@/info');
@@ -1139,7 +1139,7 @@
    These appear to be 3.0 specific.
 */
 div.see-all {
-    text-align:right;
+    text-align: right;
     }
 span.nolink {
     font-weight: bold;
@@ -1157,11 +1157,11 @@
     display: none;
     }
 .invisible-link {
-    display:none;
+    display: none;
     }
 .invisible {
-    left:-9999em;
-    display:block;
+    left: -9999em;
+    display: block;
     }
 .transparent {
   opacity: 0;
@@ -1220,7 +1220,6 @@
     height: 10px;
     }
 
-
 /* =========================
    Universal
    Header
@@ -1304,7 +1303,7 @@
     clear: none;
     }
 .watermark-apps-portlet li {
-    display:inline;
+    display: inline;
     list-style-type: none;
     }
 .watermark-apps-portlet li a, .watermark-apps-portlet li span {
@@ -1355,7 +1354,7 @@
     font-size: 10px;
     }
 .breadcrumbs li {
-    display:inline;
+    display: inline;
     padding: 0;
     }
 .breadcrumbs li a {
@@ -1587,9 +1586,9 @@
     border: 1px solid #ddd;
     }
 .lowlight {
-  opacity: .5;
-  filter: alpha(opacity=50);
-  -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
+    opacity: .5;
+    filter: alpha(opacity=50);
+    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
 }
 
 
@@ -2113,7 +2112,7 @@
 ul.latest-ppa-updates li {
     padding: 3px;
     background-repeat: no-repeat;
-    background-position:right center;
+    background-position: right center;
     }
 table#packages_list tr.superseded, tr.blacklisted {
     background-color: #eee;
@@ -2190,7 +2189,7 @@
 form.translations div.actions {
     padding: 1em;
     text-align: left;
-    clear:both;
+    clear: both;
     }
 form.translations input {
     padding-left: 0.5em;
@@ -2216,7 +2215,7 @@
  *   https://translations.launchpad.dev/evolution/trunk/+pots/evolution-2.2/+export
  */
 form.translations div.alignment .content {
-    float:left;
+    float: left;
     }
 form.translations div.alignment .selector {
     margin-right: 0.5em;
@@ -2257,10 +2256,10 @@
     padding-bottom: 1em;
     }
 table.translation-stats td {
-    text-align:center;
+    text-align: center;
     }
 table.translation-stats td.template-name {
-    text-align:left;
+    text-align: left;
     }
 table.translation-stats tfoot td,
 table.translation-stats tfoot th {
@@ -2273,10 +2272,10 @@
     font-weight: bold;
     }
 table.translation-stats tfoot th {
-    text-align:left;
+    text-align: left;
     }
 table.translation-stats tfoot td {
-    text-align:center;
+    text-align: center;
     }
 
 /* Translations help links.

=== modified file 'lib/canonical/lazr/doc/pidfile.txt'
--- lib/canonical/lazr/doc/pidfile.txt	2011-10-27 04:41:57 +0000
+++ lib/canonical/lazr/doc/pidfile.txt	2011-10-28 17:12:26 +0000
@@ -1,4 +1,5 @@
-= The `pidfile` Module =
+The `pidfile` Module
+====================
 
 The pidfile module allows multiple instances on the same machine to create
 pidfiles for the same service names, by using configuration values to
@@ -10,7 +11,8 @@
  * `remove_pidfile`
 
 
-== `pidfile_path` ==
+`pidfile_path`
+--------------
 
 `pidfile_path` is the key to all four of them. Usually, you simply pass it the
 name of a service. It then gets the configured name for the current instance
@@ -36,7 +38,8 @@
 This basic mechanism supports the other three functions.
 
 
-== `make_pidfile` ==
+`make_pidfile`
+--------------
 
 The `make_pidfile` function writes the current process id to a PID file.  For
 cleanup, it also includes handlers for Python's `atexit`, signal.SIGINT or
@@ -45,8 +48,8 @@
 Note that, if you install your own handlers for the two signals, you will want
 to call `remove_pidfile` inside them.
 
-As a simple demonstration, this subprocess creates a pidfile and checks that the
-correct PID is stored in it.
+As a simple demonstration, this subprocess creates a pidfile and checks that
+the correct PID is stored in it.
 
     >>> import sys, subprocess, os, signal
 
@@ -83,7 +86,7 @@
     ...     pass'''
     >>> def start_process():
     ...     cmd = '%s -c "%s"' % (sys.executable, subprocess_code)
-    ...     p = subprocess.Popen(cmd, shell=True)
+    ...     subprocess.Popen(cmd, shell=True)
     ...     for i in range(100):
     ...         if os.path.exists(pidfile_path('nuts')):
     ...             return int(open(pidfile_path('nuts')).read())
@@ -133,7 +136,8 @@
     >>> make_pidfile('nuts')
     Traceback (most recent call last):
     ...
-    RuntimeError: PID file /var/tmp/...nuts.pid already exists. Already running?
+    RuntimeError: PID file /var/tmp/...nuts.pid already exists.
+    Already running?
 
     >>> current_SIGINT_handler is signal.getsignal(signal.SIGINT)
     True
@@ -143,15 +147,16 @@
     Stopped successfully
 
 
-== `get_pid` ==
+`get_pid`
+---------
 
 The `get_pid` function returns the PID for the given service as an integer, or
 None.  It may raise a ValueError if the PID file is corrupt.
 
-This method should only be needed by service or monitoring scripts. Currently no
-checking is done to ensure that the process is actually running, is healthy, or
-died horribly a while ago and its PID is being used by something else. What we
-have is probably good enough.
+This method should only be needed by service or monitoring scripts. Currently
+no checking is done to ensure that the process is actually running, is
+healthy, or died horribly a while ago and its PID is being used by something
+else.  What we have is probably good enough.
 
     >>> get_pid('nuts') is None
     True
@@ -182,7 +187,8 @@
     >>> os.remove(path)
 
 
-== `remove_pidfile` ==
+`remove_pidfile`
+----------------
 
 The `remove_pidfile` function removes the PID file. It should only be needed
 if you are overriding the default SIGTERM signal handler.

=== modified file 'lib/lp/bugs/browser/tests/special/bugs-fixed-elsewhere.txt'
--- lib/lp/bugs/browser/tests/special/bugs-fixed-elsewhere.txt	2011-10-27 13:03:04 +0000
+++ lib/lp/bugs/browser/tests/special/bugs-fixed-elsewhere.txt	2011-10-28 17:12:26 +0000
@@ -1,4 +1,5 @@
-= Bugs Fixed Elsewhere =
+Bugs Fixed Elsewhere
+====================
 
 The +bugtarget-portlet-bugfilters-info view for a distribution or
 product contains a property for a URL to a list of bugs fixed
@@ -79,7 +80,8 @@
     FIXRELEASED
 
 
-== Private Bugs ==
+Private Bugs
+------------
 
 Only bugs that the user has permission to view are included in the count.
 We are moving away from allowing private bugs to affect multiple projects.
@@ -120,7 +122,8 @@
     2L
 
 
-== Duplicate Bugs ==
+Duplicate Bugs
+--------------
 
 Bugs that are duplicate of other bugs aren't included in the count.
 
@@ -130,7 +133,8 @@
     1L
 
 
-== Resolved Bugs ==
+Resolved Bugs
+-------------
 
 The count includes only bugs that are open in the current context.
 

=== modified file 'lib/lp/bugs/model/bugtask.py'
--- lib/lp/bugs/model/bugtask.py	2011-10-27 13:03:04 +0000
+++ lib/lp/bugs/model/bugtask.py	2011-10-28 17:12:26 +0000
@@ -416,7 +416,6 @@
         if retarget_existing and len(bug.bugtasks) <= 1:
             return
         # We can add a target so long as the pillar exists already.
-        num_affected_pillars = len(bug.affected_pillars)
         if (len(bug.affected_pillars) > 0
                 and target.pillar not in bug.affected_pillars):
             raise IllegalTarget(

=== modified file 'lib/lp/bugs/model/tests/test_bug.py'
--- lib/lp/bugs/model/tests/test_bug.py	2011-10-27 13:03:04 +0000
+++ lib/lp/bugs/model/tests/test_bug.py	2011-10-28 17:12:26 +0000
@@ -7,8 +7,8 @@
     datetime,
     timedelta,
     )
+
 from pytz import UTC
-
 from storm.store import Store
 from testtools.testcase import ExpectedException
 from zope.component import getUtility
@@ -21,14 +21,14 @@
     BugNotificationLevel,
     BugNotificationStatus,
     )
-from lp.bugs.model.bugnotification import BugNotificationRecipient
-from lp.bugs.scripts.bugnotification import get_email_notifications
 from lp.bugs.interfaces.bugnotification import IBugNotificationSet
 from lp.bugs.interfaces.bugtask import BugTaskStatus
 from lp.bugs.model.bug import (
     BugNotification,
     BugSubscriptionInfo,
     )
+from lp.bugs.model.bugnotification import BugNotificationRecipient
+from lp.bugs.scripts.bugnotification import get_email_notifications
 from lp.registry.interfaces.person import PersonVisibility
 from lp.services.features.testing import FeatureFixture
 from lp.testing import (
@@ -759,7 +759,8 @@
             bug.setPrivacyAndSecurityRelated(
                 private=False, security_related=True, who=who)
             subscribers = bug.getDirectSubscribers()
-            self.assertFalse(default_bugtask.pillar.bug_supervisor in subscribers)
+            self.assertNotIn(
+                default_bugtask.pillar.bug_supervisor, subscribers)
 
             expected_recipients = [
                 default_bugtask.pillar.bug_supervisor,

=== modified file 'lib/lp/bugs/stories/bug-also-affects/xx-also-affects-upstream-private-bug.txt'
--- lib/lp/bugs/stories/bug-also-affects/xx-also-affects-upstream-private-bug.txt	2011-10-27 13:03:04 +0000
+++ lib/lp/bugs/stories/bug-also-affects/xx-also-affects-upstream-private-bug.txt	2011-10-28 17:12:26 +0000
@@ -1,4 +1,5 @@
-= Notification of Confidentiality on Upstream Bugfix Requests =
+Notification of Confidentiality on Upstream Bugfix Requests
+===========================================================
 
 When a user files an upstream bugfix request against a bug that is
 confidential but not a security vulnerability, the user will be told that the
@@ -11,7 +12,8 @@
 
     >>> from lp.services.features.testing import FeatureFixture
     >>> feature_flag = {
-    ...     'disclosure.allow_multipillar_private_bugs.enabled': 'on'}
+    ...     'disclosure.allow_multipillar_private_bugs.enabled': 'on',
+    ...     }
     >>> privacy_flags = FeatureFixture(feature_flag)
     >>> privacy_flags.setUp()
 
@@ -19,12 +21,15 @@
     >>> admin_browser.getControl('Bug Supervisor').value = 'name16'
     >>> admin_browser.getControl('Change').click()
 
-    >>> admin_browser.open('http://bugs.launchpad.dev/jokosher/+bug/12/+secrecy')
+    >>> admin_browser.open(
+    ...     'http://bugs.launchpad.dev/jokosher/+bug/12/+secrecy')
     >>> admin_browser.getControl(
     ...     'This bug report should be private').selected = True
     >>> admin_browser.getControl('Change').click()
 
-    >>> admin_browser.open('http://bugs.launchpad.dev/jokosher/+bug/12/+choose-affected-product')
+    >>> admin_browser.open(
+    ...     'http://bugs.launchpad.dev/jokosher/+bug/12/'
+    ...     '+choose-affected-product')
     >>> admin_browser.getControl('Project:').value = 'firefox'
     >>> admin_browser.getControl('Continue').click()
 

=== modified file 'lib/lp/bugs/stories/bug-also-affects/xx-bug-also-affects.txt'
--- lib/lp/bugs/stories/bug-also-affects/xx-bug-also-affects.txt	2011-10-25 02:12:44 +0000
+++ lib/lp/bugs/stories/bug-also-affects/xx-bug-also-affects.txt	2011-10-28 17:12:26 +0000
@@ -28,10 +28,12 @@
     >>> browser.getLink(url='+distrotask').click()
     >>> browser.url
     'http://bugs.launchpad.dev/ubuntu/+bug/6/+distrotask'
+
     >>> browser.getControl('Distribution').value = ['ubuntu']
     >>> browser.getControl('Continue').click()
     >>> browser.url
     'http://bugs.launchpad.dev/ubuntu/+bug/6/+distrotask'
+
     >>> print get_feedback_messages(browser.contents)
     [u'There is 1 error.',
      u'This bug is already on Ubuntu. Please specify an affected package
@@ -81,20 +83,21 @@
      u'A fix for this bug has already been requested for evolution in
        Ubuntu']
 
-Now let's add a Debian task to bug 1. Since Debian doesn't use Launchpad,
-we add a bug watch as well.
+Now let's add a Debian task to bug 1. Since Debian doesn't use
+Launchpad, we add a bug watch as well.
 
     >>> browser.open('http://localhost/firefox/+bug/1')
     >>> browser.getLink(url='+distrotask').click()
-    >>> browser.url
-    'http://bugs.launchpad.dev/firefox/+bug/1/+distrotask'
+    >>> print browser.url
+    http://bugs.launchpad.dev/firefox/+bug/1/+distrotask
+
     >>> browser.getControl(name='field.distribution').value = ['debian']
     >>> browser.getControl("Source Package Name").value = "alsa-utils"
     >>> browser.getControl('URL').value = (
     ...     'http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=123')
     >>> browser.getControl('Continue').click()
-    >>> browser.url
-    'http://bugs.launchpad.dev/debian/+source/alsa-utils/+bug/1'
+    >>> print browser.url
+    http://bugs.launchpad.dev/debian/+source/alsa-utils/+bug/1
 
 If we try to add an Ubuntu task together with a bug watch we get an
 error, because Ubuntu uses Launchpad as its bug tracker
@@ -105,8 +108,9 @@
     >>> browser.getControl('URL').value = (
     ...     'https://bugzilla.mozilla.org/show_bug.cgi?id=84')
     >>> browser.getControl('Continue').click()
-    >>> browser.url
-    'http://bugs.launchpad.dev/debian/+source/alsa-utils/+bug/1/+distrotask'
+    >>> print browser.url
+    http://bugs.launchpad.dev/debian/+source/alsa-utils/+bug/1/+distrotask
+
     >>> print get_feedback_messages(browser.contents)
     [u'There is 1 error.',
      u'Bug watches can not be added for Ubuntu, as it uses Launchpad as
@@ -118,21 +122,22 @@
 
     >>> browser.getControl('URL').value = ''
     >>> browser.getControl('Continue').click()
-    >>> browser.url
-    'http://bugs.launchpad.dev/ubuntu/+source/alsa-utils/+bug/1'
+    >>> print browser.url
+    http://bugs.launchpad.dev/ubuntu/+source/alsa-utils/+bug/1
 
 It's not possible to change a bugtask to a existing one.
 
     >>> browser.getLink(
     ...     url='ubuntu/+source/mozilla-firefox/+bug/1/+editstatus').click()
-    >>> browser.url
-    'http://bugs.../ubuntu/+source/mozilla-firefox/+bug/1/+editstatus'
+    >>> print browser.url
+    http://bugs.../ubuntu/+source/mozilla-firefox/+bug/1/+editstatus
 
     >>> browser.getControl(name="ubuntu_mozilla-firefox.target.package"
     ...     ).value = 'alsa-utils'
     >>> browser.getControl('Save Changes').click()
-    >>> browser.url
-    'http://bugs.../ubuntu/+source/mozilla-firefox/+bug/1/+editstatus'
+    >>> print browser.url
+    http://bugs.../ubuntu/+source/mozilla-firefox/+bug/1/+editstatus
+
     >>> print get_feedback_messages(browser.contents)
     [...There is 1 error in the data you entered...
      u'A fix for this bug has already been requested for alsa-utils in
@@ -141,8 +146,8 @@
     >>> browser.getControl(name="ubuntu_mozilla-firefox.target.package"
     ...     ).value = 'pmount'
     >>> browser.getControl('Save Changes').click()
-    >>> browser.url
-    'http://bugs.launchpad.dev/ubuntu/+source/pmount/+bug/1'
+    >>> print browser.url
+    http://bugs.launchpad.dev/ubuntu/+source/pmount/+bug/1
 
 We want to make people aware of that they should link bugtasks to bug
 watches in order to get automatic status updates. So if we try to add a
@@ -153,13 +158,14 @@
     >>> browser.getControl('Distribution').value = ['debian']
     >>> browser.getControl('Source Package Name').value = 'pmount'
     >>> browser.getControl('Continue').click()
-    >>> browser.url
-    'http://bugs.launchpad.dev/ubuntu/+source/pmount/+bug/1/+distrotask'
+    >>> print browser.url
+    http://bugs.launchpad.dev/ubuntu/+source/pmount/+bug/1/+distrotask
+
     >>> print get_feedback_messages(browser.contents)
     [u"Debian doesn't use Launchpad as its bug tracker. ...]
 
-The form is shown as well, so it's possible to easily change the
-field values, in order to add a bug watch.
+The form is shown as well, so it's possible to easily change the field
+values, in order to add a bug watch.
 
     >>> browser.getControl('URL') is not None
     True
@@ -168,8 +174,9 @@
 notification will still be displayed.
 
     >>> browser.getControl('Continue').click()
-    >>> browser.url
-    'http://bugs.launchpad.dev/ubuntu/+source/pmount/+bug/1/+distrotask'
+    >>> print browser.url
+    http://bugs.launchpad.dev/ubuntu/+source/pmount/+bug/1/+distrotask
+
     >>> print get_feedback_messages(browser.contents)
     [u"Debian doesn't use Launchpad as its bug tracker. ...]
 
@@ -177,8 +184,9 @@
 redirected to the bug page.
 
     >>> browser.getControl('Add Anyway').click()
-    >>> browser.url
-    'http://bugs.launchpad.dev/debian/+source/pmount/+bug/1'
+    >>> print browser.url
+    http://bugs.launchpad.dev/debian/+source/pmount/+bug/1
+
     >>> print browser.contents
     <...
     ...>pmount (Debian)</a>...
@@ -205,38 +213,42 @@
     >>> private_bug = firefox.createBug(params)
     >>> private_bug.setPrivate(True, current_user())
     True
+
     >>> logout()
 
     >>> browser.open(canonical_url(private_bug, rootsite='bugs'))
     >>> browser.getLink(url='+distrotask').click()
     >>> browser.getControl(name='field.distribution').value = ['debian']
     >>> browser.getControl('Continue').click()
-    >>> browser.url
-    'http://bugs.launchpad.dev/firefox/+bug/16/+distrotask'
+    >>> print browser.url
+    http://bugs.launchpad.dev/firefox/+bug/16/+distrotask
+
     >>> print get_feedback_messages(browser.contents)
     [u'There is 1 error.',
      u'This private bug already affects Mozilla Firefox.
        Private bugs cannot affect multiple projects.']
 
 
-= Forwarding bugs upstream =
+Forwarding bugs upstream
+========================
 
 The +choose-affected-product page is, in fact, a wizard-like page which
 allows the user to select the affected product, specify a remote bug URL
 and create the actual bugtask/watch (also creating the bugtracker if
 necessary).
 
-Trying to add an upstream task to a bug on the evolution package in Ubuntu
-will cause the product-selection step to be skipped because the package is
-linked to the evolution upstream product.
+Trying to add an upstream task to a bug on the evolution package in
+Ubuntu will cause the product-selection step to be skipped because the
+package is linked to the evolution upstream product.
 
     >>> user_browser.open(
-    ...  'http://launchpad.dev/ubuntu/+source/evolution/+bug/6')
+    ...     'http://launchpad.dev/ubuntu/+source/evolution/+bug/6')
     >>> user_browser.getLink(url='+choose-affected-product').click()
     >>> user_browser.getControl('Project').value
     Traceback (most recent call last):
     ...
     LookupError: label 'Project'
+
     >>> user_browser.getControl(name='field.product').value
     'evolution'
 
@@ -244,26 +256,26 @@
 product, though.
 
     >>> user_browser.getLink('Choose another project').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/ubuntu/+source/evolution/+bug/6/+choose-affected-product?field.product=evolution'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/ubuntu/+source/evolution/+bug/6/+choose-affected-product?field.product=evolution
 
     >>> user_browser.getControl('Project').value
     'evolution'
 
-Just in case we change our mind, there is a cancel link that points
-back to the bug page:
+Just in case we change our mind, there is a cancel link that points back
+to the bug page:
 
     >>> cancel_link = user_browser.getLink('Cancel')
-    >>> cancel_link.url
-    'http://bugs.launchpad.dev/ubuntu/+source/evolution/+bug/6'
+    >>> print cancel_link.url
+    http://bugs.launchpad.dev/ubuntu/+source/evolution/+bug/6
 
 But we'll choose Thunderbird.
 
     >>> user_browser.getControl('Project').value = 'thunderbird'
     >>> user_browser.getControl('Continue').click()
 
-Since Thunderbird doesn't use Launchpad, a form is shown asking for
-bug URLs and suchlike:
+Since Thunderbird doesn't use Launchpad, a form is shown asking for bug
+URLs and suchlike:
 
     >>> from lp.bugs.tests.bug import print_upstream_linking_form
     >>> print_upstream_linking_form(user_browser)
@@ -274,8 +286,8 @@
     ( ) I just want to register that it is upstream right now; I
         don't have any way to link it.
 
-We can just link upstream without a URL to say that this has been
-dealt with, but we can't reference it.
+We can just link upstream without a URL to say that this has been dealt
+with, but we can't reference it.
 
     >>> user_browser.getControl('I just want to register').selected = True
     >>> print_upstream_linking_form(user_browser)
@@ -287,57 +299,61 @@
         don't have any way to link it.
 
     >>> user_browser.getControl('Add to Bug Report').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/thunderbird/+bug/6'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/thunderbird/+bug/6
 
 Let's add the evolution task as well.
 
     >>> user_browser.open(
-    ...  'http://launchpad.dev/ubuntu/+source/evolution/+bug/6')
+    ...     'http://launchpad.dev/ubuntu/+source/evolution/+bug/6')
     >>> user_browser.getLink(url='+choose-affected-product').click()
-    >>> user_browser.url
-    'http://.../ubuntu/+source/evolution/+bug/6/+choose-affected-product'
+    >>> print user_browser.url
+    http://.../ubuntu/+source/evolution/+bug/6/+choose-affected-product
 
     >>> user_browser.getControl('Add to Bug Report').click()
 
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/evolution/+bug/6'
-
-== Error messages ==
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/evolution/+bug/6
+
+
+Error messages
+--------------
 
 If we try to add an upstream task without specifying a product:
 
     >>> user_browser.open(
     ...     'http://launchpad.dev/debian/+source/mozilla-firefox/+bug/3')
     >>> user_browser.getLink(url='+choose-affected-product').click()
-    >>> user_browser.url
-    'http://.../debian/+source/mozilla-firefox/+bug/3/+choose-affected-product'
+    >>> print user_browser.url
+    http://.../debian/+source/mozilla-firefox/+bug/3/+choose-affected-product
 
     >>> user_browser.getControl('Project').value
     ''
+
     >>> user_browser.getControl('Continue').click()
-    >>> user_browser.url
-    'http://.../debian/+source/mozilla-firefox/+bug/3/+choose-affected-product'
+    >>> print user_browser.url
+    http://.../debian/+source/mozilla-firefox/+bug/3/+choose-affected-product
 
 We get a nice error message.
 
     >>> print get_feedback_messages(user_browser.contents)
     [u'There is 1 error.', u'Required input is missing.']
 
-If we enter a product name that doesn't exist, we inform the user
-about this and ask him to search for the product.
+If we enter a product name that doesn't exist, we inform the user about
+this and ask him to search for the product.
 
     >>> user_browser.getControl('Project').value = 'no-such-product'
     >>> user_browser.getControl('Continue').click()
-    >>> user_browser.url
-    'http://.../debian/+source/mozilla-firefox/+bug/3/+choose-affected-product'
+    >>> print user_browser.url
+    http://.../debian/+source/mozilla-firefox/+bug/3/+choose-affected-product
+
     >>> print get_feedback_messages(user_browser.contents)
     [u'There is 1 error.',
      u'There is no project in Launchpad named "no-such-product"...]
 
     >>> search_link = user_browser.getLink('search for it')
-    >>> search_link.url
-    'http://bugs.launchpad.dev/projects'
+    >>> print search_link.url
+    http://bugs.launchpad.dev/projects
 
 Since we don't restrict the input, the user can write anything, so we
 need to make sure that everything is quoted before displaying the input.
@@ -348,17 +364,20 @@
 
     >>> user_browser.getControl('Project').value = 'N\xc3\xb6 Such Product&<>'
     >>> user_browser.getControl('Continue').click()
-    >>> user_browser.url
-    'http://.../debian/+source/mozilla-firefox/+bug/3/+choose-affected-product'
+    >>> print user_browser.url
+    http://.../debian/+source/mozilla-firefox/+bug/3/+choose-affected-product
+
     >>> print get_feedback_messages(user_browser.contents)
     [u'There is 1 error.',
      u'There is no project in Launchpad named "N\xf6 Such Product&amp;&lt...]
 
-== Linking to bug watches ==
+
+Linking to bug watches
+----------------------
 
 Now we add an upstream task, while adding this new bugtask we can also
-specify a bug watch. If we inadvertently left some leading or trailing white
-space in the bug URL it will be stripped.
+specify a bug watch. If we inadvertently left some leading or trailing
+white space in the bug URL it will be stripped.
 
     >>> user_browser.open(
     ...     'http://launchpad.dev/debian/+source/mozilla-firefox/'
@@ -371,12 +390,14 @@
     ...     '   https://bugzilla.mozilla.org/show_bug.cgi?id=1234   ')
     >>> user_browser.getControl('Add to Bug Report').click()
 
-Launchpad redirects to the newly created bugtask page, with a row for the
-new bug watch.
-
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/alsa-utils/+bug/3'
-    >>> affects_table = find_tags_by_class(user_browser.contents, 'listing')[0]
+Launchpad redirects to the newly created bugtask page, with a row for
+the new bug watch.
+
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/alsa-utils/+bug/3
+
+    >>> affects_table = find_tags_by_class(
+    ...     user_browser.contents, 'listing')[0]
     >>> target_cell = affects_table.tbody.tr.td
 
     >>> from lp.bugs.tests.bug import print_bug_affects_table
@@ -393,13 +414,13 @@
 And now we try to add the same upstream again.
 
     >>> user_browser.getLink(url='+choose-affected-product').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/alsa-utils/+bug/3/+choose-affected-product'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/alsa-utils/+bug/3/+choose-affected-product
 
     >>> user_browser.getControl('Project').value = 'alsa-utils'
     >>> user_browser.getControl('Continue').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/alsa-utils/+bug/3/+choose-affected-product'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/alsa-utils/+bug/3/+choose-affected-product
 
 We get a nice error message.
 
@@ -412,38 +433,44 @@
     >>> user_browser.getControl('Project').value = 'evolution'
     >>> user_browser.getControl('Continue').click()
     >>> user_browser.getControl('Add to Bug Report').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/evolution/+bug/3'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/evolution/+bug/3
 
-But if we try to change it to the target of an existing upstream bugtask,
-our validator springs into action.
+But if we try to change it to the target of an existing upstream
+bugtask, our validator springs into action.
 
     >>> user_browser.getLink(url='evolution/+bug/3/+editstatus').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/evolution/+bug/3/+editstatus'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/evolution/+bug/3/+editstatus
+
     >>> user_browser.getControl(name='evolution.target.product').value = (
     ...     'alsa-utils')
     >>> user_browser.getControl('Save Changes').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/evolution/+bug/3/+editstatus'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/evolution/+bug/3/+editstatus
+
     >>> print get_feedback_messages(user_browser.contents)
      [u'There is 1 error in the data you entered...
       u'A fix for this bug has already been requested for alsa-utils']
 
-= Adding bugtask with bug watch =
-
-
-== HTTP & HTTPS URLs ==
+
+Adding bugtask with bug watch
+=============================
+
+
+HTTP & HTTPS URLs
+-----------------
 
 When adding a bug watch together with a new bugtask, you have to enter
 the URL of the remote bug.
 
     >>> user_browser.open(
-    ...    'http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product')
+    ...     'http://bugs.launchpad.dev/firefox/+bug/4/'
+    ...     '+choose-affected-product')
     >>> user_browser.getControl('Project').value = 'gnome-terminal'
     >>> user_browser.getControl('Continue').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product
 
     >>> user_browser.getControl('I have the URL').selected = True
     >>> user_browser.getControl(name='field.bug_url').value = (
@@ -453,40 +480,43 @@
 that points back to the bug page:
 
     >>> cancel_link = user_browser.getLink('Cancel')
-    >>> cancel_link.url
-    'http://bugs.launchpad.dev/firefox/+bug/4'
+    >>> print cancel_link.url
+    http://bugs.launchpad.dev/firefox/+bug/4
 
 But we're happy, so we add the bug watch.
 
     >>> user_browser.getControl('Add to Bug Report').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/gnome-terminal/+bug/4'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/gnome-terminal/+bug/4
 
-    >>> bug_watches = find_portlet(user_browser.contents, 'Remote bug watches')
+    >>> bug_watches = find_portlet(
+    ...     user_browser.contents, 'Remote bug watches')
     >>> for li in bug_watches('li'):
     ...     print li.findAll('a')[0].renderContents()
     gnome-bugzilla #42
 
-It's possible to supply an HTTPS URL, even though the bug tracker's
-base URL is HTTP.
+It's possible to supply an HTTPS URL, even though the bug tracker's base
+URL is HTTP.
 
     >>> user_browser.open(
-    ...  'http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product')
+    ...     'http://bugs.launchpad.dev/firefox/+bug/4/'
+    ...     '+choose-affected-product')
     >>> user_browser.getControl('Project').value = 'netapplet'
     >>> user_browser.getControl('Continue').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product
 
     >>> user_browser.getControl('I have the URL').selected = True
     >>> user_browser.getControl(name='field.bug_url').value = (
     ...     u'https://bugzilla.gnome.org/bugs/show_bug.cgi?id=84')
     >>> user_browser.getControl('Add to Bug Report').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/netapplet/+bug/4'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/netapplet/+bug/4
 
 The URL was automatically converted to HTTP:
 
-    >>> bug_watches = find_portlet(user_browser.contents, 'Remote bug watches')
+    >>> bug_watches = find_portlet(
+    ...     user_browser.contents, 'Remote bug watches')
     >>> for li in bug_watches('li'):
     ...     print li.findAll('a')[0]['href']
     http://bugzilla.gnome.org/bugs/show_bug.cgi?id=42
@@ -496,18 +526,19 @@
 tracker type it is), an error message is displayed.
 
     >>> user_browser.open(
-    ...    'http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product')
+    ...     'http://bugs.launchpad.dev/firefox/+bug/4/'
+    ...     '+choose-affected-product')
     >>> user_browser.getControl('Project').value = 'alsa-utils'
     >>> user_browser.getControl('Continue').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product
 
     >>> user_browser.getControl('I have the URL').selected = True
     >>> user_browser.getControl(name='field.bug_url').value = (
     ...     u'http://bugs.unknown/42')
     >>> user_browser.getControl('Add to Bug Report').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product
 
     >>> for message in find_tags_by_class(user_browser.contents, 'message'):
     ...     print message.renderContents()
@@ -521,8 +552,8 @@
     >>> user_browser.getControl(name='field.bug_url').value = (
     ...     u"http://new.trac/ticket/42";)
     >>> user_browser.getControl('Add to Bug Report').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product
 
     >>> print get_feedback_messages(user_browser.contents)[0]
     The bug tracker with the given URL is not registered in Launchpad.
@@ -531,48 +562,51 @@
 As before, if we change our mind, we can back out if we want.
 
     >>> cancel_link = user_browser.getLink('Cancel')
-    >>> cancel_link.url
-    'http://bugs.launchpad.dev/firefox/+bug/4'
+    >>> print cancel_link.url
+    http://bugs.launchpad.dev/firefox/+bug/4
 
-Now the user confirms he wants us to register the bug tracker for him and we
-do that before creating the new bug watch.
+Now the user confirms he wants us to register the bug tracker for him
+and we do that before creating the new bug watch.
 
     >>> user_browser.getControl('Register Bug Tracker').click()
 
 The bug watch is linked, and we're redirected to the bug's page.
 
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/alsa-utils/+bug/4'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/alsa-utils/+bug/4
 
 The bug tracker and bug watch were added. We can see that the bugtracker
 has a special name, starting with 'auto-', to indicate that it was
 registered automatically.
 
-    >>> bug_watches = find_portlet(user_browser.contents, 'Remote bug watches')
+    >>> bug_watches = find_portlet(
+    ...     user_browser.contents, 'Remote bug watches')
     >>> for li in bug_watches('li'):
     ...     print li.findAll('a')[0].renderContents()
     gnome-bugzilla #42
     gnome-bugzilla #84
     auto-new.trac #42
 
-If the user does not specify the base url's schema at all, we complete it
-to HTTP on their behalf:
+If the user does not specify the base url's schema at all, we complete
+it to HTTP on their behalf:
 
     >>> user_browser.open(
-    ...  'http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product')
+    ...     'http://bugs.launchpad.dev/firefox/+bug/4/'
+    ...     '+choose-affected-product')
     >>> user_browser.getControl('Project').value = 'thunderbird'
     >>> user_browser.getControl('Continue').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/firefox/+bug/4/+choose-affected-product
 
     >>> user_browser.getControl('I have the URL').selected = True
     >>> user_browser.getControl(name='field.bug_url').value = (
     ...     u'bugzilla.gnome.org/bugs/show_bug.cgi?id=168')
     >>> user_browser.getControl('Add to Bug Report').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/thunderbird/+bug/4'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/thunderbird/+bug/4
 
-    >>> bug_watches = find_portlet(user_browser.contents, 'Remote bug watches')
+    >>> bug_watches = find_portlet(
+    ...     user_browser.contents, 'Remote bug watches')
     >>> for li in bug_watches('li'):
     ...     print li.findAll('a')[0]['href']
     http://bugzilla.gnome.org/bugs/show_bug.cgi?id=168
@@ -581,13 +615,14 @@
     http://new.trac/ticket/42
 
 
-== Email Addresses ==
+Email Addresses
+---------------
 
 Similar things happen when the upstream link is an email address:
 
     >>> user_browser.open(
-    ...    'http://bugs.launchpad.dev/jokosher/+bug/12/'
-    ...    '+choose-affected-product')
+    ...     'http://bugs.launchpad.dev/jokosher/+bug/12/'
+    ...     '+choose-affected-product')
     >>> user_browser.getControl('Project').value = 'gnome-terminal'
     >>> user_browser.getControl('Continue').click()
 
@@ -609,8 +644,8 @@
 confirmation.
 
     >>> user_browser.getControl('Add to Bug Report').click()
-    >>> user_browser.url
-    'http://bugs.launchpad.dev/gnome-terminal/+bug/12'
+    >>> print user_browser.url
+    http://bugs.launchpad.dev/gnome-terminal/+bug/12
 
     >>> def print_remote_bug_watches_portlet(browser):
     ...     bug_watches = find_portlet(
@@ -655,8 +690,8 @@
     ...     'mailto:dark-master-o-bugs@xxxxxxxxxxxxxxxx')
     3
 
-To evade harvesting, the email address above is obfuscated if you're
-not logged in.
+To evade harvesting, the email address above is obfuscated if you're not
+logged in.
 
     >>> anon_browser.open(user_browser.url)
     >>> print_remote_bug_watches_portlet(anon_browser)