<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>
    <title></title>
  </head>

  <body>
    <p style="margin: 0px;"><span> </span></p>

    <p style="margin: 0px;"> </p>

    <div style="margin: 5px 0px 5px 0px;">
      Martin <lazarus@mfriebe.de> hat am 31. März 2011 um 13:22 geschrieben:<br/>
      <br/>
      >[...]<br/>
      > This whole discussion seems to mix 2 issues into one:<br/>
      > - problems caused by using the wrong config due to none awareness (imho<br/>
      > the main issue)
    </div>

    <p style="margin: 0px;"> </p>

    <p style="margin: 0px;">+1</p>

    <p style="margin: 0px;"> </p>

    <div style="margin: 5px 0px 5px 0px;">
      > - convenience of using multiply configs.<br/>
      ><br/>
      > Searching for config files in the exe dir (even if done) doesn't solve<br/>
      > the first issue, as there may not be any config files in that directory<br/>
      > to start with.
    </div>

    <p style="margin: 0px;"> </p>

    <p style="margin: 0px;">Then the IDE creates defaults.</p>

    <p style="margin: 0px;"> </p>

    <div style="margin: 5px 0px 5px 0px;">
      > In this case the unaware user is still screwed.
    </div>

    <p style="margin: 0px;"> </p>

    <p style="margin: 0px;">Why do you think he is screwed?</p>

    <p style="margin: 0px;"> </p>

    <p style="margin: 0px;"> </p>

    <p style="margin: 0px;"> </p>

    <div style="margin: 5px 0px 5px 0px;">
      > And even if there are config files there, the unaware user, may just<br/>
      > have started a 2nd build (with different set of installed packages), by<br/>
      > copying another lazarus dir, and moved config files into the new dir,<br/>
      > which have values pointing back to the old dir, causing problems again.
    </div>

    <p style="margin: 0px;"> </p>

    <p style="margin: 0px;">Since 0.9.29 packages in the Lazarus directory are stored relative. Changing the Lazarus directory will load the lpk files of the new Lazarus directory.</p>

    <p style="margin: 0px;">lpk files outside are used from the old positions.</p>

    <p style="margin: 0px;"> </p>

    <p style="margin: 0px;"> </p>

    <div style="margin: 5px 0px 5px 0px;">
       <br/>
      > Only checking, if the config files match the current installation can<br/>
      > solve that.<br/>
      > AFAIK Mattias added a version check.
    </div>

    <p style="margin: 0px;"> </p>

    <p style="margin: 0px;">I added a check for the ide/version.inc.</p>

    <p style="margin: 0px;">Configs from another version are quietly loaded and updated.</p>

    <p style="margin: 0px;">Maybe a check could be added to warn if the environmentoptions.xml is from a future Lazarus with two options: Quit and continue.</p>

    <p style="margin: 0px;"> </p>

    <p style="margin: 0px;"> </p>

    <div style="margin: 5px 0px 5px 0px;">
      > IMHO for example any error about installed/not found packages at start<br/>
      > up, could also offer to run the setup dialog again (and point out which<br/>
      > config is used / warn about a potential conflict)
    </div>

    <p style="margin: 0px;"> </p>

    <p style="margin: 0px;">Yes.</p>

    <p style="margin: 0px;"> </p>

    <div style="margin: 5px 0px 5px 0px;">
       <br/>
      > Only when the user is aware of the need to properly set up several<br/>
      > config dirs, the convenience of using them comes into play.
    </div><br/>
    <br/>
    Mattias<br/>
    <br/>
  </body>
</html>