diff --git a/Pipfile b/Pipfile
index 1f89202a..6df7af99 100644
--- a/Pipfile
+++ b/Pipfile
@@ -5,9 +5,39 @@ name = "pypi"
[packages]
autosub = "*"
-pyqt5 = "*"
+pyqt5 = "==5.15.4"
pyinstaller = "*"
macholib = "*"
+cachetools = "==4.2.4"
+certifi = "==2021.10.8"
+chardet = "==4.0.0"
+charset-normalizer = "==2.0.6"
+google-api-core = "==2.1.0"
+google-api-python-client = "==2.24.0"
+google-auth = "==2.3.0"
+google-auth-httplib2 = "==0.1.0"
+google-auth-oauthlib = "==0.4.6"
+googleapis-common-protos = "==1.53.0"
+httplib2 = "==0.20.1"
+idna = "==3.2"
+oauthlib = "==3.1.1"
+progressbar = "==2.5"
+protobuf = "==3.18.1"
+pyasn1 = "==0.4.8"
+pyasn1-modules = "==0.2.8"
+pyparsing = "==2.4.7"
+pyqt5-qt5 = "==5.15.2"
+pyqt5-sip = "==12.9.0"
+pysrt = "==1.1.2"
+requests = "==2.26.0"
+requests-oauthlib = "==1.3.0"
+rsa = "==4.7.2"
+six = "==1.16.0"
+uritemplate = "==3.0.1"
+urllib3 = "==1.26.7"
+nuitka = "*"
+orderedset = "*"
+zstandard = "*"
[dev-packages]
diff --git a/Pipfile.lock b/Pipfile.lock
index b151ad52..ad380cf3 100644
--- a/Pipfile.lock
+++ b/Pipfile.lock
@@ -1,7 +1,7 @@
{
"_meta": {
"hash": {
- "sha256": "b0469913a10e37f228531153e6945aa1a647ebdcb2024b2cb6f36208f0307c74"
+ "sha256": "c3ab8ecad8bfe2aba696037bce93a0f88fc34072315d7bf09bac892d7bba18bb"
},
"pipfile-spec": 6,
"requires": {
@@ -18,10 +18,10 @@
"default": {
"altgraph": {
"hashes": [
- "sha256:743628f2ac6a7c26f5d9223c91ed8ecbba535f506f4b6f558885a8a56a105857",
- "sha256:ebf2269361b47d97b3b88e696439f6e4cbc607c17c51feb1754f90fb79839158"
+ "sha256:ad33358114df7c9416cdb8fa1eaa5852166c505118717021c6a8c7c7abbd03dd",
+ "sha256:c8ac1ca6772207179ed8003ce7687757c04b0b71536f81e2ac5755c6226458fe"
],
- "version": "==0.17.2"
+ "version": "==0.17.3"
},
"autosub": {
"hashes": [
@@ -32,116 +32,163 @@
},
"cachetools": {
"hashes": [
- "sha256:6a94c6402995a99c3970cc7e4884bb60b4a8639938157eeed436098bf9831757",
- "sha256:f9f17d2aec496a9aa6b76f53e3b614c965223c061982d434d160f930c698a9db"
+ "sha256:89ea6f1b638d5a73a4f9226be57ac5e4f399d22770b92355f92dcb0f7f001693",
+ "sha256:92971d3cb7d2a97efff7c7bb1657f21a8f5fb309a37530537c71b1774189f2d1"
],
- "markers": "python_version ~= '3.7'",
- "version": "==5.2.0"
+ "index": "pypi",
+ "version": "==4.2.4"
},
"certifi": {
"hashes": [
- "sha256:84c85a9078b11105f04f3036a9482ae10e4621616db313fe045dd24743a0820d",
- "sha256:fe86415d55e84719d75f8b69414f6438ac3547d2078ab91b67e779ef69378412"
+ "sha256:78884e7c1d4b00ce3cea67b44566851c4343c120abd683433ce934a68ea58872",
+ "sha256:d62a0163eb4c2344ac042ab2bdf75399a71a2d8c7d47eac2e2ee91b9d6339569"
],
- "markers": "python_version >= '3.6'",
- "version": "==2022.6.15"
+ "index": "pypi",
+ "version": "==2021.10.8"
},
"chardet": {
"hashes": [
- "sha256:0368df2bfd78b5fc20572bb4e9bb7fb53e2c094f60ae9993339e8671d0afb8aa",
- "sha256:d3e64f022d254183001eccc5db4040520c0f23b1a3f33d6413e099eb7f126557"
+ "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa",
+ "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5"
],
- "markers": "python_version >= '3.6'",
- "version": "==5.0.0"
+ "index": "pypi",
+ "version": "==4.0.0"
},
"charset-normalizer": {
"hashes": [
- "sha256:5189b6f22b01957427f35b6a08d9a0bc45b46d3788ef5a92e978433c7a35f8a5",
- "sha256:575e708016ff3a5e3681541cb9d79312c416835686d054a23accb873b254f413"
+ "sha256:5d209c0a931f215cee683b6445e2d77677e7e75e159f78def0db09d68fafcaa6",
+ "sha256:5ec46d183433dcbd0ab716f2d7f29d8dee50505b3fdb40c6b985c7c4f5a3591f"
],
- "markers": "python_version >= '3.6'",
- "version": "==2.1.0"
+ "index": "pypi",
+ "version": "==2.0.6"
},
"google-api-core": {
"hashes": [
- "sha256:06f7244c640322b508b125903bb5701bebabce8832f85aba9335ec00b3d02edc",
- "sha256:93c6a91ccac79079ac6bbf8b74ee75db970cc899278b97d53bc012f35908cf50"
+ "sha256:5ec27b942b34d04559cbf3674430bb83fc3d74e7d32b8bbd31c4466e71740b83",
+ "sha256:c344e1aacd8330527c5130bdfe03118d8859ce798bcf0e5d23770ab6873e0615"
],
- "markers": "python_version >= '3.6'",
- "version": "==2.8.2"
+ "index": "pypi",
+ "version": "==2.1.0"
},
"google-api-python-client": {
"hashes": [
- "sha256:1766c700eee14809ca1f7f52868c937755153289ea77ecdfd73dea6910e9a34d",
- "sha256:7837094c6d35cc8e680b60ebefe37f117ad521f3b263b0c7a6efa0b2f84cb17a"
+ "sha256:1c6267c7f018d86afc62dd8ec844a3e7189022a35ee239ed704cbda010888998",
+ "sha256:75edc13a5c6dd9ff6f47721162a845edc343b4987ee059842e9a7905ad62e917"
],
- "markers": "python_version >= '3.7'",
- "version": "==2.55.0"
+ "index": "pypi",
+ "version": "==2.24.0"
},
"google-auth": {
"hashes": [
- "sha256:1deba4a54f95ef67b4139eaf5c20eaa7047215eec9f6a2344599b8596db8863b",
- "sha256:7904dbd44b745c7323fef29565adee2fe7ff48473e2d94443aced40b0404a395"
+ "sha256:2800f6dfad29c6ced5faf9ca0c38ea8ba1ebe2559b10c029bd021e3de3301627",
+ "sha256:91892727c09cf5d090c391936a8e67ef5b9a9794c2f426b3d0ceedddbcc0ef50"
],
- "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'",
- "version": "==2.10.0"
+ "index": "pypi",
+ "version": "==2.3.0"
},
"google-auth-httplib2": {
"hashes": [
"sha256:31e49c36c6b5643b57e82617cb3e021e3e1d2df9da63af67252c02fa9c1f4a10",
"sha256:a07c39fd632becacd3f07718dfd6021bf396978f03ad3ce4321d060015cc30ac"
],
+ "index": "pypi",
"version": "==0.1.0"
},
+ "google-auth-oauthlib": {
+ "hashes": [
+ "sha256:3f2a6e802eebbb6fb736a370fbf3b055edcb6b52878bf2f26330b5e041316c73",
+ "sha256:a90a072f6993f2c327067bf65270046384cda5a8ecb20b94ea9a687f1f233a7a"
+ ],
+ "index": "pypi",
+ "version": "==0.4.6"
+ },
"googleapis-common-protos": {
"hashes": [
- "sha256:8eb2cbc91b69feaf23e32452a7ae60e791e09967d81d4fcc7fc388182d1bd394",
- "sha256:c25873c47279387cfdcbdafa36149887901d36202cb645a0e4f29686bf6e4417"
+ "sha256:a88ee8903aa0a81f6c3cec2d5cf62d3c8aa67c06439b0496b49048fb1854ebf4",
+ "sha256:f6d561ab8fb16b30020b940e2dd01cd80082f4762fa9f3ee670f4419b4b8dbd0"
],
- "markers": "python_version >= '3.7'",
- "version": "==1.56.4"
+ "index": "pypi",
+ "version": "==1.53.0"
},
"httplib2": {
"hashes": [
- "sha256:58a98e45b4b1a48273073f905d2961666ecf0fbac4250ea5b47aef259eb5c585",
- "sha256:8b6a905cb1c79eefd03f8669fd993c36dc341f7c558f056cb5a33b5c2f458543"
+ "sha256:0efbcb8bfbfbc11578130d87d8afcc65c2274c6eb446e59fc674e4d7c972d327",
+ "sha256:8fa4dbf2fbf839b71f8c7837a831e00fcdc860feca99b8bda58ceae4bc53d185"
],
- "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
- "version": "==0.20.4"
+ "index": "pypi",
+ "version": "==0.20.1"
},
"idna": {
"hashes": [
- "sha256:84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff",
- "sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d"
+ "sha256:14475042e284991034cb48e06f6851428fb14c4dc953acd9be9a5e95c7b6dd7a",
+ "sha256:467fbad99067910785144ce333826c71fb0e63a425657295239737f7ecd125f3"
+ ],
+ "index": "pypi",
+ "version": "==3.2"
+ },
+ "macholib": {
+ "hashes": [
+ "sha256:44c40f2cd7d6726af8fa6fe22549178d3a4dfecc35a9cd15ea916d9c83a688e0",
+ "sha256:557bbfa1bb255c20e9abafe7ed6cd8046b48d9525db2f9b77d3122a63a2a8bf8"
+ ],
+ "index": "pypi",
+ "version": "==1.16.2"
+ },
+ "nuitka": {
+ "hashes": [
+ "sha256:a6127afa922411ad418308685330ba432cca9b7049b70013d5e25f0db3b337dd"
+ ],
+ "index": "pypi",
+ "version": "==1.3.1"
+ },
+ "oauthlib": {
+ "hashes": [
+ "sha256:42bf6354c2ed8c6acb54d971fce6f88193d97297e18602a3a886603f9d7730cc",
+ "sha256:8f0215fcc533dd8dd1bee6f4c412d4f0cd7297307d43ac61666389e3bc3198a3"
+ ],
+ "index": "pypi",
+ "version": "==3.1.1"
+ },
+ "orderedset": {
+ "hashes": [
+ "sha256:b2f5ccfb5a86e7b3b3ddf18b29779cc18b24653abf9d6da4bebecf33780a6e29"
],
- "markers": "python_version >= '3.5'",
- "version": "==3.3"
+ "index": "pypi",
+ "version": "==2.0.3"
},
"progressbar": {
"hashes": [
"sha256:5d81cb529da2e223b53962afd6c8ca0f05c6670e40309a7219eacc36af9b6c63"
],
+ "index": "pypi",
"version": "==2.5"
},
"protobuf": {
"hashes": [
- "sha256:0275902f8292039d4a022319d3f86e8b231ac4c51d7be4cb797890fb78c16b85",
- "sha256:142ef5d73d6cd1bd8ab539d7d73c3722f31d33e64914e01bb91439cfcef11a9f",
- "sha256:2ea8c841cc6422aea07d0f4f71f0e5e6e130de9a4b6c31a53b9d2a41a75f2d54",
- "sha256:47b7cf3e542fd50a3a7c24d0da13451bc362a32c0a9b905714942ea8cf35fa11",
- "sha256:5783dc0d6edae631145337fabb18503b4f77274f94cdd22a4b26b9fe5029e718",
- "sha256:5b95c5f515334dd3a811762e3c588b469bf39d4ee7b7f47ac1e0c41dc73809f7",
- "sha256:5e47947fbfefd5a1bdc7c28eea1d197ea6dba5812789c2429667831a55ef71b7",
- "sha256:7e51f6244e53e936abadf624ab3a0f06dc106b27473997374fbb34e6b2eb1e60",
- "sha256:a8119c029c60cf29b7eea5a9f56648482388e874611243f41cd10aff0a0e5461",
- "sha256:adeccfbffbf4c9d1e77da86dc995d76c837d01387e412066cc803ad037000892",
- "sha256:cb50d93ef748671b7e2537658869e00aaa8175d717d8e73a23fcd58842883229",
- "sha256:d9b0398ff68017015ec2a37fb0ab390363a654362b15ca2e4543d3c82587768f",
- "sha256:e113f3d1629cebc911b107ce704f1a17d7e1589efef5c498e202bd47df223955",
- "sha256:fd62b6eda64e199b5da651d6be42af2aa8e30805961af1fc5f70292affca78e3"
+ "sha256:0851b5b89191e1976d34fa2e8eb8659829dfb45252053224cf9df857fb5f6a45",
+ "sha256:09d9268f6f9da81b7657adcf2fb397524c82f20cdf9e0db3ff4e7567977abd67",
+ "sha256:10544fc7ace885a882623083c24da5b14148c77563acddc3c58d66f6153c09cd",
+ "sha256:1c9bb40503751087300dd12ce2e90899d68628977905c76effc48e66d089391e",
+ "sha256:387f621bf7295a331f8c8a6962d097ceddeb85356792888cfa6a5c6bfc6886a4",
+ "sha256:3c1644f8a7f19b45c7a4c32278e2a55ae9e7e2f9e5f02d960a61f04a4890d3e6",
+ "sha256:4d19c9cb805fd2be1d59eee39e152367ee92a30167e77bd06c8819f8f0009a4c",
+ "sha256:61ca58e14033ca0dfa484a31d57237c1be3b6013454c7f53876a20fc88dd69b1",
+ "sha256:6f714f5de9d40b3bec90ede4a688cce52f637ccdc5403afcda1f67598f4fdcd7",
+ "sha256:7a7be937c319146cc9f2626f0181e6809062c353e1fe449ecd0df374ba1036b2",
+ "sha256:7e2f0677d68ecdd1cfda2abea65873f5bc7c3f5aae199404a3f5c1d1198c1a63",
+ "sha256:8c1c5d3966c856f60a9d8d62f4455d70c31026422acdd5c228edf22b65b16c38",
+ "sha256:93bad12895d8b0ebc66b605c2ef1802311595f881aef032d9f13282b7550e6b2",
+ "sha256:c0e2790c580070cff2921b93d562539ae027064340151c50db6aaf94c33048cd",
+ "sha256:c492c217d3f69f4d2d5619571e52ab98538edbf53caf67e53ea92bd0a3b5670f",
+ "sha256:d6d927774c0ec746fed15a4faff5f44aad0b7a3421fadb6f3ae5ca1f2f8ae26e",
+ "sha256:d76201380f41a2d83fb613a4683059d1fcafbe969518b3e409e279a8788fde2f",
+ "sha256:e2ee8b11e3eb2ed38f12137c3c132270a0b1dd509e317228ac47b67f21a583f1",
+ "sha256:e9ac691f7b24e4371dcd3980e4f5d6c840a2010da37986203053fee995786ec5",
+ "sha256:f20f803892f2135e8b96dc58c9a0c6a7ad8436794bf8784af229498d939b4c77",
+ "sha256:fa6d1049d5315566f55c04d0b50c0033415144f96a9d25c820dc542fe2bb7f45"
],
- "markers": "python_version >= '3.7'",
- "version": "==4.21.4"
+ "index": "pypi",
+ "version": "==3.18.1"
},
"pyasn1": {
"hashes": [
@@ -159,6 +206,7 @@
"sha256:e89bf84b5437b532b0803ba5c9a5e054d21fec423a89952a74f87fa2c9b7bce2",
"sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3"
],
+ "index": "pypi",
"version": "==0.4.8"
},
"pyasn1-modules": {
@@ -177,51 +225,53 @@
"sha256:f39edd8c4ecaa4556e989147ebf219227e2cd2e8a43c7e7fcb1f1c18c5fd6a3d",
"sha256:fe0644d9ab041506b62782e92b06b8c68cca799e1a9636ec398675459e031405"
],
+ "index": "pypi",
"version": "==0.2.8"
},
"pyinstaller": {
"hashes": [
- "sha256:066b83a0eae89ad418749e9e29429c152f1ff096230df11a093bbded8344ade0",
- "sha256:4c658a762cbbee5c5997c364578804d4c1e91d688de8ed018710c2705bf1474b",
- "sha256:7591a9e1e2a481f99eb99036d6786e20717bc10f8f0a8ef519958cb3172fac7a",
- "sha256:794e8e143ae73d1acdd2cbc52f02dd34cdfbd954ede34c7067ce68a268d8b7c2",
- "sha256:9efbad718fe29d425336f289871c67bfc6a1876013037fee2ef1f7613fd675a2",
- "sha256:a0e7a80fe04204add3f743101958a3cf62b79e7ccda838388784b1a35bb5b27f",
- "sha256:aa9d1b8639d2402438c179ae1c8acfd41b65366c803a5a6484a5bb7586e88647",
- "sha256:b38505b445cdd64279f04650e0ddfe5ac6cef61996b14f06e3c99da8aac3cfbe",
- "sha256:cae43e01e04f37185d23202aba8cf2837fa24ec3d0aa5ebc42e26f404e6eba95",
- "sha256:d4123992556951ed24e11cf2eec9a4e18e94ee8bd63ca49d9b7fc37387097eb9",
- "sha256:de71d4669806e4d54b23b477cc077e2e8fe9c4d57e79ed32d22b7585137fd7b7"
+ "sha256:0e5953937d35f0b37543cc6915dacaf3239bcbdf3fd3ecbb7866645468a16775",
+ "sha256:0f80e2403e76630ad3392c71f09c1a4284e8d8a8a99fb55ff3a0aba0e06300ed",
+ "sha256:1ac3f09b838710c43e34b0a7ad003bd168a754b0b786c561b47baf1af9104354",
+ "sha256:28a8a0da656493aa32d9665e2f6f84775da0f23174859ed8facaa4226fe77a17",
+ "sha256:2c1dd9d11cfc48bab61eeb06de69a3d1ad742bbb2ef14716965ca0333dd43a5b",
+ "sha256:3180b9bf22263380adc5e2ee051b7c21463292877215bbe70c9155dc76f4b966",
+ "sha256:3e51e18a16dec0414079762843cf892a5d70749ad56ca7b3c7b5f8367dc50b1e",
+ "sha256:9b47c10fbefac6f6493266f8b1689109b2b14efa9142dbd2cd7549226a4568b7",
+ "sha256:9cdb8ee8622ee8d2c6cd67f001b610019d4371a8bf3f7850562640ce786894d7",
+ "sha256:b967ae71ab7b05e18608dbb4518da5afa54f0835927cb7a5ce52ab8fffed03b6",
+ "sha256:dfc12e92fe10ae645dd0dd1fcfa4cd7677b2e96119e3cd4980d742e09bb78925",
+ "sha256:f35f06d48faea0ad738429c009941059beebaa306e9d9ead95f1df4b441de2aa"
],
"index": "pypi",
- "version": "==5.3"
+ "version": "==5.7.0"
},
"pyinstaller-hooks-contrib": {
"hashes": [
- "sha256:c4210fc50282c9c6a918e485e0bfae9405592390508e3be9fde19acc2213da56",
- "sha256:e46f099934dd4577fb1ddcf37a99fa04027c92f8f5291c8802f326345988d001"
+ "sha256:1a125838a22d7b35a18993c6e56d3c5cc3ad7da00954f95bc5606523939203f2",
+ "sha256:5ae8da3a92cf20e37b3e00604d0c3468896e7d746e5c1449473597a724331b0b"
],
"markers": "python_version >= '3.7'",
- "version": "==2022.8"
+ "version": "==2022.14"
},
"pyparsing": {
"hashes": [
- "sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb",
- "sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc"
+ "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1",
+ "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"
],
- "markers": "python_version >= '3.1'",
- "version": "==3.0.9"
+ "index": "pypi",
+ "version": "==2.4.7"
},
"pyqt5": {
"hashes": [
- "sha256:08694f0a4c7d4f3d36b2311b1920e6283240ad3b7c09b515e08262e195dcdf37",
- "sha256:1a793748c60d5aff3850b7abf84d47c1d41edb11231b7d7c16bef602c36be643",
- "sha256:232fe5b135a095cbd024cf341d928fc672c963f88e6a52b0c605be8177c2fdb5",
- "sha256:755121a52b3a08cb07275c10ebb96576d36e320e572591db16cfdbc558101594",
- "sha256:e319c9d8639e0729235c1b09c99afdadad96fa3dbd8392ab561b5ab5946ee6ef"
+ "sha256:213bebd51821ed89b4d5b35bb10dbe67564228b3568f463a351a08e8b1677025",
+ "sha256:2a69597e0dd11caabe75fae133feca66387819fc9bc050f547e5551bce97e5be",
+ "sha256:883a549382fc22d29a0568f3ef20b38c8e7ab633a59498ac4eb63a3bf36d3fd3",
+ "sha256:8c0848ba790a895801d5bfd171da31cad3e551dbcc4e59677a3b622de2ceca98",
+ "sha256:a88526a271e846e44779bb9ad7a738c6d3c4a9d01e15a128ecfc6dd4696393b7"
],
"index": "pypi",
- "version": "==5.15.7"
+ "version": "==5.15.4"
},
"pyqt5-qt5": {
"hashes": [
@@ -230,84 +280,156 @@
"sha256:76980cd3d7ae87e3c7a33bfebfaee84448fd650bad6840471d6cae199b56e154",
"sha256:9cc7a768b1921f4b982ebc00a318ccb38578e44e45316c7a4a850e953e1dd327"
],
+ "index": "pypi",
"version": "==5.15.2"
},
"pyqt5-sip": {
"hashes": [
- "sha256:0f77655c62ec91d47c2c99143f248624d44dd2d8a12d016e7c020508ad418aca",
- "sha256:205f3e1b3eea3597d8e878936c1a06e04bd23a59e8b179ee806465d72eea3071",
- "sha256:3126c84568ab341c12e46ded2230f62a9a78752a70fdab13713f89a71cd44f73",
- "sha256:4031547dfb679be309094bfa79254f5badc5ddbe66b9ad38e319d84a7d612443",
- "sha256:42320e7a94b1085ed85d49794ed4ccfe86f1cae80b44a894db908a8aba2bc60e",
- "sha256:4e5c1559311515291ea0ab0635529f14536954e3b973a7c7890ab7e4de1c2c23",
- "sha256:51e377789d59196213eddf458e6927f33ba9d217b614d17d20df16c9a8b2c41c",
- "sha256:686071be054e5be6ca5aaaef7960931d4ba917277e839e2e978c7cbe3f43bb6e",
- "sha256:9356260d4feb60dbac0ab66f8a791a0d2cda1bf98c9dec8e575904a045fbf7c5",
- "sha256:9bca450c5306890cb002fe36bbca18f979dd9e5b810b766dce8e3ce5e66ba795",
- "sha256:ad21ca0ee8cae2a41b61fc04949dccfab6fe008749627d94e8c7078cb7a73af1",
- "sha256:b4710fd85b57edef716cc55fae45bfd5bfac6fc7ba91036f1dcc3f331ca0eb39",
- "sha256:b69a1911f768b489846335e31e49eb34795c6b5a038ca24d894d751e3b0b44da",
- "sha256:d12b81c3a08abf7657a2ebc7d3649852a1f327eb2146ebadf45930486d32e920",
- "sha256:ec5e9ef78852e1f96f86d7e15c9215878422b83dde36d44f1539a3062942f19c",
- "sha256:f1f9e312ff8284d6dfebc5366f6f7d103f84eec23a4da0be0482403933e68660",
- "sha256:f6b72035da4e8fecbb0bc4a972e30a5674a9ad5608dbddaa517e983782dbf3bf"
+ "sha256:055581c6fed44ba4302b70eeb82e979ff70400037358908f251cd85cbb3dbd93",
+ "sha256:0fc9aefacf502696710b36cdc9fa2a61487f55ee883dbcf2c2a6477e261546f7",
+ "sha256:42274a501ab4806d2c31659170db14c282b8313d2255458064666d9e70d96206",
+ "sha256:4347bd81d30c8e3181e553b3734f91658cfbdd8f1a19f254777f906870974e6d",
+ "sha256:485972daff2fb0311013f471998f8ec8262ea381bded244f9d14edaad5f54271",
+ "sha256:4f8e05fe01d54275877c59018d8e82dcdd0bc5696053a8b830eecea3ce806121",
+ "sha256:69a3ad4259172e2b1aa9060de211efac39ddd734a517b1924d9c6c0cc4f55f96",
+ "sha256:6a8701892a01a5a2a4720872361197cc80fdd5f49c8482d488ddf38c9c84f055",
+ "sha256:6d5bca2fc222d58e8093ee8a81a6e3437067bb22bc3f86d06ec8be721e15e90a",
+ "sha256:83c3220b1ca36eb8623ba2eb3766637b19eb0ce9f42336ad8253656d32750c0a",
+ "sha256:a25b9843c7da6a1608f310879c38e6434331aab1dc2fe6cb65c14f1ecf33780e",
+ "sha256:ac57d796c78117eb39edd1d1d1aea90354651efac9d3590aac67fa4983f99f1f",
+ "sha256:b09f4cd36a4831229fb77c424d89635fa937d97765ec90685e2f257e56a2685a",
+ "sha256:c446971c360a0a1030282a69375a08c78e8a61d568bfd6dab3dcc5cf8817f644",
+ "sha256:c5216403d4d8d857ec4a61f631d3945e44fa248aa2415e9ee9369ab7c8a4d0c7",
+ "sha256:d3e4489d7c2b0ece9d203ae66e573939f7f60d4d29e089c9f11daa17cfeaae32",
+ "sha256:d59af63120d1475b2bf94fe8062610720a9be1e8940ea146c7f42bb449d49067",
+ "sha256:d85002238b5180bce4b245c13d6face848faa1a7a9e5c6e292025004f2fd619a",
+ "sha256:d8b2bdff7bbf45bc975c113a03b14fd669dc0c73e1327f02706666a7dd51a197",
+ "sha256:dd05c768c2b55ffe56a9d49ce6cc77cdf3d53dbfad935258a9e347cbfd9a5850",
+ "sha256:fc43f2d7c438517ee33e929e8ae77132749c15909afab6aeece5fcf4147ffdb5"
],
- "markers": "python_version >= '3.7'",
- "version": "==12.11.0"
+ "index": "pypi",
+ "version": "==12.9.0"
},
"pysrt": {
"hashes": [
"sha256:b4f844ba33e4e7743e9db746492f3a193dc0bc112b153914698e7c1cdeb9b0b9"
],
+ "index": "pypi",
"version": "==1.1.2"
},
"requests": {
"hashes": [
- "sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983",
- "sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"
+ "sha256:6c1246513ecd5ecd4528a0906f910e8f0f9c6b8ec72030dc9fd154dc1a6efd24",
+ "sha256:b8aa58f8cf793ffd8782d3d8cb19e66ef36f7aba4353eec859e74678b01b07a7"
],
- "markers": "python_version >= '3.7' and python_version < '4'",
- "version": "==2.28.1"
+ "index": "pypi",
+ "version": "==2.26.0"
+ },
+ "requests-oauthlib": {
+ "hashes": [
+ "sha256:7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d",
+ "sha256:b4261601a71fd721a8bd6d7aa1cc1d6a8a93b4a9f5e96626f8e4d91e8beeaa6a",
+ "sha256:fa6c47b933f01060936d87ae9327fead68768b69c6c9ea2109c48be30f2d4dbc"
+ ],
+ "index": "pypi",
+ "version": "==1.3.0"
},
"rsa": {
"hashes": [
- "sha256:90260d9058e514786967344d0ef75fa8727eed8a7d2e43ce9f4bcf1b536174f7",
- "sha256:e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21"
+ "sha256:78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2",
+ "sha256:9d689e6ca1b3038bc82bf8d23e944b6b6037bc02301a574935b2dd946e0353b9"
],
- "markers": "python_version >= '3.6'",
- "version": "==4.9"
+ "index": "pypi",
+ "version": "==4.7.2"
},
"setuptools": {
"hashes": [
- "sha256:73bfae4791da7c1c56882ab17577d00f7a37a0347162aeb9360058de0dc25083",
- "sha256:abcb76aa4decd7a17cbe0e4b31bdf549d106ba7f668e87e0860f5f7b84b9b3fe"
+ "sha256:57f6f22bde4e042978bcd50176fdb381d7c21a9efa4041202288d3737a0c6a54",
+ "sha256:a7620757bf984b58deaf32fc8a4577a9bbc0850cf92c20e1ce41c38c19e5fb75"
],
"markers": "python_version >= '3.7'",
- "version": "==63.4.2"
+ "version": "==65.6.3"
},
"six": {
"hashes": [
"sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926",
"sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"
],
- "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+ "index": "pypi",
"version": "==1.16.0"
},
"uritemplate": {
"hashes": [
- "sha256:4346edfc5c3b79f694bccd6d6099a322bbeb628dbf2cd86eea55a456ce5124f0",
- "sha256:830c08b8d99bdd312ea4ead05994a38e8936266f84b9a7878232db50b044e02e"
+ "sha256:07620c3f3f8eed1f12600845892b0e036a2420acf513c53f7de0abd911a5894f",
+ "sha256:5af8ad10cec94f215e3f48112de2022e1d5a37ed427fbd88652fa908f2ab7cae"
],
- "markers": "python_version >= '3.6'",
- "version": "==4.1.1"
+ "index": "pypi",
+ "version": "==3.0.1"
},
"urllib3": {
"hashes": [
- "sha256:c33ccba33c819596124764c23a97d25f32b28433ba0dedeb77d873a38722c9bc",
- "sha256:ea6e8fb210b19d950fab93b60c9009226c63a28808bc8386e05301e25883ac0a"
+ "sha256:4987c65554f7a2dbf30c18fd48778ef124af6fab771a377103da0585e2336ece",
+ "sha256:c4fdf4019605b6e5423637e01bc9fe4daef873709a7973e195ceba0a62bbc844"
],
- "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' and python_version < '4'",
- "version": "==1.26.11"
+ "index": "pypi",
+ "version": "==1.26.7"
+ },
+ "zstandard": {
+ "hashes": [
+ "sha256:04c298d381a3b6274b0a8001f0da0ec7819d052ad9c3b0863fe8c7f154061f76",
+ "sha256:0fde1c56ec118940974e726c2a27e5b54e71e16c6f81d0b4722112b91d2d9009",
+ "sha256:126aa8433773efad0871f624339c7984a9c43913952f77d5abeee7f95a0c0860",
+ "sha256:1a4fb8b4ac6772e4d656103ccaf2e43e45bd16b5da324b963d58ef360d09eb73",
+ "sha256:2e4812720582d0803e84aefa2ac48ce1e1e6e200ca3ce1ae2be6d410c1d637ae",
+ "sha256:2f01b27d0b453f07cbcff01405cdd007e71f5d6410eb01303a16ba19213e58e4",
+ "sha256:31d12fcd942dd8dbf52ca5f6b1bbe287f44e5d551a081a983ff3ea2082867863",
+ "sha256:3c927b6aa682c6d96225e1c797f4a5d0b9f777b327dea912b23471aaf5385376",
+ "sha256:3d5bb598963ac1f1f5b72dd006adb46ca6203e4fb7269a5b6e1f99e85b07ad38",
+ "sha256:401508efe02341ae681752a87e8ac9ef76df85ef1a238a7a21786a489d2c983d",
+ "sha256:4514b19abe6dbd36d6c5d75c54faca24b1ceb3999193c5b1f4b685abeabde3d0",
+ "sha256:47dfa52bed3097c705451bafd56dac26535545a987b6759fa39da1602349d7ba",
+ "sha256:4fa496d2d674c6e9cffc561639d17009d29adee84a27cf1e12d3c9be14aa8feb",
+ "sha256:55a513ec67e85abd8b8b83af8813368036f03e2d29a50fc94033504918273980",
+ "sha256:55b3187e0bed004533149882ef8c24e954321f3be81f8a9ceffe35099b82a0d0",
+ "sha256:593f96718ad906e24d6534187fdade28b611f8ed06e27ba972ba48aecec45fc6",
+ "sha256:5e21032efe673b887464667d09406bab6e16d96b09ad87e80859e3a20b6745b6",
+ "sha256:60a86b7b2b1c300779167cf595e019e61afcc0e20c4838692983a921db9006ac",
+ "sha256:619f9bf37cdb4c3dc9d4120d2a1003f5db9446f3618a323219f408f6a9df6725",
+ "sha256:660b91eca10ee1b44c47843894abe3e6cfd80e50c90dee3123befbf7ca486bd3",
+ "sha256:67710d220af405f5ce22712fa741d85e8b3ada7a457ea419b038469ba379837c",
+ "sha256:6caed86cd47ae93915d9031dc04be5283c275e1a2af2ceff33932071f3eeff4d",
+ "sha256:6d2182e648e79213b3881998b30225b3f4b1f3e681f1c1eaf4cacf19bde1040d",
+ "sha256:72758c9f785831d9d744af282d54c3e0f9db34f7eae521c33798695464993da2",
+ "sha256:74c2637d12eaacb503b0b06efdf55199a11b1d7c580bd3dd9dfe84cac97ef2f6",
+ "sha256:755020d5aeb1b10bffd93d119e7709a2a7475b6ad79c8d5226cea3f76d152ce0",
+ "sha256:7ccc4727300f223184520a6064c161a90b5d0283accd72d1455bcd85ec44dd0d",
+ "sha256:81ab21d03e3b0351847a86a0b298b297fde1e152752614138021d6d16a476ea6",
+ "sha256:8371217dff635cfc0220db2720fc3ce728cd47e72bb7572cca035332823dbdfc",
+ "sha256:876567136b0359f6581ecd892bdb4ca03a0eead0265db73206c78cff03bcdb0f",
+ "sha256:879411d04068bd489db57dcf6b82ffad3c5fb2a1fdd30817c566d8b7bedee442",
+ "sha256:898500957ae5e7f31b7271ace4e6f3625b38c0ac84e8cedde8de3a77a7fdae5e",
+ "sha256:8c9ca56345b0c5574db47560603de9d05f63cce5dfeb3a456eb60f3fec737ff2",
+ "sha256:8ec2c146e10b59c376b6bc0369929647fcd95404a503a7aa0990f21c16462248",
+ "sha256:8f7c68de4f362c1b2f426395fe4e05028c56d0782b2ec3ae18a5416eaf775576",
+ "sha256:909bdd4e19ea437eb9b45d6695d722f6f0fd9d8f493e837d70f92062b9f39faf",
+ "sha256:9d97c713433087ba5cee61a3e8edb54029753d45a4288ad61a176fa4718033ce",
+ "sha256:a65e0119ad39e855427520f7829618f78eb2824aa05e63ff19b466080cd99210",
+ "sha256:aa9087571729c968cd853d54b3f6e9d0ec61e45cd2c31e0eb8a0d4bdbbe6da2f",
+ "sha256:aef0889417eda2db000d791f9739f5cecb9ccdd45c98f82c6be531bdc67ff0f2",
+ "sha256:b253d0c53c8ee12c3e53d181fb9ef6ce2cd9c41cbca1c56a535e4fc8ec41e241",
+ "sha256:b80f6f6478f9d4ca26daee6c61584499493bf97950cfaa1a02b16bb5c2c17e70",
+ "sha256:be6329b5ba18ec5d32dc26181e0148e423347ed936dda48bf49fb243895d1566",
+ "sha256:c7560f622e3849cc8f3e999791a915addd08fafe80b47fcf3ffbda5b5151047c",
+ "sha256:d1a7a716bb04b1c3c4a707e38e2dee46ac544fff931e66d7ae944f3019fc55b8",
+ "sha256:d63b04e16df8ea21dfcedbf5a60e11cbba9d835d44cb3cbff233cfd037a916d5",
+ "sha256:d777d239036815e9b3a093fa9208ad314c040c26d7246617e70e23025b60083a",
+ "sha256:e892d3177380ec080550b56a7ffeab680af25575d291766bdd875147ba246a91",
+ "sha256:e9c90a44470f2999779057aeaf33461cbd8bb59d8f15e983150d10bb260e16e0",
+ "sha256:f097dda5d4f9b9b01b3c9fa2069f9c02929365f48f341feddf3d6b32510a2f93",
+ "sha256:f4ebfe03cbae821ef994b2e58e4df6a087470cc522aca502614e82a143365d45"
+ ],
+ "index": "pypi",
+ "version": "==0.19.0"
}
},
"develop": {}
diff --git a/autosub/__init__.py b/autosub/__init__.py
index 88afbde0..5d20d45e 100755
--- a/autosub/__init__.py
+++ b/autosub/__init__.py
@@ -16,7 +16,6 @@
import sys
import tempfile
import wave
-
import json
import requests
try:
@@ -31,6 +30,7 @@
LANGUAGE_CODES, GOOGLE_SPEECH_API_KEY, GOOGLE_SPEECH_API_URL,
)
from autosub.formatters import FORMATTERS
+from pathlib import PurePath
DEFAULT_SUBTITLE_FORMAT = 'srt'
DEFAULT_CONCURRENCY = 10
@@ -156,7 +156,6 @@ def __call__(self, sentence):
except KeyboardInterrupt:
return None
-
def which(program):
"""
Return the path for a given executable.
@@ -174,16 +173,11 @@ def is_exe(file_path):
if is_exe(program):
return program
else:
- #looks for file in the script execution folder before checking on system path
- #if its running frozen code from pyInstaller the path depends on pyInstaller tmp folder
- if hasattr(sys, 'frozen'):
- current_dir = sys._MEIPASS #tmp dir where the bundled binary is extracted
- else:
- #checks the current directory for ffmpeg binary when running locally directly from interpreter
- current_dir = os.getcwd()
- local_program = os.path.join(current_dir, program)
- if is_exe(local_program):
- return local_program
+ local_program_path = PurePath(__file__).parent.parent.joinpath(program)
+ str_local_program_path = str(local_program_path)
+ print("path_ffmpeg",str_local_program_path)
+ if is_exe(str_local_program_path):
+ return str_local_program_path
else:
for path in os.environ["PATH"].split(os.pathsep):
path = path.strip('"')
diff --git a/freeze-linux-nuitka.sh b/freeze-linux-nuitka.sh
new file mode 100755
index 00000000..c4a22a1c
--- /dev/null
+++ b/freeze-linux-nuitka.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+pipenv shell
+nuitka3 --enable-plugin=pyqt5 --include-data-files="ffmpeg"="./" --include-data-files="pytranscriber/gui/*.qm"="pytranscriber/gui/" main.py --onefile
\ No newline at end of file
diff --git a/freeze-nuitka-win.bat b/freeze-nuitka-win.bat
new file mode 100644
index 00000000..d369b68a
--- /dev/null
+++ b/freeze-nuitka-win.bat
@@ -0,0 +1 @@
+nuitka --enable-plugin=pyqt5 --include-data-files="ffmpeg.exe"="./" --include-data-files="pytranscriber/gui/*.qm"="pytranscriber/gui/" main.py --onefile --disable-console
\ No newline at end of file
diff --git a/pytranscriber/control/ctr_main.py b/pytranscriber/control/ctr_main.py
index 5ab6d54e..4bd49149 100644
--- a/pytranscriber/control/ctr_main.py
+++ b/pytranscriber/control/ctr_main.py
@@ -23,6 +23,7 @@
from pytranscriber.gui.gui import Ui_window
import os
import sys
+from pathlib import PurePath
class Ctr_Main():
@@ -246,15 +247,10 @@ def __listenerChangeLanguage(self, event):
#if it was a valid event
if currentLang:
- #loads the languageFile
- if hasattr(sys, 'frozen'):
- #if frozen gets temp folder
- currentDir = sys._MEIPASS
- else:
- #app folder
- currentDir = ""
- pathLangFile = os.path.join(currentDir,'pytranscriber/gui/'+currentLang )
- self.objGUI.trans.load(pathLangFile)
+ currentDir = PurePath(__file__).parent.parent.parent
+ pathLangFile = currentDir.joinpath('pytranscriber').joinpath('gui').joinpath(currentLang)
+ print("pathlangfile", pathLangFile)
+ self.objGUI.trans.load(str(pathLangFile))
QtWidgets.QApplication.instance().installTranslator(self.objGUI.trans)
else:
@@ -321,7 +317,7 @@ def __listenerBSelectMedia(self):
# options = QFileDialog.Options()
options = QFileDialog.DontUseNativeDialog
files, _ = QFileDialog.getOpenFileNames(self.objGUI.centralwidget, "Select media", "",
- "All Media Files (*.mp3 *.mp4 *.wav *.m4a *.wma *.ogg *.mkv *.webm)")
+ "All Media Files (*.mp3 *.mp4 *.wav *.m4a *.wma *.ogg *.ogv *.mkv *.webm *.ts)")
if files:
self.objGUI.qlwListFilesSelected.addItems(files)
diff --git a/pytranscriber/gui/gui.py b/pytranscriber/gui/gui.py
index d8c2cd74..eb0c0766 100644
--- a/pytranscriber/gui/gui.py
+++ b/pytranscriber/gui/gui.py
@@ -126,7 +126,7 @@ def setupUi(self, window):
def retranslateUi(self, window):
_translate = QtCore.QCoreApplication.translate
- window.setWindowTitle(_translate("window", "pyTranscriber - v1.8 - 17/08/2022"))
+ window.setWindowTitle(_translate("window", "pyTranscriber - v1.9 - 21/12/2022"))
self.bSelectMedia.setText(_translate("window", "Select file(s)"))
self.bConvert.setText(_translate("window", "Transcribe Audio / Generate Subtitles"))
self.bOpenOutputFolder.setText(_translate("window", "Open Output Folder"))
diff --git a/pytranscriber/gui/gui.ui b/pytranscriber/gui/gui.ui
index dc9c6ded..89d6a42d 100755
--- a/pytranscriber/gui/gui.ui
+++ b/pytranscriber/gui/gui.ui
@@ -11,7 +11,7 @@
- pyTranscriber - v1.8 - 17/08/2022
+ pyTranscriber - v1.9 - 21/12/2022
diff --git a/pytranscriber/util/util.py b/pytranscriber/util/util.py
index 7343032d..90e9fd31 100644
--- a/pytranscriber/util/util.py
+++ b/pytranscriber/util/util.py
@@ -16,6 +16,10 @@
import os
import subprocess
import requests
+import re
+from pathlib import PureWindowsPath
+from urllib.parse import urlparse
+
class MyUtil(object):
@@ -44,4 +48,4 @@ def is_internet_connected(proxies=None):
@staticmethod
def percentage(currentval, maxval):
- return 100 * currentval / float(maxval)
+ return 100 * currentval / float(maxval)
\ No newline at end of file
diff --git a/requirements.txt b/requirements.txt
index 0f79083d..4bd8ac85 100644
Binary files a/requirements.txt and b/requirements.txt differ
diff --git a/script-installer-windows.iss b/script-installer-windows.iss
old mode 100755
new mode 100644
index 7278bfd9..b643c8c8
--- a/script-installer-windows.iss
+++ b/script-installer-windows.iss
@@ -7,8 +7,8 @@
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{5240AB76-FC62-4BFA-A1EF-FA49AF701F80}
AppName=pyTranscriber
-AppVersion=1.7
-;AppVerName=pyTranscriber 1.7
+AppVersion=1.9
+AppVerName=pyTranscriber 1.9
AppPublisher=Raryel C. Souza
AppPublisherURL=https://github.com/raryelcostasouza/pyTranscriber
AppSupportURL=https://github.com/raryelcostasouza/pyTranscriber