Hi Benoît and everyone,

I have some misgivings about how gambas3 is converting or "porting"
gambas2 projects.  I'm talking about the way it is renaming the old
project and creating a new project with the same name. This can have a
result of breaking stable "production" gambas2 applications at worst and
annoying one or more developers at least.

From least to worst, the following scenarios arise:

1) the converter leaves the backup project ("MyProject~") in a locked
state.  When the developer goes to open the backup project in gambas2
they receive the "This project seems to be already opened" message.
Colin Confused, the developer, who has multiple instances of gambas2
running is annoyed because he has to make a decision as to whether it
really is open somewhere (maybe even by another developer on another
machine) or whether they should take the risk and open it anyway.  I was
going to raise a bug about this one, but some more thinking and testing
led to the following.  Analysis - "annoying".

2) the converter ignores the existence of the .lock file in the gambas2
project and converts it anyway, thus if the project is open in gambas2
somewhere the following could occur.  Steve Stable, the support
programmer for gambas2 has MyProject open in gambas2 and has spent
several hours finding and fixing an obscure issue and is just about to
compile and test.  Fanny Frantic, the new junior programmer, opens
MyProject in gambas3 and says yes to the convert question.  Gambas3 then
renames (I presume) MyProject to MyProject~ and copies and converts the
code.  Steve Stable then presses F5 whereupon gambas2 crashes and all
his work is lost (because the file system has been altered and his
project now points to the wrong place). Analysis - could result in Steve
causing serious physical harm to Fanny, therefore "dangerous".

3) converting existing gambas2 components will break the gambas2 user
projects that use them. Bruce Ballistic (senior programmer, head chef
and dog washer) who is normally very careful to copy his gambas2
projects to a new gambas3 directory structure, accidentally opens the
wrong project. He then makes major changes to the component and
recompiles it.  The existing ("production") gambas2 applications will
now fail as the symbolic links in .local/lib and .local/share point to
the gambas3 component.  Analysis - could result in Bruce muttering "If I
ever get my hands on that Minisini character, ...", therefore "extremely
dangerous".

4) I think (I haven't tested this) that there could be issues
with .config/gambas as well???

In my opinion the converter should insist on the user entering a new
name for the gambas3 project and leave the gambas2 structures alone, but
at the very least it should be alerting the user in the strongest
possible way as to which project it is going to convert and observe any
existing .lock files.

Please consider.

regards
Bruce "where's my shotgun" Ballistic
Steve "don't call me" Stable,
Fanny "why are you hitting me Steve" Frantic, and
Colin "??????" Confused


------------------------------------------------------------------------------
Special Offer -- Download ArcSight Logger for FREE!
Finally, a world-class log management solution at an even better 
price-free! And you'll get a free "Love Thy Logs" t-shirt when you
download Logger. Secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsisghtdev2dev
_______________________________________________
Gambas-user mailing list
Gambas-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gambas-user

Reply via email to