View Issue Details

IDProjectCategoryView StatusLast Update
0034283PatchesIDEpublic2019-05-10 15:19
Reporterm_burkhard@gmx.chAssigned ToJuha Manninen 
PrioritynormalSeverityminorReproducibilityhave not tried
Status resolvedResolutionfixed 
PlatformAllOSAllOS VersionAll
Product Version1.9 (SVN)Product Build1.9.0 r58935M 
Target VersionFixed in Version 
Summary0034283: ExecuteCommand is missing in compoptsintf.pas
DescriptionSince ExecuteBeforCommand and ExecuteBeforCommand is missing in the unit /lazarus/components/ideintf/ompoptsintf.pas, I have modified this unit, as well as the unit /lazarus/ide/compileroptions.pp

Steps To ReproduceSince I develop an AVR package for the Lazarus IDE, especially ExecuteAfterCommand is needed, because there the call "avrdude" must.
It looks like this:

 AProject.LazCompilerOptions.ExecuteAfterCommand := ProjectOptions.AvrdudeCommand.Path + ' -v ' +
    '-patmega328p ' +
    '-c' + ProjectOptions.AvrdudeCommand.Programmer + ' ' +
    ' -P/dev/ttyUSB0 -b57600 -D -Uflash:w:Project1.hex:i';
Additional InformationIt would be great who the Lazarus team could incorporate. ;)
TagsNo tags attached.
Fixed in Revisionr59006, r59042, r59043, r59268
LazTarget-
Widgetset
Attached Files
  • lazarus_avr.patch (4,325 bytes)
    --- fpcupdeluxe_avr_original_2/lazarus/components/ideintf/compoptsintf.pas	2018-09-10 22:22:00.100508000 +0200
    +++ fpcupdeluxe_avrpackage/lazarus/components/ideintf/compoptsintf.pas	2018-09-12 17:26:39.233993945 +0200
    @@ -288,6 +288,10 @@ type
         function GetSrcPath: string; virtual; abstract;
         function GetUnitOutputDir: string; virtual; abstract;
         function GetUnitPaths: String; virtual; abstract;
    +
    +    function GetExecuteBeforeCommand: string; virtual; abstract;
    +    function GetExecuteAfterCommand: string; virtual; abstract;
    +
         procedure SetCompilerPath(const AValue: String); virtual; abstract;
         procedure SetConditionals(AValue: string); virtual; abstract;
         procedure SetCustomOptions(const AValue: string); virtual; abstract;
    @@ -306,6 +310,12 @@ type
         procedure SetTargetProc(const AValue: string); virtual; abstract;
         procedure SetUnitOutputDir(const AValue: string); virtual; abstract;
         procedure SetUnitPaths(const AValue: String); virtual; abstract;
    +
    +    procedure SetExecuteBeforeCommand(const ACommand: string); virtual; abstract;
    +    procedure SetExecuteAfterCommand(const ACommand: string); virtual; abstract;
    +    // geht nicht
    +    procedure SetExecuteBeforeCompileReasons(ACompileReasons: TCompileReasons); virtual; abstract;
    +    procedure SetExecuteAfterCompileReasons(ACompileReasons: TCompileReasons); virtual; abstract;
       public
         constructor Create(const TheOwner: TObject); virtual;
         destructor Destroy; override;
    @@ -451,6 +461,10 @@ type
     
         // execute
         property CompilerPath: String read GetCompilerPath write SetCompilerPath;
    +
    +    property  ExecuteBeforeCommand: String read GetExecuteBeforeCommand write SetExecuteBeforeCommand;
    +    property  ExecuteAfterCommand: String read GetExecuteAfterCommand write SetExecuteAfterCommand;
    +
         procedure SetAlternativeCompile(const Command: string; ScanFPCMsgs: boolean); virtual; abstract; // disable normal compile and call this instead
       end;
     
    --- fpcupdeluxe_avr_original_2/lazarus/ide/compileroptions.pp	2018-09-10 22:22:04.788510000 +0200
    +++ fpcupdeluxe_avrpackage/lazarus/ide/compileroptions.pp	2018-09-12 16:59:56.205749651 +0200
    @@ -453,6 +453,10 @@ type
         function GetSrcPath: string; override;
         function GetUnitOutputDir: string; override;
         function GetUnitPaths: String; override;
    +
    +    function GetExecuteBeforeCommand: string; override;
    +    function GetExecuteAfterCommand: string; override;
    +
         procedure SetBaseDirectory(AValue: string);
         procedure SetCompilerPath(const AValue: String); override;
         procedure SetConditionals(AValue: string); override;
    @@ -471,6 +475,12 @@ type
         procedure SetTargetOS(const AValue: string); override;
         procedure SetTargetFileExt(const AValue: String); override;
         procedure SetTargetFilename(const AValue: String); override;
    +
    +    procedure SetExecuteBeforeCommand(const ACommand: string); override;
    +    procedure SetExecuteAfterCommand(const ACommand: string); override;
    +    procedure SetExecuteBeforeCompileReasons(ACompileReasons: TCompileReasons); override;
    +    procedure SetExecuteAfterCompileReasons(ACompileReasons: TCompileReasons); override;
    +
       protected
         function GetModified: boolean; override;
         procedure SetModified(const AValue: boolean); override;
    @@ -3703,6 +3713,43 @@ begin
         ExecuteBefore.Parsers.Clear;
     end;
     
    +function TBaseCompilerOptions.GetExecuteBeforeCommand: string;
    +begin
    +  Result := ExecuteBefore.Command;
    +end;
    +
    +function TBaseCompilerOptions.GetExecuteAfterCommand: string;
    +begin
    +  Result := ExecuteAfter.Command;
    +end;
    +
    +procedure TBaseCompilerOptions.SetExecuteBeforeCommand(const ACommand: string);
    +begin
    +  ExecuteBefore.Command := ACommand;
    +  IncreaseChangeStamp;
    +end;
    +
    +procedure TBaseCompilerOptions.SetExecuteAfterCommand(const ACommand: string);
    +begin
    +  ExecuteAfter.Command := ACommand;
    +  IncreaseChangeStamp;
    +end;
    +
    +procedure TBaseCompilerOptions.SetExecuteBeforeCompileReasons(
    +  ACompileReasons: TCompileReasons);
    +begin
    +  ExecuteBefore.Parsers.Text := SubToolFPC; /// ????????????
    +  /// ????????????
    +end;
    +
    +procedure TBaseCompilerOptions.SetExecuteAfterCompileReasons(
    +  ACompileReasons: TCompileReasons);
    +begin
    +  ExecuteAfter.Parsers.Text :=SubToolFPC; /// ????????????
    +end;
    +
    +
    +
     
     { TAdditionalCompilerOptions }
     
    
    lazarus_avr.patch (4,325 bytes)
  • Test_Package.tar.bz2 (2,660 bytes)

Relationships

related to 0034289 resolvedJuha Manninen Patches ExecuteCompileReasons is missing in compoptsintf.pas 
related to 0035059 closedJuha Manninen Lazarus Under certain circumstances, projects options are not applied 

Activities

m_burkhard@gmx.ch

2018-09-15 16:51

reporter  

lazarus_avr.patch (4,325 bytes)
--- fpcupdeluxe_avr_original_2/lazarus/components/ideintf/compoptsintf.pas	2018-09-10 22:22:00.100508000 +0200
+++ fpcupdeluxe_avrpackage/lazarus/components/ideintf/compoptsintf.pas	2018-09-12 17:26:39.233993945 +0200
@@ -288,6 +288,10 @@ type
     function GetSrcPath: string; virtual; abstract;
     function GetUnitOutputDir: string; virtual; abstract;
     function GetUnitPaths: String; virtual; abstract;
+
+    function GetExecuteBeforeCommand: string; virtual; abstract;
+    function GetExecuteAfterCommand: string; virtual; abstract;
+
     procedure SetCompilerPath(const AValue: String); virtual; abstract;
     procedure SetConditionals(AValue: string); virtual; abstract;
     procedure SetCustomOptions(const AValue: string); virtual; abstract;
@@ -306,6 +310,12 @@ type
     procedure SetTargetProc(const AValue: string); virtual; abstract;
     procedure SetUnitOutputDir(const AValue: string); virtual; abstract;
     procedure SetUnitPaths(const AValue: String); virtual; abstract;
+
+    procedure SetExecuteBeforeCommand(const ACommand: string); virtual; abstract;
+    procedure SetExecuteAfterCommand(const ACommand: string); virtual; abstract;
+    // geht nicht
+    procedure SetExecuteBeforeCompileReasons(ACompileReasons: TCompileReasons); virtual; abstract;
+    procedure SetExecuteAfterCompileReasons(ACompileReasons: TCompileReasons); virtual; abstract;
   public
     constructor Create(const TheOwner: TObject); virtual;
     destructor Destroy; override;
@@ -451,6 +461,10 @@ type
 
     // execute
     property CompilerPath: String read GetCompilerPath write SetCompilerPath;
+
+    property  ExecuteBeforeCommand: String read GetExecuteBeforeCommand write SetExecuteBeforeCommand;
+    property  ExecuteAfterCommand: String read GetExecuteAfterCommand write SetExecuteAfterCommand;
+
     procedure SetAlternativeCompile(const Command: string; ScanFPCMsgs: boolean); virtual; abstract; // disable normal compile and call this instead
   end;
 
--- fpcupdeluxe_avr_original_2/lazarus/ide/compileroptions.pp	2018-09-10 22:22:04.788510000 +0200
+++ fpcupdeluxe_avrpackage/lazarus/ide/compileroptions.pp	2018-09-12 16:59:56.205749651 +0200
@@ -453,6 +453,10 @@ type
     function GetSrcPath: string; override;
     function GetUnitOutputDir: string; override;
     function GetUnitPaths: String; override;
+
+    function GetExecuteBeforeCommand: string; override;
+    function GetExecuteAfterCommand: string; override;
+
     procedure SetBaseDirectory(AValue: string);
     procedure SetCompilerPath(const AValue: String); override;
     procedure SetConditionals(AValue: string); override;
@@ -471,6 +475,12 @@ type
     procedure SetTargetOS(const AValue: string); override;
     procedure SetTargetFileExt(const AValue: String); override;
     procedure SetTargetFilename(const AValue: String); override;
+
+    procedure SetExecuteBeforeCommand(const ACommand: string); override;
+    procedure SetExecuteAfterCommand(const ACommand: string); override;
+    procedure SetExecuteBeforeCompileReasons(ACompileReasons: TCompileReasons); override;
+    procedure SetExecuteAfterCompileReasons(ACompileReasons: TCompileReasons); override;
+
   protected
     function GetModified: boolean; override;
     procedure SetModified(const AValue: boolean); override;
@@ -3703,6 +3713,43 @@ begin
     ExecuteBefore.Parsers.Clear;
 end;
 
+function TBaseCompilerOptions.GetExecuteBeforeCommand: string;
+begin
+  Result := ExecuteBefore.Command;
+end;
+
+function TBaseCompilerOptions.GetExecuteAfterCommand: string;
+begin
+  Result := ExecuteAfter.Command;
+end;
+
+procedure TBaseCompilerOptions.SetExecuteBeforeCommand(const ACommand: string);
+begin
+  ExecuteBefore.Command := ACommand;
+  IncreaseChangeStamp;
+end;
+
+procedure TBaseCompilerOptions.SetExecuteAfterCommand(const ACommand: string);
+begin
+  ExecuteAfter.Command := ACommand;
+  IncreaseChangeStamp;
+end;
+
+procedure TBaseCompilerOptions.SetExecuteBeforeCompileReasons(
+  ACompileReasons: TCompileReasons);
+begin
+  ExecuteBefore.Parsers.Text := SubToolFPC; /// ????????????
+  /// ????????????
+end;
+
+procedure TBaseCompilerOptions.SetExecuteAfterCompileReasons(
+  ACompileReasons: TCompileReasons);
+begin
+  ExecuteAfter.Parsers.Text :=SubToolFPC; /// ????????????
+end;
+
+
+
 
 { TAdditionalCompilerOptions }
 
lazarus_avr.patch (4,325 bytes)

m_burkhard@gmx.ch

2018-09-15 16:55

reporter   ~0110765

See also:

http://forum.lazarus.freepascal.org/index.php/topic,42465.0.html

http://www.lazarusforum.de/viewtopic.php?f=9&t=11127&start=225
http://www.lazarusforum.de/viewtopic.php?f=18&t=11760&p=105798#p105798

Juha Manninen

2018-09-15 19:23

developer   ~0110768

Last edited: 2018-09-15 19:26

View 2 revisions

I applied a modified version in r59006. It contains everything except for the CompileReasons methods as they made no sense. The ACompileReasons parameter was not used for example.
Please try to make patches that are "ready" and ideally can be applied "as is".
Also follow the style of surrounding code, avoid extra newlines if the surrounding code doesn't have them.

Please provide another patch for CompileReasons stuff once you know how to implement it.

BTW, your timing is good. New major Lazarus version will be forked very soon. This change will be in the coming RC1 release.

m_burkhard@gmx.ch

2018-09-15 20:15

reporter   ~0110770

Thank you for installing.

I built a new Lazarus trunk with fpcupdeluxe. Unfortunately with FPC stable, since the trunk of FPC does not work, so I can not test it directly with the AVR Crosscompiler.

But it looks like it works perfectly. So I can continue working on my package.

I will pay attention to empty lines, etc. in the next patch.
I should have removed the lines with "Reasons", but that will be one of the next builds.

Thanks again

Juha Manninen

2018-09-17 14:16

developer   ~0110825

Last edited: 2018-09-17 14:19

View 2 revisions

I reverted the commit in r59042.
Then I implemented a new interface class TLazCompilationToolOptions in r59043.
It should provide access to the data you need. Please test.

It is not perfect. CompileReasons is now moved to the interface class but it can be used only for the inherited TProjectCompilationToolOptions.
Otherwise setting CompileReasons throws a run-time exception.

m_burkhard@gmx.ch

2018-09-17 17:22

reporter   ~0110826

I have tested it, and it works as desired.
In my opinion, you have solved this great.

Many Thanks

Juha Manninen

2018-09-17 19:11

developer   ~0110829

Last edited: 2018-09-17 19:14

View 2 revisions

I improved it further and cleaned the code in r59044. Please test more.

m_burkhard@gmx.ch

2018-09-18 17:07

reporter   ~0110851

Last edited: 2018-09-18 17:55

View 5 revisions

I have yet discovered a mistake, as well as yesterday, as in your current update.

Who am I changing something in the AVR options dialog?

With ProjectOptions.Save (LazProject); the after parameters are updated.
This is done, proves the ShowMessage. Even if I call the dialogue again, the value is changed.
But if I press F9 Avrdude is still called with the old parameters.

I call "Project -> Project Settings" and then click on "Cancel" without anywhere else purely click. And who I press F9 again, then it works.
I have it with LazProject.Modified: = True; tried, but this did not help.

Above all, I see it well who I change the com port.

If I change something in AProject.LazCompilerOptions.CustomOptions, this will be accepted immediately. I see that well with the parameter '-al'
Also with AVRType it works

Could this be related to InvalidateOptions ?

procedure ShowAVROptionsDialog (Sender: TObject);
var
  LazProject: TLazProject;
  Shape: TProjectOptionsForm;
begin
  Form: = TProjectOptionsForm.Create (nil);

  LazProject: = LazarusIDE.ActiveProject;

  ProjectOptions.Load (LazProject);

  Form.AVR_Project_Options_Frame1.LoadDefaultMask;
  Form.AVR_Project_Options_Frame1.ProjectOptionsToMask;

  if Form.ShowModal = mrOk then begin
    Form.AVR_Project_Options_Frame1.MaskToProjectOptions;
    ProjectOptions.Save (LazProject);
    ShowMessage (LazProject.LazCompilerOptions.ExecuteAfter.Command);
    LazProject.Modified: = True;
  end;

  Form.Free;
end;

The complete package: https://github.com/sechshelme/AVR-Lazarus/tree/master/AVR_Package

Juha Manninen

2018-09-18 20:04

developer   ~0110853

Do the same options work when using the project options dialog in IDE without your AVR package?
I try to find time to study the issue more in few days. Right now I have other priorities.

I have trouble understanding some of your sentences. A word "who" is used wrongly I guess.

m_burkhard@gmx.ch

2018-09-18 21:53

reporter   ~0110856

About "Project -> Project Options ... -> Compiler Commandos -> Command" it works as usual, as my Pakage is not installed.
As I said, the problem is who I go to the new menu item "Project -> AVR Options".

With "Project -> Project Options ... -> AVR option" nothing works except the serial monitor parameters, because the existing frames have more priority.
That's why I made the new dialogue. In principle, I can remove the frames again.

Again to repeat:
When I go over "Project -> Project Options ... -> AVR Option", it is accepted with Lazarus, who proves the show message.
But if I hit F9, AfterCommand will be called with the old value.
But if I call "Project -> Project Options ...", and without anything else, I call Abort and then press F9, then AfterCommand is called with the new values.

I think, AfterCommand is available twice in the IDE.


>I have trouble understanding some of your sentences. A word "who" is used wrongly I guess.
My biggest drawback is that I speak German and I have to translate everything with Google.


Original text in german:
Über "Project --> Project Options... --> Compiler Commandos --> Command" funktioniert es wie gewohnt, wie wen meine Pakage nicht installiert ist.
Wie schon gesagt, das Problem besteht wen ich über den neuen Menüpunkt "Project --> AVR-Options" gehe.

Bei "Project --> Project Options... --> AVR-Option" funktioniert gar nichts, ausser den Serialmonitor-Parameter, da die bestehenden Frames mehr Priorität haben.
Aus diesem Grund habe ich den neuen Dialog gemacht. Im Prinzip kann ich das Frames wieder entfernen.

Nochmals zur Widerholung:
Wen ich über "Project --> Project Options... --> AVR-Option" gehe, wird es mit Lazarus angenommen, die beweisst das Showmessage.
Aber wen ich F9 drücke, wird AfterCommand mit dem alten Wert aufgerufen.
Aber wen ich "Project --> Project Options... " aufrufe, und ohne sonst irgendetwas anzuklichen auser Abbruch und anschliessend F9 drücke, dann wird AfterCommand mit den neuen Werten aufgerufen.

Ich denke mal, AfterCommand ist doppelt in der IDE vorhanden.

kupferstecher

2018-09-23 19:14

reporter   ~0110983

I think this has to do with "save" and "modified" behaviours. It could be that the IDE doesn't recognize that a setting was changed so the settings are also not saved when you press F9, instead the old settings in the files are used for the compilation.
(Thats just a guess.)

When I tried to write an IDE plugin, before, the save-behaviour was quite strange. The new project wasn't saved automatically to the drive, but the first time after a manual save (Ctrl+s). Problem: The manual save is prohibited by the IDE if there is no recognized change of the project (e.g. in a source file). This was only if a project path was defined, otherwise the save buttons would be active from the beginning and the bahaviour as expected. I guess there is a property to inform the IDE that a setting was changed, or even a property to advise the IDE to do a "save".
(I use past tense, because I'm using Laz 1.8.0. Don't know how the behaviour is on the latest version.)

Juha Manninen

2018-09-23 20:54

developer   ~0110986

kupferstecher, this feature is being developed in Lazarus trunk. Please use it. Writing speculations based on some old version is not useful.

m_burkhard@gmx.ch

2018-09-23 23:02

reporter   ~0110988

Ctrl-s has no influence on me.

Juha Manninen

2018-10-04 14:55

developer   ~0111240

Last edited: 2018-10-04 14:56

View 2 revisions

I have tested the AVR_Package. In procedure TProjectOptions.Save I used a global integer counter to see if the changes really are applied to ExecuteAfter command:

  Inc(TestCounter);
  s := 'Counter_'+IntToStr(TestCounter);
  AProject.LazCompilerOptions.ExecuteAfter.Command := s;

When I open Project -> AVR-Optionen... and click OK, I see the counter incrementing as expected in:
  ShowMessage(LazProject.LazCompilerOptions.ExecuteAfter.Command);

So, it seems to work perfectly. Do you still have the problems you explained? I think the reason is in your own code, not in the new tool interface.

However if you think the interface behaves wrong then please provide a minimal demo package to reproduce the error.

m_burkhard@gmx.ch

2018-10-04 22:41

reporter   ~0111249

I can not test it right now because Lazarus is currently having another problem.

2.1.0 r249f77e.....
fcllaz.pas(11,3) Fatal: Kann db nicht finden verwendet von fcllaz von Package FCL.

Juha Manninen

2018-10-04 23:36

developer   ~0111251

Package FCL compiles fine here. Lazarus has no problems. :)
Try a clean build.

m_burkhard@gmx.ch

2018-10-06 18:06

reporter  

Test_Package.tar.bz2 (2,660 bytes)

m_burkhard@gmx.ch

2018-10-06 18:13

reporter   ~0111286

Last edited: 2018-10-06 18:14

View 2 revisions

I reduced my package to a minimum.
I also removed the frame.
Instead of "averdude" I took a simple "echo".
Attached the package: "Test_Package.tar.bz2"

But I still have the mistake.
Since I have not changed anything in the editor options, you have to start with [Ctrl + Shift + F9].

As I described above, who I Project -> Project Settings, it is adopted.

I hope you can understand the mistake now.

Juha Manninen

2018-10-06 22:11

developer   ~0111290

Last edited: 2018-10-07 09:52

View 6 revisions

Thanks for the simplified demo package.

As much as I understand the interface for ExecuteAfter works perfectly well. The steps I took after installing your package:
1. Open Project -> AVR-Optionen...
2. Type "JuhaTest1" into the Combobox. (The text does not need to be a valid COM port name now).
3. Click OK. Then a MessageBox says "echo JuhaTest1".
4. Click OK to close the MessageBox.
5. Open Project Options -> Compiler Options -> Compiler Commands.
6. There I see "echo JuhaTest1" in Execute after - Command, just as expected.
7. Close Project Options and open the AVR-Optionen window again. My "JuhaTest1" is there.
8. After compiling the current project, the echoed text is shown in Messages window.

Please remember the Execute after command is run only after compilation. If nothing changed in your project, it will not be compiled and the command is not run.

BTW, the copy command should be "AvrdudeCommand.COM_Port := Copy(s, 6);" to prevent copying a leading space, but it is not relevant for this issue.

m_burkhard@gmx.ch

2018-10-07 17:19

reporter   ~0111309

Last edited: 2018-10-07 17:21

View 2 revisions

If I do it the way you write, it works the same way for me.

I change something in point 7, eg. on "HelloWorld", then come in ShowMessage as expected "HelloWorld".
But if I start the project with [Ctrl + Shift + F9], then "echo JuhaTest1" will still be executed. You can see that very well in the message window

Only when I finish "Project -> Project Settings" and finish it again, no matter if with [Cancel] or [Ok], it is taken over internally. If I then [Ctrl + Shift + F9], then in the message window "HelloWorld" is displayed.

I hope you understand me now. ;-)

Juha Manninen

2018-10-07 20:34

developer   ~0111315

Ah yes, actually I can reproduce. When I do not open the Project Options window at all, then the old value remains.
[Ctrl+Shift+F9] is not the only way to replicate the error. F9 works, too, or any command that compiles the project.

I could not find the reason yet. I must debug the code ...

Juha Manninen

2018-10-07 22:06

developer   ~0111317

Ok, I think I fixed it in r59268. Please test.
The problem was about timestamps. Changing TCompilationToolOptions.FParsedCommandStamp when the command changes actually solved the issue but I improved the code also otherwise.

m_burkhard@gmx.ch

2018-10-08 17:55

reporter   ~0111329

I just tried it, it seems to work.

Many Thanks !

Juha Manninen

2018-10-08 18:03

developer   ~0111330

Great! Resolving.

martha simons

2019-05-10 15:19

reporter   ~0116118

Control how GCC aligns variables. Supported values for type are ‘compat’ uses increased alignment value compatible uses GCC 4.8 and https://goo.gl/LhppLn earlier, ‘abi’ uses alignment value as specified by the psABI, and ‘cacheline’ uses increased alignment value to match the cache line size. ‘compat’ is the default.

Issue History

Date Modified Username Field Change
2018-09-15 16:51 m_burkhard@gmx.ch New Issue
2018-09-15 16:51 m_burkhard@gmx.ch File Added: lazarus_avr.patch
2018-09-15 16:55 m_burkhard@gmx.ch Note Added: 0110765
2018-09-15 19:16 Juha Manninen Assigned To => Juha Manninen
2018-09-15 19:16 Juha Manninen Status new => assigned
2018-09-15 19:23 Juha Manninen LazTarget => -
2018-09-15 19:23 Juha Manninen Note Added: 0110768
2018-09-15 19:23 Juha Manninen Status assigned => feedback
2018-09-15 19:23 Juha Manninen Fixed in Revision => r59006
2018-09-15 19:26 Juha Manninen Note Edited: 0110768 View Revisions
2018-09-15 20:15 m_burkhard@gmx.ch Note Added: 0110770
2018-09-15 20:15 m_burkhard@gmx.ch Status feedback => assigned
2018-09-16 17:04 Juha Manninen Relationship added related to 0034289
2018-09-17 14:16 Juha Manninen Note Added: 0110825
2018-09-17 14:16 Juha Manninen Status assigned => feedback
2018-09-17 14:19 Juha Manninen Note Edited: 0110825 View Revisions
2018-09-17 17:22 m_burkhard@gmx.ch Note Added: 0110826
2018-09-17 17:22 m_burkhard@gmx.ch Status feedback => assigned
2018-09-17 19:11 Juha Manninen Note Added: 0110829
2018-09-17 19:14 Juha Manninen Note Edited: 0110829 View Revisions
2018-09-18 17:07 m_burkhard@gmx.ch Note Added: 0110851
2018-09-18 17:22 m_burkhard@gmx.ch Note Edited: 0110851 View Revisions
2018-09-18 17:29 m_burkhard@gmx.ch Note Edited: 0110851 View Revisions
2018-09-18 17:30 m_burkhard@gmx.ch Note Edited: 0110851 View Revisions
2018-09-18 17:55 m_burkhard@gmx.ch Note Edited: 0110851 View Revisions
2018-09-18 20:04 Juha Manninen Note Added: 0110853
2018-09-18 21:53 m_burkhard@gmx.ch Note Added: 0110856
2018-09-23 19:14 kupferstecher Note Added: 0110983
2018-09-23 20:54 Juha Manninen Note Added: 0110986
2018-09-23 23:02 m_burkhard@gmx.ch Note Added: 0110988
2018-09-25 19:30 Juha Manninen Fixed in Revision r59006 => r59006, r59042, r59043
2018-10-04 14:55 Juha Manninen Note Added: 0111240
2018-10-04 14:55 Juha Manninen Status assigned => feedback
2018-10-04 14:56 Juha Manninen Note Edited: 0111240 View Revisions
2018-10-04 22:41 m_burkhard@gmx.ch Note Added: 0111249
2018-10-04 22:41 m_burkhard@gmx.ch Status feedback => assigned
2018-10-04 23:36 Juha Manninen Note Added: 0111251
2018-10-06 18:06 m_burkhard@gmx.ch File Added: Test_Package.tar.bz2
2018-10-06 18:13 m_burkhard@gmx.ch Note Added: 0111286
2018-10-06 18:14 m_burkhard@gmx.ch Note Edited: 0111286 View Revisions
2018-10-06 22:11 Juha Manninen Note Added: 0111290
2018-10-06 22:12 Juha Manninen Note Edited: 0111290 View Revisions
2018-10-06 22:15 Juha Manninen Note Edited: 0111290 View Revisions
2018-10-06 22:25 Juha Manninen Note Edited: 0111290 View Revisions
2018-10-06 22:29 Juha Manninen Note Edited: 0111290 View Revisions
2018-10-07 09:52 Juha Manninen Note Edited: 0111290 View Revisions
2018-10-07 17:19 m_burkhard@gmx.ch Note Added: 0111309
2018-10-07 17:21 m_burkhard@gmx.ch Note Edited: 0111309 View Revisions
2018-10-07 20:34 Juha Manninen Note Added: 0111315
2018-10-07 22:06 Juha Manninen Note Added: 0111317
2018-10-07 22:06 Juha Manninen Status assigned => feedback
2018-10-08 17:55 m_burkhard@gmx.ch Note Added: 0111329
2018-10-08 17:55 m_burkhard@gmx.ch Status feedback => assigned
2018-10-08 18:03 Juha Manninen Fixed in Revision r59006, r59042, r59043 => r59006, r59042, r59043, r59268
2018-10-08 18:03 Juha Manninen Note Added: 0111330
2018-10-08 18:03 Juha Manninen Status assigned => resolved
2018-10-08 18:03 Juha Manninen Resolution open => fixed
2019-02-17 14:54 Juha Manninen Relationship added related to 0035059
2019-05-10 15:19 martha simons Note Added: 0116118