clean-ide issueshttps://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues2021-03-22T14:38:14+01:00https://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/1Add {Library} to project files2021-03-22T14:38:14+01:00Mart LubbersAdd {Library} to project filesThis allows more platform independent project files.
On windows this is `{Application}/Libraries` and on mac/linux this is `{Application}/lib`
Another option is to let `{Library}` represent `Libraries` on windows and `lib` on mac/linux....This allows more platform independent project files.
On windows this is `{Application}/Libraries` and on mac/linux this is `{Application}/lib`
Another option is to let `{Library}` represent `Libraries` on windows and `lib` on mac/linux.
I also propose to add an alias for `{OS}` that expands to some unique operating system and platform identifier.
In this way you can OS agnostically encode this as well. It might be the case that a `{Platform}` is also required (e.g. arm/x86)
The paths for cpm would then change from
```
Path: {Project}*cpm
Path: {Project}*cpm*Posix
Path: {Project}*Pm
Path: {Project}*Unix
Path: {Project}*Util
Path: {Project}*BatchBuild
Path: {Project}*Interfaces*LinkerInterface
Path: {Application}*lib*ArgEnv
Path: {Application}*lib*StdLib
Path: {Application}*lib*Directory
```
to something like:
```
Path: {Project}*cpm
Path: {Project}*cpm*{OS}
Path: {Project}*Pm
Path: {Project}*{OS}
Path: {Project}*Util
Path: {Project}*BatchBuild
Path: {Project}*Interfaces*LinkerInterface
Path: {Library}*ArgEnv
Path: {Library}*StdLib
Path: {Library}*Directory
```https://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/2cpm environment options2019-04-12T13:28:45+02:00Mart Lubberscpm environment optionsOptions to modify the environments are already in the cpm program but they are not implemented:
There are more options listed in a TODO but they are for some other timeOptions to modify the environments are already in the cpm program but they are not implemented:
There are more options listed in a TODO but they are for some other timeMart LubbersMart Lubbershttps://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/3cpm workflow for iTasks broken (was: cpm doesn't work with iTasks anymore by ...2019-05-16T15:31:02+02:00Mart Lubberscpm workflow for iTasks broken (was: cpm doesn't work with iTasks anymore by default)The following test program:
```
module test
import iTasks
Start w = doTasks (onStartup (treturn ())) w
```
The following script:
```
cpm project test create
cpm project test.prj target iTasks
cpm project test.prj set -dynamics
cpm pro...The following test program:
```
module test
import iTasks
Start w = doTasks (onStartup (treturn ())) w
```
The following script:
```
cpm project test create
cpm project test.prj target iTasks
cpm project test.prj set -dynamics
cpm project test.prj build
./test
```
Results in:
```
Failed to parse bytecode, is ByteCode set in the project file?
65536
```
There should either be an option to configure the bytecode options from `cpm`.
Furthermore, creating broken project files can be avoided by using project templates for this. So that you can do:
```
cpm project test create iTasks
```
where iTasks.prt is in `$CLEAN_HOME/etc` and contains the default sane options for an iTasks project.https://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/4In the IDE, the iTasks resource collector is not called when the executable i...2019-06-08T19:32:09+02:00Camil StapsIn the IDE, the iTasks resource collector is not called when the executable is up to date(Issue reported by @peter88)
The iTasks web resource collector is a separate link step:
```
EnvironmentLinker: Tools\Clean System 64\StaticLinker.exe : -h 64M | Tools\Clean System\WebResourceCollector.exe
```
The IDE internally keep...(Issue reported by @peter88)
The iTasks web resource collector is a separate link step:
```
EnvironmentLinker: Tools\Clean System 64\StaticLinker.exe : -h 64M | Tools\Clean System\WebResourceCollector.exe
```
The IDE internally keeps track of whether the executable generated for a project is up to date (by checking if source files and/or options have changed). When the executable is still up to date, the entire link step is skipped and therefore also the web resource collector is skipped. This is a problem because one would expect that changing a file in some WebPublic folder and running a project update in the IDE would cause the resources to be collected again.
(`cpm` does not have this problem because it cannot keep track of whether the application options for an executable changed, so the link step is always performed.)
Possible solutions I see are:
- Always performing the link step
- Only skipping the links step for `StaticLinker.exe`
- Adding a separate entry in the environment for additional link steps
A workaround is to trigger the link step by modifying a Clean module.https://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/5New project using Template broken2019-07-23T18:27:54+02:00Bas LijnseNew project using Template brokenIn the windows 64 IDE I get a "file not found" error for the new project file that I am trying to create. I used the `New project using template` menu option and selected the iTasks.prt template file.In the windows 64 IDE I get a "file not found" error for the new project file that I am trying to create. I used the `New project using template` menu option and selected the iTasks.prt template file.Mart LubbersMart Lubbershttps://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/6Cpm on mac fails on read link errors2019-09-13T14:48:40+02:00Bas LijnseCpm on mac fails on read link errorsWhen /tmp/linkerrs does not exist on mac, cpm stops with message Fatal read link errors...When /tmp/linkerrs does not exist on mac, cpm stops with message Fatal read link errors...https://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/7Refactoring: difference between ofiles and ofiles` in DLink step unclear2019-10-31T10:49:03+01:00Camil StapsRefactoring: difference between ofiles and ofiles` in DLink step unclearIn the `DLink` step (`PmDriver.icl`) there is a difference between `ofiles` and `` ofiles` ``. It is not clear what the difference is. This should be made clear and clarified by more meaningful names.In the `DLink` step (`PmDriver.icl`) there is a difference between `ofiles` and `` ofiles` ``. It is not clear what the difference is. This should be made clear and clarified by more meaningful names.https://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/8cpm on mac reports success even when the linker fails2020-02-19T13:46:24+01:00Mart Lubberscpm on mac reports success even when the linker failse.g. when the executable couldn't be created (because it already was a directory) it reports:
```
ld: warning: option -s is obsolete and being ignored
ld: can't open output file for writing: /Users/build/mart/clean-bundle-complete/examp...e.g. when the executable couldn't be created (because it already was a directory) it reports:
```
ld: warning: option -s is obsolete and being ignored
ld: can't open output file for writing: /Users/build/mart/clean-bundle-complete/examples/iTasks/BasicAPIExamples, errno=21 for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
iTasks Resource Collector: Output css file /Users/build/mart/clean-bundle-complete/examples/iTasks/BasicAPIExamples-www/css/itasks-modules.css
iTasks Resource Collector: Adding css file /Users/build/mart/clean-bundle-complete/lib/iTasks/iTasks/Extensions/Admin/WorkflowAdmin.css
iTasks Resource Collector: Adding css file /Users/build/mart/clean-bundle-complete/lib/iTasks/iTasks/UI/Editor/Containers.css
iTasks Resource Collector: Adding css file /Users/build/mart/clean-bundle-complete/lib/iTasks/iTasks/UI/Editor/Controls.css
iTasks Resource Collector: Adding css file /Users/build/mart/clean-bundle-complete/lib/iTasks/iTasks/UI/Editor.css
iTasks Resource Collector: Adding css file /Users/build/mart/clean-bundle-complete/lib/iTasks/iTasks/UI/Definition.css
iTasks Resource Collector: Adding css file /Users/build/mart/clean-bundle-complete/examples/iTasks/BasicAPIExamples.css
iTasks Resource Collector: Copying resources from /Users/build/mart/clean-bundle-complete/lib/ABCInterpreter/WebPublic
iTasks Resource Collector: Copying resources from /Users/build/mart/clean-bundle-complete/lib/iTasks/iTasks/Extensions/GIS/WebPublic
iTasks Resource Collector: Copying resources from /Users/build/mart/clean-bundle-complete/lib/iTasks/iTasks/Extensions/Form/WebPublic
iTasks Resource Collector: Copying resources from /Users/build/mart/clean-bundle-complete/lib/iTasks/iTasks/UI/WebPublic
iTasks Resource Collector: Copying resources from /Users/build/mart/clean-bundle-complete/examples/iTasks/BasicAPIExamples-WebPublic
iTasks Resource Collector: Copying resources from /Users/build/mart/clean-bundle-complete/examples/iTasks/WebPublic
Finished making.
```https://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/9cpm breaks when compiler options are set in an environment2020-03-02T12:37:52+01:00Bas Lijnsecpm breaks when compiler options are set in an environmentWhen an environment defines compiler options with colon notation, cpm hangs with `execv failed`.
For example:
`EnvironmentCompiler: lib/exe/cocl:-h 256M:`When an environment defines compiler options with colon notation, cpm hangs with `execv failed`.
For example:
`EnvironmentCompiler: lib/exe/cocl:-h 256M:`John van GroningenJohn van Groningenhttps://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/10occasional crashes when compiling in parallel on Linux-x642020-10-01T11:32:38+02:00Steffen Michelsoccasional crashes when compiling in parallel on Linux-x64I get occasional crashes when compiling in parallel (`EnvironmentCompileMethod: 2`):
```
polling file descriptors failed with event16
```I get occasional crashes when compiling in parallel (`EnvironmentCompileMethod: 2`):
```
polling file descriptors failed with event16
```John van GroningenJohn van Groningenhttps://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/11IDE crashes when you compile but there is no project file yet2020-10-14T09:15:30+02:00Mart LubbersIDE crashes when you compile but there is no project file yethttps://gitlab.science.ru.nl/clean-and-itasks/clean-ide/-/issues/12'cpm project .. set -s 4m' has no effect2021-01-27T16:28:50+01:00Camil Staps'cpm project .. set -s 4m' has no effectRunning `cpm project x.prj set -s 4m` has no effect. It should set the stack size to 4MiB, but the file is unmodified. There is no output and the exit code is 0.Running `cpm project x.prj set -s 4m` has no effect. It should set the stack size to 4MiB, but the file is unmodified. There is no output and the exit code is 0.