From 1bffc5cc7b1100d758bcd074a535cb2d15b76e40 Mon Sep 17 00:00:00 2001 From: Matěj Cepl Date: Thu, 21 Mar 2024 15:51:44 +0100 Subject: That's what I have. https://lists.sr.ht/~sircmpwn/sr.ht-discuss/%3CCZTSEI98538T.2UC3NBY2WBZ5G@cepl.eu%3E#%3CCZZIGGVI12JX.30F0UBNWN7KOJ@cepl.eu%3E --- git-bug-8-ls.json | 710 +++++++++++++++++ gitlab2todosrht.py | 47 ++ is.json | 14 + issues.json | 2177 ++++++++++++++++++++++++++++++++++++++++++++++++++++ post-commit | 2 +- 5 files changed, 2949 insertions(+), 1 deletion(-) create mode 100644 git-bug-8-ls.json create mode 100755 gitlab2todosrht.py create mode 100644 is.json create mode 100644 issues.json mode change 100644 => 100755 post-commit diff --git a/git-bug-8-ls.json b/git-bug-8-ls.json new file mode 100644 index 0000000..4ef7b0e --- /dev/null +++ b/git-bug-8-ls.json @@ -0,0 +1,710 @@ +[ + { + "id": "0849ffb82e8c5b178c95d28ab43d3ce13dc682caf1eb945082e04e5dbb1a1e8c", + "human_id": "0849ffb", + "create_time": { + "timestamp": 1481900047, + "time": "2016-12-16T15:54:07+01:00", + "lamport": 2 + }, + "edit_time": { + "timestamp": 1481900051, + "time": "2016-12-16T15:54:11+01:00", + "lamport": 3 + }, + "status": "closed", + "labels": null, + "title": "change the project’s website to https://fedorahosted.org/json_diff/", + "actors": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "participants": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "author": { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + "comments": 2, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "1", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/1", + "origin": "gitlab" + } + }, + { + "id": "e783b2d59680d65d1b8915dc5cc3d802ae6c853fd7d611ec875bd000311f7592", + "human_id": "e783b2d", + "create_time": { + "timestamp": 1481900058, + "time": "2016-12-16T15:54:18+01:00", + "lamport": 3 + }, + "edit_time": { + "timestamp": 1481900062, + "time": "2016-12-16T15:54:22+01:00", + "lamport": 5 + }, + "status": "closed", + "labels": null, + "title": "encoding again", + "actors": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "participants": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "author": { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + "comments": 2, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "2", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/2", + "origin": "gitlab" + } + }, + { + "id": "bb9a079fa1bc65c661c81be0557d1c8b7cdd682ed1b5488a6417f41c3167ca33", + "human_id": "bb9a079", + "create_time": { + "timestamp": 1481900064, + "time": "2016-12-16T15:54:24+01:00", + "lamport": 4 + }, + "edit_time": { + "timestamp": 1481900066, + "time": "2016-12-16T15:54:26+01:00", + "lamport": 7 + }, + "status": "open", + "labels": null, + "title": "test_large_recursive_file files", + "actors": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "participants": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "author": { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + "comments": 2, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "3", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/3", + "origin": "gitlab" + } + }, + { + "id": "8be0959792e401056bb622642785247b323ac4da31e19039866e8c81beb2ef51", + "human_id": "8be0959", + "create_time": { + "timestamp": 1481900068, + "time": "2016-12-16T15:54:28+01:00", + "lamport": 5 + }, + "edit_time": { + "timestamp": 1481900071, + "time": "2016-12-16T15:54:31+01:00", + "lamport": 9 + }, + "status": "closed", + "labels": null, + "title": "Add output option", + "actors": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "participants": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "author": { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + "comments": 2, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "4", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/4", + "origin": "gitlab" + } + }, + { + "id": "b82d29fd115a2171311e3ca13059a15737185b3ee6b4f4020fb343a7b6156ae0", + "human_id": "b82d29f", + "create_time": { + "timestamp": 1484311620, + "time": "2017-01-13T13:47:00+01:00", + "lamport": 6 + }, + "edit_time": { + "timestamp": 1484311623, + "time": "2017-01-13T13:47:03+01:00", + "lamport": 11 + }, + "status": "closed", + "labels": null, + "title": "change the project’s website to https://fedorahosted.org/json_diff/", + "actors": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "participants": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "author": { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + "comments": 2, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "5", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/5", + "origin": "gitlab" + } + }, + { + "id": "fdfe888713acde0bd90eb5034a694c5b3c90f70f7e9ba15f6b08057e98199ec4", + "human_id": "fdfe888", + "create_time": { + "timestamp": 1484311625, + "time": "2017-01-13T13:47:05+01:00", + "lamport": 7 + }, + "edit_time": { + "timestamp": 1484311628, + "time": "2017-01-13T13:47:08+01:00", + "lamport": 13 + }, + "status": "closed", + "labels": null, + "title": "encoding again", + "actors": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "participants": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "author": { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + "comments": 2, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "6", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/6", + "origin": "gitlab" + } + }, + { + "id": "0d4297fed7364aab8e486c62cec9c497fdfad40bc0903a9d5d29cec31723f715", + "human_id": "0d4297f", + "create_time": { + "timestamp": 1484311630, + "time": "2017-01-13T13:47:10+01:00", + "lamport": 8 + }, + "edit_time": { + "timestamp": 1484311847, + "time": "2017-01-13T13:50:47+01:00", + "lamport": 15 + }, + "status": "closed", + "labels": null, + "title": "test_large_recursive_file files", + "actors": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "participants": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "author": { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + "comments": 3, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "7", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/7", + "origin": "gitlab" + } + }, + { + "id": "eb946ab3f032e08822f3ce93f03d7d1521e8c10a11b85803c236eb70b7e17304", + "human_id": "eb946ab", + "create_time": { + "timestamp": 1484311634, + "time": "2017-01-13T13:47:14+01:00", + "lamport": 9 + }, + "edit_time": { + "timestamp": 1484311637, + "time": "2017-01-13T13:47:17+01:00", + "lamport": 17 + }, + "status": "closed", + "labels": null, + "title": "Add output option", + "actors": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "participants": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "author": { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + "comments": 2, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "8", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/8", + "origin": "gitlab" + } + }, + { + "id": "d383731bc7cfdfc8051cb48029c248f25cf85d8a293191ebbeae8fc4c22be02f", + "human_id": "d383731", + "create_time": { + "timestamp": 1549418260, + "time": "2019-02-06T02:57:40+01:00", + "lamport": 10 + }, + "edit_time": { + "timestamp": 1584641654, + "time": "2020-03-19T19:14:14+01:00", + "lamport": 21 + }, + "status": "open", + "labels": [ + "needinfo" + ], + "title": "JSON is not required to be a dictionary", + "actors": [ + { + "id": "3f60136878ff1b7441701a219205f8a988485a189dffc5fe9ac1c941565c5349", + "human_id": "3f60136", + "name": "Elliott Sales de Andrade", + "login": "QuLogic" + }, + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + { + "id": "357b1a742283a30267d56792b0cd1ef7d54fa7670e45831d611bf33e4dc21204", + "human_id": "357b1a7", + "name": "Stuart Axon", + "login": "stuaxo" + } + ], + "participants": [ + { + "id": "3f60136878ff1b7441701a219205f8a988485a189dffc5fe9ac1c941565c5349", + "human_id": "3f60136", + "name": "Elliott Sales de Andrade", + "login": "QuLogic" + }, + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + { + "id": "357b1a742283a30267d56792b0cd1ef7d54fa7670e45831d611bf33e4dc21204", + "human_id": "357b1a7", + "name": "Stuart Axon", + "login": "stuaxo" + } + ], + "author": { + "id": "3f60136878ff1b7441701a219205f8a988485a189dffc5fe9ac1c941565c5349", + "human_id": "3f60136", + "name": "Elliott Sales de Andrade", + "login": "QuLogic" + }, + "comments": 4, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "9", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/9", + "origin": "gitlab" + } + }, + { + "id": "4f458d1ae89afd87c578922d65ef11ce0e856c3dbca95909838fcfb73e63c45f", + "human_id": "4f458d1", + "create_time": { + "timestamp": 1566764440, + "time": "2019-08-25T22:20:40+02:00", + "lamport": 11 + }, + "edit_time": { + "timestamp": 1621415234, + "time": "2021-05-19T11:07:14+02:00", + "lamport": 23 + }, + "status": "open", + "labels": null, + "title": "HTMLFormatter doesn’t keep order of elements", + "actors": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + { + "id": "d9d669ba81c9c201221a93ce910ed1da2736f6edae3da394635862e37d0343a2", + "human_id": "d9d669b", + "name": "Francois", + "login": "Chartier" + } + ], + "participants": [ + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + { + "id": "d9d669ba81c9c201221a93ce910ed1da2736f6edae3da394635862e37d0343a2", + "human_id": "d9d669b", + "name": "Francois", + "login": "Chartier" + } + ], + "author": { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + }, + "comments": 2, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "10", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/10", + "origin": "gitlab" + } + }, + { + "id": "b79c98935ca209bbbadb9dc0e8695290447d48e59bbc4d4ebf39b6dfd2132979", + "human_id": "b79c989", + "create_time": { + "timestamp": 1570374539, + "time": "2019-10-06T17:08:59+02:00", + "lamport": 12 + }, + "edit_time": { + "timestamp": 1570374539, + "time": "2019-10-06T17:08:59+02:00", + "lamport": 24 + }, + "status": "open", + "labels": null, + "title": "Please describe output formats in readme", + "actors": [ + { + "id": "1b266d7523700b69f96d81b92384420061bd722c830826068fdf71dbaf9cdcc5", + "human_id": "1b266d7", + "name": "Hartmut Goebel", + "login": "htgoebel" + } + ], + "participants": [ + { + "id": "1b266d7523700b69f96d81b92384420061bd722c830826068fdf71dbaf9cdcc5", + "human_id": "1b266d7", + "name": "Hartmut Goebel", + "login": "htgoebel" + } + ], + "author": { + "id": "1b266d7523700b69f96d81b92384420061bd722c830826068fdf71dbaf9cdcc5", + "human_id": "1b266d7", + "name": "Hartmut Goebel", + "login": "htgoebel" + }, + "comments": 1, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "11", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/11", + "origin": "gitlab" + } + }, + { + "id": "ae162b00960ef30fdb4e5f57729fbae87375bf2b12a29e33034d47611330ed93", + "human_id": "ae162b0", + "create_time": { + "timestamp": 1588786515, + "time": "2020-05-06T19:35:15+02:00", + "lamport": 13 + }, + "edit_time": { + "timestamp": 1588786797, + "time": "2020-05-06T19:39:57+02:00", + "lamport": 26 + }, + "status": "open", + "labels": null, + "title": "pip install errors on Linux container - the file open call in setup.py should explicitly specify encoding.", + "actors": [ + { + "id": "d1130df259ba39af3a914c6e39cc5b6ed044d8de7e07c8322cf8ccd128124ef4", + "human_id": "d1130df", + "name": "Vik Nag", + "login": "trivicks" + } + ], + "participants": [ + { + "id": "d1130df259ba39af3a914c6e39cc5b6ed044d8de7e07c8322cf8ccd128124ef4", + "human_id": "d1130df", + "name": "Vik Nag", + "login": "trivicks" + } + ], + "author": { + "id": "d1130df259ba39af3a914c6e39cc5b6ed044d8de7e07c8322cf8ccd128124ef4", + "human_id": "d1130df", + "name": "Vik Nag", + "login": "trivicks" + }, + "comments": 1, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "12", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/12", + "origin": "gitlab" + } + }, + { + "id": "b75084d3bb5e08bea9111105bb3b340eadb332835b88efdcb38dc1439f9b5b0d", + "human_id": "b75084d", + "create_time": { + "timestamp": 1621415844, + "time": "2021-05-19T11:17:24+02:00", + "lamport": 14 + }, + "edit_time": { + "timestamp": 1621607143, + "time": "2021-05-21T16:25:43+02:00", + "lamport": 28 + }, + "status": "open", + "labels": null, + "title": "Recursion depth error when processing null element with main", + "actors": [ + { + "id": "d9d669ba81c9c201221a93ce910ed1da2736f6edae3da394635862e37d0343a2", + "human_id": "d9d669b", + "name": "Francois", + "login": "Chartier" + }, + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "participants": [ + { + "id": "d9d669ba81c9c201221a93ce910ed1da2736f6edae3da394635862e37d0343a2", + "human_id": "d9d669b", + "name": "Francois", + "login": "Chartier" + }, + { + "id": "558ebf49822ce0cb261af2b4c5c59427b91b66ef6d23472b915ff0737e35da84", + "human_id": "558ebf4", + "name": "Matěj Cepl", + "login": "mcepl" + } + ], + "author": { + "id": "d9d669ba81c9c201221a93ce910ed1da2736f6edae3da394635862e37d0343a2", + "human_id": "d9d669b", + "name": "Francois", + "login": "Chartier" + }, + "comments": 2, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "13", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/13", + "origin": "gitlab" + } + }, + { + "id": "60b9c4e317c0761f4408836ef14d0eca44820d32efba50eaf9c34b1d826f74b1", + "human_id": "60b9c4e", + "create_time": { + "timestamp": 1668180754, + "time": "2022-11-11T16:32:34+01:00", + "lamport": 15 + }, + "edit_time": { + "timestamp": 1668182551, + "time": "2022-11-11T17:02:31+01:00", + "lamport": 30 + }, + "status": "open", + "labels": null, + "title": "cannot process UTF-8 files ('charmap' codec can't decode byte 0x81 in position 2071: character maps to \u003cundefined\u003e)", + "actors": [ + { + "id": "a255ca4929bd3e8291ecae16f90e12224ece000d82f537a8db7039894419178f", + "human_id": "a255ca4", + "name": "Tomáš Hudziec", + "login": "freetomik" + } + ], + "participants": [ + { + "id": "a255ca4929bd3e8291ecae16f90e12224ece000d82f537a8db7039894419178f", + "human_id": "a255ca4", + "name": "Tomáš Hudziec", + "login": "freetomik" + } + ], + "author": { + "id": "a255ca4929bd3e8291ecae16f90e12224ece000d82f537a8db7039894419178f", + "human_id": "a255ca4", + "name": "Tomáš Hudziec", + "login": "freetomik" + }, + "comments": 3, + "metadata": { + "gitlab-base-url": "https://gitlab.com/", + "gitlab-id": "14", + "gitlab-project-id": "2174499", + "gitlab-url": "https://gitlab.com/mcepl/json_diff/-/issues/14", + "origin": "gitlab" + } + } +] diff --git a/gitlab2todosrht.py b/gitlab2todosrht.py new file mode 100755 index 0000000..8a90160 --- /dev/null +++ b/gitlab2todosrht.py @@ -0,0 +1,47 @@ +#!/usr/bin/python3 + +import json +import os.path +import pprint +import smtplib +import sys + +if len(sys.argv) < 2: + print(f"sys.argv: {sys.argv}") + sys.exit(1) + +out = {} + +INP = sys.argv[1] +if not os.path.exists(INP): + sys.exit(2) + +with open(INP) as inf: + input = sorted(json.load(inf), key=lambda item: item['iid']) + +for issue in input: + id = issue['iid'] + out[id] = { + 'title': issue['title'], + 'desc': issue['description'], + 'status': issue['state'], + 'comments': [] + } + for note in issue['notes']: + out[id]['comments'].append({ + 'text': note['note'] + }) + +fromaddr="mcepl@cepl.eu" +toaddrs=('~mcepl/json_diff@todo.sr.ht',) + +with smtplib.SMTP('redcrew.org', port=587) as smtp: + smtp.starttls() + smtp.login(fromaddr, "]fJTTIuHF7zunkNd") + for key, iss in out.items(): + msg = ("From: %s\r\nTo: %s\r\n\r\n" + % (fromaddr, ", ".join(toaddrs))) + if iss['desc'] is not None: + msg += iss['desc'] + + smtp.sendmail("mcepl@cepl.eu", "~mcepl/json_diff@todo.sr.ht",msg) diff --git a/is.json b/is.json new file mode 100644 index 0000000..6b70618 --- /dev/null +++ b/is.json @@ -0,0 +1,14 @@ +{"title":"Add output option","author_id":53909,"project_id":2174499,"created_at":"2017-01-13T12:47:14.323Z","updated_at":"2018-06-25T03:50:17.723Z","description":"json_diff -o filename may be helpful in some QA scripts.","iid":8,"updated_by_id":null,"weight":null,"confidential":false,"due_date":null,"lock_version":1,"time_estimate":0,"relative_position":1073742323,"last_edited_at":null,"last_edited_by_id":null,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"closed","events":[],"timelogs":[],"notes":[{"note":"Fixed in [2229c24]","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:47:17.702Z","updated_at":"2017-01-13T12:47:17.702Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"d9679cd0ae4a6f98d37882270f6bbed9aad84e67","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:47:17.702Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"closed","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:47:15.780Z","updated_at":"2017-01-13T12:47:15.780Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"d9679cd0ae4a6f98d37882270f6bbed9aad84e67","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:47:15.780Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]}],"label_links":[{"target_type":"Issue","created_at":"2017-01-13T12:47:14.351Z","updated_at":"2017-01-13T12:47:14.351Z","label":{"title":"enhancement","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:27.498Z","updated_at":"2016-12-16T14:54:27.498Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}},{"target_type":"Issue","created_at":"2017-01-13T12:47:14.364Z","updated_at":"2017-01-13T12:47:14.364Z","label":{"title":"general","color":"#428BCA","project_id":2174499,"created_at":"2017-01-13T12:47:00.101Z","updated_at":"2017-01-13T12:47:00.101Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}},{"target_type":"Issue","created_at":"2017-01-13T12:47:14.371Z","updated_at":"2017-01-13T12:47:14.371Z","label":{"title":"enhancement","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:27.498Z","updated_at":"2016-12-16T14:54:27.498Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}}],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"test_large_recursive_file files","author_id":53909,"project_id":2174499,"created_at":"2017-01-13T12:47:10.429Z","updated_at":"2018-06-25T03:50:17.781Z","description":"`python setup.py test` fails","iid":7,"updated_by_id":null,"weight":null,"confidential":false,"due_date":null,"lock_version":1,"time_estimate":0,"relative_position":1073742823,"last_edited_at":null,"last_edited_by_id":null,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"closed","events":[],"timelogs":[],"notes":[{"note":"duplicate of #3","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:50:47.975Z","updated_at":"2017-01-13T12:50:47.975Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":"","st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"ddc443df1120e98f41ccde4df3407174d1e738fd","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:50:47.975Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"log of the testing run","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:47:12.648Z","updated_at":"2017-01-13T12:47:12.648Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"ddc443df1120e98f41ccde4df3407174d1e738fd","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:47:12.648Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"closed","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:50:47.984Z","updated_at":"2017-01-13T12:50:47.984Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"ddc443df1120e98f41ccde4df3407174d1e738fd","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:50:47.984Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]}],"label_links":[{"target_type":"Issue","created_at":"2017-01-13T12:47:10.470Z","updated_at":"2017-01-13T12:47:10.470Z","label":{"title":"defect","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:06.516Z","updated_at":"2016-12-16T14:54:06.516Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}},{"target_type":"Issue","created_at":"2017-01-13T12:47:10.488Z","updated_at":"2017-01-13T12:47:10.488Z","label":{"title":"general","color":"#428BCA","project_id":2174499,"created_at":"2017-01-13T12:47:00.101Z","updated_at":"2017-01-13T12:47:00.101Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}},{"target_type":"Issue","created_at":"2017-01-13T12:47:10.495Z","updated_at":"2017-01-13T12:47:10.495Z","label":{"title":"defect","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:06.516Z","updated_at":"2016-12-16T14:54:06.516Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}}],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"encoding again","author_id":53909,"project_id":2174499,"created_at":"2017-01-13T12:47:05.381Z","updated_at":"2018-06-25T03:50:17.818Z","description":"mitmanek:devConf-xcal (master) $ json_diff csv_data.json json_data.json \n Traceback (most recent call last):\n File \"/usr/bin/json_diff\", line 369, in \u003cmodule\u003e\n main_res = main(sys.argv)\n File \"/usr/bin/json_diff\", line 361, in main\n print(outs.encode(locale.getpreferredencoding(do_setlocale=False)))\n UnicodeEncodeError: 'ascii' codec can't encode character u'\\u2013' in position 164: ordinal not in range(128)\n mitmanek:devConf-xcal (master) $","iid":6,"updated_by_id":null,"weight":null,"confidential":false,"due_date":null,"lock_version":1,"time_estimate":0,"relative_position":1073743323,"last_edited_at":null,"last_edited_by_id":null,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"closed","events":[],"timelogs":[],"notes":[{"note":"Fixed in [e98e114]","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:47:08.684Z","updated_at":"2017-01-13T12:47:08.684Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"4280b84c4551c164cc665197da40380241b7e915","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:47:08.684Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"closed","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:47:06.718Z","updated_at":"2017-01-13T12:47:06.718Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"4280b84c4551c164cc665197da40380241b7e915","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:47:06.718Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]}],"label_links":[{"target_type":"Issue","created_at":"2017-01-13T12:47:05.422Z","updated_at":"2017-01-13T12:47:05.422Z","label":{"title":"defect","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:06.516Z","updated_at":"2016-12-16T14:54:06.516Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}},{"target_type":"Issue","created_at":"2017-01-13T12:47:05.430Z","updated_at":"2017-01-13T12:47:05.430Z","label":{"title":"general","color":"#428BCA","project_id":2174499,"created_at":"2017-01-13T12:47:00.101Z","updated_at":"2017-01-13T12:47:00.101Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}},{"target_type":"Issue","created_at":"2017-01-13T12:47:05.436Z","updated_at":"2017-01-13T12:47:05.436Z","label":{"title":"defect","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:06.516Z","updated_at":"2016-12-16T14:54:06.516Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}}],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"change the project’s website to https://fedorahosted.org/json_diff/","author_id":53909,"project_id":2174499,"created_at":"2017-01-13T12:47:00.482Z","updated_at":"2018-06-25T03:50:17.869Z","description":"","iid":5,"updated_by_id":null,"weight":null,"confidential":false,"due_date":null,"lock_version":1,"time_estimate":0,"relative_position":1073743823,"last_edited_at":null,"last_edited_by_id":null,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"closed","events":[],"timelogs":[],"notes":[{"note":"Fixed in [ddeec22]","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:47:03.895Z","updated_at":"2017-01-13T12:47:03.895Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"77985eafecf7ada2ed64e4738a25356b5fe1ce93","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:47:03.895Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"closed","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:47:01.930Z","updated_at":"2017-01-13T12:47:01.930Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"77985eafecf7ada2ed64e4738a25356b5fe1ce93","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:47:01.930Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]}],"label_links":[{"target_type":"Issue","created_at":"2017-01-13T12:47:00.536Z","updated_at":"2017-01-13T12:47:00.536Z","label":{"title":"defect","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:06.516Z","updated_at":"2016-12-16T14:54:06.516Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}},{"target_type":"Issue","created_at":"2017-01-13T12:47:00.543Z","updated_at":"2017-01-13T12:47:00.543Z","label":{"title":"general","color":"#428BCA","project_id":2174499,"created_at":"2017-01-13T12:47:00.101Z","updated_at":"2017-01-13T12:47:00.101Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}},{"target_type":"Issue","created_at":"2017-01-13T12:47:00.549Z","updated_at":"2017-01-13T12:47:00.549Z","label":{"title":"defect","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:06.516Z","updated_at":"2016-12-16T14:54:06.516Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}}],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"Add output option","author_id":53909,"project_id":2174499,"created_at":"2016-12-16T14:54:28.122Z","updated_at":"2018-06-25T03:50:17.923Z","description":"json_diff -o filename may be helpful in some QA scripts.","iid":4,"updated_by_id":53909,"weight":null,"confidential":false,"due_date":null,"lock_version":1,"time_estimate":0,"relative_position":1073744323,"last_edited_at":null,"last_edited_by_id":null,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"closed","events":[],"timelogs":[],"notes":[{"note":"Fixed in [2229c24]","noteable_type":"Issue","author_id":53909,"created_at":"2016-12-16T14:54:31.000Z","updated_at":"2016-12-16T14:54:31.000Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"faa7e62a3f8bc8d445a7d88871c9d1ca9a239738","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2016-12-16T14:54:31.000Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"closed","noteable_type":"Issue","author_id":53909,"created_at":"2016-12-16T14:54:29.305Z","updated_at":"2016-12-16T14:54:29.305Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"faa7e62a3f8bc8d445a7d88871c9d1ca9a239738","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2016-12-16T14:54:29.305Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]}],"label_links":[{"target_type":"Issue","created_at":"2016-12-16T14:54:28.186Z","updated_at":"2016-12-16T14:54:28.186Z","label":{"title":"enhancement","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:27.498Z","updated_at":"2016-12-16T14:54:27.498Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}},{"target_type":"Issue","created_at":"2016-12-16T14:54:28.220Z","updated_at":"2016-12-16T14:54:28.220Z","label":{"title":"enhancement","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:27.498Z","updated_at":"2016-12-16T14:54:27.498Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}}],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"encoding again","author_id":53909,"project_id":2174499,"created_at":"2016-12-16T14:54:18.427Z","updated_at":"2018-06-25T03:50:17.970Z","description":"mitmanek:devConf-xcal (master) $ json_diff csv_data.json json_data.json \n Traceback (most recent call last):\n File \"/usr/bin/json_diff\", line 369, in \u003cmodule\u003e\n main_res = main(sys.argv)\n File \"/usr/bin/json_diff\", line 361, in main\n print(outs.encode(locale.getpreferredencoding(do_setlocale=False)))\n UnicodeEncodeError: 'ascii' codec can't encode character u'\\u2013' in position 164: ordinal not in range(128)\n mitmanek:devConf-xcal (master) $","iid":2,"updated_by_id":53909,"weight":null,"confidential":false,"due_date":null,"lock_version":1,"time_estimate":0,"relative_position":1073744823,"last_edited_at":null,"last_edited_by_id":null,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"closed","events":[],"timelogs":[],"notes":[{"note":"Fixed in [e98e114]","noteable_type":"Issue","author_id":53909,"created_at":"2016-12-16T14:54:22.795Z","updated_at":"2016-12-16T14:54:22.795Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"e313009c3bcc4608874aac01a1c11f2d8e2c1913","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2016-12-16T14:54:22.795Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"closed","noteable_type":"Issue","author_id":53909,"created_at":"2016-12-16T14:54:20.000Z","updated_at":"2016-12-16T14:54:20.000Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"e313009c3bcc4608874aac01a1c11f2d8e2c1913","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2016-12-16T14:54:20.000Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]}],"label_links":[{"target_type":"Issue","created_at":"2016-12-16T14:54:18.493Z","updated_at":"2016-12-16T14:54:18.493Z","label":{"title":"defect","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:06.516Z","updated_at":"2016-12-16T14:54:06.516Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}},{"target_type":"Issue","created_at":"2016-12-16T14:54:18.519Z","updated_at":"2016-12-16T14:54:18.519Z","label":{"title":"defect","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:06.516Z","updated_at":"2016-12-16T14:54:06.516Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}}],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"change the project’s website to https://fedorahosted.org/json_diff/","author_id":53909,"project_id":2174499,"created_at":"2016-12-16T14:54:07.292Z","updated_at":"2018-06-25T03:50:18.011Z","description":null,"iid":1,"updated_by_id":53909,"weight":null,"confidential":false,"due_date":null,"lock_version":1,"time_estimate":0,"relative_position":1073745323,"last_edited_at":null,"last_edited_by_id":null,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"closed","events":[],"timelogs":[],"notes":[{"note":"Fixed in [ddeec22]","noteable_type":"Issue","author_id":53909,"created_at":"2016-12-16T14:54:11.848Z","updated_at":"2016-12-16T14:54:11.848Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"e9929bdd1795d0c5d26e16924ad56ed59fe3ae4c","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2016-12-16T14:54:11.848Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"closed","noteable_type":"Issue","author_id":53909,"created_at":"2016-12-16T14:54:09.330Z","updated_at":"2016-12-16T14:54:09.330Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"e9929bdd1795d0c5d26e16924ad56ed59fe3ae4c","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2016-12-16T14:54:09.330Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]}],"label_links":[{"target_type":"Issue","created_at":"2016-12-16T14:54:07.351Z","updated_at":"2016-12-16T14:54:07.351Z","label":{"title":"defect","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:06.516Z","updated_at":"2016-12-16T14:54:06.516Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}},{"target_type":"Issue","created_at":"2016-12-16T14:54:07.372Z","updated_at":"2016-12-16T14:54:07.372Z","label":{"title":"defect","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:06.516Z","updated_at":"2016-12-16T14:54:06.516Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}}],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"test_large_recursive_file files","author_id":53909,"project_id":2174499,"created_at":"2016-12-16T14:54:24.427Z","updated_at":"2018-06-25T03:50:19.645Z","description":"`python setup.py test` fails","iid":3,"updated_by_id":53909,"weight":null,"confidential":false,"due_date":null,"lock_version":1,"time_estimate":0,"relative_position":1073745823,"last_edited_at":null,"last_edited_by_id":null,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"opened","events":[],"timelogs":[],"notes":[{"note":"log of the testing run\r\n[json_diff_log.txt](/uploads/47d72f0100b2851a1eb00a655c5ded1d/json_diff_log.txt)","noteable_type":"Issue","author_id":53909,"created_at":"2016-12-16T14:54:26.504Z","updated_at":"2017-01-13T12:50:36.964Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":53909,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"1910b7a714fe7f8e309a5060cdccbbafdfd87f76","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:50:36.964Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"removed ~1107526 label","noteable_type":"Issue","author_id":53909,"created_at":"2016-12-16T15:26:24.750Z","updated_at":"2016-12-16T15:26:24.750Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"1910b7a714fe7f8e309a5060cdccbbafdfd87f76","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2016-12-16T15:26:24.750Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"added ~1107525 label","noteable_type":"Issue","author_id":53909,"created_at":"2016-12-16T15:27:21.561Z","updated_at":"2016-12-16T15:27:21.561Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"1910b7a714fe7f8e309a5060cdccbbafdfd87f76","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2016-12-16T15:27:21.561Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"removed ~1107525 ~1107525 labels","noteable_type":"Issue","author_id":53909,"created_at":"2016-12-16T15:27:16.656Z","updated_at":"2016-12-16T15:27:16.656Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"1910b7a714fe7f8e309a5060cdccbbafdfd87f76","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2016-12-16T15:27:16.656Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"mentioned in issue #7","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:50:53.210Z","updated_at":"2017-01-13T12:50:53.210Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"1910b7a714fe7f8e309a5060cdccbbafdfd87f76","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:50:53.210Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"removed ~1107525 label","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:51:09.073Z","updated_at":"2017-01-13T12:51:09.073Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"1910b7a714fe7f8e309a5060cdccbbafdfd87f76","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:51:09.073Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]},{"note":"added ~1107525 label","noteable_type":"Issue","author_id":53909,"created_at":"2017-01-13T12:51:13.811Z","updated_at":"2017-01-13T12:51:13.811Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"1910b7a714fe7f8e309a5060cdccbbafdfd87f76","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2017-01-13T12:51:13.811Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[]}],"label_links":[{"target_type":"Issue","created_at":"2017-01-13T12:51:13.753Z","updated_at":"2017-01-13T12:51:13.753Z","label":{"title":"defect","color":"#428BCA","project_id":2174499,"created_at":"2016-12-16T14:54:06.516Z","updated_at":"2016-12-16T14:54:06.516Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}}],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[{"name":"thumbsup","user_id":518488,"awardable_type":"Issue","created_at":"2017-06-27T08:56:29.887Z","updated_at":"2017-06-27T08:56:29.887Z"}],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"JSON is not required to be a dictionary","author_id":519455,"project_id":2174499,"created_at":"2019-02-06T01:57:40.823Z","updated_at":"2020-03-19T18:14:14.784Z","description":"As far as I can tell, all the test files use dictionaries as the top-level object. But JSON does not require this, and when I tried running it on a pair of files containing arrays, it crashed.\n\nAccording to the spec, `json` is made up of one `element`, and an `element` is made up of a `value` optionally surrounded by whitespace. A `value` is any of `object`, `array`, `string`, `number`, `\"true\"`, `\"false\"`, `\"null\"`.","iid":9,"updated_by_id":519455,"weight":null,"confidential":false,"due_date":null,"lock_version":2,"time_estimate":0,"relative_position":1073746323,"last_edited_at":"2019-08-30T09:56:55.389Z","last_edited_by_id":519455,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"opened","events":[{"project_id":2174499,"author_id":519455,"created_at":"2019-02-06T01:57:40.877Z","updated_at":"2019-02-06T01:57:40.877Z","action":"created","target_type":"Issue","fingerprint":null}],"timelogs":[],"notes":[{"note":"Hmm, well, it's been ages since I filed this, but you can just generate one:\n\n```python\n$ ipython3\nIn [1]: import json\n\nIn [2]: with open('old.json', 'w') as f: json.dump([1, 2, 3], f) \n\nIn [3]: with open('new.json', 'w') as f: json.dump([1, 3, 3], f) \n```\n\n```pytb\n$ json_diff old.json new.json\nTraceback (most recent call last):\n File \".../bin/json_diff\", line 10, in \u003cmodule\u003e\n sys.exit(main())\n File \".../python3.7/site-packages/json_diff.py\", line 370, in main\n diff_res = diff.compare_dicts()\n File \".../python3.7/site-packages/json_diff.py\", line 305, in compare_dicts\n old_keys = set(old_obj.keys())\nAttributeError: 'list' object has no attribute 'keys'\n```","noteable_type":"Issue","author_id":519455,"created_at":"2019-08-30T10:05:06.399Z","updated_at":"2019-08-30T10:05:06.399Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"075ab133aeead3faea5972e6f9d15125f097a728","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2019-08-30T10:05:06.399Z","author":{"name":"Elliott Sales de Andrade"},"award_emoji":[],"events":[{"project_id":2174499,"author_id":519455,"created_at":"2019-08-30T10:05:06.706Z","updated_at":"2019-08-30T10:05:06.706Z","action":"commented","target_type":"Note","fingerprint":null}]},{"note":"Give me the example test data failing, please.","noteable_type":"Issue","author_id":53909,"created_at":"2019-08-25T20:14:27.542Z","updated_at":"2019-08-25T20:14:27.542Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"f8310c236a7377b78315d93e9741ee0790ab4964","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2019-08-25T20:14:27.542Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[{"project_id":2174499,"author_id":53909,"created_at":"2019-08-25T20:14:27.802Z","updated_at":"2019-08-25T20:14:27.802Z","action":"commented","target_type":"Note","fingerprint":null}]},{"note":"Same thing - this prevents me from using json-diff with the json I have.","noteable_type":"Issue","author_id":2935579,"created_at":"2020-03-19T18:14:14.751Z","updated_at":"2020-03-19T18:14:14.751Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"1297268789557c210778f1bd20d71b9bd5ad2fbc","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2020-03-19T18:14:14.751Z","author":{"name":"Stuart Axon"},"award_emoji":[],"events":[{"project_id":2174499,"author_id":2935579,"created_at":"2020-03-19T18:14:15.308Z","updated_at":"2020-03-19T18:14:15.308Z","action":"commented","target_type":"Note","fingerprint":null}]},{"note":"changed the description","noteable_type":"Issue","author_id":519455,"created_at":"2019-08-30T09:56:55.554Z","updated_at":"2019-08-30T09:56:55.557Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"7c0f20deb0259bef91ee3794f5bb9b7e6055586b","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2019-08-30T09:56:55.557Z","author":{"name":"Elliott Sales de Andrade"},"award_emoji":[],"system_note_metadata":{"commit_count":null,"action":"description","created_at":"2019-08-30T09:56:55.577Z","updated_at":"2019-08-30T09:56:55.577Z"},"events":[]}],"label_links":[{"target_type":"Issue","created_at":"2019-08-25T20:14:53.391Z","updated_at":"2019-08-25T20:14:53.391Z","label":{"title":"needinfo","color":"#5843AD","project_id":2174499,"created_at":"2019-08-25T20:14:47.284Z","updated_at":"2019-08-25T20:14:47.284Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}}],"resource_label_events":[{"action":"add","user_id":53909,"created_at":"2019-08-25T20:14:53.420Z","label":{"title":"needinfo","color":"#5843AD","project_id":2174499,"created_at":"2019-08-25T20:14:47.284Z","updated_at":"2019-08-25T20:14:47.284Z","template":false,"description":null,"group_id":null,"type":"ProjectLabel","priorities":[]}}],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[{"name":"thumbsup","user_id":2935579,"awardable_type":"Issue","created_at":"2020-03-19T18:13:59.337Z","updated_at":"2020-03-19T18:13:59.337Z"},{"name":"thumbsup","user_id":1638171,"awardable_type":"Issue","created_at":"2021-03-26T06:57:15.593Z","updated_at":"2021-03-26T06:57:15.593Z"}],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"HTMLFormatter doesn’t keep order of elements","author_id":53909,"project_id":2174499,"created_at":"2019-08-25T20:20:40.910Z","updated_at":"2021-05-19T09:07:14.535Z","description":"Therefore ``test_json_diff.TestBasicJSON.test_simple_formatted`` and ``test.test_json_diff.TestHappyPath.test_nested_formatted`` fail.","iid":10,"updated_by_id":53909,"weight":null,"confidential":false,"due_date":null,"lock_version":2,"time_estimate":0,"relative_position":1073746823,"last_edited_at":"2019-08-25T20:21:01.858Z","last_edited_by_id":53909,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"opened","events":[{"project_id":2174499,"author_id":53909,"created_at":"2019-08-25T20:20:40.970Z","updated_at":"2019-08-25T20:20:40.970Z","action":"created","target_type":"Issue","fingerprint":null}],"timelogs":[],"notes":[{"note":"Maybe need to use an OrderedDict somewhere ?","noteable_type":"Issue","author_id":167040,"created_at":"2021-05-19T09:07:14.499Z","updated_at":"2021-05-19T09:07:14.499Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"6c4c9165a417cb80b17935b872c6463266f2f1d5","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2021-05-19T09:07:14.499Z","author":{"name":"Francois"},"award_emoji":[],"events":[{"project_id":2174499,"author_id":167040,"created_at":"2021-05-19T09:07:14.759Z","updated_at":"2021-05-19T09:07:14.759Z","action":"commented","target_type":"Note","fingerprint":null}]},{"note":"changed the description","noteable_type":"Issue","author_id":53909,"created_at":"2019-08-25T20:21:01.954Z","updated_at":"2019-08-25T20:21:01.961Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"736b1f106e9d07b6cfcf57bf3fea57efe7015493","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2019-08-25T20:21:01.961Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"system_note_metadata":{"commit_count":null,"action":"description","created_at":"2019-08-25T20:21:01.984Z","updated_at":"2019-08-25T20:21:01.984Z"},"events":[]}],"label_links":[],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"Please describe output formats in readme","author_id":43767,"project_id":2174499,"created_at":"2019-10-06T15:08:59.291Z","updated_at":"2019-10-06T15:08:59.291Z","description":"I'm just looking for a simple json diff tool and found this one. Unfortunatly the Readme does not explain which format the output has. Please add a few lnes about this to the Readme. Thanks.","iid":11,"updated_by_id":null,"weight":null,"confidential":false,"due_date":null,"lock_version":1,"time_estimate":0,"relative_position":1073747323,"last_edited_at":null,"last_edited_by_id":null,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"opened","events":[{"project_id":2174499,"author_id":43767,"created_at":"2019-10-06T15:08:59.336Z","updated_at":"2019-10-06T15:08:59.336Z","action":"created","target_type":"Issue","fingerprint":null}],"timelogs":[],"notes":[],"label_links":[],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[{"name":"thumbsup","user_id":2859531,"awardable_type":"Issue","created_at":"2020-02-24T23:49:31.806Z","updated_at":"2020-02-24T23:49:31.806Z"}],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"pip install errors on Linux container - the file open call in setup.py should explicitly specify encoding.","author_id":5939071,"project_id":2174499,"created_at":"2020-05-06T17:35:15.483Z","updated_at":"2020-05-06T17:39:57.316Z","description":"```root@d9de3cf71859:/usr/src/node-red# python3 -m pip install json-diff\nCollecting json-diff\n Using cached https://files.pythonhosted.org/packages/6a/48/f6106761581a54d370ac8342ab81a6414548ae72eb126c2a650b5a590252/json_diff-1.5.0.tar.gz\n Complete output from command python setup.py egg_info:\n Traceback (most recent call last):\n File \"\u003cstring\u003e\", line 1, in \u003cmodule\u003e\n File \"/tmp/pip-build-8z02at46/json-diff/setup.py\", line 28, in \u003cmodule\u003e\n long_description=get_long_description(),\n File \"/tmp/pip-build-8z02at46/json-diff/setup.py\", line 17, in get_long_description\n + read(\"NEWS.txt\")\n File \"/tmp/pip-build-8z02at46/json-diff/setup.py\", line 9, in read\n out = \"\\n\" + f.read().replace(\"\\r\\n\", \"\\n\")\n File \"/usr/local/lib/python3.6/encodings/ascii.py\", line 26, in decode\n return codecs.ascii_decode(input, self.errors)[0]\n UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 199: ordinal not in range(128)\n \n ----------------------------------------\nCommand \"python setup.py egg_info\" failed with error code 1 in /tmp/pip-build-8z02at46/json-diff/\nYou are using pip version 9.0.3, however version 20.1 is available.\nYou should consider upgrading via the 'pip install --upgrade pip' command.\nroot@d9de3cf71859:/usr/src/node-red# pip\nbash: pip: command not found\nroot@d9de3cf71859:/usr/src/node-red# pip install --upgrade pip\nbash: pip: command not found\nroot@d9de3cf71859:/usr/src/node-red# uname -a\nLinux d9de3cf71859 4.9.125-linuxkit #1 SMP Fri Sep 7 08:20:28 UTC 2018 x86_64 GNU/Linux\nroot@d9de3cf71859:/usr/src/node-red# \n```","iid":12,"updated_by_id":5939071,"weight":null,"confidential":true,"due_date":null,"lock_version":2,"time_estimate":0,"relative_position":1073747823,"last_edited_at":"2020-05-06T17:39:57.310Z","last_edited_by_id":5939071,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"opened","events":[{"project_id":2174499,"author_id":5939071,"created_at":"2020-05-06T17:35:15.575Z","updated_at":"2020-05-06T17:35:15.575Z","action":"created","target_type":"Issue","fingerprint":null}],"timelogs":[],"notes":[{"note":"changed title from **pip install errors on Linux container - {-something in one of the text files, a non-ascii character in setup.py?-}** to **pip install errors on Linux container - {+the file open call in setup.py should explicitly specify encoding.+}**","noteable_type":"Issue","author_id":5939071,"created_at":"2020-05-06T17:39:57.345Z","updated_at":"2020-05-06T17:39:57.346Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"9c12f94af41e829033c62ce2dbfef9cc2e03b81b","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2020-05-06T17:39:57.346Z","author":{"name":"Vik Nag"},"award_emoji":[],"system_note_metadata":{"commit_count":null,"action":"title","created_at":"2020-05-06T17:39:57.365Z","updated_at":"2020-05-06T17:39:57.365Z"},"events":[]}],"label_links":[],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"Recursion depth error when processing null element with main","author_id":167040,"project_id":2174499,"created_at":"2021-05-19T09:17:24.400Z","updated_at":"2021-05-21T14:25:43.822Z","description":"Hello Matej, \n\nI've tried json_diff yesterday, and ran into a recursion depth error when processing some json files through the main. Nb: I was using an older version with python 2.7. \n\nI ran some more tests, and found out that: \njson_diff.Comparator().compare_dicts(json.load(open(f1)), json.load(open(f2))) =\u003e works correcly\njson_diff.Comparator(open(f1)), open(f2)).compare_dicts() =\u003e throws a recursion depth error\n\nI think this stems from the fact that my json contains some null values. When delving recursively into the structure, when compare_dicts encounters a null, it uses the obj1 or obj2 from the init, and starts over from the beginning. \n\nI haven't tried to fix it yet, but I think it's not useful to store the objects in the class, and the main could call Comparator(opts=options).compare_dicts(json.load(open(f1)), json.load(open(f2)).","iid":13,"updated_by_id":167040,"weight":null,"confidential":false,"due_date":null,"lock_version":2,"time_estimate":0,"relative_position":1073748336,"last_edited_at":"2021-05-19T14:26:14.893Z","last_edited_by_id":167040,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"opened","events":[{"project_id":2174499,"author_id":167040,"created_at":"2021-05-19T09:17:24.493Z","updated_at":"2021-05-19T09:17:24.493Z","action":"created","target_type":"Issue","fingerprint":null}],"timelogs":[],"notes":[{"note":"Do you want to take over this project? It was seven years or so when I lost interest in this script, if you want to take it over, it is free for adoption both here and on PyPI.","noteable_type":"Issue","author_id":53909,"created_at":"2021-05-21T14:25:43.757Z","updated_at":"2021-05-21T14:25:43.757Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"bafe6a7b2a98cd990e9d652f5d2d2efbc9b38a18","change_position":null,"resolved_by_push":null,"confidential":false,"last_edited_at":"2021-05-21T14:25:43.757Z","author":{"name":"Matěj Cepl"},"award_emoji":[],"events":[{"project_id":2174499,"author_id":53909,"created_at":"2021-05-21T14:25:44.054Z","updated_at":"2021-05-21T14:25:44.054Z","action":"commented","target_type":"Note","fingerprint":null}]},{"note":"changed the description","noteable_type":"Issue","author_id":167040,"created_at":"2021-05-19T14:26:15.215Z","updated_at":"2021-05-19T14:26:15.217Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"7c845dedb5a854bdc8f262047bf72ee21c3b4a7e","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2021-05-19T14:26:15.217Z","author":{"name":"Francois"},"award_emoji":[],"system_note_metadata":{"commit_count":null,"action":"description","created_at":"2021-05-19T14:26:15.237Z","updated_at":"2021-05-19T14:26:15.237Z"},"events":[]}],"label_links":[],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} +{"title":"cannot process UTF-8 files ('charmap' codec can't decode byte 0x81 in position 2071: character maps to \u003cundefined\u003e)","author_id":741962,"project_id":2174499,"created_at":"2022-11-11T15:32:34.425Z","updated_at":"2022-11-11T16:02:31.206Z","description":"This is probably problem with UTF-8 encoding according to [some similar issue](https://github.com/mwouts/jupytext/issues/770). I ran the script (installed with pip) on Windows 10 with \"Python 3.11.0 (main, Oct 24 2022, 18:26:48) [MSC v.1933 64 bit (AMD64)] on win32\" on 2 UTF-8 files with czech characters. One file had CRLF line endings, the second one LF.\n\nFull traceback:\n```\nTraceback (most recent call last):\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\json_diff.py\", line 153, in __init__\n self.obj1 = json.load(fn1)\n ^^^^^^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\json\\__init__.py\", line 293, in load\n return loads(fp.read(),\n ^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\encodings\\cp1250.py\", line 23, in decode\n return codecs.charmap_decode(input,self.errors,decoding_table)[0]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nUnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 1255: character maps to \u003cundefined\u003e\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Scripts\\json_diff-script.py\", line 33, in \u003cmodule\u003e\n sys.exit(load_entry_point('json-diff==1.5.0', 'console_scripts', 'json_diff')())\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\json_diff.py\", line 369, in main\n diff = Comparator(old_file, new_file, options)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\json_diff.py\", line 155, in __init__\n raise BadJSONError(\"Cannot decode object from JSON.\\n%s\" %\njson_diff.BadJSONError: Cannot decode object from JSON.\n'charmap' codec can't decode byte 0x81 in position 1255: character maps to \u003cundefined\u003e\n```","iid":14,"updated_by_id":741962,"weight":null,"confidential":false,"due_date":null,"lock_version":1,"time_estimate":0,"relative_position":1073748849,"last_edited_at":"2022-11-11T15:59:57.340Z","last_edited_by_id":741962,"discussion_locked":null,"closed_at":null,"closed_by_id":null,"health_status":null,"external_key":null,"state":"opened","events":[{"project_id":2174499,"author_id":741962,"created_at":"2022-11-11T15:32:34.586Z","updated_at":"2022-11-11T15:32:34.586Z","action":"created","target_type":"Issue","fingerprint":null}],"timelogs":[],"notes":[{"note":"The fix should be adding explicit `encoding=\"utf-8\"` parameters to function `open`, like stated in [mentioned issue](https://github.com/mwouts/jupytext/issues/770).","noteable_type":"Issue","author_id":741962,"created_at":"2022-11-11T15:38:58.594Z","updated_at":"2022-11-11T16:02:31.280Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":"DiscussionNote","position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"31951a990cd59207a7df80f10a795b5db4e66b86","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2022-11-11T16:02:31.280Z","author":{"name":"Tomáš Hudziec"},"award_emoji":[],"events":[{"project_id":2174499,"author_id":741962,"created_at":"2022-11-11T15:38:58.868Z","updated_at":"2022-11-11T15:38:58.868Z","action":"commented","target_type":"Note","fingerprint":null}]},{"note":"Hmm, after fixing the encoding in this way another error comes:\n```\nTraceback (most recent call last):\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Scripts\\json_diff-script.py\", line 33, in \u003cmodule\u003e\n sys.exit(load_entry_point('json-diff==1.5.0', 'console_scripts', 'json_diff')())\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\json_diff.py\", line 370, in main\n diff_res = diff.compare_dicts()\n ^^^^^^^^^^^^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\json_diff.py\", line 305, in compare_dicts\n old_keys = set(old_obj.keys())\n ^^^^^^^^^^^^\nAttributeError: 'list' object has no attribute 'keys'\n```\nBut this I am leaving for someone else :)","noteable_type":"Issue","author_id":741962,"created_at":"2022-11-11T16:02:31.146Z","updated_at":"2022-11-11T16:02:31.146Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":false,"updated_by_id":null,"type":"DiscussionNote","position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"31951a990cd59207a7df80f10a795b5db4e66b86","change_position":null,"resolved_by_push":null,"confidential":false,"last_edited_at":"2022-11-11T16:02:31.146Z","author":{"name":"Tomáš Hudziec"},"award_emoji":[],"events":[]},{"note":"changed the description","noteable_type":"Issue","author_id":741962,"created_at":"2022-11-11T15:59:57.691Z","updated_at":"2022-11-11T15:59:57.692Z","project_id":2174499,"attachment":{"url":null},"line_code":null,"commit_id":null,"st_diff":null,"system":true,"updated_by_id":null,"type":null,"position":null,"original_position":null,"resolved_at":null,"resolved_by_id":null,"discussion_id":"74dbac57b47f4a759c16b59588f22c7db96fe9d1","change_position":null,"resolved_by_push":null,"confidential":null,"last_edited_at":"2022-11-11T15:59:57.692Z","author":{"name":"Tomáš Hudziec"},"award_emoji":[],"system_note_metadata":{"commit_count":null,"action":"description","created_at":"2022-11-11T15:59:57.711Z","updated_at":"2022-11-11T15:59:57.711Z"},"events":[]}],"label_links":[],"resource_label_events":[],"resource_milestone_events":[],"resource_state_events":[],"designs":[],"design_versions":[],"issue_assignees":[],"zoom_meetings":[],"award_emoji":[],"work_item_type":{"base_type":"issue"},"resource_iteration_events":[]} diff --git a/issues.json b/issues.json new file mode 100644 index 0000000..eeb9336 --- /dev/null +++ b/issues.json @@ -0,0 +1,2177 @@ +[ +{ + "title": "Add output option", + "author_id": 53909, + "project_id": 2174499, + "created_at": "2017-01-13T12:47:14.323Z", + "updated_at": "2018-06-25T03:50:17.723Z", + "description": "json_diff -o filename may be helpful in some QA scripts.", + "iid": 8, + "updated_by_id": null, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 1, + "time_estimate": 0, + "relative_position": 1073742323, + "last_edited_at": null, + "last_edited_by_id": null, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "closed", + "events": [], + "timelogs": [], + "notes": [ + { + "note": "Fixed in [2229c24]", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:47:17.702Z", + "updated_at": "2017-01-13T12:47:17.702Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "d9679cd0ae4a6f98d37882270f6bbed9aad84e67", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:47:17.702Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "closed", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:47:15.780Z", + "updated_at": "2017-01-13T12:47:15.780Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "d9679cd0ae4a6f98d37882270f6bbed9aad84e67", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:47:15.780Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + } + ], + "label_links": [ + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:14.351Z", + "updated_at": "2017-01-13T12:47:14.351Z", + "label": { + "title": "enhancement", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:27.498Z", + "updated_at": "2016-12-16T14:54:27.498Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + }, + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:14.364Z", + "updated_at": "2017-01-13T12:47:14.364Z", + "label": { + "title": "general", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2017-01-13T12:47:00.101Z", + "updated_at": "2017-01-13T12:47:00.101Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + }, + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:14.371Z", + "updated_at": "2017-01-13T12:47:14.371Z", + "label": { + "title": "enhancement", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:27.498Z", + "updated_at": "2016-12-16T14:54:27.498Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + } + ], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "test_large_recursive_file files", + "author_id": 53909, + "project_id": 2174499, + "created_at": "2017-01-13T12:47:10.429Z", + "updated_at": "2018-06-25T03:50:17.781Z", + "description": "`python setup.py test` fails", + "iid": 7, + "updated_by_id": null, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 1, + "time_estimate": 0, + "relative_position": 1073742823, + "last_edited_at": null, + "last_edited_by_id": null, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "closed", + "events": [], + "timelogs": [], + "notes": [ + { + "note": "duplicate of #3", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:50:47.975Z", + "updated_at": "2017-01-13T12:50:47.975Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": "", + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "ddc443df1120e98f41ccde4df3407174d1e738fd", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:50:47.975Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "log of the testing run", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:47:12.648Z", + "updated_at": "2017-01-13T12:47:12.648Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "ddc443df1120e98f41ccde4df3407174d1e738fd", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:47:12.648Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "closed", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:50:47.984Z", + "updated_at": "2017-01-13T12:50:47.984Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "ddc443df1120e98f41ccde4df3407174d1e738fd", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:50:47.984Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + } + ], + "label_links": [ + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:10.470Z", + "updated_at": "2017-01-13T12:47:10.470Z", + "label": { + "title": "defect", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:06.516Z", + "updated_at": "2016-12-16T14:54:06.516Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + }, + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:10.488Z", + "updated_at": "2017-01-13T12:47:10.488Z", + "label": { + "title": "general", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2017-01-13T12:47:00.101Z", + "updated_at": "2017-01-13T12:47:00.101Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + }, + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:10.495Z", + "updated_at": "2017-01-13T12:47:10.495Z", + "label": { + "title": "defect", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:06.516Z", + "updated_at": "2016-12-16T14:54:06.516Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + } + ], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "encoding again", + "author_id": 53909, + "project_id": 2174499, + "created_at": "2017-01-13T12:47:05.381Z", + "updated_at": "2018-06-25T03:50:17.818Z", + "description": "mitmanek:devConf-xcal (master) $ json_diff csv_data.json json_data.json \n Traceback (most recent call last):\n File \"/usr/bin/json_diff\", line 369, in \n main_res = main(sys.argv)\n File \"/usr/bin/json_diff\", line 361, in main\n print(outs.encode(locale.getpreferredencoding(do_setlocale=False)))\n UnicodeEncodeError: 'ascii' codec can't encode character u'\\u2013' in position 164: ordinal not in range(128)\n mitmanek:devConf-xcal (master) $", + "iid": 6, + "updated_by_id": null, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 1, + "time_estimate": 0, + "relative_position": 1073743323, + "last_edited_at": null, + "last_edited_by_id": null, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "closed", + "events": [], + "timelogs": [], + "notes": [ + { + "note": "Fixed in [e98e114]", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:47:08.684Z", + "updated_at": "2017-01-13T12:47:08.684Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "4280b84c4551c164cc665197da40380241b7e915", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:47:08.684Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "closed", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:47:06.718Z", + "updated_at": "2017-01-13T12:47:06.718Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "4280b84c4551c164cc665197da40380241b7e915", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:47:06.718Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + } + ], + "label_links": [ + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:05.422Z", + "updated_at": "2017-01-13T12:47:05.422Z", + "label": { + "title": "defect", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:06.516Z", + "updated_at": "2016-12-16T14:54:06.516Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + }, + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:05.430Z", + "updated_at": "2017-01-13T12:47:05.430Z", + "label": { + "title": "general", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2017-01-13T12:47:00.101Z", + "updated_at": "2017-01-13T12:47:00.101Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + }, + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:05.436Z", + "updated_at": "2017-01-13T12:47:05.436Z", + "label": { + "title": "defect", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:06.516Z", + "updated_at": "2016-12-16T14:54:06.516Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + } + ], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "change the project’s website to https://fedorahosted.org/json_diff/", + "author_id": 53909, + "project_id": 2174499, + "created_at": "2017-01-13T12:47:00.482Z", + "updated_at": "2018-06-25T03:50:17.869Z", + "description": "", + "iid": 5, + "updated_by_id": null, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 1, + "time_estimate": 0, + "relative_position": 1073743823, + "last_edited_at": null, + "last_edited_by_id": null, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "closed", + "events": [], + "timelogs": [], + "notes": [ + { + "note": "Fixed in [ddeec22]", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:47:03.895Z", + "updated_at": "2017-01-13T12:47:03.895Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "77985eafecf7ada2ed64e4738a25356b5fe1ce93", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:47:03.895Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "closed", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:47:01.930Z", + "updated_at": "2017-01-13T12:47:01.930Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "77985eafecf7ada2ed64e4738a25356b5fe1ce93", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:47:01.930Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + } + ], + "label_links": [ + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:00.536Z", + "updated_at": "2017-01-13T12:47:00.536Z", + "label": { + "title": "defect", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:06.516Z", + "updated_at": "2016-12-16T14:54:06.516Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + }, + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:00.543Z", + "updated_at": "2017-01-13T12:47:00.543Z", + "label": { + "title": "general", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2017-01-13T12:47:00.101Z", + "updated_at": "2017-01-13T12:47:00.101Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + }, + { + "target_type": "Issue", + "created_at": "2017-01-13T12:47:00.549Z", + "updated_at": "2017-01-13T12:47:00.549Z", + "label": { + "title": "defect", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:06.516Z", + "updated_at": "2016-12-16T14:54:06.516Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + } + ], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "Add output option", + "author_id": 53909, + "project_id": 2174499, + "created_at": "2016-12-16T14:54:28.122Z", + "updated_at": "2018-06-25T03:50:17.923Z", + "description": "json_diff -o filename may be helpful in some QA scripts.", + "iid": 4, + "updated_by_id": 53909, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 1, + "time_estimate": 0, + "relative_position": 1073744323, + "last_edited_at": null, + "last_edited_by_id": null, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "closed", + "events": [], + "timelogs": [], + "notes": [ + { + "note": "Fixed in [2229c24]", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2016-12-16T14:54:31.000Z", + "updated_at": "2016-12-16T14:54:31.000Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "faa7e62a3f8bc8d445a7d88871c9d1ca9a239738", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2016-12-16T14:54:31.000Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "closed", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2016-12-16T14:54:29.305Z", + "updated_at": "2016-12-16T14:54:29.305Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "faa7e62a3f8bc8d445a7d88871c9d1ca9a239738", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2016-12-16T14:54:29.305Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + } + ], + "label_links": [ + { + "target_type": "Issue", + "created_at": "2016-12-16T14:54:28.186Z", + "updated_at": "2016-12-16T14:54:28.186Z", + "label": { + "title": "enhancement", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:27.498Z", + "updated_at": "2016-12-16T14:54:27.498Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + }, + { + "target_type": "Issue", + "created_at": "2016-12-16T14:54:28.220Z", + "updated_at": "2016-12-16T14:54:28.220Z", + "label": { + "title": "enhancement", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:27.498Z", + "updated_at": "2016-12-16T14:54:27.498Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + } + ], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "encoding again", + "author_id": 53909, + "project_id": 2174499, + "created_at": "2016-12-16T14:54:18.427Z", + "updated_at": "2018-06-25T03:50:17.970Z", + "description": "mitmanek:devConf-xcal (master) $ json_diff csv_data.json json_data.json \n Traceback (most recent call last):\n File \"/usr/bin/json_diff\", line 369, in \n main_res = main(sys.argv)\n File \"/usr/bin/json_diff\", line 361, in main\n print(outs.encode(locale.getpreferredencoding(do_setlocale=False)))\n UnicodeEncodeError: 'ascii' codec can't encode character u'\\u2013' in position 164: ordinal not in range(128)\n mitmanek:devConf-xcal (master) $", + "iid": 2, + "updated_by_id": 53909, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 1, + "time_estimate": 0, + "relative_position": 1073744823, + "last_edited_at": null, + "last_edited_by_id": null, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "closed", + "events": [], + "timelogs": [], + "notes": [ + { + "note": "Fixed in [e98e114]", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2016-12-16T14:54:22.795Z", + "updated_at": "2016-12-16T14:54:22.795Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "e313009c3bcc4608874aac01a1c11f2d8e2c1913", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2016-12-16T14:54:22.795Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "closed", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2016-12-16T14:54:20.000Z", + "updated_at": "2016-12-16T14:54:20.000Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "e313009c3bcc4608874aac01a1c11f2d8e2c1913", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2016-12-16T14:54:20.000Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + } + ], + "label_links": [ + { + "target_type": "Issue", + "created_at": "2016-12-16T14:54:18.493Z", + "updated_at": "2016-12-16T14:54:18.493Z", + "label": { + "title": "defect", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:06.516Z", + "updated_at": "2016-12-16T14:54:06.516Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + }, + { + "target_type": "Issue", + "created_at": "2016-12-16T14:54:18.519Z", + "updated_at": "2016-12-16T14:54:18.519Z", + "label": { + "title": "defect", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:06.516Z", + "updated_at": "2016-12-16T14:54:06.516Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + } + ], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "change the project’s website to https://fedorahosted.org/json_diff/", + "author_id": 53909, + "project_id": 2174499, + "created_at": "2016-12-16T14:54:07.292Z", + "updated_at": "2018-06-25T03:50:18.011Z", + "description": null, + "iid": 1, + "updated_by_id": 53909, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 1, + "time_estimate": 0, + "relative_position": 1073745323, + "last_edited_at": null, + "last_edited_by_id": null, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "closed", + "events": [], + "timelogs": [], + "notes": [ + { + "note": "Fixed in [ddeec22]", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2016-12-16T14:54:11.848Z", + "updated_at": "2016-12-16T14:54:11.848Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "e9929bdd1795d0c5d26e16924ad56ed59fe3ae4c", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2016-12-16T14:54:11.848Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "closed", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2016-12-16T14:54:09.330Z", + "updated_at": "2016-12-16T14:54:09.330Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "e9929bdd1795d0c5d26e16924ad56ed59fe3ae4c", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2016-12-16T14:54:09.330Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + } + ], + "label_links": [ + { + "target_type": "Issue", + "created_at": "2016-12-16T14:54:07.351Z", + "updated_at": "2016-12-16T14:54:07.351Z", + "label": { + "title": "defect", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:06.516Z", + "updated_at": "2016-12-16T14:54:06.516Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + }, + { + "target_type": "Issue", + "created_at": "2016-12-16T14:54:07.372Z", + "updated_at": "2016-12-16T14:54:07.372Z", + "label": { + "title": "defect", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:06.516Z", + "updated_at": "2016-12-16T14:54:06.516Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + } + ], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "test_large_recursive_file files", + "author_id": 53909, + "project_id": 2174499, + "created_at": "2016-12-16T14:54:24.427Z", + "updated_at": "2018-06-25T03:50:19.645Z", + "description": "`python setup.py test` fails", + "iid": 3, + "updated_by_id": 53909, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 1, + "time_estimate": 0, + "relative_position": 1073745823, + "last_edited_at": null, + "last_edited_by_id": null, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "opened", + "events": [], + "timelogs": [], + "notes": [ + { + "note": "log of the testing run\r\n[json_diff_log.txt](/uploads/47d72f0100b2851a1eb00a655c5ded1d/json_diff_log.txt)", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2016-12-16T14:54:26.504Z", + "updated_at": "2017-01-13T12:50:36.964Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": 53909, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "1910b7a714fe7f8e309a5060cdccbbafdfd87f76", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:50:36.964Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "removed ~1107526 label", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2016-12-16T15:26:24.750Z", + "updated_at": "2016-12-16T15:26:24.750Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "1910b7a714fe7f8e309a5060cdccbbafdfd87f76", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2016-12-16T15:26:24.750Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "added ~1107525 label", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2016-12-16T15:27:21.561Z", + "updated_at": "2016-12-16T15:27:21.561Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "1910b7a714fe7f8e309a5060cdccbbafdfd87f76", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2016-12-16T15:27:21.561Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "removed ~1107525 ~1107525 labels", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2016-12-16T15:27:16.656Z", + "updated_at": "2016-12-16T15:27:16.656Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "1910b7a714fe7f8e309a5060cdccbbafdfd87f76", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2016-12-16T15:27:16.656Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "mentioned in issue #7", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:50:53.210Z", + "updated_at": "2017-01-13T12:50:53.210Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "1910b7a714fe7f8e309a5060cdccbbafdfd87f76", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:50:53.210Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "removed ~1107525 label", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:51:09.073Z", + "updated_at": "2017-01-13T12:51:09.073Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "1910b7a714fe7f8e309a5060cdccbbafdfd87f76", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:51:09.073Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "added ~1107525 label", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2017-01-13T12:51:13.811Z", + "updated_at": "2017-01-13T12:51:13.811Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "1910b7a714fe7f8e309a5060cdccbbafdfd87f76", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2017-01-13T12:51:13.811Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [] + } + ], + "label_links": [ + { + "target_type": "Issue", + "created_at": "2017-01-13T12:51:13.753Z", + "updated_at": "2017-01-13T12:51:13.753Z", + "label": { + "title": "defect", + "color": "#428BCA", + "project_id": 2174499, + "created_at": "2016-12-16T14:54:06.516Z", + "updated_at": "2016-12-16T14:54:06.516Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + } + ], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [ + { + "name": "thumbsup", + "user_id": 518488, + "awardable_type": "Issue", + "created_at": "2017-06-27T08:56:29.887Z", + "updated_at": "2017-06-27T08:56:29.887Z" + } + ], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "JSON is not required to be a dictionary", + "author_id": 519455, + "project_id": 2174499, + "created_at": "2019-02-06T01:57:40.823Z", + "updated_at": "2020-03-19T18:14:14.784Z", + "description": "As far as I can tell, all the test files use dictionaries as the top-level object. But JSON does not require this, and when I tried running it on a pair of files containing arrays, it crashed.\n\nAccording to the spec, `json` is made up of one `element`, and an `element` is made up of a `value` optionally surrounded by whitespace. A `value` is any of `object`, `array`, `string`, `number`, `\"true\"`, `\"false\"`, `\"null\"`.", + "iid": 9, + "updated_by_id": 519455, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 2, + "time_estimate": 0, + "relative_position": 1073746323, + "last_edited_at": "2019-08-30T09:56:55.389Z", + "last_edited_by_id": 519455, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "opened", + "events": [ + { + "project_id": 2174499, + "author_id": 519455, + "created_at": "2019-02-06T01:57:40.877Z", + "updated_at": "2019-02-06T01:57:40.877Z", + "action": "created", + "target_type": "Issue", + "fingerprint": null + } + ], + "timelogs": [], + "notes": [ + { + "note": "Hmm, well, it's been ages since I filed this, but you can just generate one:\n\n```python\n$ ipython3\nIn [1]: import json\n\nIn [2]: with open('old.json', 'w') as f: json.dump([1, 2, 3], f) \n\nIn [3]: with open('new.json', 'w') as f: json.dump([1, 3, 3], f) \n```\n\n```pytb\n$ json_diff old.json new.json\nTraceback (most recent call last):\n File \".../bin/json_diff\", line 10, in \n sys.exit(main())\n File \".../python3.7/site-packages/json_diff.py\", line 370, in main\n diff_res = diff.compare_dicts()\n File \".../python3.7/site-packages/json_diff.py\", line 305, in compare_dicts\n old_keys = set(old_obj.keys())\nAttributeError: 'list' object has no attribute 'keys'\n```", + "noteable_type": "Issue", + "author_id": 519455, + "created_at": "2019-08-30T10:05:06.399Z", + "updated_at": "2019-08-30T10:05:06.399Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "075ab133aeead3faea5972e6f9d15125f097a728", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2019-08-30T10:05:06.399Z", + "author": { + "name": "Elliott Sales de Andrade" + }, + "award_emoji": [], + "events": [ + { + "project_id": 2174499, + "author_id": 519455, + "created_at": "2019-08-30T10:05:06.706Z", + "updated_at": "2019-08-30T10:05:06.706Z", + "action": "commented", + "target_type": "Note", + "fingerprint": null + } + ] + }, + { + "note": "Give me the example test data failing, please.", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2019-08-25T20:14:27.542Z", + "updated_at": "2019-08-25T20:14:27.542Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "f8310c236a7377b78315d93e9741ee0790ab4964", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2019-08-25T20:14:27.542Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [ + { + "project_id": 2174499, + "author_id": 53909, + "created_at": "2019-08-25T20:14:27.802Z", + "updated_at": "2019-08-25T20:14:27.802Z", + "action": "commented", + "target_type": "Note", + "fingerprint": null + } + ] + }, + { + "note": "Same thing - this prevents me from using json-diff with the json I have.", + "noteable_type": "Issue", + "author_id": 2935579, + "created_at": "2020-03-19T18:14:14.751Z", + "updated_at": "2020-03-19T18:14:14.751Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "1297268789557c210778f1bd20d71b9bd5ad2fbc", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2020-03-19T18:14:14.751Z", + "author": { + "name": "Stuart Axon" + }, + "award_emoji": [], + "events": [ + { + "project_id": 2174499, + "author_id": 2935579, + "created_at": "2020-03-19T18:14:15.308Z", + "updated_at": "2020-03-19T18:14:15.308Z", + "action": "commented", + "target_type": "Note", + "fingerprint": null + } + ] + }, + { + "note": "changed the description", + "noteable_type": "Issue", + "author_id": 519455, + "created_at": "2019-08-30T09:56:55.554Z", + "updated_at": "2019-08-30T09:56:55.557Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "7c0f20deb0259bef91ee3794f5bb9b7e6055586b", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2019-08-30T09:56:55.557Z", + "author": { + "name": "Elliott Sales de Andrade" + }, + "award_emoji": [], + "system_note_metadata": { + "commit_count": null, + "action": "description", + "created_at": "2019-08-30T09:56:55.577Z", + "updated_at": "2019-08-30T09:56:55.577Z" + }, + "events": [] + } + ], + "label_links": [ + { + "target_type": "Issue", + "created_at": "2019-08-25T20:14:53.391Z", + "updated_at": "2019-08-25T20:14:53.391Z", + "label": { + "title": "needinfo", + "color": "#5843AD", + "project_id": 2174499, + "created_at": "2019-08-25T20:14:47.284Z", + "updated_at": "2019-08-25T20:14:47.284Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + } + ], + "resource_label_events": [ + { + "action": "add", + "user_id": 53909, + "created_at": "2019-08-25T20:14:53.420Z", + "label": { + "title": "needinfo", + "color": "#5843AD", + "project_id": 2174499, + "created_at": "2019-08-25T20:14:47.284Z", + "updated_at": "2019-08-25T20:14:47.284Z", + "template": false, + "description": null, + "group_id": null, + "type": "ProjectLabel", + "priorities": [] + } + } + ], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [ + { + "name": "thumbsup", + "user_id": 2935579, + "awardable_type": "Issue", + "created_at": "2020-03-19T18:13:59.337Z", + "updated_at": "2020-03-19T18:13:59.337Z" + }, + { + "name": "thumbsup", + "user_id": 1638171, + "awardable_type": "Issue", + "created_at": "2021-03-26T06:57:15.593Z", + "updated_at": "2021-03-26T06:57:15.593Z" + } + ], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "HTMLFormatter doesn’t keep order of elements", + "author_id": 53909, + "project_id": 2174499, + "created_at": "2019-08-25T20:20:40.910Z", + "updated_at": "2021-05-19T09:07:14.535Z", + "description": "Therefore ``test_json_diff.TestBasicJSON.test_simple_formatted`` and ``test.test_json_diff.TestHappyPath.test_nested_formatted`` fail.", + "iid": 10, + "updated_by_id": 53909, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 2, + "time_estimate": 0, + "relative_position": 1073746823, + "last_edited_at": "2019-08-25T20:21:01.858Z", + "last_edited_by_id": 53909, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "opened", + "events": [ + { + "project_id": 2174499, + "author_id": 53909, + "created_at": "2019-08-25T20:20:40.970Z", + "updated_at": "2019-08-25T20:20:40.970Z", + "action": "created", + "target_type": "Issue", + "fingerprint": null + } + ], + "timelogs": [], + "notes": [ + { + "note": "Maybe need to use an OrderedDict somewhere ?", + "noteable_type": "Issue", + "author_id": 167040, + "created_at": "2021-05-19T09:07:14.499Z", + "updated_at": "2021-05-19T09:07:14.499Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "6c4c9165a417cb80b17935b872c6463266f2f1d5", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2021-05-19T09:07:14.499Z", + "author": { + "name": "Francois" + }, + "award_emoji": [], + "events": [ + { + "project_id": 2174499, + "author_id": 167040, + "created_at": "2021-05-19T09:07:14.759Z", + "updated_at": "2021-05-19T09:07:14.759Z", + "action": "commented", + "target_type": "Note", + "fingerprint": null + } + ] + }, + { + "note": "changed the description", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2019-08-25T20:21:01.954Z", + "updated_at": "2019-08-25T20:21:01.961Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "736b1f106e9d07b6cfcf57bf3fea57efe7015493", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2019-08-25T20:21:01.961Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "system_note_metadata": { + "commit_count": null, + "action": "description", + "created_at": "2019-08-25T20:21:01.984Z", + "updated_at": "2019-08-25T20:21:01.984Z" + }, + "events": [] + } + ], + "label_links": [], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "Please describe output formats in readme", + "author_id": 43767, + "project_id": 2174499, + "created_at": "2019-10-06T15:08:59.291Z", + "updated_at": "2019-10-06T15:08:59.291Z", + "description": "I'm just looking for a simple json diff tool and found this one. Unfortunatly the Readme does not explain which format the output has. Please add a few lnes about this to the Readme. Thanks.", + "iid": 11, + "updated_by_id": null, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 1, + "time_estimate": 0, + "relative_position": 1073747323, + "last_edited_at": null, + "last_edited_by_id": null, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "opened", + "events": [ + { + "project_id": 2174499, + "author_id": 43767, + "created_at": "2019-10-06T15:08:59.336Z", + "updated_at": "2019-10-06T15:08:59.336Z", + "action": "created", + "target_type": "Issue", + "fingerprint": null + } + ], + "timelogs": [], + "notes": [], + "label_links": [], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [ + { + "name": "thumbsup", + "user_id": 2859531, + "awardable_type": "Issue", + "created_at": "2020-02-24T23:49:31.806Z", + "updated_at": "2020-02-24T23:49:31.806Z" + } + ], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "pip install errors on Linux container - the file open call in setup.py should explicitly specify encoding.", + "author_id": 5939071, + "project_id": 2174499, + "created_at": "2020-05-06T17:35:15.483Z", + "updated_at": "2020-05-06T17:39:57.316Z", + "description": "```root@d9de3cf71859:/usr/src/node-red# python3 -m pip install json-diff\nCollecting json-diff\n Using cached https://files.pythonhosted.org/packages/6a/48/f6106761581a54d370ac8342ab81a6414548ae72eb126c2a650b5a590252/json_diff-1.5.0.tar.gz\n Complete output from command python setup.py egg_info:\n Traceback (most recent call last):\n File \"\", line 1, in \n File \"/tmp/pip-build-8z02at46/json-diff/setup.py\", line 28, in \n long_description=get_long_description(),\n File \"/tmp/pip-build-8z02at46/json-diff/setup.py\", line 17, in get_long_description\n + read(\"NEWS.txt\")\n File \"/tmp/pip-build-8z02at46/json-diff/setup.py\", line 9, in read\n out = \"\\n\" + f.read().replace(\"\\r\\n\", \"\\n\")\n File \"/usr/local/lib/python3.6/encodings/ascii.py\", line 26, in decode\n return codecs.ascii_decode(input, self.errors)[0]\n UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 199: ordinal not in range(128)\n \n ----------------------------------------\nCommand \"python setup.py egg_info\" failed with error code 1 in /tmp/pip-build-8z02at46/json-diff/\nYou are using pip version 9.0.3, however version 20.1 is available.\nYou should consider upgrading via the 'pip install --upgrade pip' command.\nroot@d9de3cf71859:/usr/src/node-red# pip\nbash: pip: command not found\nroot@d9de3cf71859:/usr/src/node-red# pip install --upgrade pip\nbash: pip: command not found\nroot@d9de3cf71859:/usr/src/node-red# uname -a\nLinux d9de3cf71859 4.9.125-linuxkit #1 SMP Fri Sep 7 08:20:28 UTC 2018 x86_64 GNU/Linux\nroot@d9de3cf71859:/usr/src/node-red# \n```", + "iid": 12, + "updated_by_id": 5939071, + "weight": null, + "confidential": true, + "due_date": null, + "lock_version": 2, + "time_estimate": 0, + "relative_position": 1073747823, + "last_edited_at": "2020-05-06T17:39:57.310Z", + "last_edited_by_id": 5939071, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "opened", + "events": [ + { + "project_id": 2174499, + "author_id": 5939071, + "created_at": "2020-05-06T17:35:15.575Z", + "updated_at": "2020-05-06T17:35:15.575Z", + "action": "created", + "target_type": "Issue", + "fingerprint": null + } + ], + "timelogs": [], + "notes": [ + { + "note": "changed title from **pip install errors on Linux container - {-something in one of the text files, a non-ascii character in setup.py?-}** to **pip install errors on Linux container - {+the file open call in setup.py should explicitly specify encoding.+}**", + "noteable_type": "Issue", + "author_id": 5939071, + "created_at": "2020-05-06T17:39:57.345Z", + "updated_at": "2020-05-06T17:39:57.346Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "9c12f94af41e829033c62ce2dbfef9cc2e03b81b", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2020-05-06T17:39:57.346Z", + "author": { + "name": "Vik Nag" + }, + "award_emoji": [], + "system_note_metadata": { + "commit_count": null, + "action": "title", + "created_at": "2020-05-06T17:39:57.365Z", + "updated_at": "2020-05-06T17:39:57.365Z" + }, + "events": [] + } + ], + "label_links": [], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "Recursion depth error when processing null element with main", + "author_id": 167040, + "project_id": 2174499, + "created_at": "2021-05-19T09:17:24.400Z", + "updated_at": "2021-05-21T14:25:43.822Z", + "description": "Hello Matej, \n\nI've tried json_diff yesterday, and ran into a recursion depth error when processing some json files through the main. Nb: I was using an older version with python 2.7. \n\nI ran some more tests, and found out that: \njson_diff.Comparator().compare_dicts(json.load(open(f1)), json.load(open(f2))) => works correcly\njson_diff.Comparator(open(f1)), open(f2)).compare_dicts() => throws a recursion depth error\n\nI think this stems from the fact that my json contains some null values. When delving recursively into the structure, when compare_dicts encounters a null, it uses the obj1 or obj2 from the init, and starts over from the beginning. \n\nI haven't tried to fix it yet, but I think it's not useful to store the objects in the class, and the main could call Comparator(opts=options).compare_dicts(json.load(open(f1)), json.load(open(f2)).", + "iid": 13, + "updated_by_id": 167040, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 2, + "time_estimate": 0, + "relative_position": 1073748336, + "last_edited_at": "2021-05-19T14:26:14.893Z", + "last_edited_by_id": 167040, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "opened", + "events": [ + { + "project_id": 2174499, + "author_id": 167040, + "created_at": "2021-05-19T09:17:24.493Z", + "updated_at": "2021-05-19T09:17:24.493Z", + "action": "created", + "target_type": "Issue", + "fingerprint": null + } + ], + "timelogs": [], + "notes": [ + { + "note": "Do you want to take over this project? It was seven years or so when I lost interest in this script, if you want to take it over, it is free for adoption both here and on PyPI.", + "noteable_type": "Issue", + "author_id": 53909, + "created_at": "2021-05-21T14:25:43.757Z", + "updated_at": "2021-05-21T14:25:43.757Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "bafe6a7b2a98cd990e9d652f5d2d2efbc9b38a18", + "change_position": null, + "resolved_by_push": null, + "confidential": false, + "last_edited_at": "2021-05-21T14:25:43.757Z", + "author": { + "name": "Matěj Cepl" + }, + "award_emoji": [], + "events": [ + { + "project_id": 2174499, + "author_id": 53909, + "created_at": "2021-05-21T14:25:44.054Z", + "updated_at": "2021-05-21T14:25:44.054Z", + "action": "commented", + "target_type": "Note", + "fingerprint": null + } + ] + }, + { + "note": "changed the description", + "noteable_type": "Issue", + "author_id": 167040, + "created_at": "2021-05-19T14:26:15.215Z", + "updated_at": "2021-05-19T14:26:15.217Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "7c845dedb5a854bdc8f262047bf72ee21c3b4a7e", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2021-05-19T14:26:15.217Z", + "author": { + "name": "Francois" + }, + "award_emoji": [], + "system_note_metadata": { + "commit_count": null, + "action": "description", + "created_at": "2021-05-19T14:26:15.237Z", + "updated_at": "2021-05-19T14:26:15.237Z" + }, + "events": [] + } + ], + "label_links": [], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +}, +{ + "title": "cannot process UTF-8 files ('charmap' codec can't decode byte 0x81 in position 2071: character maps to )", + "author_id": 741962, + "project_id": 2174499, + "created_at": "2022-11-11T15:32:34.425Z", + "updated_at": "2022-11-11T16:02:31.206Z", + "description": "This is probably problem with UTF-8 encoding according to [some similar issue](https://github.com/mwouts/jupytext/issues/770). I ran the script (installed with pip) on Windows 10 with \"Python 3.11.0 (main, Oct 24 2022, 18:26:48) [MSC v.1933 64 bit (AMD64)] on win32\" on 2 UTF-8 files with czech characters. One file had CRLF line endings, the second one LF.\n\nFull traceback:\n```\nTraceback (most recent call last):\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\json_diff.py\", line 153, in __init__\n self.obj1 = json.load(fn1)\n ^^^^^^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\json\\__init__.py\", line 293, in load\n return loads(fp.read(),\n ^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\encodings\\cp1250.py\", line 23, in decode\n return codecs.charmap_decode(input,self.errors,decoding_table)[0]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nUnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 1255: character maps to \n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Scripts\\json_diff-script.py\", line 33, in \n sys.exit(load_entry_point('json-diff==1.5.0', 'console_scripts', 'json_diff')())\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\json_diff.py\", line 369, in main\n diff = Comparator(old_file, new_file, options)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\json_diff.py\", line 155, in __init__\n raise BadJSONError(\"Cannot decode object from JSON.\\n%s\" %\njson_diff.BadJSONError: Cannot decode object from JSON.\n'charmap' codec can't decode byte 0x81 in position 1255: character maps to \n```", + "iid": 14, + "updated_by_id": 741962, + "weight": null, + "confidential": false, + "due_date": null, + "lock_version": 1, + "time_estimate": 0, + "relative_position": 1073748849, + "last_edited_at": "2022-11-11T15:59:57.340Z", + "last_edited_by_id": 741962, + "discussion_locked": null, + "closed_at": null, + "closed_by_id": null, + "health_status": null, + "external_key": null, + "state": "opened", + "events": [ + { + "project_id": 2174499, + "author_id": 741962, + "created_at": "2022-11-11T15:32:34.586Z", + "updated_at": "2022-11-11T15:32:34.586Z", + "action": "created", + "target_type": "Issue", + "fingerprint": null + } + ], + "timelogs": [], + "notes": [ + { + "note": "The fix should be adding explicit `encoding=\"utf-8\"` parameters to function `open`, like stated in [mentioned issue](https://github.com/mwouts/jupytext/issues/770).", + "noteable_type": "Issue", + "author_id": 741962, + "created_at": "2022-11-11T15:38:58.594Z", + "updated_at": "2022-11-11T16:02:31.280Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": "DiscussionNote", + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "31951a990cd59207a7df80f10a795b5db4e66b86", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2022-11-11T16:02:31.280Z", + "author": { + "name": "Tomáš Hudziec" + }, + "award_emoji": [], + "events": [ + { + "project_id": 2174499, + "author_id": 741962, + "created_at": "2022-11-11T15:38:58.868Z", + "updated_at": "2022-11-11T15:38:58.868Z", + "action": "commented", + "target_type": "Note", + "fingerprint": null + } + ] + }, + { + "note": "Hmm, after fixing the encoding in this way another error comes:\n```\nTraceback (most recent call last):\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Scripts\\json_diff-script.py\", line 33, in \n sys.exit(load_entry_point('json-diff==1.5.0', 'console_scripts', 'json_diff')())\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\json_diff.py\", line 370, in main\n diff_res = diff.compare_dicts()\n ^^^^^^^^^^^^^^^^^^^^\n File \"C:\\Users\\$me\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\site-packages\\json_diff.py\", line 305, in compare_dicts\n old_keys = set(old_obj.keys())\n ^^^^^^^^^^^^\nAttributeError: 'list' object has no attribute 'keys'\n```\nBut this I am leaving for someone else :)", + "noteable_type": "Issue", + "author_id": 741962, + "created_at": "2022-11-11T16:02:31.146Z", + "updated_at": "2022-11-11T16:02:31.146Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": false, + "updated_by_id": null, + "type": "DiscussionNote", + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "31951a990cd59207a7df80f10a795b5db4e66b86", + "change_position": null, + "resolved_by_push": null, + "confidential": false, + "last_edited_at": "2022-11-11T16:02:31.146Z", + "author": { + "name": "Tomáš Hudziec" + }, + "award_emoji": [], + "events": [] + }, + { + "note": "changed the description", + "noteable_type": "Issue", + "author_id": 741962, + "created_at": "2022-11-11T15:59:57.691Z", + "updated_at": "2022-11-11T15:59:57.692Z", + "project_id": 2174499, + "attachment": { + "url": null + }, + "line_code": null, + "commit_id": null, + "st_diff": null, + "system": true, + "updated_by_id": null, + "type": null, + "position": null, + "original_position": null, + "resolved_at": null, + "resolved_by_id": null, + "discussion_id": "74dbac57b47f4a759c16b59588f22c7db96fe9d1", + "change_position": null, + "resolved_by_push": null, + "confidential": null, + "last_edited_at": "2022-11-11T15:59:57.692Z", + "author": { + "name": "Tomáš Hudziec" + }, + "award_emoji": [], + "system_note_metadata": { + "commit_count": null, + "action": "description", + "created_at": "2022-11-11T15:59:57.711Z", + "updated_at": "2022-11-11T15:59:57.711Z" + }, + "events": [] + } + ], + "label_links": [], + "resource_label_events": [], + "resource_milestone_events": [], + "resource_state_events": [], + "designs": [], + "design_versions": [], + "issue_assignees": [], + "zoom_meetings": [], + "award_emoji": [], + "work_item_type": { + "base_type": "issue" + }, + "resource_iteration_events": [] +} +] diff --git a/post-commit b/post-commit old mode 100644 new mode 100755 index b0587ba..c84075e --- a/post-commit +++ b/post-commit @@ -1,5 +1,5 @@ #!/bin/sh -set -eux +set -eu BUG_ID=$(git format-patch --stdout HEAD~|git interpret-trailers --parse|awk -F '#' '/^Fixes: gb#/ { print $2}') if [ -n "$BUG_ID" ] ; then -- cgit