Request ability to revert to previous build

 

Desperately need to revert to a previous build.  

 

Anyone able to help or show how this may be done?

 

Since build 540 a whole group of traders has had their trading tools broken.

There are a couple machines which will still work but the majority have had

our custom indicator go blank as soon as the new build loaded this week.


The ability to revert or decline updates until stable should be allowed so we

who are developing tools may do so outside the Mql5 development cycle

which of course is just programming and will have the occasional bugs.


Please help if you are able.


Regards

Step on New Rails: Custom Indicators in MQL5
  • 2009.11.23
  • Андрей
  • www.mql5.com
I will not list all of the new possibilities and features of the new terminal and language. They are numerous, and some novelties are worth the discussion in a separate article. Also there is no code here, written with object-oriented programming, it is a too serous topic to be simply mentioned in a context as additional advantages for developers. In this article we will consider the indicators, their structure, drawing, types and their programming details, as compared to MQL4. I hope that this article will be useful both for beginners and experienced developers, maybe some of them will find something new.
 
stargate:

Desperately need to revert to a previous build.  

 

Anyone able to help or show how this may be done?

 

Since build 540 a whole group of traders has had their trading tools broken.

There are a couple machines which will still work but the majority have had

our custom indicator go blank as soon as the new build loaded this week.


The ability to revert or decline updates until stable should be allowed so we

who are developing tools may do so outside the Mql5 development cycle

which of course is just programming and will have the occasional bugs.


Please help if you are able.


Regards

I've got the same problem. A load of my stuff no longer works. Seems like the data type float is no longer supported? Am having problems casting from float to string type, and double to float. Am trying various different methods to sort it,but haven't fixed it yet and I first noticed an issue on Saturday! If MetaQuotes insists on forcing people to update, they should at the least, release a detailed list of what was changed/fixed in the update! (Apologies if an update info does exist, but I'm not aware of one).

 
List of changes in MetaTrader 5 Client Terminal builds
  • www.mql5.com
See the "MQL5 Reference / Standard constants, enumerations and structures / Named constants / Other constants " section.
 

Thanks song_song!

 

BTW, Please can someone tell me why the float and double results aren't being printed? The numbers are not being returned from the function correctly? My EA has not worked since the upgrade on Saturday and I think this is the cause..


   int   GetInteger(int option);

   float GetFloat(int option);

   double GetDouble(int option);

int TestProg::GetInteger(int option) {

   switch(option) {

      case 1: return 1;

      case 2: return 2;

      case 3: return 3;

      default: return 0;

   }

}


float TestProg::GetFloat(int option) {

   switch(option) {

      case 1: return 1;

      case 2: return 2;

      case 3: return 3;

      default: return 0;

   }

}


double TestProg::GetDouble(int option) {

   switch(option) {

      case 1: return 1;

      case 2: return 2;

      case 3: return 3;

      default: return 0;

   }

}


      Print(GetInteger(1));

      Print(GetInteger(2));

      Print(GetInteger(3));


      Print(GetFloat(1));

      Print(GetFloat(2));

      Print(GetFloat(3));

      

      Print(GetDouble(1));

      Print(GetDouble(2));

      Print(GetDouble(3));


NE 0 TestProg (GBPUSD,H1) 16:54:38 2011.01.07 00:00:00   1

IM 0 TestProg (GBPUSD,H1) 16:54:38 2011.01.07 00:00:00   2

HE 0 TestProg (GBPUSD,H1) 16:54:38 2011.01.07 00:00:00   3

QL 0 TestProg (GBPUSD,H1) 16:54:38 2011.01.07 00:00:00   0.0

CG 0 TestProg (GBPUSD,H1) 16:54:38 2011.01.07 00:00:00   0.0

MO 0 TestProg (GBPUSD,H1) 16:54:38 2011.01.07 00:00:00   0.0

FH 0 TestProg (GBPUSD,H1) 16:54:38 2011.01.07 00:00:00   2.868201517097595e-316

QO 0 TestProg (GBPUSD,H1) 16:54:38 2011.01.07 00:00:00   2.868204926150551e-316

RR 0 TestProg (GBPUSD,H1) 16:54:38 2011.01.07 00:00:00   2.868208335203508e-316

Thanks   

 

 

Thank you song_song for supplying that info for cs0amc.

I had looked at that list before posting my original request for help.


What is requested is a means to keep going with a working and stable release

when a new release breaks already functioning code. Yes it is good to find

out if something actually did become deprecated. Normally when something

is going to be deprecated there is quite a bit of warning.


We need to keep stable releases available for when things do not go quite as

planned. Anyone who does programming knows that software development

cycles will have occasional bugs. That is to be expected. Therefore a contingency

plan should be implemented beforehand.


Build 527 was working for most apparently and build 540 has caused alarm bells

to go off with a significant number and that is more than likely a small sampling

of the true number of breakages.


One thing which should be considered very important is the ability of traders

actually using the MT5 platform's great new capabilities for analysis even in

light of it being only a demo at the moment. Let's not underestimate the impact

on the early adopters including brokerages offering the demos to attract clients.


Once more I would like to urgently request the ability to revert to stable

builds be implemented as a high priority issue for the development team's

tasklist as a proactive measure to keep clients up and running.


Regards

 
stargate:

Thank you song_song for supplying that info for cs0amc.

I had looked at that list before posting my original request for help.


What is requested is a means to keep going with a working and stable release

when a new release breaks already functioning code. Yes it is good to find

out if something actually did become deprecated. Normally when something

is going to be deprecated there is quite a bit of warning.


We need to keep stable releases available for when things do not go quite as

planned. Anyone who does programming knows that software development

cycles will have occasional bugs. That is to be expected. Therefore a contingency

plan should be implemented beforehand.


Build 527 was working for most apparently and build 540 has caused alarm bells

to go off with a significant number and that is more than likely a small sampling

of the true number of breakages.


One thing which should be considered very important is the ability of traders

actually using the MT5 platform's great new capabilities for analysis even in

light of it being only a demo at the moment. Let's not underestimate the impact

on the early adopters including brokerages offering the demos to attract clients.


Once more I would like to urgently request the ability to revert to stable

builds be implemented as a high priority issue for the development team's

tasklist as a proactive measure to keep clients up and running.


Regards

Could a solution be to backup the entire MQL5 install directories and then revert to that copy if you have problems? On logging in it would again prompt you to update, but I think you can just ignore the prompt (move it off screen) and continue to use the old version for the mean time? Has anyone tried this?

 
cs0amc:

Could a solution be to backup the entire MQL5 install directories and then revert to that copy if you have problems? On logging in it would again prompt you to update, but I think you can just ignore the prompt (move it off screen) and continue to use the old version for the mean time? Has anyone tried this?

This has been tried. It was an unsuccessful attempt at a workaround. Viewing the logs shows

that the build is implemented immediately and custom indicators are recompiled.

Step on New Rails: Custom Indicators in MQL5
  • 2009.11.23
  • Андрей
  • www.mql5.com
I will not list all of the new possibilities and features of the new terminal and language. They are numerous, and some novelties are worth the discussion in a separate article. Also there is no code here, written with object-oriented programming, it is a too serous topic to be simply mentioned in a context as additional advantages for developers. In this article we will consider the indicators, their structure, drawing, types and their programming details, as compared to MQL4. I hope that this article will be useful both for beginners and experienced developers, maybe some of them will find something new.
 
stargate:

This has been tried. It was an unsuccessful attempt at a workaround. Viewing the logs shows

that the build is implemented immediately and custom indicators are recompiled.

 

Do you mean that even if I start an older version, it is immediately upgraded on starting/logging in? I thought the files would be updated, but you would need to restart for the new version to be loaded into memory. Until restarting, I thought the old version would continue to run. 

 

cs0amc:

Do you mean that even if I start an older version, it is immediately upgraded on starting/logging in? I thought the files would be updated, but you would need to restart for the new version to be loaded into memory. Until restarting, I thought the old version would continue to run. 

No I am sorry for implying that there is no workaround. I referenced the word 'solution' in your question

and my quick response reflected some problems we had with that approach at first. Your idea was the

right way to go and worked once we saw there was another issue to hurdle.


There is a workaround and we have been trying to get it smoothed out over the last couple of days. We

have not had an official comment on this issue that does seem serious enough to warrant one. We have

forged ahead as best we can, understanding that monitoring forums does use up resources that may be

used to work on the ongoing development and are hopeful in receiving word as soon as there is time.


Meanwhile what has been done involved discovering that there were issues which affected our code

earlier than was thought. Having had one of our group provide an archived installation folder that had

build 507 in it we were able to get our specialized custom indicator set we call the "STAR Control Panel"

to perform its functions again. Using only build 527 left some straggler issues that we think may be from

how the 32bit and 64bit architectures vary in their function.


Getting our STAR Control Panel back is a welcome sight since this one Template replaced 3 factored sets

of a dozen templates each and adds speed adjustments by altering the indicator period settings with

buttons or keyboard arrows (like flying your indicators with a flightstick). MT5 is awsome and so is

our member who has programmed this beauty.


OUR WORKAROUND:


We have created a zipfile of the MT5 build 507 installation folder and placed it into the Metatrader 5

directory itself. After MT5 shuts down the update to build 540 takes effect without any choice (good

for developers to force the bugs out of the woodwork - bad for users unfortunately). So before another

session of using the program we use an unzip program's "Extract Here" command and all of the files

get converted back  to build 507 reflecting matched compilations in all subdirectories and undoing build

540 problems - until shutdown and the fun begins again.


Our hope is that the development team will help us stop this insanity with some ability to revert when

the eventual bugs do crawl out. There may of course be valid reasons for preferring to force updates

and any communication would be appreciated.


Regards



 
when asking wheathe updating ,you can choose "no"!why ask suck question again and again?
 
FXLife888:
when asking wheathe updating ,you can choose "no"!why ask suck question again and again?

It would be great if that were the only solution needed but unfortunately it is not that

simple. This is because the next time you start MT5 it will execute the build change

before the program starts up and our previously working code is broken.


The list by Rosh here: https://www.mql5.com/en/forum/53/page11#comment_117517

and possibly item 15 particularly is not sufficient information to update our code if

indeed the code needs to change or to know whether this build 540 has bugs.


Without any warnings that particular coding changes would be required with build 540

there are only the options of either complaining that 540 broke previously valid code,

as some have done already, or requesting that such problems be seen as inevitable

in the best of programming environments and plan proactively to allow a means of

reverting back until bug fixes are ironed out.


There also has been another means discovered for preventing the build update but

like our previously posted method this is just a workaround and must be done before

each session of MT5 and you must already have an older functioning build (suggest 507).


ANOTHER WORKAROUND:

We found out where the update download files get placed.

C:\Users\"your-user-name"\AppData\Roaming\MetaQuotes\Terminal\"big-long-number-different-on-each-system"\liveupdate\

Folders in quotes are specific to your system.

Delete the files in that folder before running MT5 each time and it will remain at the older build.

To make it easier, back out one level so yousee the folder name 'liveupdate' and right click it and select Create Shortcut.

Then right click the shortcut and choose Send To... and then choose Desktop.

Go to the desktop and drag that shortcut to your taskbar so you can access it anytime.

Click the taskbar shortcut, delete all the files and start MT5.


Hope to hear some info from the admin on this issue. Obviously we do not wish to

run older installations or have to instruct our members to use workarounds to have

MT5 in their toolbelt.


Regards