Skip to content

Commit 635e53b

Browse files
committed
Update dependencies to support also Python 3.11
1 parent 655e1f3 commit 635e53b

File tree

2 files changed

+40
-27
lines changed

2 files changed

+40
-27
lines changed

docs/imagecompare.html

Lines changed: 31 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<meta http-equiv="Pragma" content="no-cache">
77
<meta http-equiv="Expires" content="-1">
88
<meta http-equiv="X-UA-Compatible" content="IE=edge">
9-
<meta content="Robot Framework 5.0 (Python 3.8.5 on win32)" name="Generator">
9+
<meta content="Robot Framework 6.0.2 (Python 3.11.0 on win32)" name="Generator">
1010
<link rel="icon" type="image/x-icon" href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKcAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAqAAAAAAAAAAAAAAAAAAAALIAAAD/AAAA4AAAANwAAADcAAAA3AAAANwAAADcAAAA3AAAANwAAADcAAAA4AAAAP8AAACxAAAAAAAAAKYAAAD/AAAAuwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/AAAA/wAAAKkAAAD6AAAAzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN8AAAD/AAAA+gAAAMMAAAAAAAAAAgAAAGsAAABrAAAAawAAAGsAAABrAAAAawAAAGsAAABrAAAADAAAAAAAAADaAAAA/wAAAPoAAADDAAAAAAAAAIsAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAANEAAAAAAAAA2gAAAP8AAAD6AAAAwwAAAAAAAAAAAAAAMgAAADIAAAAyAAAAMgAAADIAAAAyAAAAMgAAADIAAAAFAAAAAAAAANoAAAD/AAAA+gAAAMMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADaAAAA/wAAAPoAAADDAAAAAAAAADwAAAB8AAAAAAAAAGAAAABcAAAAAAAAAH8AAABKAAAAAAAAAAAAAAAAAAAA2gAAAP8AAAD6AAAAwwAAAAAAAADCAAAA/wAAACkAAADqAAAA4QAAAAAAAAD7AAAA/wAAALAAAAAGAAAAAAAAANoAAAD/AAAA+gAAAMMAAAAAAAAAIwAAAP4AAAD/AAAA/wAAAGAAAAAAAAAAAAAAAMkAAAD/AAAAigAAAAAAAADaAAAA/wAAAPoAAADDAAAAAAAAAAAAAAAIAAAAcAAAABkAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAAAAAAAAAAAA2gAAAP8AAAD7AAAAywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN4AAAD/AAAAqwAAAP8AAACvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALIAAAD/AAAAsgAAAAAAAAC5AAAA/wAAAMoAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMkAAAD/AAAAvAAAAAAAAAAAAAAAAAAAAKwAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAArQAAAAAAAAAAwAMAAIABAAAf+AAAP/wAAD/8AAAgBAAAP/wAAD/8AAA//AAAJIwAADHEAAA//AAAP/wAAB/4AACAAQAAwAMAAA==">
1111
<style media="all" type="text/css">
1212
:root {
@@ -20,19 +20,17 @@
2020
--less-important-text-color: gray;
2121
--link-color: #0000ee;
2222
}
23-
@media (prefers-color-scheme: dark) {
24-
:root {
25-
--background-color: #1c2227;
26-
--text-color: #e2e1d7;
27-
--border-color: #4e4e4e;
28-
--light-background-color: #002b36;
29-
--robot-highlight: yellow;
30-
--highlighted-color: var(--background-color);
31-
--highlighted-background-color: yellow;
32-
--less-important-text-color: #5b6a6f;
33-
--link-color: #52adff;
34-
color-scheme: dark;
35-
}
23+
[data-theme="dark"] {
24+
--background-color: #1c2227;
25+
--text-color: #e2e1d7;
26+
--border-color: #4e4e4e;
27+
--light-background-color: #002b36;
28+
--robot-highlight: yellow;
29+
--highlighted-color: var(--background-color);
30+
--highlighted-background-color: yellow;
31+
--less-important-text-color: #5b6a6f;
32+
--link-color: #52adff;
33+
color-scheme: dark;
3634
}
3735
body {
3836
background: var(--background-color);
@@ -1192,7 +1190,7 @@
11921190
jQuery.extend({highlight:function(e,t,n,r){if(e.nodeType===3){var i=e.data.match(t);if(i){var s=document.createElement(n||"span");s.className=r||"highlight";var o=e.splitText(i.index);o.splitText(i[0].length);var u=o.cloneNode(true);s.appendChild(u);o.parentNode.replaceChild(s,o);return 1}}else if(e.nodeType===1&&e.childNodes&&!/(script|style)/i.test(e.tagName)&&!(e.tagName===n.toUpperCase()&&e.className===r)){for(var a=0;a<e.childNodes.length;a++){a+=jQuery.highlight(e.childNodes[a],t,n,r)}}return 0}});jQuery.fn.unhighlight=function(e){var t={className:"highlight",element:"span"};jQuery.extend(t,e);return this.find(t.element+"."+t.className).each(function(){var e=this.parentNode;e.replaceChild(this.firstChild,this);e.normalize()}).end()};jQuery.fn.highlight=function(e,t){var n={className:"highlight",element:"span",caseSensitive:false,wordsOnly:false};jQuery.extend(n,t);if(e.constructor===String){e=[e]}e=jQuery.grep(e,function(e,t){return e!=""});e=jQuery.map(e,function(e,t){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")});if(e.length==0){return this}var r=n.caseSensitive?"":"i";var i="("+e.join("|")+")";if(n.wordsOnly){i="\\b"+i+"\\b"}var s=new RegExp(i,r);return this.each(function(){jQuery.highlight(this,s,n.element,n.className)})}
11931191
</script>
11941192
<script type="text/javascript">
1195-
libdoc = {"name": "ImageCompare", "doc": "<p>Documentation for library <code>ImageCompare</code>.</p>", "version": "0.1.0", "generated": "2022-05-10 09:40:37", "type": "LIBRARY", "scope": "TEST", "docFormat": "HTML", "source": "C:\\workspace\\robotframework-imagecompare\\ImageCompare\\__init__.py", "lineno": 93, "tags": [], "inits": [], "keywords": [{"name": "Compare Images", "args": [{"name": "reference_image", "types": [], "typedocs": {}, "defaultValue": null, "kind": "POSITIONAL_OR_NAMED", "required": true, "repr": "reference_image"}, {"name": "test_image", "types": [], "typedocs": {}, "defaultValue": null, "kind": "POSITIONAL_OR_NAMED", "required": true, "repr": "test_image"}, {"name": "kwargs", "types": [], "typedocs": {}, "defaultValue": null, "kind": "VAR_NAMED", "required": false, "repr": "**kwargs"}], "doc": "<p>Compares the documents/images <code>reference_image</code> and <code>test_image</code>.</p>\n<p><code>**kwargs</code> can be used to add settings for <code>placeholder_file</code></p>\n<p>Result is passed if no visual differences are detected.</p>\n<p><code>reference_image</code> and <code>test_image</code> may be image files, e.g. png, jpg, or tiff.</p>\n<p>Examples:</p>\n<table border=\"1\">\n<tr>\n<th>Keyword</th>\n<th>reference_image</th>\n<th>test_image</th>\n<th>**kwargs</th>\n<th>comment</th>\n</tr>\n<tr>\n<td>Compare Images</td>\n<td>reference.png</td>\n<td>candidate.png</td>\n<td></td>\n<td>#Performs a pixel comparison of both files</td>\n</tr>\n<tr>\n<td>Compare Images</td>\n<td>reference.png (not existing)</td>\n<td>candidate.png</td>\n<td></td>\n<td>#Will always return passed and save the candidate.pdf as reference.pdf</td>\n</tr>\n<tr>\n<td>Compare Images</td>\n<td>reference.png</td>\n<td>candidate.png</td>\n<td>placeholder_file=mask.json</td>\n<td>#Performs a pixel comparison of both files and excludes some areas defined in mask.json</td>\n</tr>\n<tr>\n<td>Compare Images</td>\n<td>reference.pdf</td>\n<td>candidate.pdf</td>\n<td>contains_barcodes=${true}</td>\n<td>#Identified barcodes in documents and excludes those areas from visual comparison. The barcode data will be checked instead</td>\n</tr>\n</table>", "shortdoc": "Compares the documents/images ``reference_image`` and ``test_image``.", "tags": [], "source": "C:\\workspace\\robotframework-imagecompare\\ImageCompare\\imagecompare.py", "lineno": 129}], "dataTypes": {"enums": [], "typedDicts": []}, "typedocs": []}
1193+
libdoc = {"specversion": 1, "name": "ImageCompare", "doc": "<p>Documentation for library <code>ImageCompare</code>.</p>", "version": "0.2.0", "generated": "2023-03-28T11:01:53+00:00", "type": "LIBRARY", "scope": "TEST", "docFormat": "HTML", "source": "C:\\workspace\\robotframework-imagecompare\\ImageCompare\\__init__.py", "lineno": 95, "tags": [], "inits": [], "keywords": [{"name": "Compare Images", "args": [{"name": "reference_image", "types": [], "typedocs": {}, "defaultValue": null, "kind": "POSITIONAL_OR_NAMED", "required": true, "repr": "reference_image"}, {"name": "test_image", "types": [], "typedocs": {}, "defaultValue": null, "kind": "POSITIONAL_OR_NAMED", "required": true, "repr": "test_image"}, {"name": "kwargs", "types": [], "typedocs": {}, "defaultValue": null, "kind": "VAR_NAMED", "required": false, "repr": "**kwargs"}], "doc": "<p>Compares the documents/images <code>reference_image</code> and <code>test_image</code>.</p>\n<p><code>**kwargs</code> can be used to add settings for <code>placeholder_file</code></p>\n<p>Result is passed if no visual differences are detected.</p>\n<p><code>reference_image</code> and <code>test_image</code> may be image files, e.g. png, jpg, or tiff.</p>\n<p>Examples:</p>\n<table border=\"1\">\n<tr>\n<th>Keyword</th>\n<th>reference_image</th>\n<th>test_image</th>\n<th>**kwargs</th>\n<th>comment</th>\n</tr>\n<tr>\n<td>Compare Images</td>\n<td>reference.png</td>\n<td>candidate.png</td>\n<td></td>\n<td>#Performs a pixel comparison of both files</td>\n</tr>\n<tr>\n<td>Compare Images</td>\n<td>reference.png (not existing)</td>\n<td>candidate.png</td>\n<td></td>\n<td>#Will always return passed and save the candidate.pdf as reference.pdf</td>\n</tr>\n<tr>\n<td>Compare Images</td>\n<td>reference.png</td>\n<td>candidate.png</td>\n<td>placeholder_file=mask.json</td>\n<td>#Performs a pixel comparison of both files and excludes some areas defined in mask.json</td>\n</tr>\n<tr>\n<td>Compare Images</td>\n<td>reference.pdf</td>\n<td>candidate.pdf</td>\n<td>contains_barcodes=${true}</td>\n<td>#Identified barcodes in documents and excludes those areas from visual comparison. The barcode data will be checked instead</td>\n</tr>\n</table>", "shortdoc": "Compares the documents/images ``reference_image`` and ``test_image``.", "tags": [], "source": "C:\\workspace\\robotframework-imagecompare\\ImageCompare\\imagecompare.py", "lineno": 118}], "dataTypes": {"enums": [], "typedDicts": []}, "typedocs": []}
11961194
</script>
11971195
<title></title>
11981196
</head>
@@ -1215,7 +1213,7 @@ <h1>Opening library documentation failed</h1>
12151213
}, false);
12161214
window.addEventListener("hashchange", function() {
12171215
if (window.location.hash.indexOf('#type-') == 0) {
1218-
const hash = '#' + decodeURI(window.location.hash.slice(6));
1216+
const hash = '#type-modal-' + decodeURI(window.location.hash.slice(6));
12191217
const typeDoc = document.querySelector(".data-types").querySelector(hash);
12201218
if (typeDoc) {
12211219
showModal(typeDoc);
@@ -1230,6 +1228,7 @@ <h1>Opening library documentation failed</h1>
12301228
parseTemplates();
12311229
document.title = libdoc.name;
12321230
storage.init('libdoc');
1231+
setTheme();
12331232
renderTemplate('base', libdoc, $('body'));
12341233
if (libdoc.inits.length) {
12351234
libdoc.typedocs.map(function(type) {
@@ -1263,6 +1262,20 @@ <h1>Opening library documentation failed</h1>
12631262
createModal();
12641263
});
12651264

1265+
function setTheme(theme) {
1266+
document.documentElement.setAttribute('data-theme', theme || getTheme());
1267+
}
1268+
1269+
function getTheme() {
1270+
if (libdoc['theme']) {
1271+
return libdoc['theme'];
1272+
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
1273+
return 'dark';
1274+
} else {
1275+
return 'light;'
1276+
}
1277+
}
1278+
12661279
function parseTemplates() {
12671280
$('script[type="text/x-jquery-tmpl"]').map(function (idx, elem) {
12681281
$.template(elem.id, elem.text);
@@ -1736,7 +1749,7 @@ <h4>Documentation</h4>
17361749
<span class="arg-type">
17371750
{{each types}}
17381751
{{if $value in $data.typedocs}}
1739-
&lt;<a style="cursor: pointer;" class="type" title="Click to show type information" onclick="showModal(${$data.typedocs[$value]})">${$value}</a>&gt;
1752+
&lt;<a style="cursor: pointer;" class="type" title="Click to show type information" onclick="showModal(document.querySelector('#type-modal-${$data.typedocs[$value]}'))">${$value}</a>&gt;
17401753
{{else}}
17411754
&lt;<span class="type">${$value}</span>&gt;
17421755
{{/if}}
@@ -1759,7 +1772,7 @@ <h2 id="Data types">Data types</h2>
17591772
</script>
17601773

17611774
<script type="text/x-jquery-tmpl" id="data-type-template">
1762-
<div class="data-type-container {{if hidden}}no-{{/if}}match" id="${name}">
1775+
<div class="data-type-container {{if hidden}}no-{{/if}}match" id="type-modal-${name}">
17631776
<div class="data-type-name">
17641777
<h2>${name} (${type})</h2>
17651778
</div>

pyproject.toml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "robotframework-imagecompare"
3-
version = "0.1.2"
3+
version = "0.2.0"
44
description = "A Robot Framework Library for image comparisons"
55
authors = ["Many Kasiriha <[email protected]>"]
66
license = "Apache 2.0"
@@ -11,17 +11,17 @@ readme = "./docs/README.md"
1111
homepage = "https://github.com/manykarim/robotframework-imagecompare"
1212

1313
[tool.poetry.dependencies]
14-
python = "^3.8"
15-
opencv-python-headless = "^4.5.5"
14+
python = ">=3.8,<3.12"
15+
opencv-python-headless = "*"
1616
robotframework = ">=4"
17-
numpy = "^1.22.3"
18-
scikit-image = "^0.19.2"
19-
imutils = "^0.5.4"
17+
numpy = "*"
18+
scikit-image = "*"
19+
imutils = "*"
2020

2121
[tool.poetry.dev-dependencies]
22-
pytest = "^7.1.2"
23-
invoke = "^1.7.0"
24-
coverage = "^6.3.2"
22+
pytest = "*"
23+
invoke = "*"
24+
coverage = "*"
2525

2626
[build-system]
2727
requires = ["poetry-core>=1.0.0"]

0 commit comments

Comments
 (0)