Permalink
Browse files

Merge branch 'release-6.3.5'

* release-6.3.5: (194 commits)
  TUT: fix hostName connection setup
  TUT: fix helper hostname setting
  TUT: Add ctemplate include dir
  TUT: Add vsqlite include dir
  MW-1231 CLICK ON WRENCH ICON ( BESIDE ANY TABLE NAME) DO WORKBENCH TO CRASH
  plugin: python: Add protection before removal page not in the page list
  This patch fixes 2 related bugs in rev-eng from SQL file.
  fixed unquote identifer in parser module
  JSON Editor - tree display corrections
  Fix crash in jsonview related to double free jsonview: set_data to null which will explicitly delete it in the treenoderef c-tor
  disable wbcopytables test until we bring test servers back
  Json view: fixed layout problem of validation text + button (button did not show up on OSX).
  fixes on the packaging scripts regarding the vsqlite new directories
  close [MW-1184] [ADMIN] UNHANDLED EXCEPTION WHEN STOPPING/STARTING SERVICE Fix compatibility with siwg 3.0.7
  JSON Editor - delete nodes problem
  [MW-1127] WORKBENCH ALWAYS REPORTS A MEB RESTORE BEING A COPY-BACK-AND-APPLY-LOG
  Parser: fixed string handling (quoting).
  MW-1214 MYSQL WORKBENCH CRASH ON OSX EL CAPITAN
  Mac: scintilla, setting EOL mode in one file to LF only.
  Mac: rework of canvas drawing
  ...
  • Loading branch information...
2 parents 7fa589b + 88b7064 commit aa9272c882eb9305f67890d177d70821cb5d28b3 @mike-lischke mike-lischke committed Oct 22, 2015
Showing with 25,304 additions and 12,090 deletions.
  1. +33 −3 CMakeLists.txt
  2. +7 −2 Info.plist
  3. +131 −39 MySQLWorkbench.xcodeproj/project.pbxproj
  4. +9 −6 MySQLWorkbench.xcodeproj/xcshareddata/xcschemes/MySQLWorkbench.xcscheme
  5. +16 −6 MySQLWorkbench.xcodeproj/xcshareddata/xcschemes/MySQLWorkbenchCom.xcscheme
  6. +1 −0 PrepareOutputDir.cmd
  7. +1 −1 UnitTests-Info.plist
  8. +1 −1 WBExtras-Info.plist
  9. +9 −4 backend/wbprivate/model/wb_catalog_tree_view.cpp
  10. +46 −1 backend/wbprivate/model/wb_component_physical.cpp
  11. +6 −3 backend/wbprivate/model/wb_model_diagram_form.cpp
  12. +1 −1 backend/wbprivate/sqlide/unit-tests/wb_sql_editor_form_test.cpp
  13. +1 −1 backend/wbprivate/sqlide/unit-tests/wb_sql_editor_help_test.cpp
  14. +7 −4 backend/wbprivate/sqlide/wb_live_schema_tree.cpp
  15. +57 −39 backend/wbprivate/sqlide/wb_sql_editor_form.cpp
  16. +2 −0 backend/wbprivate/sqlide/wb_sql_editor_form.h
  17. +162 −130 backend/wbprivate/sqlide/wb_sql_editor_tree_controller.cpp
  18. +4 −4 backend/wbprivate/sqlide/wb_sql_editor_tree_controller.h
  19. +3 −3 backend/wbprivate/workbench/about_box.cpp
  20. +3 −3 backend/wbprivate/workbench/wb_context.cpp
  21. +0 −19 backend/wbprivate/workbench/wb_context_ui.cpp
  22. +9 −4 backend/wbprivate/workbench/wb_module.cpp
  23. +1 −2 backend/wbprivate/workbench/wb_version.h
  24. +6 −0 backend/wbpublic/CMakeLists.txt
  25. +11 −0 backend/wbpublic/grt/editor_base.cpp
  26. +2 −1 backend/wbpublic/grt/editor_base.h
  27. +6 −6 backend/wbpublic/grtdb/charset_utils.cpp
  28. +24 −24 backend/wbpublic/grtdb/charset_utils.h
  29. +4 −4 backend/wbpublic/grtdb/db_object_helpers.cpp
  30. +51 −11 backend/wbpublic/grtdb/unit-tests/grtdb_tests.cpp
  31. +28 −19 backend/wbpublic/grtsqlparser/mysql_parser_services.cpp
  32. +93 −82 backend/wbpublic/grtsqlparser/mysql_parser_services.h
  33. +131 −5 backend/wbpublic/grtui/binary_data_editor.cpp
  34. +5 −2 backend/wbpublic/grtui/binary_data_editor.h
  35. +7 −4 backend/wbpublic/grtui/grtdb_connect_panel.cpp
  36. +3 −1 backend/wbpublic/objimpl/db.query/db_query_Resultset.cpp
  37. +3 −3 backend/wbpublic/objimpl/db/db_Column.cpp
  38. +6 −3 backend/wbpublic/sqlide/recordset_be.cpp
  39. +1 −1 backend/wbpublic/sqlide/recordset_be.h
  40. +40 −2 backend/wbpublic/sqlide/recordset_sql_storage.cpp
  41. +9 −1 backend/wbpublic/sqlide/recordset_text_storage.cpp
  42. +5 −7 backend/wbpublic/sqlide/sql_editor_be_autocomplete.cpp
  43. +8 −0 backend/wbpublic/sqlide/unit-tests/autocompletion_cache_test.cpp
  44. +6 −6 backend/windows/wbprivate.wr/wbprivate.wr.vcxproj
  45. +1 −64 backend/windows/wbpublic.wr/src/TableEditorWrapper.cpp
  46. +1 −16 backend/windows/wbpublic.wr/src/TableEditorWrapper.h
  47. +5 −1 build/cmake/Modules/FindCTemplate.cmake
  48. +4 −0 build/cmake/Modules/FindIODBC.cmake
  49. +3 −3 build/cmake/Modules/FindMySQLCppConn.cmake
  50. +5 −1 build/cmake/Modules/FindVSqlite.cmake
  51. 0 build/cmake/Modules/{check_cppconn_1_1_5.cpp → check_cppconn_1_1_6.cpp}
  52. +6 −0 build/debian.in/changelog
  53. +5 −1 build/debian.in/control
  54. +6 −1 build/debian.in/control.commercial
  55. +25 −11 build/debian.in/rules
  56. +7 −0 build/debian.in/rules.commercial
  57. +7 −6 build/gen_deb_sources.py
  58. +2 −4 build/msi/source/mysql_workbench.xml
  59. +27 −21 build/msi/source/mysql_workbench_fragment.xml
  60. +32 −13 build/mysql-workbench.spec.in
  61. +6 −6 ext/Aga.Controls/Aga.Controls.Design.csproj
  62. +6 −6 ext/Aga.Controls/Aga.Controls.csproj
  63. +2,257 −2,255 ext/scintilla/cocoa/ScintillaCocoa.mm
  64. +1 −1 ext/scintilla/cocoa/ScintillaFramework/Info.plist
  65. +3 −1 ext/scintilla/cocoa/ScintillaFramework/ScintillaFramework.xcodeproj/project.pbxproj
  66. +30 −6 ext/scintilla/cocoa/ScintillaTest/ScintillaTest.xcodeproj/project.pbxproj
  67. +1,884 −1,884 ext/scintilla/cocoa/ScintillaView.mm
  68. +33 −15 frontend/common/preferences_form.cpp
  69. +5 −2 frontend/linux/linux_utilities/listmodel_wrapper.h
  70. +1 −0 frontend/linux/workbench/CMakeLists.txt
  71. +9 −5 frontend/linux/workbench/sqlide_output_view.cpp
  72. +1 −2 frontend/mac/components/WBTabView/WBTabView/Sources/SchemaTabs/WBSchemaTabView.m
  73. +10 −8 frontend/mac/components/WBTabView/WBTabView/Sources/WBTabView.m
  74. +4 −4 frontend/mac/workbench/WBOverviewComponents.mm
  75. +2 −2 frontend/windows/MySQLCsUtilities/Properties/AssemblyInfo.cs
  76. +3 −4 frontend/windows/MySQLWorkbench/Properties/AssemblyInfo.cs
  77. +2 −0 frontend/windows/WBControls/FlatTabControl.cs
  78. +2 −2 frontend/windows/WBControls/Properties/AssemblyInfo.Design.cs
  79. +2 −2 frontend/windows/WBControls/Properties/AssemblyInfo.cs
  80. +2 −2 frontend/windows/WBPlugins/Properties/AssemblyInfo.cs
  81. +6 −2 frontend/windows/WBPlugins/WBPlugins.csproj
  82. +68 −47 frontend/windows/grt.db/DbObjectEditorPages.Designer.cs
  83. +19 −13 frontend/windows/grt.db/ObjectEditorView.cs
  84. +2 −2 frontend/windows/grt.db/Properties/AssemblyInfo.cs
  85. +9 −3 frontend/windows/grt.db/grt.db.fe.csproj
  86. +2 −2 frontend/windows/sqlide/Properties/AssemblyInfo.cs
  87. +2 −2 generated/Makefile
  88. +922 −591 generated/grts/structs.db.h
  89. +534 −14 generated/grts/structs.db.mysql.h
  90. +0 −4 generated/grts/structs.db.query.h
  91. +21 −21 generated/grts/structs.h
  92. +22 −16 generated/grts/structs.meta.h
  93. +2 −5 generated/grts/structs.ui.h
  94. +30 −29 generated/grts/structs.workbench.model.h
  95. +9 −0 images/ui/CMakeLists.txt
  96. BIN images/ui/JS_Datatype_Array.png
  97. BIN images/ui/JS_Datatype_Array@2x.png
  98. BIN images/ui/JS_Datatype_Bin.png
  99. BIN images/ui/JS_Datatype_Bin@2x.png
  100. BIN images/ui/JS_Datatype_Bool.png
  101. BIN images/ui/JS_Datatype_Bool@2x.png
  102. BIN images/ui/JS_Datatype_Date.png
  103. BIN images/ui/JS_Datatype_Date@2x.png
  104. BIN images/ui/JS_Datatype_Null.png
  105. BIN images/ui/JS_Datatype_Null@2x.png
  106. BIN images/ui/JS_Datatype_Number.png
  107. BIN images/ui/JS_Datatype_Number@2x.png
  108. BIN images/ui/JS_Datatype_Object.png
  109. BIN images/ui/JS_Datatype_Object@2x.png
  110. BIN images/ui/JS_Datatype_ObjectId.png
  111. BIN images/ui/JS_Datatype_ObjectId@2x.png
  112. BIN images/ui/JS_Datatype_String.png
  113. BIN images/ui/JS_Datatype_String@2x.png
  114. +2 −2 library/base.windows/Properties/AssemblyInfo.cs
  115. +1 −1 library/base.wr/src/AssemblyInfo.cpp
  116. +14 −18 library/base/base.vcxproj
  117. +6 −0 library/base/base.vcxproj.filters
  118. +354 −0 library/base/base/event_log.cpp
  119. +50 −0 library/base/base/event_log.h
  120. +7 −3 library/base/base/string_utilities.h
  121. +1 −1 library/base/config_file.cpp
  122. +103 −2 library/base/string_utilities.cpp
  123. +1 −1 library/base/unit-tests/string_utilities_test.cpp
  124. +8 −2 library/base/unit-tests/threading_test.cpp
  125. +6 −6 library/cdbc/cdbc.vcxproj
  126. +1 −1 library/cdbc/src/driver_manager.cpp
  127. +1 −0 library/forms/CMakeLists.txt
  128. +18 −0 library/forms/cocoa/MFCodeEditor.mm
  129. +2 −22 library/forms/cocoa/MFTextEntry.h
  130. +157 −136 library/forms/cocoa/MFTextEntry.mm
  131. +1 −5 library/forms/cocoa/MFWebBrowser.h
  132. +4 −4 library/forms/cocoa/MFWebBrowser.mm
  133. +12 −0 library/forms/code_editor.cpp
  134. +3,760 −0 library/forms/jsonview.cpp
  135. +2 −0 library/forms/mforms/code_editor.h
  136. +529 −0 library/forms/mforms/jsonview.h
  137. +1 −1 library/forms/mforms/textbox.h
  138. +8 −6 library/forms/mysql.forms.vcxproj
  139. +7 −1 library/forms/mysql.forms.vcxproj.filters
  140. +1 −1 library/forms/stdafx.h
  141. +16 −9 library/forms/stub/src/stub_utilities.cpp
  142. +1 −1 library/forms/stub/stub_utilities.h
  143. +2 −2 library/forms/swig/mforms.i
  144. +224 −0 library/forms/unit-tests/json_test.cpp
  145. +7 −1 library/forms/unit-tests/utilities_test.cpp
  146. +1 −1 library/forms/winforms/AssemblyInfo.cpp
  147. +12 −18 library/grt/grt.vcxproj
  148. +3 −3 library/grt/src/grtpp_grt.cpp
  149. +98 −4 library/grt/src/python_context.cpp
  150. +7 −3 library/grt/src/python_context.h
  151. +46 −47 library/grt/unit-tests/diff/grtdiff_alter_test.cpp
  152. +1 −2 library/mysql.canvas/src/cocoa/MCanvasViewer.h
  153. +7 −22 library/mysql.canvas/src/cocoa/MCanvasViewer.mm
  154. +60 −25 library/mysql.canvas/src/mdc_canvas_view_macosx.cpp
  155. +20 −13 library/mysql.canvas/src/mdc_canvas_view_macosx.h
  156. +643 −391 library/mysql.parser/grammar/MySQL.g
  157. +487 −363 library/mysql.parser/grammar/MySQLSimpleParser.g
  158. +373 −366 library/mysql.parser/grammar/predefined.tokens
  159. +1 −1 library/mysql.parser/grammar/test.parser/mysql_parserAppDelegate.m
  160. +85 −28 library/mysql.parser/mysql-parser-common.cpp
  161. +4 −2 library/mysql.parser/mysql-parser-common.h
  162. +114 −90 library/mysql.parser/mysql-parser.cpp
  163. +3 −2 library/mysql.parser/mysql-parser.h
  164. +4 −0 library/mysql.parser/mysql-recognition-types.h
  165. +907 −9 library/mysql.parser/mysql-scanner.cpp
  166. +31 −5 library/mysql.parser/mysql-scanner.h
  167. +11 −3 library/mysql.parser/mysql-syntax-check.cpp
  168. +3 −2 library/mysql.parser/mysql-syntax-check.h
  169. +205 −209 library/mysql.parser/unit-tests/mysql_parser_test.cpp
  170. +2 −0 library/python/workbench/client_utils.py
  171. +1 −1 library/python/workbench/database_schema_selector_widget.py
  172. +2 −2 library/python/workbench/os_utils.py
  173. +4 −0 library/sql.parser/source/CMakeLists.txt
  174. +2 −0 library/sql.parser/source/ctype-simple.cpp
  175. +1 −0 library/sql.parser/source/ctype-ucs2.cpp
  176. +2 −2 library/sql.parser/source/m_string.h
  177. +1 −1 library/sql.parser/source/my_global.h
  178. +1 −1 library/sql.parser/source/my_static.h
  179. +4 −4 library/sql.parser/source/my_sys.h
  180. +4 −2 modules/db.generic/db_generic_migration_grt.py
  181. +1 −1 modules/db.mssql/db_mssql_grt.py
  182. +4,275 −625 modules/db.mysql.parser/src/mysql_parser_module.cpp
  183. +132 −99 modules/db.mysql.parser/src/mysql_parser_module.h
  184. +27 −9 modules/db.mysql.query/src/dbquery.cpp
  185. +5 −0 modules/db.mysql.sqlparser/CMakeLists.txt
  186. +1 −1 modules/db.mysql.sqlparser/src/mysql_sql_parser.cpp
  187. +5 −5 modules/db.mysql.sqlparser/src/mysql_sql_parser_utils.h
  188. +2 −2 modules/db.mysql/db_mysql_migration_grt.py
  189. +20 −6 modules/db.mysql/db_mysql_re_grt.py
  190. +2,324 −2,308 modules/db.mysql/res/mysql_rdbms_info.xml
  191. +1 −1 modules/db.mysql/src/db_mysql_diffsqlgen.cpp
  192. +30 −22 modules/db.mysql/src/module_db_mysql.cpp
  193. +2 −0 modules/db.mysql/unit-tests/test_db_mysql_schema_diff_reporting.cpp
  194. +2 −0 modules/db.postgresql/db_postgresql_re_grt.py
  195. +0 −1 modules/wb.fabric.interface/stdafx.h
  196. +1 −1 modules/wb.model/src/graph_renderer.cpp
  197. +9 −9 modules/wb.model/src/wb_model.cpp
  198. +4 −1 modules/wb.mysql.import/src/wb_mysql_import_dbd4.cpp
  199. +11 −3 modules/wb.utils/wb_utils_grt.py
  200. +227 −150 plugins/db.mysql.editors/backend/mysql_table_editor.cpp
  201. +7 −9 plugins/db.mysql.editors/backend/mysql_table_editor.h
  202. +3 −3 plugins/db.mysql.editors/backend/unit-tests/mysql_routinegroup_editor_test.cpp
  203. +1 −0 plugins/db.mysql.editors/linux/CMakeLists.txt
  204. +5 −3 plugins/db.mysql.editors/linux/mysql_routinegroup_editor_fe.cpp
  205. +61 −4 plugins/db.mysql.editors/linux/mysql_table_editor_column_page.cpp
  206. +5 −0 plugins/db.mysql.editors/linux/mysql_table_editor_column_page.h
  207. +185 −83 plugins/db.mysql.editors/linux/res/editor_mysql_table.glade
  208. +176 −76 plugins/db.mysql.editors/linux/res/editor_mysql_table_live.glade
  209. +14 −10 plugins/db.mysql.editors/macosx/MySQLSchemaEditor.xib
  210. +5 −0 plugins/db.mysql.editors/macosx/MySQLTableEditor.h
  211. +40 −7 plugins/db.mysql.editors/macosx/MySQLTableEditor.mm
  212. +353 −79 plugins/db.mysql.editors/macosx/MySQLTableEditor.xib
  213. +1 −1 plugins/db.mysql.editors/macosx/db.mysql.editors-Info.plist
  214. +43 −29 plugins/db.mysql.editors/windows/cs/DbMysqlSchemaEditor.Designer.cs
  215. +64 −65 plugins/db.mysql.editors/windows/cs/DbMysqlSchemaEditor.resx
  216. +21 −4 plugins/db.mysql.editors/windows/cs/DbMysqlTableColumnsListModel.cs
  217. +273 −165 plugins/db.mysql.editors/windows/cs/DbMysqlTableEditor.Designer.cs
  218. +133 −18 plugins/db.mysql.editors/windows/cs/DbMysqlTableEditor.cs
  219. +81 −82 plugins/db.mysql.editors/windows/cs/DbMysqlTableEditor.resx
  220. +17 −16 plugins/db.mysql.editors/windows/cs/DbMysqlViewEditor.Designer.cs
  221. +140 −140 plugins/db.mysql.editors/windows/cs/DbMysqlViewEditor.resx
  222. +3 −3 plugins/db.mysql.editors/windows/cs/Properties/AssemblyInfo.cs
  223. +25 −8 plugins/db.mysql.editors/windows/cs/db.mysql.editors.wbp.fe.csproj
  224. +19 −15 plugins/db.mysql.editors/windows/wrapper/MySQLTableEditorWrapper.h
  225. +1 −0 plugins/db.mysql/CMakeLists.txt
  226. +14 −3 plugins/db.mysql/backend/db_rev_eng_be.cpp
  227. +21 −1 plugins/db.mysql/backend/db_rev_eng_be.h
  228. +23 −15 plugins/db.mysql/backend/sql_import_be.cpp
  229. +25 −2 plugins/db.mysql/backend/sql_import_be.h
  230. +6 −6 plugins/db.mysql/db.mysql.wbp.vcxproj
  231. +2 −0 plugins/db.mysql/frontend/db_reverse_engineer_script.cpp
  232. +44 −53 plugins/migration/copytable/copytable.cpp
  233. +2 −3 plugins/migration/copytable/copytable.h
  234. +2 −3 plugins/migration/copytable/main.cpp
  235. +1 −2 plugins/migration/copytable/stdafx.h
  236. +6 −6 plugins/migration/copytable/wb.migration.copytable.vcxproj
  237. +1 −0 plugins/migration/dbcopy/db_copy_overview.py
  238. +1 −1 plugins/migration/dbcopy/db_copy_report.py
  239. +1 −0 plugins/migration/frontend/migration_source_selection.py
  240. +3 −0 plugins/wb.admin/CMakeLists.txt
  241. +1 −7 plugins/wb.admin/backend/config/gen-opt/1_mysqld2optlist.py
  242. +2 −9 plugins/wb.admin/backend/config/gen-opt/options_layout.py
  243. +7 −7 plugins/wb.admin/backend/config/gen-opt/variable_groups.py
  244. +1 −8 plugins/wb.admin/backend/opts.py
  245. +1 −1 plugins/wb.admin/backend/wb_admin_security_be.py
  246. +26 −21 plugins/wb.admin/backend/wb_admin_ssh.py
  247. +60 −14 plugins/wb.admin/backend/wb_log_reader.py
  248. +4 −0 plugins/wb.admin/backend/wb_server_control.py
  249. +31 −1 plugins/wb.admin/backend/wb_server_management.py
  250. +12 −3 plugins/wb.admin/frontend/wb_admin_config_file_ui.py
  251. +1 −0 plugins/wb.admin/frontend/wb_admin_configuration_startup.py
  252. +8 −2 plugins/wb.admin/frontend/wb_admin_export.py
  253. +2 −3 plugins/wb.admin/frontend/wb_admin_export_options.py
  254. +87 −10 plugins/wb.admin/frontend/wb_admin_logs.py
  255. +3 −2 plugins/wb.admin/frontend/wb_admin_main.py
  256. +42 −12 plugins/wb.admin/frontend/wb_admin_security.py
  257. +3 −1 plugins/wb.admin/frontend/wb_admin_server_status.py
  258. +19 −0 plugins/wb.admin/frontend/wb_admin_utils.py
  259. +1 −1 plugins/wb.model.editors/macosx/wb.model.editors-Info.plist
  260. +2 −2 plugins/wb.model.editors/windows/cs/Properties/AssemblyInfo.cs
  261. +1 −0 plugins/wb.model.snippets/CMakeLists.txt
  262. +1 −1 plugins/wb.printing/macosx/wb.printing-Info.plist
  263. +2 −2 plugins/wb.printing/windows/cs/Properties/AssemblyInfo.cs
  264. +3 −2 plugins/wb.sqlide/sqlide_power_export_wizard.py
  265. +66 −26 plugins/wb.sqlide/sqlide_power_import_export_be.py
  266. +20 −7 plugins/wb.sqlide/sqlide_power_import_wizard.py
  267. +3 −1 prefix/mforms_prefix.pch
  268. +180 −160 res/grt/structs.db.mysql.xml
  269. +26 −13 res/grt/structs.db.xml
  270. +1 −0 res/grt/structs.ui.xml
  271. +0 −18 res/scripts/CMakeLists.txt
  272. +0 −3 res/scripts/firewall/linux/disable.sql
  273. +0 −3 res/scripts/firewall/linux/enable.sql
  274. +0 −35 res/scripts/firewall/linux/install.sql
  275. +0 −16 res/scripts/firewall/linux/uninstall.sql
  276. +0 −3 res/scripts/firewall/windows/disable.sql
  277. +0 −3 res/scripts/firewall/windows/enable.sql
  278. +0 −35 res/scripts/firewall/windows/install.sql
  279. +0 −12 res/scripts/firewall/windows/uninstall.sql
  280. +23 −9 res/scripts/python/mysqlwbmeb.py
  281. +1 −1 res/scripts/sys/sys_reports.js
  282. +111 −24 res/scripts/vbs/mysqlwbmeb.vbs
  283. +1 −1 res/sqlidedata/templates/JSON.tpl
  284. +115 −13 res/wbdata/code_editor.xml
  285. +33 −0 res/wbdata/main_menu.xml
  286. +31 −28 set_wb_version
  287. +3 −3 tools/genobj/genobj.cpp
  288. +0 −2 tools/get_wb_version.sh
View
@@ -71,6 +71,36 @@ if (NOT PYTHONLIBS_FOUND)
pkg_check_modules(PYTHON REQUIRED python)
endif ()
+
+# We need to be able to detect python module versions and packages hence this function
+
+FIND_PROGRAM(PYTHON_EXEC "python")
+include(FindPackageHandleStandardArgs)
+function(find_python_module module minver)
+ string(TOUPPER ${module} module_upper)
+ if(NOT PY_${module_upper})
+ if(ARGC GREATER 2 AND ARGV2 STREQUAL "REQUIRED")
+ set(PY_${module}_FIND_REQUIRED TRUE)
+ endif()
+ # A module's location is usually a directory, but for binary modules
+ # it's a .so file.
+ execute_process(COMMAND "${PYTHON_EXEC}" "-c"
+ "import re, ${module}; print ${module}.__version__ if ${module}.__version__ >= '${minver}' else exit(1)"
+ RESULT_VARIABLE _${module}_status
+ OUTPUT_VARIABLE _${module}_location
+ ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE)
+ if(NOT _${module}_status)
+ set(PY_${module_upper} ${_${module}_location} CACHE STRING
+ "Location of Python module ${module}")
+ endif(NOT _${module}_status)
+ endif(NOT PY_${module_upper})
+ find_package_handle_standard_args(PY_${module} DEFAULT_MSG PY_${module_upper})
+endfunction(find_python_module)
+
+find_python_module(paramiko 1.15.1 QUIET)
+if(NOT PY_PARAMIKO)
+ message(WARNING "Paramiko wasn't found, you can still build Workbench, but may not work properly.")
+endif()
find_package(MySQL REQUIRED)
if (UNIX)
set(MYSQL_DEFINITIONS "-DBIG_JOINS=1" "-fno-strict-aliasing")
@@ -90,9 +120,9 @@ if (MYSQLCPPCONN_VERSION_1_1_4)
add_definitions(-DMYSQLCPPCONN_VERSION_1_1_4)
endif ()
-if (MYSQLCPPCONN_VERSION_1_1_5)
- add_definitions(-DMYSQLCPPCONN_VERSION_1_1_5)
-endif (MYSQLCPPCONN_VERSION_1_1_5)
+if (MYSQLCPPCONN_VERSION_1_1_6)
+ add_definitions(-DMYSQLCPPCONN_VERSION_1_1_6)
+endif (MYSQLCPPCONN_VERSION_1_1_6)
if (UNIX)
View
@@ -64,15 +64,15 @@
<key>CFBundleIconFile</key>
<string>MySQLWorkbench.icns</string>
<key>CFBundleIdentifier</key>
- <string>com.oracle.mysql.workbench</string>
+ <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
- <string>6.3.4</string>
+ <string>6.3.5</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
@@ -85,5 +85,10 @@
<string>MainMenu</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
+ <key>NSAppTransportSecurity</key>
+ <dict>
+ <key>NSAllowsArbitraryLoads</key>
+ <true/>
+ </dict>
</dict>
</plist>
Oops, something went wrong.
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0620"
+ LastUpgradeVersion = "0700"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
@@ -41,10 +41,10 @@
</BuildActionEntries>
</BuildAction>
<TestAction
+ buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
- shouldUseLaunchSchemeArgsEnv = "NO"
- buildConfiguration = "Debug">
+ shouldUseLaunchSchemeArgsEnv = "NO">
<Testables>
<TestableReference
skipped = "YES">
@@ -66,15 +66,18 @@
ReferencedContainer = "container:MySQLWorkbench.xcodeproj">
</BuildableReference>
</MacroExpansion>
+ <AdditionalOptions>
+ </AdditionalOptions>
</TestAction>
<LaunchAction
+ buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
- buildConfiguration = "Debug"
ignoresPersistentStateOnLaunch = "NO"
- debugDocumentVersioning = "YES"
+ debugDocumentVersioning = "NO"
+ debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
@@ -100,10 +103,10 @@
</AdditionalOptions>
</LaunchAction>
<ProfileAction
+ buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
- buildConfiguration = "Release"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0620"
+ LastUpgradeVersion = "0700"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
@@ -111,10 +111,10 @@
</BuildActionEntries>
</BuildAction>
<TestAction
+ buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
- shouldUseLaunchSchemeArgsEnv = "YES"
- buildConfiguration = "Debug">
+ shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
</Testables>
<MacroExpansion>
@@ -126,15 +126,18 @@
ReferencedContainer = "container:MySQLWorkbench.xcodeproj">
</BuildableReference>
</MacroExpansion>
+ <AdditionalOptions>
+ </AdditionalOptions>
</TestAction>
<LaunchAction
+ buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
- buildConfiguration = "Debug"
ignoresPersistentStateOnLaunch = "NO"
- debugDocumentVersioning = "YES"
+ debugDocumentVersioning = "NO"
+ debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
@@ -146,14 +149,21 @@
ReferencedContainer = "container:MySQLWorkbench.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
+ <EnvironmentVariables>
+ <EnvironmentVariable
+ key = "CG_CONTEXT_SHOW_BACKTRACE"
+ value = ""
+ isEnabled = "NO">
+ </EnvironmentVariable>
+ </EnvironmentVariables>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
+ buildConfiguration = "Debug"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
- buildConfiguration = "Debug"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
@@ -174,6 +174,7 @@ xcopy /i /y /d %PYTHON_LIB_DIR%\DLLs\*.pyd %TARGET_DIR%\python\DLLs 1> nul 2> nu
rem site packages that are release type independent
xcopy /i /s /y /d %PYTHON_COMMON_DIR%\site-packages\paramiko %TARGET_DIR%\python\site-packages\paramiko 1> nul 2> nul
+xcopy /i /s /y /d %PYTHON_COMMON_DIR%\site-packages\ecdsa %TARGET_DIR%\python\site-packages\ecdsa 1> nul 2> nul
rem site packages for debug/release types
xcopy /i /s /y /d %PYTHON_LIB_DIR%\site-packages\Crypto %TARGET_DIR%\python\site-packages\Crypto 1> nul 2> nul
@@ -7,7 +7,7 @@
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleIdentifier</key>
- <string>com.oracle.mysql.workbench.${PRODUCT_NAME:identifier}</string>
+ <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
View
@@ -7,7 +7,7 @@
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleIdentifier</key>
- <string>com.oracle.mysql.workbench.${PRODUCT_NAME:identifier}</string>
+ <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
@@ -184,20 +184,25 @@ mforms::TreeNodeRef CatalogTreeView::create_new_node(const ObjectType &otype, mf
}
CatalogTreeView::CatalogTreeView(ModelDiagramForm *owner)
-: mforms::TreeNodeView(mforms::TreeNoBorder | mforms::TreeNoHeader | mforms::TreeSizeSmall | mforms::TreeCanBeDragSource | mforms::TreeIndexOnTag)
+ : mforms::TreeNodeView(mforms::TreeNoBorder | mforms::TreeSizeSmall | mforms::TreeCanBeDragSource | mforms::TreeIndexOnTag
+#ifndef _WIN32
+ | mforms::TreeNoHeader
+#endif
+)
, _owner(owner)
{
_initialized = false;
-
+ bool showHeaderText = true;
set_selection_mode(mforms::TreeSelectMultiple);
#ifdef _WIN32
set_row_height(19);
+ showHeaderText = false;
#else
set_row_height(17);
#endif
- add_column(mforms::IconStringColumnType, "Name", 200);
- add_column(mforms::StringColumnType, "Presence", 20);
+ add_column(mforms::IconStringColumnType, showHeaderText ? "Name" : "", 200);
+ add_column(mforms::StringColumnType, showHeaderText ? "Presence" : "", 20);
end_columns();
_menu = new mforms::ContextMenu();
@@ -1618,6 +1618,33 @@ bool WBComponentPhysical::can_paste_object(const grt::ObjectRef &object)
return false;
}
+static void updateConnectionState(workbench_physical_TableFigureRef src, workbench_physical_TableFigureRef dst)
+{
+ workbench_physical_DiagramRef dstView = workbench_physical_DiagramRef::cast_from(dst->owner());
+ workbench_physical_DiagramRef srcView = workbench_physical_DiagramRef::cast_from(src->owner());
+
+ grt::ListRef<db_ForeignKey> dstKeys = dst->table()->foreignKeys();
+ grt::ListRef<db_ForeignKey> srcKeys = src->table()->foreignKeys();
+ for (grt::ListRef<db_ForeignKey>::const_iterator dstIt = dstKeys.begin(); dstIt != dstKeys.end(); ++dstIt)
+ {
+ workbench_physical_ConnectionRef dstConn = dstView->getConnectionForForeignKey(*dstIt);
+ if (dstConn.is_valid()) // If there's a connection we need to find out state of the src conn and copy it.
+ {
+ for (grt::ListRef<db_ForeignKey>::const_iterator srcIt = srcKeys.begin(); srcIt != srcKeys.end(); ++srcIt)
+ {
+ if (*srcIt == *dstIt)
+ {
+ workbench_physical_ConnectionRef srcConn = srcView->getConnectionForForeignKey(*srcIt);
+ if (srcConn.is_valid())
+ {
+ dstConn->visible(srcConn->visible());
+ dstConn->drawSplit(srcConn->drawSplit());
+ }
+ }
+ }
+ }
+ }
+}
model_ObjectRef WBComponentPhysical::paste_object(ModelDiagramForm *view, const grt::ObjectRef &object, grt::CopyContext &copy_context)
{
@@ -1645,14 +1672,32 @@ model_ObjectRef WBComponentPhysical::paste_object(ModelDiagramForm *view, const
if (model_FigureRef::can_wrap(object))
{
model_FigureRef figure(figures.back());
+
if (figure.is_valid())
{
model_FigureRef original(model_FigureRef::cast_from(object));
figure->color(original->color());
figure->top(original->top());
figure->left(original->left());
-
+ figure->expanded(original->expanded());
+ figure->width(original->width());
+ figure->height(original->height());
+
+ // We need to try to cast is to workbench_physical_TableFigureRef, so we can copy additional properties.
+ if (workbench_physical_TableFigureRef::can_wrap(original))
+ {
+ workbench_physical_TableFigureRef src(workbench_physical_TableFigureRef::cast_from(original));
+ workbench_physical_TableFigureRef dst(workbench_physical_TableFigureRef::cast_from(figure));
+ dst->indicesExpanded(src->indicesExpanded());
+ dst->triggersExpanded(src->triggersExpanded());
+ dst->foreignKeysExpanded(src->foreignKeysExpanded());
+ dst->height(src->height()); // Height needs to be recopied after we changed indicesExpanded property.
+
+ updateConnectionState(src, dst);
+
+ }
+
return figure;
}
}
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
@@ -77,8 +77,8 @@ static const double zoom_steps[]= {
ModelDiagramForm::ModelDiagramForm(WBComponent *owner, const model_DiagramRef &view)
-: _catalog_tree(NULL), _view(0), _owner(owner), _model_diagram(view), _mini_view(0), _menu(0),
-_toolbar(0), _tools_toolbar(0), _options_toolbar(0)
+ : _catalog_tree(NULL), _view(NULL), _owner(owner), _model_diagram(view), _mini_view(NULL), _menu(NULL),
+ _toolbar(NULL), _tools_toolbar(NULL), _options_toolbar(NULL)
{
_drag_panning= false;
_space_panning= false;
@@ -169,6 +169,9 @@ extern std::string find_icon_name(std::string icon_name, bool use_win8);
void ModelDiagramForm::update_toolbar_icons()
{
+ if (_toolbar == NULL)
+ return; // Can happen if the diagram hasn't shown yet.
+
bool use_win8;
switch (base::Color::get_active_scheme())
@@ -243,7 +243,7 @@ BEGIN_TEST_DATA_CLASS(wb_sql_editor_form_test)
void set_connection_properties(grt::GRT *grt, db_mgmt_ConnectionRef& connection)
{
grt::DictRef conn_params(grt);
- conn_params.set("host", grt::StringRef(test_params->get_host_name()));
+ conn_params.set("hostName", grt::StringRef(test_params->get_host_name()));
conn_params.set("port", grt::IntegerRef(test_params->get_port()));
conn_params.set("userName", grt::StringRef(test_params->get_user_name()));
conn_params.set("password", grt::StringRef(test_params->get_password()));
@@ -54,7 +54,7 @@ BEGIN_TEST_DATA_CLASS(wb_sql_editor_help_test)
void set_connection_properties(grt::GRT *grt, db_mgmt_ConnectionRef& connection)
{
grt::DictRef conn_params(grt);
- conn_params.set("host", grt::StringRef(test_params->get_host_name()));
+ conn_params.set("hostName", grt::StringRef(test_params->get_host_name()));
conn_params.set("port", grt::IntegerRef(test_params->get_port()));
conn_params.set("userName", grt::StringRef(test_params->get_user_name()));
conn_params.set("password", grt::StringRef(test_params->get_password()));
@@ -27,6 +27,7 @@
#include "base/log.h"
#include "mforms/app.h"
+#include <boost/make_shared.hpp>
using namespace wb;
using namespace bec;
@@ -1211,10 +1212,12 @@ void LiveSchemaTree::schema_contents_arrived(const std::string &schema_name,
int old_table_count = tables_node->count();
int old_view_count = tables_node->count();
- update_node_children(tables_node, tables, Table, true, just_append);
- update_node_children(views_node, views, View, true, just_append);
- update_node_children(procedures_node, procedures, Procedure,true, just_append);
- update_node_children(functions_node, functions, Function, true, just_append);
+ //We need to duplicate the data, because it's being changed inside update_node_children
+ //and we can't do this because it's shared between threads
+ update_node_children(tables_node, boost::make_shared<StringList>(*tables), Table, true, just_append);
+ update_node_children(views_node, boost::make_shared<StringList>(*views), View, true, just_append);
+ update_node_children(procedures_node, boost::make_shared<StringList>(*procedures), Procedure,true, just_append);
+ update_node_children(functions_node, boost::make_shared<StringList>(*functions), Function, true, just_append);
// If there were nodes that means this is a refresh, in such case loaded tables
Oops, something went wrong.

0 comments on commit aa9272c

Please sign in to comment.