view website/issues/html/defaultfonts.css @ 5525:bb7865241f8a

Make CSV import/export compatible across Python versions (also RDBMS journals) (issue 2550976, issue 2550975). The roundup-admin export and import commands are used for migrating between different database backends. It is desirable that they should be usable also for migrations between Python 2 and Python 3, and in some cases (e.g. with the anydbm backend) this may be required. To be usable for such migrations, the format of the generated CSV files needs to be stable, meaning the same as currently used with Python 2. The export process uses repr() to produce the fields in the CSV files and eval() to convert them back to Python data structures. repr() of strings with non-ASCII characters produces different results for Python 2 and Python 3. This patch adds repr_export and eval_import functions to roundup/anypy/strings.py which provide the required operations that are just repr() and eval() in Python 2, but are more complicated in Python 3 to use data representations compatible with Python 2. These functions are then used in the required places for export and import. repr() and eval() are also used in storing the dict of changed values in the journal for the RDBMS backends. It is similarly desirable that the database be compatible between Python 2 and Python 3, so that export and import do not need to be used for a migration between Python versions for non-anydbm back ends. Thus, this patch changes rdbms_common.py in the places involved in storing journals in the database, not just in those involved in import/export. Given this patch, import/export with non-ASCII characters appear based on some limited testing to work across Python versions, and an instance using the sqlite backend appears to be compatible between Python versions without needing import/export, *if* the sessions/otks databases (which use anydbm) are deleted when changing Python version.
author Joseph Myers <jsm@polyomino.org.uk>
date Sun, 02 Sep 2018 23:48:04 +0000
parents d24e156f9069
children
line wrap: on
line source

/* Saved from http://legacy.python.org/styles/defaultfonts.css */

/* Main Styles for HTML Elements */
HTML, BODY
{
  margin: 0;
  padding: 0;
  font-family: sans;
  font-size: inherit;
  background-color: #FFF;
}

IMG
{
  border: 0;
}


H1
{
  margin: 0.7em 0 0.7em 0;
}

H1,H2,H3,H4 {
  font-family: serif;
}

H1 A,H2 A,H3 A,H4 A {
  text-decoration:none;
}


a:link {color: #00E;}
a:visited {color: #551A8B;}
a {color: #00E;}


#intro H1 {
  font-size: inherit;
}
H2
{
  margin: 0.7em 0 0.7em 0;
}

H3
{
  margin: 0.4em 0 0.0em 0;
}

H4
{
  margin: 0.4em 0 0.0em 0;
}

/* Logo */
#logoheader
{
  border: 0;
  margin: 0;
  padding: 1px;
  z-index: 1;
  background-color:#F7F7F7;
  background-image: url(../images/header-bg2.png);
  background-repeat: repeat-x;
  border-bottom: 1px solid #999999;
  }

#logo
{
  width: 211px;
  height:71px;
  margin-top: 10px;
  margin-left: 3px;
}



/* main content section */
#content-body
{
  position: absolute;
  left: 0;
  top: 55px;
  width: 99.9%;
  z-index: 0;
  color:  inherit;
  font-size: inherit;

}


#body-main
{

  padding: 0 0.55em 40px 0.0em;
  line-height:  inherit;
  color:  inherit;
  font-family: inherit;
  margin-left: 16em;
}

#body-main {
  font-size: inherit;
}


/* end subnav */
/* Left Hand Navigation */
#left-hand-navigation
{
  position: absolute;
  left: 0;
  z-index: 1;
  top: 100px;
}

#menu
{

  padding:0;
  margin-bottom: 5px;
  width: 16em;
  font-size: inherit;
}

#menu ul
{
  list-style: none;
  margin: 0;
  padding: 0;
  border: 0; 
}

#menu li
{
  display:inline;
}

#menu ul.level-one a
{
  display: block;
  border: 1px solid #DADADA;
  padding: 2px 2px 2px 4px;
  margin: 0 0 4px 1.4em;
  width: 12em !important;
  width /**/: 13.4em;
  font-family:  inherit;
  background-image: url(../images/nav-off-bg.png);
  background-position: top right;
  background-repeat: no-repeat;
  background-color:#F5F5F5;
  text-transform: inherit;
  
}

/*\*//*/
#menu ul.level-one a
{
  width: 13.4em !important;
}
/**/ 

#menu ul.level-one a:hover
{
  color: inherit;
  text-decoration:underline;
}

#menu ul.level-one a.selected
{
  background-image: url(../images/nav-on-bg.png);
  background-color: #FFFFFF;
  color:#00e;
  border-left:3px solid #FFDB4C;
}
#menu ul.level-one a.selected:visited {
color: #551A8B;
}
#menu ul.level-two li:first-child a
{
  border-top:0;
}

#menu ul.level-two a
{

  background-image: none;
  background-color: transparent;
  display: block;
  border: 0;
  border-top: 1px solid #DDD;
  padding: 0.1em;
  margin: 0 3em 0px 1.5em;
  color:  #00E;
  background: none;
  width: 11em !important;
  width /**/: 11.2em;  
  font-family: inherit;
  text-transform: none;
}

#menu ul.level-two a:hover
{
  text-decoration: underline;
  color:  inherit;
}


#menu ul.level-two a:visited
{
  color:  #551A8B;
}

#menu ul.level-one ul.level-two a.selected
{
  background-image: url(../images/blank.gif);
  background-color: #FFFFFF;
  color:inherit;
  border-left:0;
  
  font-weight:inherit;
}
#menu ul.level-one ul.level-two a.selected:visited
{
  color: #551A8B;
}
#menu li ul
{
  margin-bottom: 7px
}

#menu a
{
  text-decoration: underline;
}

#menu ul.level-three a
{

  display: block;
  border: 0;
  padding: 0.1em;
  margin: 0 3em 0px 1.8em;
  padding-left:1em;
  color:  #00E;
  background-image: none;
  width: 10em !important;
  width /**/: 11.4em;  
  font-family: inherit;
  font-size: inherit;
}

#menu ul.level-three a:hover
{
  text-decoration: underline;
  color:  inherit;
}

#menu ul.level-three li.selected a.selected
{

  background-image: url(../images/bullet.gif);
  background-repeat: no-repeat;
  background-position: center left;
  color:inherit;
  font-weight:inherit;
}

#menu ul.level-three
{
margin-top:5px;
}

#left-hand-navigation h4
{
  font-family: inherit;
  font-size: inherit;
  color:  inherit;
  padding: 0.4em 0 0 1.5em;
  margin: 0.2em 0 0.3em 0;
}

#left-hand-navigation h4 a
{
  color: inherit;
  text-decoration:none;
  font-weight:inherit;
}

#left-hand-navigation h4 a:hover
{
  color:inherit;
  text-decoration:underline;
}

#body-main a:link
{
  color: #00E;
  text-decoration:underline;
  
}

#body-main a:visited
{
  color:  #551A8B;
  text-decoration:underline;
}

#body-main ul, #body-main li {
  margin-left:1em;
  padding-left:0;
}

/* Breadcrumb Trail */
#breadcrumb
{
  vertical-align: middle;
  color:  inherit;
  font-size: inherit;
  margin-bottom:20px;
}

#breadcrumb a:link
{
  text-decoration: underline;
  color:  #00E;
}

#breadcrumb a:visited
{
  text-decoration: underline;
  color:  #551A8B;
}

#breadcrumb a:hover
{
  text-decoration: underline;
  color:  inherit;
}

.breadcrumb-separator
{
  color: inherit;
}

#breadcrumb-text
{
  color:  inherit;
  font-size: inherit;
  vertical-align: middle;
}

/* Utility Menu */
#utility-menu
{
  position: absolute;
  top: 58px;
  right: 0.7em;
  z-index: 1;
  font-size: inherit;
  font-family: inherit;
}

#utility-menu a
{
  text-decoration: underline;
  padding: 0 0.5em 0 0.5em;
  color:  #00E;
}
#utility-menu a:visited
{
  color:  #551A8B;
}
#utility-menu a:hover
{
  text-decoration: underline;
}

/* Search Box */
#searchbox {
  position: absolute;
  white-space: nowrap;
  top: 0;
  right: 0;
  width: 28.1em;
  vertical-align: middle;
  font-size: inherit;
  font-weight: bold;
  text-align: right;
}
#searchbox form {
	display:inline;
}
#search
{
  padding: 5px 5px 0 0;
  color:  inherit;
}

#search .input-text
{
  margin-top: 3px;
  border: 1px solid #C4CCCC;
  background-color: #FFFFFF;
  vertical-align: top;
  font-weight:inherit;
  font-size: inherit;
  width: 11em;
}

#search .input-button
{
  color:  inherit;
  font-family: inherit;
  font-weight: bold;
  font-size: inherit;
  border-top: 1px solid #C4CCCC;
  border-left: 1px solid #C4CCCC;
  border-bottom: 1px solid #6F7777;
  border-right: 1px solid #6F7777;
  background-color:  #F8F7F7;
  background-image: url(../images/button-on-bg.png);
  background-repeat: no-repeat;
  padding: 0px 0.2em 0px 0.2em;
  margin: 3px 0.4em 0px 0.4em;
  vertical-align: text-top;
}

/* Navigation Skipper */
#skiptonav
{
  height: 1px;
  width: 1px;
}

/* Document Navigation */
.homepage-box h4, #document-navigation h4, .externallinks h4
{
  font-family: Verdana, Geneva, "Bitstream Vera Sans", Helvetica, sans-serif;
  font-size: inherit;
  font-weight: bold;
  padding: 3px 0 4px 12px;
  margin-bottom:8px;
  border-bottom:3px solid #FFBC29;
  background-color: #F6F6F6;
  text-align: left;
  z-index: 0;
  -moz-border-radius-topleft: 16px;
}

#document-navigation
{
  font-family: Verdana, Geneva, "Bitstream Vera Sans", Helvetica, sans-serif;
  font-size: inherit;
  text-align: left;
  color:  inherit;
  background-color: #F7F6F0;
  width: 15em;
  border: 1px solid #B7BECC;
  z-index: 999;
  float:right;
  margin: 0 12px 12px 12px;
  padding-bottom: 10px;
  list-style:none;
  -moz-border-radius-topleft: 12px;
  -moz-border-radius-bottomright: 12px;
}

#document-navigation ul
{
  list-style: none;
  display: block;
  border:0;
  padding: 0;
  margin: 0 3em 0 1.1em;
  color:  inherit;
  background: none;
  width: auto;
  font-size: inherit;
  font-family: Verdana, Geneva, "Bitstream Vera Sans", Helvetica, sans-serif; 
}

#document-navigation a:link, #document-navigation a:visited 
{
  color: inherit;
  text-decoration:  underline;
}

#document-navigation a:hover
{
  color:  inherit;
  text-decoration: underline;
}

#document-navigation h4 a:link, #document-navigation  h4 a:visited
{
  color: #FFFFFF;
}


#document-navigation h4 a:hover
{
  color: #FFFFFF;

}
#document-navigation form {
  margin:12px;
}
#document-navigation input {
  margin-top:3px;
}
input.formbutton {
  color:  inherit;
  font-family: inherit;
  font-weight: bold;
  font-size: inherit;
  border-top: 1px solid #C4CCCC;
  border-left: 1px solid #C4CCCC;
  border-bottom: 1px solid #6F7777;
  border-right: 1px solid #6F7777;
  background-color:  #F8F7F7;
  vertical-align: text-top;
}
.formtextinput {
  border: 1px solid #C4CCCC;
  background-color: #FFFFFF;
  vertical-align: top;
  font-weight:inherit;
  font-size: inherit;
}
#id {
  width:6em;
}
#document-navigation .inputbox {
  width:6em;
}
#selecteditem
{
  padding-left: 12px;
  background-image: url(../images/bullet.gif);
  background-repeat: no-repeat;
  background-position: center left;
}

#selecteditem a
{
  color: inherit;
}

#selecteditem a:hover
{
  text-decoration:underline;
}

.group {
  background-image: url(../images/bullet.gif);
  background-repeat: no-repeat;
  background-position: center left;
  padding-left: 12px;
}
/* subnav */
#document-navigation ul.level-one {
    padding:0;
    margin:0 0 0 1.1em;
    font-size: inherit
}
#document-navigation ul.level-one li {
    padding:0;
    margin:0;
}
#document-navigation li ul
{
  margin-bottom: 7px
}
#document-navigation ul.level-one a
{
  border: 0;
  border-bottom: 1px solid #DDD;
  color: inherit;
  width: 160px;
  display: block;
  padding:0;
  margin:0
}

#document-navigation ul.level-one a:hover
{
  text-decoration: underline;
  color:  inherit;
}
#document-navigation ul.level-one a:link {
    border:0;
}
#document-navigation ul.level-one a:visited {
    border:0;
}
#document-navigation ul.level-one a.selected
{
  color:inherit;
  font-weight: inherit;
  border-left:0;
}
#document-navigation ul.level-two {
    padding:0;
    margin:0;
}
#document-navigation ul.level-two li {
    padding:0;
    margin:0;
}
#document-navigation ul.level-two a
{
  border: 0;
  margin: 0;
  padding:0 0 0 1em;
  color:  inherit;
  font-size: inherit;
  display: block;
  width: 140px;
  
}

#document-navigation ul.level-two a:hover
{
  text-decoration: underline;
  color:  inherit;
}

#document-navigation ul.level-two li.selected a.selected
{

  background-image: url(../images/bullet.gif);
  background-repeat: no-repeat;
  background-position: center left;
  color: inherit;
  border:0;
  font-size: inherit;
  font-weight:inherit;
  font-style: italic;  
}
#document-navigation a
{
  text-decoration: underline;
}

/* Quick Links */
ul.quicklinks
{
  margin-left: 0;
  padding-left: 0;
  list-style: none;
  margin: 0 0 0 1.5em;
  line-height:  1.2em;
}

ul.quicklinks li
{
  padding-left: 16px;
  background-image: url(../images/bullet.gif);
  background-repeat: no-repeat;
  background-position: 0 50%;
  font-family: inherit;
  font-size: inherit;
}

ul.quicklinks a
{
  text-decoration:underline;
  color:  #00e;
}

ul.quicklinks a:visited
{
  text-decoration:underline;
  color:  #551A8B;
}


ul.quicklinks a:hover
{
  text-decoration:underline;
  color:  inherit;
}

#sidebar-wrapper
{
  position:relative;
  width:100%;
}

#sidebar {
  font-size: inherit;
  float:left;
  top:35px;
  width:37%;
  height:auto;
  padding:0;
  border:0;
  margin:0;
  text-align:left;
  padding-bottom:10px;
}

#sidebar2 {
  font-size: inherit;
  float:left;
  top:35px;
  width:25%;
  height:auto;
  padding:0;
  border:0;
  margin:0;
  text-align:left;
  padding-bottom:10px;
}
#sidebar3 {
  font-size: inherit;
  float:left;
  top:35px;
  width:37%;
  border:0;
  height:auto;
  padding:0;
  margin:0;
  text-align:left;
  padding-bottom:10px;
}

.teaser {
  overflow:hidden;
  margin-top:5px;
  border:0;
  width:100%;
  text-align:left;
}

P.news 
{
   padding-left:12px;
   margin:0 0 5px 0;
}

P A:link,P A:visited
{
}

P.news A:link {
}
P.news A:visited
{
}

#body-main h1.pageheading {
	margin:40px 0 10px 0;
}
#body-main H2.news
{
  background-image: url(../images/bullet.gif);
  background-repeat: no-repeat;
  background-position: center left;
  padding-left:12px;
  margin:0;
  font-size: inherit;
  color: inherit;  
  font-weight:inherit;
  font-weight:inherit;
}

#body-main H2.news A:link, #body-main H2.news A:visited
{
  text-decoration:underline;
  color:  inherit;
  
}

#body-main ul A:link,#body-main ul A:visited
{
}

/* Document Navigation */
#document-navigation h4, .homepage-box h4, .externallinks h4
{
  font-family: Verdana, Geneva, "Bitstream Vera Sans", Helvetica, sans-serif;
  font-size: inherit;
  font-weight: bold;
  padding: 3px 0 4px 12px;
  margin:0 0 0 0;
  text-align: left;
  z-index: 0;
  color:#FFFFFF;
  -moz-border-radius-topleft: 11px;
  background-color:#376A94;

}
/* news specific */
.news-section {
  margin-top:15px;
}
.news-section h1 {
  margin:0 0 10px 0;
}
.news-section p {
   padding-left:12px;
   margin:0 0 2px 0;
}
.news-section .pubdate {
   padding:0 0 0 12px;
   margin:0 0 5px 0;
   color: inherit;
}
/* homepage specific */
#intro {
  margin-top:5px;
}
#intro h1 {
  margin:0 0 10px 0;
}
#intro p {
  margin-top:10px
}
.content-section {
  margin-top:15px;
}
.content-section h1 {
  margin:0 0 10px 0;
}
.content-section p {
   padding-left:12px;
   margin:0 0 5px 0;
}
.content-section .pubdate {
   padding:0 0 0 12px;
   margin:0 0 8px 0;
   color: inherit;
}
#homepage-boxes {
  width: 250px;
  float:right;
  margin: 12px;
}

#homepage-boxes .homepage-box, .externallinks
{
  font-family: Arial, Geneva, "Bitstream Vera Sans", Helvetica, sans-serif;
  font-size: inherit;
  text-align: left;
  color:  inherit;
  background-color: #FBFBF7;
  width: 240px;
  border: 1px solid #B7BECC;
  z-index: 999;
  float:right;
  padding-bottom: 10px;
  list-style:none;
  margin: 6px;
  -moz-border-radius-topleft: 12px;
  -moz-border-radius-bottomright: 12px;
  background-color: #F7F6F0;
}

#homepage-boxes .homepage-box ul, .externallinks ul
{
  list-style: none;
  display: block;
  border:0;
  padding: 0;
  margin: 0.5em 3em 0 1.1em;
  color:  inherit;
  background: none;
  width: auto;
  font-family: inherit;
  font-size: inherit;
  margin-left:0;
}

#homepage-boxes .homepage-box li, .externallinks li {
  padding-left:15px;
}


#homepage-boxes .homepage-box a:link, .externallinks a:link
{
  color:  inherit;
  text-decoration:  underline;
  border-width:0;
}

#homepage-boxes .homepage-box a:visited, .externallinks a:visited 
{
  color:  inherit;
  text-decoration:  underline;
  border-width:0;
}

#homepage-boxes .homepage-box a:hover, .externallinks a:hover
{
  color:  inherit;
  text-decoration: underline;
}

#homepage-boxes .items, .externallinks .items {
  padding-left: 12px;
}

#homepage-boxes .homepage-box .items a:link, .externallinks .items a:link
{
  color:  inherit;
}

#homepage-boxes .homepage-box .items a:visited, .externallinks .items a:visited
{
  color:  inherit;
}

.homepage-box li.more {
	text-align:right;
}
#skiptonav {
  position:absolute;
}

/* additional rest styles */

a.toc-backref {
  color: inherit ! important;
}

ul.auto-toc {
  list-style-type: none;
}

p.admonition-title {
  display:none;
}

pre.literal-block {
  padding-left:12px;
  font-size: inherit;
}

div.topic {
  margin: 2em;
}

p.topic-title {
  font-weight: bold;
}

div.admonition, div.attention, div.caution, div.danger, div.error,
div.hint, div.important, div.note, div.tip, div.warning {
  margin: 2em;
  border-style: solid;
  border-color: #CCC;
  border-width: thin 0 0 thin;
  padding: 0 0.5em 0em 1em;
}

div.admonition p.admonition-title, div.hint p.admonition-title,
div.important p.admonition-title, div.note p.admonition-title,
div.tip p.admonition-title {
  font-weight: bold;
  font-size: 110%;
}

div.attention p.admonition-title, div.caution p.admonition-title,
div.danger p.admonition-title, div.error p.admonition-title,
div.warning p.admonition-title {
  color: red;
  font-weight: bold;
  font-size: 110%;
}

ol.arabic {
  list-style: decimal }

ol.loweralpha {
  list-style: lower-alpha }

ol.upperalpha {
  list-style: upper-alpha }

ol.lowerroman {
  list-style: lower-roman }

ol.upperroman {
  list-style: upper-roman }

/* General Table Style ?? built for sigs page */

#sigindex {
  border-collapse:collapse;
  width:100%;
}

#sigindex THEAD {
  border-bottom: 2px solid #CCC;
}

#sigindex TH {
  padding: 0.5em 0.2em 0.5em 0.2em  ;
  text-align:left;
}

#sigindex TD {
  padding: 0.5em 0.2em 0.5em 0.2em  ;
  border-bottom: 1px dotted #CCC;
}

blockquote {
  margin-left:1em;
  padding-left:1em;
  border-left:1px solid #CCC;
}

#sidebar-wrapper {
display:none;
}

.more {
  text-align:right;
}

#content-body #homepage-boxes a.more {
  display:block;
  padding:3px 10px 0 0;
  border-bottom:0;
}

.homepage-box div {
  padding: 0 15px 0 15px;
}


Roundup Issue Tracker: http://roundup-tracker.org/