Skip to content

Commit ff910c1

Browse files
committed
Extra bits of code after online PB experiments
1 parent 0e3770e commit ff910c1

File tree

152 files changed

+7774
-5751
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

152 files changed

+7774
-5751
lines changed

docs-source/source/reference/election/libraries.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ Preference Libraries
55

66
.. autofunction:: pabutools.election.pabulib.parse_pabulib
77

8+
.. autofunction:: pabutools.election.pabulib.num_projects_of_pabulib_file
9+
810
.. autofunction:: pabutools.election.pabulib.write_pabulib
911

1012
.. autofunction:: pabutools.election.pabulib.election_as_pabulib_string

docs/_modules/index.html

Lines changed: 58 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -15,30 +15,27 @@
1515
document.documentElement.dataset.mode = localStorage.getItem("mode") || "light";
1616
document.documentElement.dataset.theme = localStorage.getItem("theme") || "light";
1717
</script>
18-
<!--
19-
this give us a css class that will be invisible only if js is disabled
20-
-->
21-
<noscript>
22-
<style>
23-
.pst-js-only { display: none !important; }
24-
25-
</style>
26-
</noscript>
2718

2819
<!-- Loaded before other Sphinx assets -->
29-
<link href="../_static/styles/theme.css?digest=26a4bc78f4c0ddb94549" rel="stylesheet" />
30-
<link href="../_static/styles/pydata-sphinx-theme.css?digest=26a4bc78f4c0ddb94549" rel="stylesheet" />
20+
<link href="../_static/styles/theme.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
21+
<link href="../_static/styles/bootstrap.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
22+
<link href="../_static/styles/pydata-sphinx-theme.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
23+
24+
25+
<link href="../_static/vendor/fontawesome/6.5.2/css/all.min.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
26+
<link rel="preload" as="font" type="font/woff2" crossorigin href="../_static/vendor/fontawesome/6.5.2/webfonts/fa-solid-900.woff2" />
27+
<link rel="preload" as="font" type="font/woff2" crossorigin href="../_static/vendor/fontawesome/6.5.2/webfonts/fa-brands-400.woff2" />
28+
<link rel="preload" as="font" type="font/woff2" crossorigin href="../_static/vendor/fontawesome/6.5.2/webfonts/fa-regular-400.woff2" />
3129

32-
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=fa44fd50" />
33-
<link rel="stylesheet" type="text/css" href="../_static/styles/sphinx-book-theme.css?v=a3416100" />
30+
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=03e43079" />
31+
<link rel="stylesheet" type="text/css" href="../_static/styles/sphinx-book-theme.css?v=eba8b062" />
3432

35-
<!-- So that users can add custom icons -->
36-
<script src="../_static/scripts/fontawesome.js?digest=26a4bc78f4c0ddb94549"></script>
3733
<!-- Pre-loaded scripts that we'll load fully later -->
38-
<link rel="preload" as="script" href="../_static/scripts/bootstrap.js?digest=26a4bc78f4c0ddb94549" />
39-
<link rel="preload" as="script" href="../_static/scripts/pydata-sphinx-theme.js?digest=26a4bc78f4c0ddb94549" />
34+
<link rel="preload" as="script" href="../_static/scripts/bootstrap.js?digest=dfe6caa3a7d634c4db9b" />
35+
<link rel="preload" as="script" href="../_static/scripts/pydata-sphinx-theme.js?digest=dfe6caa3a7d634c4db9b" />
36+
<script src="../_static/vendor/fontawesome/6.5.2/js/all.min.js?digest=dfe6caa3a7d634c4db9b"></script>
4037

41-
<script src="../_static/documentation_options.js?v=778ca11c"></script>
38+
<script src="../_static/documentation_options.js?v=cc702301"></script>
4239
<script src="../_static/doctools.js?v=9bcbadda"></script>
4340
<script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
4441
<script src="../_static/scripts/sphinx-book-theme.js?v=887ef09a"></script>
@@ -47,7 +44,6 @@
4744
<link rel="search" title="Search" href="../search.html" />
4845
<meta name="viewport" content="width=device-width, initial-scale=1"/>
4946
<meta name="docsearch:language" content="en"/>
50-
<meta name="docsearch:version" content="1.2.2" />
5147
</head>
5248

5349

@@ -63,24 +59,36 @@
6359
<i class="fa-solid fa-arrow-up"></i>Back to top</button>
6460

6561

66-
<dialog id="pst-search-dialog">
67-
62+
<input type="checkbox"
63+
class="sidebar-toggle"
64+
id="pst-primary-sidebar-checkbox"/>
65+
<label class="overlay overlay-primary" for="pst-primary-sidebar-checkbox"></label>
66+
67+
<input type="checkbox"
68+
class="sidebar-toggle"
69+
id="pst-secondary-sidebar-checkbox"/>
70+
<label class="overlay overlay-secondary" for="pst-secondary-sidebar-checkbox"></label>
71+
72+
<div class="search-button__wrapper">
73+
<div class="search-button__overlay"></div>
74+
<div class="search-button__search-container">
6875
<form class="bd-search d-flex align-items-center"
6976
action="../search.html"
7077
method="get">
7178
<i class="fa-solid fa-magnifying-glass"></i>
7279
<input type="search"
7380
class="form-control"
7481
name="q"
82+
id="search-input"
7583
placeholder="Search..."
7684
aria-label="Search..."
7785
autocomplete="off"
7886
autocorrect="off"
7987
autocapitalize="off"
8088
spellcheck="false"/>
8189
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
82-
</form>
83-
</dialog>
90+
</form></div>
91+
</div>
8492

8593
<div class="pst-async-banner-revealer d-none">
8694
<aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
@@ -98,8 +106,7 @@
98106

99107

100108

101-
<dialog id="pst-primary-sidebar-modal"></dialog>
102-
<div id="pst-primary-sidebar" class="bd-sidebar-primary bd-sidebar">
109+
<div class="bd-sidebar-primary bd-sidebar">
103110

104111

105112

@@ -129,11 +136,15 @@
129136
</a></div>
130137
<div class="sidebar-primary-item">
131138

132-
<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
133-
<i class="fa-solid fa-magnifying-glass"></i>
134-
<span class="search-button__default-text">Search</span>
135-
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
136-
</button></div>
139+
<script>
140+
document.write(`
141+
<button class="btn search-button-field search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
142+
<i class="fa-solid fa-magnifying-glass"></i>
143+
<span class="search-button__default-text">Search</span>
144+
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
145+
</button>
146+
`);
147+
</script></div>
137148
<div class="sidebar-primary-item"><nav class="bd-links bd-docs-nav" aria-label="Main">
138149
<div class="bd-toc-item navbar-nav active">
139150
<ul class="nav bd-sidenav">
@@ -243,16 +254,24 @@
243254

244255

245256

246-
<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode" data-bs-placement="bottom" data-bs-toggle="tooltip">
247-
<i class="theme-switch fa-solid fa-sun fa-lg" data-mode="light" title="Light"></i>
248-
<i class="theme-switch fa-solid fa-moon fa-lg" data-mode="dark" title="Dark"></i>
249-
<i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto" title="System Settings"></i>
250-
</button>
257+
<script>
258+
document.write(`
259+
<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button" title="light/dark" aria-label="light/dark" data-bs-placement="bottom" data-bs-toggle="tooltip">
260+
<i class="theme-switch fa-solid fa-sun fa-lg" data-mode="light"></i>
261+
<i class="theme-switch fa-solid fa-moon fa-lg" data-mode="dark"></i>
262+
<i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"></i>
263+
</button>
264+
`);
265+
</script>
251266

252267

253-
<button class="btn btn-sm pst-navbar-icon search-button search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
268+
<script>
269+
document.write(`
270+
<button class="btn btn-sm pst-navbar-icon search-button search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
254271
<i class="fa-solid fa-magnifying-glass fa-lg"></i>
255-
</button>
272+
</button>
273+
`);
274+
</script>
256275

257276
</div></div>
258277

@@ -382,8 +401,8 @@ <h1>All modules for which code is available</h1>
382401
</div>
383402

384403
<!-- Scripts loaded after <body> so the DOM is not blocked -->
385-
<script defer src="../_static/scripts/bootstrap.js?digest=26a4bc78f4c0ddb94549"></script>
386-
<script defer src="../_static/scripts/pydata-sphinx-theme.js?digest=26a4bc78f4c0ddb94549"></script>
404+
<script src="../_static/scripts/bootstrap.js?digest=dfe6caa3a7d634c4db9b"></script>
405+
<script src="../_static/scripts/pydata-sphinx-theme.js?digest=dfe6caa3a7d634c4db9b"></script>
387406

388407
<footer class="bd-footer">
389408
</footer>

docs/_modules/pabutools/analysis/category.html

Lines changed: 63 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -15,30 +15,27 @@
1515
document.documentElement.dataset.mode = localStorage.getItem("mode") || "light";
1616
document.documentElement.dataset.theme = localStorage.getItem("theme") || "light";
1717
</script>
18-
<!--
19-
this give us a css class that will be invisible only if js is disabled
20-
-->
21-
<noscript>
22-
<style>
23-
.pst-js-only { display: none !important; }
24-
25-
</style>
26-
</noscript>
2718

2819
<!-- Loaded before other Sphinx assets -->
29-
<link href="../../../_static/styles/theme.css?digest=26a4bc78f4c0ddb94549" rel="stylesheet" />
30-
<link href="../../../_static/styles/pydata-sphinx-theme.css?digest=26a4bc78f4c0ddb94549" rel="stylesheet" />
20+
<link href="../../../_static/styles/theme.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
21+
<link href="../../../_static/styles/bootstrap.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
22+
<link href="../../../_static/styles/pydata-sphinx-theme.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
23+
24+
25+
<link href="../../../_static/vendor/fontawesome/6.5.2/css/all.min.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
26+
<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../_static/vendor/fontawesome/6.5.2/webfonts/fa-solid-900.woff2" />
27+
<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../_static/vendor/fontawesome/6.5.2/webfonts/fa-brands-400.woff2" />
28+
<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../_static/vendor/fontawesome/6.5.2/webfonts/fa-regular-400.woff2" />
3129

32-
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
33-
<link rel="stylesheet" type="text/css" href="../../../_static/styles/sphinx-book-theme.css?v=a3416100" />
30+
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=03e43079" />
31+
<link rel="stylesheet" type="text/css" href="../../../_static/styles/sphinx-book-theme.css?v=eba8b062" />
3432

35-
<!-- So that users can add custom icons -->
36-
<script src="../../../_static/scripts/fontawesome.js?digest=26a4bc78f4c0ddb94549"></script>
3733
<!-- Pre-loaded scripts that we'll load fully later -->
38-
<link rel="preload" as="script" href="../../../_static/scripts/bootstrap.js?digest=26a4bc78f4c0ddb94549" />
39-
<link rel="preload" as="script" href="../../../_static/scripts/pydata-sphinx-theme.js?digest=26a4bc78f4c0ddb94549" />
34+
<link rel="preload" as="script" href="../../../_static/scripts/bootstrap.js?digest=dfe6caa3a7d634c4db9b" />
35+
<link rel="preload" as="script" href="../../../_static/scripts/pydata-sphinx-theme.js?digest=dfe6caa3a7d634c4db9b" />
36+
<script src="../../../_static/vendor/fontawesome/6.5.2/js/all.min.js?digest=dfe6caa3a7d634c4db9b"></script>
4037

41-
<script src="../../../_static/documentation_options.js?v=db04a367"></script>
38+
<script src="../../../_static/documentation_options.js?v=cc702301"></script>
4239
<script src="../../../_static/doctools.js?v=9bcbadda"></script>
4340
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
4441
<script src="../../../_static/scripts/sphinx-book-theme.js?v=887ef09a"></script>
@@ -47,7 +44,6 @@
4744
<link rel="search" title="Search" href="../../../search.html" />
4845
<meta name="viewport" content="width=device-width, initial-scale=1"/>
4946
<meta name="docsearch:language" content="en"/>
50-
<meta name="docsearch:version" content="1.2.0" />
5147
</head>
5248

5349

@@ -63,24 +59,36 @@
6359
<i class="fa-solid fa-arrow-up"></i>Back to top</button>
6460

6561

66-
<dialog id="pst-search-dialog">
67-
62+
<input type="checkbox"
63+
class="sidebar-toggle"
64+
id="pst-primary-sidebar-checkbox"/>
65+
<label class="overlay overlay-primary" for="pst-primary-sidebar-checkbox"></label>
66+
67+
<input type="checkbox"
68+
class="sidebar-toggle"
69+
id="pst-secondary-sidebar-checkbox"/>
70+
<label class="overlay overlay-secondary" for="pst-secondary-sidebar-checkbox"></label>
71+
72+
<div class="search-button__wrapper">
73+
<div class="search-button__overlay"></div>
74+
<div class="search-button__search-container">
6875
<form class="bd-search d-flex align-items-center"
6976
action="../../../search.html"
7077
method="get">
7178
<i class="fa-solid fa-magnifying-glass"></i>
7279
<input type="search"
7380
class="form-control"
7481
name="q"
82+
id="search-input"
7583
placeholder="Search..."
7684
aria-label="Search..."
7785
autocomplete="off"
7886
autocorrect="off"
7987
autocapitalize="off"
8088
spellcheck="false"/>
8189
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
82-
</form>
83-
</dialog>
90+
</form></div>
91+
</div>
8492

8593
<div class="pst-async-banner-revealer d-none">
8694
<aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
@@ -98,8 +106,7 @@
98106

99107

100108

101-
<dialog id="pst-primary-sidebar-modal"></dialog>
102-
<div id="pst-primary-sidebar" class="bd-sidebar-primary bd-sidebar">
109+
<div class="bd-sidebar-primary bd-sidebar">
103110

104111

105112

@@ -129,11 +136,15 @@
129136
</a></div>
130137
<div class="sidebar-primary-item">
131138

132-
<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
133-
<i class="fa-solid fa-magnifying-glass"></i>
134-
<span class="search-button__default-text">Search</span>
135-
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
136-
</button></div>
139+
<script>
140+
document.write(`
141+
<button class="btn search-button-field search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
142+
<i class="fa-solid fa-magnifying-glass"></i>
143+
<span class="search-button__default-text">Search</span>
144+
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
145+
</button>
146+
`);
147+
</script></div>
137148
<div class="sidebar-primary-item"><nav class="bd-links bd-docs-nav" aria-label="Main">
138149
<div class="bd-toc-item navbar-nav active">
139150
<ul class="nav bd-sidenav">
@@ -243,16 +254,24 @@
243254

244255

245256

246-
<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode" data-bs-placement="bottom" data-bs-toggle="tooltip">
247-
<i class="theme-switch fa-solid fa-sun fa-lg" data-mode="light" title="Light"></i>
248-
<i class="theme-switch fa-solid fa-moon fa-lg" data-mode="dark" title="Dark"></i>
249-
<i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto" title="System Settings"></i>
250-
</button>
257+
<script>
258+
document.write(`
259+
<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button" title="light/dark" aria-label="light/dark" data-bs-placement="bottom" data-bs-toggle="tooltip">
260+
<i class="theme-switch fa-solid fa-sun fa-lg" data-mode="light"></i>
261+
<i class="theme-switch fa-solid fa-moon fa-lg" data-mode="dark"></i>
262+
<i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"></i>
263+
</button>
264+
`);
265+
</script>
251266

252267

253-
<button class="btn btn-sm pst-navbar-icon search-button search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
268+
<script>
269+
document.write(`
270+
<button class="btn btn-sm pst-navbar-icon search-button search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
254271
<i class="fa-solid fa-magnifying-glass fa-lg"></i>
255-
</button>
272+
</button>
273+
`);
274+
</script>
256275

257276
</div></div>
258277

@@ -279,18 +298,18 @@ <h1></h1>
279298
<article class="bd-article">
280299

281300
<h1>Source code for pabutools.analysis.category</h1><div class="highlight"><pre>
282-
<span></span><span class="kn">from</span> <span class="nn">collections.abc</span> <span class="kn">import</span> <span class="n">Collection</span>
301+
<span></span><span class="kn">from</span><span class="w"> </span><span class="nn">collections.abc</span><span class="w"> </span><span class="kn">import</span> <span class="n">Collection</span>
283302

284-
<span class="kn">from</span> <span class="nn">pabutools.utils</span> <span class="kn">import</span> <span class="n">Numeric</span>
303+
<span class="kn">from</span><span class="w"> </span><span class="nn">pabutools.utils</span><span class="w"> </span><span class="kn">import</span> <span class="n">Numeric</span>
285304

286-
<span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
305+
<span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>
287306

288-
<span class="kn">from</span> <span class="nn">pabutools.election</span> <span class="kn">import</span> <span class="n">AbstractApprovalProfile</span><span class="p">,</span> <span class="n">Instance</span><span class="p">,</span> <span class="n">Project</span>
307+
<span class="kn">from</span><span class="w"> </span><span class="nn">pabutools.election</span><span class="w"> </span><span class="kn">import</span> <span class="n">AbstractApprovalProfile</span><span class="p">,</span> <span class="n">Instance</span><span class="p">,</span> <span class="n">Project</span>
289308

290309

291310
<div class="viewcode-block" id="category_proportionality">
292311
<a class="viewcode-back" href="../../../reference/analysis/index.html#pabutools.analysis.category.category_proportionality">[docs]</a>
293-
<span class="k">def</span> <span class="nf">category_proportionality</span><span class="p">(</span>
312+
<span class="k">def</span><span class="w"> </span><span class="nf">category_proportionality</span><span class="p">(</span>
294313
<span class="n">instance</span><span class="p">:</span> <span class="n">Instance</span><span class="p">,</span>
295314
<span class="n">profile</span><span class="p">:</span> <span class="n">AbstractApprovalProfile</span><span class="p">,</span>
296315
<span class="n">budget_allocation</span><span class="p">:</span> <span class="n">Collection</span><span class="p">[</span><span class="n">Project</span><span class="p">],</span>
@@ -435,8 +454,8 @@ <h1>Source code for pabutools.analysis.category</h1><div class="highlight"><pre>
435454
</div>
436455

437456
<!-- Scripts loaded after <body> so the DOM is not blocked -->
438-
<script defer src="../../../_static/scripts/bootstrap.js?digest=26a4bc78f4c0ddb94549"></script>
439-
<script defer src="../../../_static/scripts/pydata-sphinx-theme.js?digest=26a4bc78f4c0ddb94549"></script>
457+
<script src="../../../_static/scripts/bootstrap.js?digest=dfe6caa3a7d634c4db9b"></script>
458+
<script src="../../../_static/scripts/pydata-sphinx-theme.js?digest=dfe6caa3a7d634c4db9b"></script>
440459

441460
<footer class="bd-footer">
442461
</footer>

0 commit comments

Comments
 (0)