Recent

Author Topic: We are planning the next release: Lazarus 2.0.2  (Read 35617 times)

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4467
  • I like bugs.
Re: We are planning the next release: Lazarus 2.0.2
« Reply #30 on: April 10, 2019, 01:43:42 pm »
This is more difficult. I can try next week.
But  sourcefilemanager.pas and related units are a lot of code to read and understand ..
Yes they are! :-)
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

Pascal

  • Hero Member
  • *****
  • Posts: 932
Re: We are planning the next release: Lazarus 2.0.2
« Reply #31 on: April 10, 2019, 08:48:50 pm »
laz trunk x64 - fpc trunk i386 (cross x64) - Windows 10 Pro x64 (21H2)

Akira1364

  • Hero Member
  • *****
  • Posts: 561
Re: We are planning the next release: Lazarus 2.0.2
« Reply #32 on: April 11, 2019, 12:02:27 am »
Regarding the docs thing people had been talking about earlier, is there interest in having them built more often? I do it myself quite often (on Windows, actually, with TexLive and Git Bash) and don't find it very difficult or time consuming, so I'd be happy to volunteer in that regard.

lucamar

  • Hero Member
  • *****
  • Posts: 4219
Re: We are planning the next release: Lazarus 2.0.2
« Reply #33 on: April 11, 2019, 12:08:09 am »
Regarding the docs thing people had been talking about earlier, is there interest in having them built more often? I do it myself quite often (on Windows, actually, with TexLive and Git Bash) and don't find it very difficult or time consuming, so I'd be happy to volunteer in that regard.

I am very interested! At least the chms. For some strange reason I've never been able to build them right; there is always some problem or other with the tools that prevent them from being built right :(

Then I come to the forum, comment that something is or isn't on the docs and someone replies: "that has been corrected, look in such or such place"
« Last Edit: April 11, 2019, 12:11:02 am by lucamar »
Turbo Pascal 3 CP/M - Amstrad PCW 8256 (512 KB !!!) :P
Lazarus/FPC 2.0.8/3.0.4 & 2.0.12/3.2.0 - 32/64 bits on:
(K|L|X)Ubuntu 12..18, Windows XP, 7, 10 and various DOSes.

Akira1364

  • Hero Member
  • *****
  • Posts: 561
Re: We are planning the next release: Lazarus 2.0.2
« Reply #34 on: April 11, 2019, 05:31:45 am »
I am very interested! At least the chms.

I did a fresh build of the CHMs and made a zip with the same files the release one comes with:

https://www.dropbox.com/s/pkhesdny4nvteco/doc-chm-fpc3.3.1-laz2.1.zip?dl=0

Note that the above is based on trunk everything (i.e. the FPC sources and Lazarus sources scanned for the docs were themselves the latest SVN revisions, not just the doc content files.)
« Last Edit: April 11, 2019, 07:49:21 am by Akira1364 »

dsiders

  • Hero Member
  • *****
  • Posts: 1077
Re: We are planning the next release: Lazarus 2.0.2
« Reply #35 on: April 11, 2019, 06:14:45 am »
I am very interested! At least the chms.

I did a fresh build of the CHMs and made a zip with the same files the release one comes with:

https://drive.google.com/open?id=1hbCR6zhPsfVLBC7K--Y0IFUrbW4YQH11

Note that the above is based on trunk everything (i.e. the FPC sources and Lazarus sources scanned for the docs were themselves the latest SVN revisions, not just the doc content files.)

Would you mind sharing the steps you used to generate the chms? I've been stumbling around trying to do the same with the updated fpdoc xml files. No luck so far...
Preview Lazarus 3.99 documentation at: https://dsiders.gitlab.io/lazdocsnext

wp

  • Hero Member
  • *****
  • Posts: 11910
Re: We are planning the next release: Lazarus 2.0.2
« Reply #36 on: April 11, 2019, 10:39:31 am »
I create Lazarus chm files by the script "build_chm" in folder "docs/html" - I'm on Windows, therefore, I use "build_chm.bat". These things must be done frist for this to work:
- Load "build_lcl_docs.lpi" into Lazarus and compile it.
- Modify the line "PATH=..." of the script to point the PATH variable to the folder which contains fpdoc.exe (this should be the same as fpc.exe).
- Add "--fpcdocs ../chm" to the "build_lcl_docs" command line so that the created chm files are copied to the right folder automatically. Otherwise the chm files (and xct crossreference files) will appear in the folder of the script, i.e. in "docs/html" and must be copied manually.

This is the script, which is working for me:
Code: [Select]
PATH=C:\lazarus-trunk_fpc304\fpc\3.0.4\bin\i386-win32\;%PATH%
build_lcl_docs.exe --outfmt chm --fpcdocs ../chm

Note that the script aborts when the xml files contain an error. The xml files before r60922, for example, contained an xml error in lazunicode.xml (line 245, the "<>" in "Length(fCurrent)<>aCount." had to be replaced by "&lt;&gt;")

Note also that build_lcl_docs does not add "private" docs to the chm. (There is an option for fpdoc to include the "private" section, but I did not find a way how to invoke this in build_lcl).

Building the Lazarus help takes a few minutes, therefore, be patient.
« Last Edit: April 11, 2019, 11:28:02 am by wp »

lucamar

  • Hero Member
  • *****
  • Posts: 4219
Re: We are planning the next release: Lazarus 2.0.2
« Reply #37 on: April 11, 2019, 12:21:51 pm »
I did a fresh build of the CHMs and made a zip with the same files the release one comes with:

Lots of thanks, Akira.
Turbo Pascal 3 CP/M - Amstrad PCW 8256 (512 KB !!!) :P
Lazarus/FPC 2.0.8/3.0.4 & 2.0.12/3.2.0 - 32/64 bits on:
(K|L|X)Ubuntu 12..18, Windows XP, 7, 10 and various DOSes.

Akira1364

  • Hero Member
  • *****
  • Posts: 561
Re: We are planning the next release: Lazarus 2.0.2
« Reply #38 on: April 11, 2019, 02:50:36 pm »
Lots of thanks, Akira.

No problem!

Gotta say though, every time I run fpDoc in general I end up thinking it really kinda needs some work... compared to PasDoc there's a lot of code it either can't parse or doesn't handle properly, or at least handles in a way that looks strange / incomplete output-wise.

Additionally, lots of stuff that appears as totally undocumented in fpDoc-generated docs (due to there being no external XML file for them) actually have useful existing source comments that would serve as definitely-better-than-nothing documentation if fpDoc didn't just ignore them.

Might take a look at seeing if I can fix some of it in the next little while.
« Last Edit: April 11, 2019, 07:15:41 pm by Akira1364 »

dsiders

  • Hero Member
  • *****
  • Posts: 1077
Re: We are planning the next release: Lazarus 2.0.2
« Reply #39 on: April 11, 2019, 05:46:14 pm »
I create Lazarus chm files by the script "build_chm" in folder "docs/html" - I'm on Windows, therefore, I use "build_chm.bat". These things must be done frist for this to work:
- Load "build_lcl_docs.lpi" into Lazarus and compile it.
- Modify the line "PATH=..." of the script to point the PATH variable to the folder which contains fpdoc.exe (this should be the same as fpc.exe).
- Add "--fpcdocs ../chm" to the "build_lcl_docs" command line so that the created chm files are copied to the right folder automatically. Otherwise the chm files (and xct crossreference files) will appear in the folder of the script, i.e. in "docs/html" and must be copied manually.

This is the script, which is working for me:
Code: [Select]
PATH=C:\lazarus-trunk_fpc304\fpc\3.0.4\bin\i386-win32\;%PATH%
build_lcl_docs.exe --outfmt chm --fpcdocs ../chm

Note that the script aborts when the xml files contain an error. The xml files before r60922, for example, contained an xml error in lazunicode.xml (line 245, the "<>" in "Length(fCurrent)<>aCount." had to be replaced by "&lt;&gt;")

Note also that build_lcl_docs does not add "private" docs to the chm. (There is an option for fpdoc to include the "private" section, but I did not find a way how to invoke this in build_lcl).

Building the Lazarus help takes a few minutes, therefore, be patient.

Thanks @wp. I'll give that a try this weekend.
Preview Lazarus 3.99 documentation at: https://dsiders.gitlab.io/lazdocsnext

dsiders

  • Hero Member
  • *****
  • Posts: 1077
Re: We are planning the next release: Lazarus 2.0.2
« Reply #40 on: April 11, 2019, 07:05:51 pm »
This is the script, which is working for me:
Code: [Select]
PATH=C:\lazarus-trunk_fpc304\fpc\3.0.4\bin\i386-win32\;%PATH%
build_lcl_docs.exe --outfmt chm --fpcdocs ../chm

Note also that build_lcl_docs does not add "private" docs to the chm. (There is an option for fpdoc to include the "private" section, but I did not find a way how to invoke this in build_lcl).

Building the Lazarus help takes a few minutes, therefore, be patient.

According the help screen in build_lcl_docs.lpr, you can use --arg to pass arguments to fpdoc. I think it has to be passed to build_lcl_docs.lpr using the --arg "show-private=true" switch. Not sure about the formatting though until I try it. It seems like it would be a lot simpler to just use an fpdoc project file. But that's just me.
Preview Lazarus 3.99 documentation at: https://dsiders.gitlab.io/lazdocsnext

PeterX

  • Sr. Member
  • ****
  • Posts: 404
Re: We are planning the next release: Lazarus 2.0.2
« Reply #41 on: April 11, 2019, 08:34:21 pm »
Did you test the patch uploaded by Ondrej? Does it help? If it does, can you improve it so a project would not get saved always?
I don't know why Your project gets saved always, with this patch.
The files of my project only get saved when I change something (I'm on Windows).

If DsgControl.DesignTimePPI = Screen.PixelsPerInch then no file is saved on close,
in case I didn't edit anything. I can open, close, open, close .. nothing's saved.

But indeed, when  DsgControl.DesignTimePPI <> Screen.PixelsPerInch
(when project opened the first time under a different scaling % ..)
then the lfm file must be saved because (for example, in my case ..)
Code: Pascal  [Select][+][-]
  1.   DesignTimePPI = 120
in the lfm file must be removed ..
« Last Edit: April 11, 2019, 08:39:42 pm by PeterX »
usually using latest Lazarus release version with Windows 10

Akira1364

  • Hero Member
  • *****
  • Posts: 561
Re: We are planning the next release: Lazarus 2.0.2
« Reply #42 on: April 11, 2019, 09:05:03 pm »
Would you mind sharing the steps you used to generate the chms? I've been stumbling around trying to do the same with the updated fpdoc xml files. No luck so far...

To put it as simply as possible (again, I'm on Windows):

-Install TexLive
-Ensure that the main TexLive bin directory (with like a million DLLs and executables) is in your path
-Ensure that the FPC bin directory is also in your path
-Install Git for Windows
-From an elevated git-bash.exe command prompt, change directories to where you've checked out the fpcdocs SVN
-Assuming the "fpcdocs" folder is side-by-side with your "fpcsrc" folder, do:
Code: [Select]
mkdir ./tmp && cp ./fpdoc.cst ./fpdoc.css && make all FPCDIR="../fpcsrc" FPCSRCDIR="../fpcsrc" HTMLFMT=chm CSSFILE="./fpdoc.css" && ./fixdocs.sh-Hope that it works!

I might be forgetting something, but that's the gist of it. There might also have been a couple of FPC sources I actually had to modify in some way and rebuild beforehand to make them not-just-for-Linux, but I can't remember at the moment. I'll check tonight.
« Last Edit: April 11, 2019, 09:10:51 pm by Akira1364 »

dsiders

  • Hero Member
  • *****
  • Posts: 1077
Re: We are planning the next release: Lazarus 2.0.2
« Reply #43 on: April 11, 2019, 09:16:26 pm »
Would you mind sharing the steps you used to generate the chms? I've been stumbling around trying to do the same with the updated fpdoc xml files. No luck so far...

To put it as simply as possible (again, I'm on Windows):

-Install TexLive
-Ensure that the main TexLive bin directory (with like a million DLLs and executables) is in your path
-Ensure that the FPC bin directory is also in your path
-Install Git for Windows
-From an elevated git-bash.exe command prompt, change directories to where you've checked out the fpcdocs SVN
-Assuming the "fpcdocs" folder is side-by-side with your "fpcsrc" folder, do:
Code: [Select]
mkdir ./tmp && cp ./fpdoc.cst ./fpdoc.css && make all FPCDIR="../fpcsrc" FPCSRCDIR="../fpcsrc" HTMLFMT=chm CSSFILE="./fpdoc.css" && ./fixdocs.sh-Hope that it works!

I might be forgetting something, but that's the gist of it. There might also have been a couple of FPC sources I actually had to modify in some way and rebuild beforehand to make them not-just-for-Linux, but I can't remember at the moment. I'll check tonight.

Thanks for that. But I was mainly interested in LCL and LazUtils - which you covered earlier.

Not going near anything that involves LateX. ;)
Preview Lazarus 3.99 documentation at: https://dsiders.gitlab.io/lazdocsnext

lucamar

  • Hero Member
  • *****
  • Posts: 4219
Re: We are planning the next release: Lazarus 2.0.2
« Reply #44 on: April 11, 2019, 09:24:14 pm »
Not going near anything that involves LateX. ;)

Yeah, LateX is for masochist (pun intended :D ) *


* Not intended to be taken seriously! :)
Turbo Pascal 3 CP/M - Amstrad PCW 8256 (512 KB !!!) :P
Lazarus/FPC 2.0.8/3.0.4 & 2.0.12/3.2.0 - 32/64 bits on:
(K|L|X)Ubuntu 12..18, Windows XP, 7, 10 and various DOSes.

 

TinyPortal © 2005-2018