Recent

Author Topic: Why this IDE so fragile?  (Read 1954 times)

guest64953

  • Guest
Why this IDE so fragile?
« on: December 13, 2019, 05:19:59 am »
I just installed spartasmartformeditor and after restart it's like this, can't even start:

Code: Pascal  [Select]
  1. using config file /export/home/hunghung/fpcupdeluxe/lazarus/lazarus.cfg
  2. [FORMS.PP] ExceptionOccurred
  3.   Sender=EAccessViolation
  4.   Exception=Access violation
  5.   Stack trace:
  6.   $00000000025A7174  SPARTA_FAKEFORMBACKGROUND_$$_init$,  line 430 of source/sparta_fakeformbackground.pas
  7.   $00000000014B5BD1  fpc_initializeunits,  line 1025 of ../inc/system.inc
  8.   $00000000014A112E  _START
  9. TApplication.HandleException: EAccessViolation
  10. Access violation
  11.   Stack trace:
  12.   $00000000025A7174  SPARTA_FAKEFORMBACKGROUND_$$_init$,  line 430 of source/sparta_fakeformbackground.pas
  13.   $00000000014B5BD1  fpc_initializeunits,  line 1025 of ../inc/system.inc
  14.   $00000000014A112E  _START
  15. Exception at 00000000025A7174: EAccessViolation:
  16. Access violation.

I'm on OpenIndiana with fpcupdeluxe. How to revert back to a working Lazarus other than an reinstallation? It's very time consuming  :'(

Do you find it's somewhat very wrong to link everything into the IDE itself just to get it functionality? Why don't use a plugin based system other than the current package based system? We should have a file decided which plugin to load so a:

spartasmartformeditor = "NO"

is enough to recover from this incident. If it's technologically impossible because the way Lazarus was designed at least please provide a rollback feature!  >:(

As I read on this forum hnb said these sparta packages other than the dockedformeditor (which I found also buggy, too) are only alpha quality. Why you allowed such kind of software to be on your list of installable packages? Do you find it to be irrespondsible?  >:(

Ah, putting all of these thing aside. How to quickly rollback to a working state other than reinstalling? I think I will treat Lazarus like a dangerous software could break anytime by creating a zfs snapshot of my current homedir regular to be able to rollback painlessly. Why? Why the entire home dir? Because even when installed under fpcupdeluxe dir it's still not isolated from the rest of the system, it does put file into .config, .fppkg... Backing up these individual find is too time consuming...

Ah, I found the faulter here. This fpcupdeluxe doesn't utilize a .lazarus dir but overwrite the lazarus binary with newly compiled one. Where did it put lazarus.old? Or it even kept? Don, where are you now?  >:(

p/s: sorry, too angry so carelessly skip it, lazarus.old is next to lazarus itself. will try to see if it would back to a working state  %)

jmpessoa

  • Hero Member
  • *****
  • Posts: 1482
Re: Why this IDE so fragile?
« Reply #1 on: December 13, 2019, 05:31:47 am »

You can Try:

"AnchorDockingDsgn"

     +

"sparta_DockedFormEditor"
Lamw: Lazarus Android Module Wizard
https://github.com/jmpessoa/lazandroidmodulewizard

guest64953

  • Guest
Re: Why this IDE so fragile?
« Reply #2 on: December 13, 2019, 05:35:16 am »
Update: it's back working, I would need to calm myself down  %)

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1191
Re: Why this IDE so fragile?
« Reply #3 on: December 13, 2019, 06:29:11 am »
When using fpcupdeluxe, the only thing you have to do in case of f*ck-ups, is to remove the "config_lazarus" directory followed by a re-run of fpcupdeluxe to install Lazarus only.

Handoko

  • Hero Member
  • *****
  • Posts: 3301
  • My goal: build my own game engine using Lazarus
Re: Why this IDE so fragile?
« Reply #4 on: December 13, 2019, 07:51:31 am »
When testing/experimenting new setting or package in Lazarus, I usually backup the Lazarus config folder first. If something bad happens I can simply restore the backup.

In Ubuntu, the Lazarus config folder is [home]/lazarus

avra

  • Hero Member
  • *****
  • Posts: 1759
    • Additional info
Re: Why this IDE so fragile?
« Reply #5 on: December 13, 2019, 08:19:00 am »
On Windows in Lazarus directory, before rebuilding IDE old version is renamed to lazarus.old.exe. If new version was not built, or it exists but it is broken, then you can always restore executable manually from this backup. Just remember to uninstall faulty packages and rebuild IDE again as a first thing you do after renaming. On other OSes it should be pretty similar.
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

PascalDragon

  • Hero Member
  • *****
  • Posts: 905
  • Compiler Developer
Re: Why this IDE so fragile?
« Reply #6 on: December 13, 2019, 09:14:33 am »
Do you find it's somewhat very wrong to link everything into the IDE itself just to get it functionality? Why don't use a plugin based system other than the current package based system? We should have a file decided which plugin to load so a:

spartasmartformeditor = "NO"

is enough to recover from this incident. If it's technologically impossible because the way Lazarus was designed at least please provide a rollback feature!  >:(
FPC currently does not support dynamic packages. These are Work In Progress, but they are not a trivial feature. Currently linking everything in statically is the only sensible way.

As I read on this forum hnb said these sparta packages other than the dockedformeditor (which I found also buggy, too) are only alpha quality. Why you allowed such kind of software to be on your list of installable packages? Do you find it to be irrespondsible?  >:(
It's every user's choice to install those packages. And after all: how does one find bugs if people do not use it? (e.g. for me it works without problems, so I can't contribute bug reports)

guest64953

  • Guest
Re: Why this IDE so fragile?
« Reply #7 on: December 14, 2019, 05:31:26 pm »
When using fpcupdeluxe, the only thing you have to do in case of f*ck-ups, is to remove the "config_lazarus" directory followed by a re-run of fpcupdeluxe to install Lazarus only.

Thank for this trick  ;)

guest64953

  • Guest
Re: Why this IDE so fragile?
« Reply #8 on: December 14, 2019, 05:37:37 pm »
It's every user's choice to install those packages. And after all: how does one find bugs if people do not use it? (e.g. for me it works without problems, so I can't contribute bug reports)

We should be more carefull with the default set of packages we offer. We should continue to ship these packages, but add a note for user to know that it's still at alpha stage. This is enough to warn them. Currently, some packages even don't describe what they are intended to do. To know which features they offer, one has to search on the internet, guessing from their names, or just install them to figure out manually by trial and error  :(

guest64953

  • Guest
Re: Why this IDE so fragile?
« Reply #9 on: December 14, 2019, 05:40:01 pm »
It's every user's choice to install those packages. And after all: how does one find bugs if people do not use it? (e.g. for me it works without problems, so I can't contribute bug reports)

We should be more carefull with the default set of packages we offer. We should continue to ship these packages, but add a note for user to know that it's still at alpha stage. This is enough to warn them. Currently, some packages even don't describe what they are intended to do. To know which features they offer, one has to search on the internet, guessing from their names, or just install them to figure out manually by trial and error  :(

I admit I didn't know what spartasmartformeditor really does so I installed it, guessed by it name it should be some enhanced version of spartadockedformeditor. Unfortunately, it broke my Lazarus. After that, I searched on the internet and found hnb's thread about them and their status on this forum  :(

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 5938
    • wiki
Re: Why this IDE so fragile?
« Reply #10 on: December 14, 2019, 06:04:57 pm »
Might be useful to include a link to that post of hnb....

You can always propose new texts for package description.
Discuss them here first if you want, or post them directly to our bugtracker (including a patch/diff).

Some packages have dedicated maintainers. In those cases it might help to get in contact, and ask that person first.


You might also be interested to know that the "package install/uninstall" dialog's display of the description was improved (in trunk, will be in 2.2)

If a package is selected, the description no longer is scrolled to the last line. The top is kept visible until the user scrolls it.

The license has been separated to a memo of its own. So it can always be seen.

guest64953

  • Guest
Re: Why this IDE so fragile?
« Reply #11 on: December 14, 2019, 06:11:05 pm »

wp

  • Hero Member
  • *****
  • Posts: 6664
Re: Why this IDE so fragile?
« Reply #12 on: December 14, 2019, 06:14:20 pm »
We should be more carefull with the default set of packages we offer.
Absolutely

We should continue to ship these packages, but add a note for user to know that it's still at alpha stage.
I don't agree. Components in alpha stage should not be included in the standard collection distributed with Lazarus. I don't use the docking IDE myself, so I cannot tell whether sparta_smartformeditor is alpha. But if it is it should be removed. The author could use github or Lazarus-CCR or similar platforms as a test bed  for his development.
Lazarus trunk / fpc 3.0.4 / all 32-bit on Win-10

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3672
  • I like bugs.
Re: Why this IDE so fragile?
« Reply #13 on: December 15, 2019, 03:08:12 pm »
We should be more carefull with the default set of packages we offer.
Actually the Sparta packages are not part of the default set of packages installed in Lazarus. The releases are built with make target "BigIde". You get the same thing with "make BigIde". Sparta must be installed wittingly by a user.
Another issue: why do you have an obsession to install Lazarus with fpcupdeluxe?
I explained a better way for you in your thread: "Who maintain the fpc and lazarus ports on FreeBSD? Please read this."
 https://forum.lazarus.freepascal.org/index.php/topic,47662.msg341896.html#msg341896
As I wrote, "fpcupdeluxe" is good for installing different versions of FPC and for cross-compilation. It is not needed for a simple task of building Lazarus from sources.

I agree with wp about the alpha state Sparta packages. Hnb should either improve them or move them to CCR repo or somewhere else.
A buggy package is one thing but a package that destroys the whole IDE is a whole different thing.

BTW, the Lazarus "BigIde" is not so fragile, it is quite stable and robust.
« Last Edit: December 15, 2019, 03:09:52 pm by JuhaManninen »

guest64953

  • Guest
Re: Why this IDE so fragile?
« Reply #14 on: December 15, 2019, 03:17:54 pm »
We should be more carefull with the default set of packages we offer.
Actually the Sparta packages are not part of the default set of packages installed in Lazarus. The releases are built with make target "BigIde". You get the same thing with "make BigIde". Sparta must be installed wittingly by a user.
Another issue: why do you have an obsession to install Lazarus with fpcupdeluxe?
I explained a better way for you in your thread: "Who maintain the fpc and lazarus ports on FreeBSD? Please read this."
 https://forum.lazarus.freepascal.org/index.php/topic,47662.msg341896.html#msg341896
As I wrote, "fpcupdeluxe" is good for installing different versions of FPC and for cross-compilation. It is not needed for a simple task of building Lazarus from sources.

I agree with wp about the alpha state Sparta packages. Hnb should either improve them or move them to CCR repo or somewhere else.
A buggy package is one thing but a package that destroys the whole IDE is a whole different thing.

BTW, the Lazarus "BigIde" is not so fragile, it is quite stable and robust.

Because I'm lazy. Fpcupdeluxe automated everything. Of course I could build Lazarus the traditional way but it waste time and efforts. With Fpcupdeluxe, Don also provide patches needed to build on platfroms where official Lazarus failed to build. Thank to Fpcupdeluxe, Lazarus available on more platforms than just Win, Lin and Mac. Don't underestimate it!  ;D

Do you know that it was Don's patches that allowed me to have a working FPC + Lazarus on DFBSD? How much trouble I will encounter when building Laz on an unsupported platform? Today, when I tried to update FPC + Laz via Fpcupdeluxe, it failed with the same old pkglnet missing issue. It should be something changed upstream, causing Don's patches no longer work. Do you think I should wait Don to update his pacthes or try to be a hacker to patch FPC + Laz myself, which is certainly above my ability?  :P