My release of dynamic packages do check off most of the items, but
versioning is not done inside the package itself, but through its location
on your system. For safety reasons, much like lazarus.old, when you do a
build of a package it is given a specific folder with information about its
successful creation time. An older copy of all packages are kept in the
event you need to rollback changes due to something catastrophic. When the
IDE started it will check if any of the package sources are newer than the
metadata stored about the package, and a new lazprogress user
interface prgoram will tell you about the changes that were detected as the
IDE attempts to resolve the differences.

Similarly, users can still elect to rebuild the entire IDE, but the time
will be reduced, as this process now looks it the packages it is comprised
of need any rebuilding. If nothing has changed, the IDE will not be
rebuilt. User can force certain items to be rebuilt by deleting the package
binary.

Additionally the RTL, FLC, LCL, and most else are now in their own
dynamic packages. THe RTL contains a new unit for inspecting packages using
several eneuermating functions and some new types that give you RTTI about
a package, and from there you can use the normal RTTI unit to gather
information about what to do with the contents of a package. See the
new DynPkgTypes.pas unit in the RTL for details.

Regarding the merge request, I think this needs to cook for a little while
before one is sent over to the main branch,

And finally, I am limited in hardware. I do not have an M1 macintosh to
test or create a branch for that CPU architecture. As such, the MacOS build
I sent out is for darwin-x86_64 which will run on M1 macs, but who knows
for how long. If anyone has a M1 mac that they don't want or care to donate
one, I'd be happy to look at adding native M1 support for this feature.

Let me know if you have any other questions. I have been working on this
feature and of my merger of tiny.sim into my unified library vigorously for
quite some time, but I will be back at porting some of my old Delphi code
to Lazarus this week and answering questions or fixing issues posted to
those gitlab pages until we get to a point where a MR is appropriate.

Thank you all,
Anthony
_______________________________________________
fpc-pascal maillist  -  [email protected]
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to