q2rad 0.1.174__py3-none-any.whl → 0.1.176__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of q2rad might be problematic. Click here for more details.

q2rad/q2make.py CHANGED
@@ -22,12 +22,13 @@ from q2gui.q2dialogs import q2mess, q2wait, q2ask
22
22
  from q2rad.q2appselector import Q2AppSelect
23
23
  from q2db.db import Q2Db
24
24
  from q2rad.q2appmanager import AppManager
25
+ from q2gui import q2app
25
26
 
26
27
 
27
28
  def create_q2apps_sqlite(dist_folder):
28
29
  database_folder_name = "databases"
29
- database_name_prefix = "app1"
30
30
  appsel = Q2AppSelect(f"{dist_folder}/q2apps.sqlite")
31
+ database_name_prefix = os.path.basename(appsel.q2_app.app_url) if appsel.q2_app.app_url else "app1"
31
32
  appsel.db.insert(
32
33
  "applications",
33
34
  {
@@ -49,12 +50,20 @@ def create_q2apps_sqlite(dist_folder):
49
50
  )
50
51
  appsel.q2_app.migrate_db_logic(db_logic)
51
52
  AppManager().import_json_app(AppManager().get_app_json(), db_logic)
53
+ db_logic.close()
54
+ db_logic = None
52
55
 
53
56
 
54
57
  def make_binary(self):
55
58
  form = Q2Form()
56
59
  form.add_control("make_folder", "Working folder", datatype="char", data="make")
57
- form.add_control("binary_name", "Application name", datatype="char", data="q2-app")
60
+ form.add_control(
61
+ "binary_name",
62
+ "Application name",
63
+ datatype="char",
64
+ data=os.path.basename(q2app.q2_app.app_url) if q2app.q2_app.app_url else "q2-app",
65
+ )
66
+ form.add_control("onefile", "One file", datatype="char", control="check")
58
67
  form.ok_button = 1
59
68
  form.cancel_button = 1
60
69
  form.show_form("Build binary")
@@ -66,6 +75,7 @@ def make_binary(self):
66
75
 
67
76
  make_folder = os.path.abspath(form.s.make_folder)
68
77
  binary_name = form.s.binary_name
78
+ onefile = "--onefile" if form.s.onefile else ""
69
79
  if not os.path.isdir(make_folder):
70
80
  os.mkdir(make_folder)
71
81
  if not os.path.isdir(make_folder):
@@ -74,7 +84,7 @@ def make_binary(self):
74
84
  main = "from q2rad.q2rad import Q2RadApp;app = Q2RadApp();app.run()"
75
85
  open(f"{make_folder}/{binary_name}.py", "w").write(main)
76
86
 
77
- dist_folder = os.path.abspath(f"{make_folder}\\dist\\{binary_name}")
87
+ dist_folder = os.path.abspath(f"{make_folder}/dist/{binary_name}")
78
88
 
79
89
  terminal = Q2Terminal(callback=print)
80
90
  # pynstaller_executable = os.path.dirname(sys.executable) + "/pyinstaller"
@@ -105,17 +115,30 @@ def make_binary(self):
105
115
  if not os.path.isfile(os.path.abspath(f"{make_folder}/q2rad.ico")):
106
116
  shutil.copy("assets/q2rad.ico", os.path.abspath(f"{make_folder}/q2rad.ico"))
107
117
  # run pyinstaller
108
- terminal.run(f"{pynstaller_executable} -y --noconsole {packages} -i q2rad.ico {binary_name}.py")
109
-
118
+ terminal.run(
119
+ f"{pynstaller_executable} -y --noconsole --clean {onefile} "
120
+ f" {packages} -i q2rad.ico '{binary_name}.py'"
121
+ )
110
122
  if not os.path.isdir(os.path.abspath(f"{dist_folder}/assets")):
111
123
  shutil.copytree("assets", os.path.abspath(f"{dist_folder}/assets"))
112
124
  create_q2apps_sqlite(f"{dist_folder}")
113
125
 
126
+ if onefile:
127
+ dist_folder = os.path.abspath(f"{make_folder}/dist")
128
+ for x in os.listdir(dist_folder):
129
+ if os.path.isfile(os.path.join(dist_folder, x)):
130
+ shutil.move(os.path.join(dist_folder, x), os.path.join(dist_folder, binary_name, x))
131
+
114
132
  w.close()
115
133
 
116
134
  if terminal.exit_code != 0:
117
135
  q2mess("Error occured while making binary! See output for details.")
118
136
  else:
119
- if q2ask(f"Success! You binary is located in <b>{dist_folder}</b> <br>Do you want to open the folder?") == 2:
137
+ if (
138
+ q2ask(
139
+ f"Success! You binary is located in <b>{dist_folder}</b> <br>Do you want to open the folder?"
140
+ )
141
+ == 2
142
+ ):
120
143
  open_folder(dist_folder)
121
144
  terminal.close()
q2rad/q2rad.py CHANGED
@@ -79,7 +79,7 @@ import traceback
79
79
  # TODO: excel custom format 2 report
80
80
 
81
81
 
82
- q2_modules = ["q2rad", "q2gui", "q2db", "q2report", "q2terminal", "q2data2docx", "q2googledrive"]
82
+ q2_modules = ["q2rad", "q2gui", "q2db", "q2report", "q2terminal", "q2data2docx"]
83
83
  const = q2const()
84
84
  _ = gettext.gettext
85
85
 
q2rad/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "0.1.174"
1
+ __version__ = "0.1.176"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: q2rad
3
- Version: 0.1.174
3
+ Version: 0.1.176
4
4
  Summary: RAD - database, GUI, reports
5
5
  Author: Andrei Puchko
6
6
  Author-email: andrei.puchko@gmx.de
@@ -6,19 +6,19 @@ q2rad/q2appselector.py,sha256=0EhOOxMappTo3eYIXrwwwlyokNy1RodLiH1a2wSvXiI,12238
6
6
  q2rad/q2constants.py,sha256=dQtN4OMvZw0FATDAFYjolI7eGMVUnNnbTl6qM-ggZ4I,3416
7
7
  q2rad/q2forms.py,sha256=A5VeBK8OdE3zn0L1TgvCk4OjpB1nLibJqBFfpVZr_Uc,10181
8
8
  q2rad/q2lines.py,sha256=vPhGtoteui-TH7nWMmmfUli8nt8S1V3gVbYHhs6qqaM,14481
9
- q2rad/q2make.py,sha256=pLDM70nFsvweMru-E2On4r-xUaJcUPUkGmCgbQHn2s0,4765
9
+ q2rad/q2make.py,sha256=IgKjslOiFKQjTbcs0XlEqOgm_YKqoFFnzokY4RIvJm4,5552
10
10
  q2rad/q2market.py,sha256=koWwKKc1MVn0ud2XDu_dal8lBFEMLX8KABpZO_OzTIM,2597
11
11
  q2rad/q2modules.py,sha256=N3OkUKfiwVZtmDyAtnJcs2Rprd7uIHd0HhjHTyFoN_s,4294
12
12
  q2rad/q2packages.py,sha256=IpWEcAT9nLCHUGViInEyM4T1cLEwK9GtNcdGF-pk0tw,3345
13
13
  q2rad/q2queries.py,sha256=abr4Fi3ou1CJsTD6vNfcjcakzjE6xTvh6OYY4bNWQLA,12314
14
- q2rad/q2rad.py,sha256=gfXEVYBCy1wrxuPtXIXr6b24J8uIL8kDRS7EOzk_zPU,42957
14
+ q2rad/q2rad.py,sha256=YFnFJhW-0f-bXIjTV1H_4BqQBXtQJTgSf_aGsOTGh-c,42940
15
15
  q2rad/q2raddb.py,sha256=DhqLFK3bTAOHBPPs8kU62WidRDEfPOocflxHvotGAlw,4454
16
16
  q2rad/q2reports.py,sha256=YhrbwFXTMTgtwIh5XSWaabseaZjRco34WO5mU676PU8,81238
17
17
  q2rad/q2stylesettings.py,sha256=esbfQoPgP7lJN2GRkqeQKjDpHCqCilJBzZf-c73ThCU,3593
18
18
  q2rad/q2utils.py,sha256=ne5arY4P2mIW9vWlpvig4Y62OiUDKQkU4fh2lOuzsw0,14551
19
- q2rad/version.py,sha256=EmgfZxOa4tE0C96_ZV9nMEq5licQFL7hVTeS87SCSdE,23
20
- q2rad-0.1.174.dist-info/entry_points.txt,sha256=DmsJQE6f3wYuhdN2h6ARYxSe8_d03paeepfGpdVj5rs,42
21
- q2rad-0.1.174.dist-info/LICENSE,sha256=JRR3LlR18ghhYXT4G2cWgXmnxRvcuVcKlqncWWK4MRY,10347
22
- q2rad-0.1.174.dist-info/METADATA,sha256=onDWMYEDsczOHWOJzxPLIn59hLT4JZ3TW_a4aQz-IpI,3375
23
- q2rad-0.1.174.dist-info/WHEEL,sha256=WGfLGfLX43Ei_YORXSnT54hxFygu34kMpcQdmgmEwCQ,88
24
- q2rad-0.1.174.dist-info/RECORD,,
19
+ q2rad/version.py,sha256=yiACry4Tn-v8T0DYTTygfQmb9WG4pVkXXkB6IB4a1yg,23
20
+ q2rad-0.1.176.dist-info/entry_points.txt,sha256=DmsJQE6f3wYuhdN2h6ARYxSe8_d03paeepfGpdVj5rs,42
21
+ q2rad-0.1.176.dist-info/LICENSE,sha256=JRR3LlR18ghhYXT4G2cWgXmnxRvcuVcKlqncWWK4MRY,10347
22
+ q2rad-0.1.176.dist-info/METADATA,sha256=vMg4kJbnMECwOO4QvdWysEWkeOc5w8S5AqOceql6eIs,3375
23
+ q2rad-0.1.176.dist-info/WHEEL,sha256=WGfLGfLX43Ei_YORXSnT54hxFygu34kMpcQdmgmEwCQ,88
24
+ q2rad-0.1.176.dist-info/RECORD,,