Recent

Author Topic: Possible break of compatibility warning ?  (Read 2106 times)

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
Possible break of compatibility warning ?
« on: February 25, 2023, 01:32:56 pm »
Hello.

Does it exist something that warn about a possible break of compatibility on a commit done in trunk?

There is https://wiki.freepascal.org/User_Changes_Trunk but I would like something more git-commit-focused.
For example a grid that add a line when a commit could affect compatibility, with the git-commit number and some explanation?.

Thanks.

« Last Edit: February 25, 2023, 01:52:09 pm by Fred vS »
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Thaddy

  • Hero Member
  • *****
  • Posts: 14393
  • Sensorship about opinions does not belong here.
Re: Possible break of compatibility warning ?
« Reply #1 on: February 25, 2023, 02:33:24 pm »
Trunk is a moving target and therefor it would be very hard to maintain such things. Some features can be withdrawn etc... And you can already find out the commit using git.
Object Pascal programmers should get rid of their "component fetish" especially with the non-visuals.

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
Re: Possible break of compatibility warning ?
« Reply #2 on: February 25, 2023, 04:10:07 pm »
And you can already find out the commit using git.

Hum, how to filter the commits with potentially break-compatibility using git, what key-word to use?

For example, for a "Merge request" there is a template with some questions, like "What is the current bug behavior?", ... etc.
Maybe this question could be added: "Could the patch generate break-compatibility? (yes/no)" and so a search with that filter could be done.

The same for commits, add a keyword when potentially break-compatibility to make the search easier.
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Thaddy

  • Hero Member
  • *****
  • Posts: 14393
  • Sensorship about opinions does not belong here.
Object Pascal programmers should get rid of their "component fetish" especially with the non-visuals.

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

PascalDragon

  • Hero Member
  • *****
  • Posts: 5486
  • Compiler Developer
Re: Possible break of compatibility warning ?
« Reply #5 on: February 25, 2023, 04:44:13 pm »
Does it exist something that warn about a possible break of compatibility on a commit done in trunk?

There is https://wiki.freepascal.org/User_Changes_Trunk but I would like something more git-commit-focused.
For example a grid that add a line when a commit could affect compatibility, with the git-commit number and some explanation?.

No. The only source for this is the referenced wiki article and there is no interest in changing this.

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
Re: Possible break of compatibility warning ?
« Reply #6 on: February 25, 2023, 06:13:05 pm »
Does it exist something that warn about a possible break of compatibility on a commit done in trunk?

There is https://wiki.freepascal.org/User_Changes_Trunk but I would like something more git-commit-focused.
For example a grid that add a line when a commit could affect compatibility, with the git-commit number and some explanation?.
... there is no interest in changing this.

Huh, maybe for fpc core devs but for common users that maintain lib-apps code using fpc, there is interest.

But ok, thanks for the info and sorry for the noise.

Fre;D
« Last Edit: February 25, 2023, 06:18:33 pm by Fred vS »
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 11459
  • FPC developer.
Re: Possible break of compatibility warning ?
« Reply #7 on: February 25, 2023, 06:22:16 pm »
(using commit messages as publishing method doesn't make sense anyway, since not all (detail) consequences are always known on the moment of commit. E.g. if Lazarus can work around it, or if it will be a compatibility problem till the next major version.  )

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
Re: Possible break of compatibility warning ?
« Reply #8 on: February 25, 2023, 06:27:19 pm »
(using commit messages as publishing method doesn't make sense anyway, since not all (detail) consequences are always known on the moment of commit.  )

Yes, of course, it is why "possible break" could be added if a committer knows that the commit could break compatibility.
But, ok, I forget it.
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

TRon

  • Hero Member
  • *****
  • Posts: 2540
Re: Possible break of compatibility warning ?
« Reply #9 on: February 25, 2023, 06:48:51 pm »
Yes, of course, it is why "possible break" could be added if a committer knows that the commit could break compatibility.
That is exactly the problem.

Not every developer knows upfront if his/her changes will break something (for various reasons).

Sometimes it is known that a specif commit or series of commits will break compatibility and in such case it will (under normal circumstances) be mentioned in the commit history (or comments). That is usually also what you can read back on the breaking compatibility user changes wiki page.

If it would be such an easy task to detect breaking commits would you not think that would be a perfect job for something like ChatGPT ?  O:-)

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
Re: Possible break of compatibility warning ?
« Reply #10 on: February 25, 2023, 07:16:42 pm »

Sometimes it is known that a specif commit or series of commits will break compatibility and in such case it will (under normal circumstances) be mentioned in the commit history (or comments). That is usually also what you can read back on the breaking compatibility user changes wiki page.

It is this case that I targeted, if such a specif commit or series of commits will break compatibility please add in comment a keyword easy to filter, like "break-possible"
Before all the work needed to update wikis and histories.
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Fred vS

  • Hero Member
  • *****
  • Posts: 3168
    • StrumPract is the musicians best friend
Re: Possible break of compatibility warning ?
« Reply #11 on: February 25, 2023, 07:24:54 pm »
If it would be such an easy task to detect breaking commits would you not think that would be a perfect job for something like ChatGPT ?  O:-)

Of course I asked this to ChatGPT before to ask it here  :-X

Me:
Quote
Q: show me the commits done in fpc main source that breaks compatibility with fpc 3.2.2

AI:
Quote
A: As an AI language model, I do not have access to the specific commits made to the FPC main source code or any version control system, and I cannot perform a detailed analysis of the codebase to determine which changes may have broken compatibility with FPC 3.2.2.

However, you can view the FPC changelog to see a list of all the changes that have been made to the codebase between different versions, including any changes that may have broken compatibility with earlier versions. You can find the changelog for FPC 3.2.4, the latest stable version at the time of this writing, on the FPC website at https://www.freepascal.org/docs-html/rtl/changelog_3_2_4.html.

Alternatively, you can consult the FPC documentation or reach out to the FPC community for more specific information on compatibility issues between different versions of the compiler.

Nice to know that FPC 3.2.4 is just released at the time of this writing...
« Last Edit: February 25, 2023, 07:27:59 pm by Fred vS »
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Thaddy

  • Hero Member
  • *****
  • Posts: 14393
  • Sensorship about opinions does not belong here.
Re: Possible break of compatibility warning ?
« Reply #12 on: February 25, 2023, 07:51:11 pm »
Some people just should not use trunk. This is really disturbing asking for documentation on trunk. That is plain silly. Use stable instead. And as far I am concerned never ask that question again.
Object Pascal programmers should get rid of their "component fetish" especially with the non-visuals.

TRon

  • Hero Member
  • *****
  • Posts: 2540
Re: Possible break of compatibility warning ?
« Reply #13 on: February 25, 2023, 09:03:03 pm »
It is this case that I targeted, if such a specif commit or series of commits will break compatibility please add in comment a keyword easy to filter, like "break-possible"
Before all the work needed to update wikis and histories.
As PascalDragon said: it is at the discretion of the developer/team (and I am not going to argue against that).

Thaddy

  • Hero Member
  • *****
  • Posts: 14393
  • Sensorship about opinions does not belong here.
Re: Possible break of compatibility warning ?
« Reply #14 on: February 25, 2023, 09:09:12 pm »
You don't have to argue against it. The documentation is maintained to be released with the next official release. Do not worry about that. It is just that features in trunk may appear and subsequently also disappear.
If a feature is announced, you are usually safe to use that, but not all features ARE announced because they may be incomplete and transfered to the next trunk/main.
There is no way around it: use the git features will do.

Also note that we FPC users are lucky that we can always see the status of a yet to be released version, whereas most software development relies on alpha and beta testers.
Using trunk you are an alpha tester. When there is an announcement for release candidate you can become a beta tester.
If you want to follow trunk, OK, but realize what you are doing. Most people don't (Like Fred)
To follow trunk you MUST do a daily check on the revision and update when necessary and be able to compile trunk yourself. There may be moments that even fpcupdeluxe can't help you.
And even then you may run into trouble if somebody just committed a feature or fix...
<sigh, all this is so difficult to understand? >

Very angry Thaddy.
« Last Edit: February 26, 2023, 06:23:07 am by Thaddy »
Object Pascal programmers should get rid of their "component fetish" especially with the non-visuals.

 

TinyPortal © 2005-2018