<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#ffffff">
On 31/03/2011 13:09, Mattias Gaertner wrote:
<blockquote
cite="mid:2146270354.308611.1301573375266.JavaMail.open-xchange@cc-app1.netcologne.de"
type="cite">
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
<title></title>
<p style="margin: 0px;"><span> </span></p>
<p style="margin: 0px;"> </p>
<div style="margin: 5px 0px;"> Martin <a class="moz-txt-link-rfc2396E" href="mailto:lazarus@mfriebe.de"><lazarus@mfriebe.de></a>
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;"> > - 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>
</blockquote>
No. This is:<br>
- if a search in the exe-dir is added, (so the the behaviour will
be: search exe-dir, search global-conf dir)<br>
- if a global config exists<br>
<br>
The IDE will search the exe dir, will not find a config, will find
the global conf<br>
If no global conf exists, it will search all places, and then create
the globa conf<br>
<br>
<blockquote
cite="mid:2146270354.308611.1301573375266.JavaMail.open-xchange@cc-app1.netcologne.de"
type="cite">
<p style="margin: 0px;"> </p>
<div style="margin: 5px 0px;"> > In this case the unaware user
is still screwed. <br>
</div>
<p style="margin: 0px;">Why do you think he is screwed?</p>
</blockquote>
<br>
Because if the user is unaware, and never creates a config by hand,
or forces it into the exe dir, then he./she always ends up with a
global conf.<br>
<br>
So searching the exe dir first, doesn't help. (unless the user is
aware, but an aware user can use -pcp too)<br>
<br>
<blockquote
cite="mid:2146270354.308611.1301573375266.JavaMail.open-xchange@cc-app1.netcologne.de"
type="cite">
<p style="margin: 0px;"> </p>
<div style="margin: 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>
</blockquote>
<br>
if they exist...<br>
if a user installed lnet, in his lazarus dir, it may not exist in
another laz dir...<br>
<br>
<br>
<blockquote
cite="mid:2146270354.308611.1301573375266.JavaMail.open-xchange@cc-app1.netcologne.de"
type="cite">
<div style="margin: 5px 0px;"> > 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>
</blockquote>
<br>
Imho on any conflict:<br>
- diff version<br>
- diff last exe path (doesn't work on linux, since recompiled exe
goes into user dir)<br>
- missing package source<br>
<br>
the user should be:<br>
- informed which config is used<br>
- offered to create a new one, in a new place (run some kind of
profile manager)<br>
=> and be told how to load this.<br>
- offered to load a diff config<br>
<br>
<br>
<br>
<blockquote
cite="mid:2146270354.308611.1301573375266.JavaMail.open-xchange@cc-app1.netcologne.de"
type="cite">
<p style="margin: 0px;"> </p>
<p style="margin: 0px;"> </p>
<div style="margin: 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>
<br>
</blockquote>
<br>
</body>
</html>