View Issue Details

IDProjectCategoryView StatusLast Update
0018518LazarusIDEpublic2020-01-10 11:30
ReporterSven Barth Assigned ToMattias Gaertner  
PrioritynormalSeverityfeatureReproducibilityN/A
Status resolvedResolutionfixed 
Product Version0.9.31 (SVN) 
Summary0018518: Add support for Project Groups
DescriptionIt would be nice to have support for project groups in Lazarus (multiple projects open at once). This way one could open a project that contains e.g. a server and a client application and easily compile both from within the same IDE and without the need to open the corresponding other project. Another example are projects that consist of a application and some libraries.

Also package projects should be able to be added to a group project so that one can work on a huge project that contains normal projects and packages. This could reduce the need to skip through package windows when the added/included files of a package are listed inside the group's project inspector.
Additional InformationTake a look at recent Delphi IDEs (2005+) to see a nice (but not perfect) example.

Note: Depending on how stable/backwards compatible you want to keep the IDE interface / the project file layout after 1.0, you might think about adding this feature before that release.
TagsNo tags attached.
Fixed in Revision
LazTarget-
Widgetset
Attached Files

Relationships

related to 0021094 acknowledged Lazarus The main idea is to have ability to write and run Unit tests from a subpackage of main project. 
related to 0032475 assignedMattias Gaertner Packages lazprojectgroups improvements 
related to 0029079 assignedMattias Gaertner Packages [projectgroups] Trying to compile project with custom build mode which replaces IDE marco "CompPath" causes error. 
related to 0031664 resolvedMattias Gaertner Packages Project Group does not remember the loaded group on restart 

Activities

Stephan Schamberger

2011-01-19 09:09

reporter   ~0045293

Also cross-project debugging would be great. In my case I have many library files developed and one binary file. If there is a error in the library I cannot debug it.

Juha Manninen

2011-01-19 10:00

developer   ~0045294

Last edited: 2011-01-19 10:18

Stephan: debugging dynamic library code is maybe not related to project groups.

One way to debug such code is to include it temporarily in your test application and debug it there, and later build the library.

Another way is to open "Run Parameters..." from Run menu and set "Host Application" for your library project. This keeps the library project active but starts it with another (host-)application and allows debugging.

Stephan Schamberger

2011-01-19 10:17

reporter   ~0045295

The problem than often occours is, the memory manager of one big binary file is equal.
In case of libraries and binary files each module does use its own memory manager. This means if there are some small bugs within strings etc, it will be much more difficult to find some mem leaks in a after-develop split instead of beginning as it should be. (I hope you understand what I mean :))

Juha Manninen

2011-01-19 10:23

developer   ~0045296

Stephan: I edited my first note adding the Host Application part (thought nobody had read it yet).
Please try if you can debug your lib with a Host Application defined.
Further questions and discussion should actually happen in lazarus mailing list, not under this issue report.

Stephan Schamberger

2011-01-19 10:37

reporter   ~0045297

You're right. Then I can debug the library. But I cannot make step-by-step debugging beginning in the binray until the library code.

Paul Ishenin

2011-01-19 12:54

manager   ~0045306

Let's think about this feature after 1.0 release

Bart Broersma

2015-11-26 18:15

developer   ~0087611

@Mattias: aren't you currently working on this?

Mattias Gaertner

2015-11-26 18:31

manager   ~0087612

I started the package Project Groups. It helps to group projects and packages, easily switch between them and compile them. Debugging multiple projects in parallel is a different topic. Maybe a menu item can be added to start a second IDE and run a project there.
See here:
http://wiki.lazarus.freepascal.org/Project_Groups

Ondrej Pokorny

2020-01-10 11:30

developer   ~0120299

I allow myself to resolve it - Package Groups work pretty well now and support all features listed in this issue report.

Issue History

Date Modified Username Field Change
2011-01-15 15:43 Sven Barth New Issue
2011-01-19 09:09 Stephan Schamberger Note Added: 0045293
2011-01-19 10:00 Juha Manninen Note Added: 0045294
2011-01-19 10:17 Stephan Schamberger Note Added: 0045295
2011-01-19 10:18 Juha Manninen Note Edited: 0045294
2011-01-19 10:23 Juha Manninen Note Added: 0045296
2011-01-19 10:37 Stephan Schamberger Note Added: 0045297
2011-01-19 12:54 Paul Ishenin LazTarget => -
2011-01-19 12:54 Paul Ishenin Note Added: 0045306
2011-01-19 12:54 Paul Ishenin Status new => acknowledged
2014-09-12 22:51 Juha Manninen Relationship added related to 0021094
2015-11-26 18:14 Bart Broersma Assigned To => Mattias Gaertner
2015-11-26 18:14 Bart Broersma Status acknowledged => assigned
2015-11-26 18:15 Bart Broersma Note Added: 0087611
2015-11-26 18:31 Mattias Gaertner Note Added: 0087612
2017-09-27 10:09 Juha Manninen Relationship added related to 0032475
2017-09-27 10:12 Juha Manninen Relationship added related to 0029079
2017-09-27 10:14 Juha Manninen Relationship added related to 0031664
2020-01-10 11:30 Ondrej Pokorny Status assigned => resolved
2020-01-10 11:30 Ondrej Pokorny Resolution open => fixed
2020-01-10 11:30 Ondrej Pokorny Note Added: 0120299