{"id":4099,"date":"2017-06-06T16:00:30","date_gmt":"2017-06-06T12:00:30","guid":{"rendered":"https:\/\/dhtmlx.com\/blog\/?p=4099"},"modified":"2026-01-30T11:43:06","modified_gmt":"2026-01-30T08:43:06","slug":"gantt-scheduler-maintenance-release","status":"publish","type":"post","link":"https:\/\/dhtmlx.com\/blog\/gantt-scheduler-maintenance-release\/","title":{"rendered":"dhtmlxGantt 4.1.19 and dhtmlxScheduler 4.4.9 Released [PRO]"},"content":{"rendered":"<p>This summer we begin with the planned maintenance releases of <a href=\"\/\/dhtmlx.com\/docs\/products\/dhtmlxGantt\/\" target=\"_blank\">dhtmlxGantt<\/a> and <a href=\"\/\/dhtmlx.com\/docs\/products\/dhtmlxScheduler\/\" target=\"_blank\">dhtmlxScheduler<\/a>. New versions will bring you some enhancements that will make your work with our libraries more stable and efficient. <\/p>\n<p><strong>Here is a brief summary of what was fixed and improved in dhtmlxGantt 4.1.19:<\/strong><\/p>\n<ul>\n<li>Smart rendering &#8211; fix misalignments between timeline chart and lefthand grid after vertical scroll;<\/li>\n<li>Smart rendering &#8211; background misalignments on large timelines in IE;<\/li>\n<li>Smart rendering &#8211; fix regression with show_chart=false config;<\/li>\n<li>Time scales &#8211; fix issues with month scale columns sizes;<\/li>\n<li>Fixes for drag and drop in IE11 on touch enabled devices;  <\/li>\n<li>Keyboard navigation &#8211; fix various issues;<\/li>\n<li>Auto scheduling &#8211; fix bugs with unscheduled tasks;<\/li>\n<li>Fix regression with lightbox toggle controls;<\/li>\n<li>dataProcessor \u2013 issues with custom headers\/payload;<\/li>\n<li>Chrome &#8211; fix issues with double click handles as drag and drop in some cases;<\/li>\n<li>Minor fixes in locales.<\/li>\n<\/ul>\n<p>Haven&#8217;t used dhtmlxGantt PRO yet? <strong><a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxGantt\/download.shtml\" target=\"_blank\">Download free trial<\/a><\/strong><\/p>\n<p><strong>Here is the list of improvements in dhtmlxScheduler 4.4.9:<\/strong><\/p>\n<ul>\n<li>WAI-ARIA support &#8211; fix regression when wai-aria attributes are disabled;<\/li>\n<li>WAI-ARIA support &#8211; various improvements for JAWS support;<\/li>\n<li>Keyboard navigation &#8211; various bugfixes and improvements;<\/li>\n<li>Samples &#8211; fix invalid server config snippets;<\/li>\n<li>Cookie extension &#8211; fix the conflict between cookie and ajax loading timeouts;<\/li>\n<li>Year view &#8211; fix bug with creation events in year view;<\/li>\n<li>Drag and drop &#8211; fix incorrect mouse position on zoomed page;<\/li>\n<li>All-timed extension &#8211; fix drag and drop on touch devices;<\/li>\n<li>Dynamic loading &#8211; fix incorrect time range caused by server_utc config;<\/li>\n<li>Minor fixes in locales.<\/li>\n<\/ul>\n<p>Haven&#8217;t used dhtmlxScheduler PRO yet? <strong><a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxScheduler\/download.shtml\" target=\"_blank\">Download free trial<\/a><\/strong><\/p>\n<p><strong>Changes in dhtmlxConnector bundled with dhtmlxGantt and dhtmlxScheduler<\/strong><\/p>\n<p>Note that we&#8217;ve changed the default database adapter to PDO. So, if you use PDO driver, no changes should be required:<\/p>\n<div class=\"codecolorer-container php default codecolorer-noborder\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"php codecolorer\"><span class=\"re0\">$res<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> PDO<span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;mysql:host=192.168.1.251;dbname=schedulertest&quot;<\/span><span class=\"sy0\">,<\/span> <span class=\"st0\">&quot;scheduler&quot;<\/span><span class=\"sy0\">,<\/span> <span class=\"st0\">&quot;scheduler&quot;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><br \/>\n<span class=\"re0\">$dbtype<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">&quot;PDO&quot;<\/span><span class=\"sy0\">;<\/span><br \/>\n<br \/>\n<span class=\"kw1\">require_once<\/span><span class=\"br0\">&#40;<\/span><span class=\"st_h\">'connector\/scheduler_connector.php'<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><br \/>\n<span class=\"re0\">$scheduler<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> schedulerConnector<span class=\"br0\">&#40;<\/span><span class=\"re0\">$res<\/span><span class=\"sy0\">,<\/span> <span class=\"re0\">$dbtype<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><br \/>\n<span class=\"re0\">$scheduler<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">render_table<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;events&quot;<\/span><span class=\"sy0\">,<\/span><span class=\"st0\">&quot;event_id&quot;<\/span><span class=\"sy0\">,<\/span><span class=\"st0\">&quot;start_date,end_date,event_name,details&quot;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/div><\/div>\n<p>if you use php_mysql, then db_mysql.php has to be included manually and type of connection (&#8220;MySQL&#8221;) must be specified in the connector constructor:<\/p>\n<div class=\"codecolorer-container php default codecolorer-noborder\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"php codecolorer\"><span class=\"re0\">$res<\/span><span class=\"sy0\">=<\/span><span class=\"kw3\">mysql_connect<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;192.168.1.251&quot;<\/span><span class=\"sy0\">,<\/span> <span class=\"st0\">&quot;scheduler&quot;<\/span><span class=\"sy0\">,<\/span> <span class=\"st0\">&quot;scheduler&quot;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><br \/>\n<span class=\"kw3\">mysql_select_db<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;schedulertest&quot;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><br \/>\n<span class=\"re0\">$dbtype<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">&quot;MySQL&quot;<\/span><span class=\"sy0\">;<\/span><br \/>\n<br \/>\n<span class=\"kw1\">require_once<\/span> <span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;connector\/db_mysql.php&quot;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span> <span class=\"co1\">\/\/! important<\/span><br \/>\n<span class=\"kw1\">require_once<\/span> <span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;connector\/scheduler_connector.php&quot;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><br \/>\n<br \/>\n<span class=\"re0\">$scheduler<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> schedulerConnector<span class=\"br0\">&#40;<\/span><span class=\"re0\">$res<\/span><span class=\"sy0\">,<\/span> <span class=\"re0\">$dbtype<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><br \/>\n<span class=\"re0\">$scheduler<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">render_table<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;events&quot;<\/span><span class=\"sy0\">,<\/span><span class=\"st0\">&quot;event_id&quot;<\/span><span class=\"sy0\">,<\/span><span class=\"st0\">&quot;start_date,end_date,event_name,details&quot;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/div><\/div>\n<p><strong>How to get new version<\/strong><\/p>\n<p>The updated 4.1.19 and 4.4.9 versions are available for PRO users only. Updated GPL editions of the libraries will be available in the next minor\/major updates. You are welcome to grab new versions in the <a href=\"https:\/\/dhtmlx.com\/clients\/\" target=\"_blank\">Clients Area<\/a>. In addition, you&#8217;ll receive the email notification soon. <\/p>\n<p>As you may notice, we&#8217;ve provided some new tutorials of using dhtmlxGantt with popular technologies and frameworks:<\/p>\n<p><a href=\"\/\/dhtmlx.com\/blog\/dhtmlx-gantt-chart-usage-angularjs-2-framework\/\" target=\"_blank\">dhtmlxGantt + Angular 2<\/a><br \/>\n<a href=\"https:\/\/dhtmlx.com\/blog\/use-dhtmlxgantt-vue-js-framework-demo\/\" target=\"_blank\">dhtmlxGantt + Vue.js<\/a><br \/>\n<a href=\"https:\/\/dhtmlx.com\/blog\/create-react-gantt-chart-component-dhtmlxgantt\/\" target=\"_blank\">dhtmlxGantt + ReactJS<\/a><\/p>\n<p>Now we are collecting data on other popular technologies among dhtmlxGantt users, so you are welcome to leave your feedback by filling this short form:<\/p>\n<p><a class=\"typeform-share button\" href=\"https:\/\/dhtmlx.typeform.com\/to\/D3AU2V\" data-mode=\"drawer_right\" style=\"display:inline-block;text-decoration:none;background-color:#41b883;color:white;cursor:pointer;font-family:Helvetica,Arial,sans-serif;font-size:16px;line-height:40px;text-align:center;margin:0;height:40px;padding:0px 26px;border-radius:20px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:bold;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;\" target=\"_blank\">Request Integration <\/a> <script> (function() { var qs,js,q,s,d=document, gi=d.getElementById, ce=d.createElement, gt=d.getElementsByTagName, id=\"typef_orm_share\", b=\"https:\/\/embed.typeform.com\/\"; if(!gi.call(d,id)){ js=ce.call(d,\"script\"); js.id=id; js.src=b+\"embed.js\"; q=gt.call(d,\"script\")[0]; q.parentNode.insertBefore(js,q) } })() <\/script><\/p>\n<p>What is more, if you are interested in some specific usecase or guide, feel free to leave your requests in the comments section below.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This summer we begin with the planned maintenance releases of dhtmlxGantt and dhtmlxScheduler. New versions will bring you some enhancements that will make your work with our libraries more &#8230;<\/p>\n","protected":false},"author":2,"featured_media":4103,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17,70,1,38],"tags":[33,20,15,4],"class_list":["post-4099","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-posts-for-codeproject-com","category-releases","category-uncategorized","category-visible","tag-all-posts","tag-gantt","tag-dhtmlxscheduler","tag-dhtmlx-updates"],"_links":{"self":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/4099","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/comments?post=4099"}],"version-history":[{"count":1,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/4099\/revisions"}],"predecessor-version":[{"id":8888,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/4099\/revisions\/8888"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/media\/4103"}],"wp:attachment":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/media?parent=4099"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/categories?post=4099"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/tags?post=4099"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}