Ok, but the .NET issue won’t be fixed in that release, then, because that’s on hold until we hear back from you own that. So it’d be better of you could re-test with current, and give us the details we need to look at the other issue as well…
OK, let’s try to do it then with 2331.
- I took a laptop with Windows 7 on which no software development tools had ever been installed.
2. I installed RemObjects Elements with Water - 10.0.0.2331 and jdk-8u191-windows-x64, with default settings. No problems.
3. I took two Oxygene Elements projects of mine. Project A is a recent one, programmed in a very "correct" fashion without using globals - this avoids the java globals problem. Project B is based on an old Delphi class library, uses Delphi RTL and employs global methods. Both projects use Elements RTL and EUnit. All programs from these projects compile and run correctly for both java and .NET under 2289.
4. Then I opened Project A in Water, leaving it to interpret the .sln file itself. I got:
Under .NET: First, there were two internal compiler errors. After some minor hampering with the code (which I can explain later, but no big deal), the test-suite program compiled and run CORRECTLY.
Under java: Didn’t compile, giving many errors. It seems that sequences are now treated differently. Please see the example in the attached FigSequences.PNG. There, fModels and fViews are of the types List and List, where T1 and T2 are descendant classes of DexObject. This worked previously and apparently still works in .NET. Any need to redesign this and similar code would cause a lot of problems to me.
I also noticed another annoying issue. When switching between java and .NET in Water, the two platforms compete and each wants to change method names in its own way. When working with .NET (see FigNet.PNG), the case is fixed to the capital first letter (which is correct and is in accordance with my definitions in the code). After switching to java and rebuilding (FigJava.PNG), the same code is erroneously changed to lower-case first letters.
- Moving to project B:
Under .NET: After a successful compilation, the program gives:
Unhandled Exception: System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
at System.Reflection.Assembly.GetTypes()
at RemObjects.Elements.EUnit.AssemblyDiscovery.Filter() in c:\CI\b\elements\937\Source\RemObjects.Elements.EUnit\Sources\Discovery\NET\AssemblyDiscovery.pas:line 31
at RemObjects.Elements.EUnit.BaseDiscovery.Discover() in c:\CI\b\elements\937
\Source\RemObjects.Elements.EUnit\Sources\Discovery\BaseDiscovery.pas:line 25
at RemObjects.Elements.EUnit.Discovery.DiscoverTests() in c:\CI\b\elements\937\Source\RemObjects.Elements.EUnit\Sources\Discovery\Discovery.pas:line 118
at TestDEXiModNet.__Global.Main(String[] __args) in D:\DEXiMod\DEXiMod\TestDEXiModNet\Program.pas:line 12
Under java: Doesn’t compile, there are many unrecognized globals:
E: Unknown identifier "Max" [D:\DEXiMod\DEXiMod\DexiMod.pas (2098)]
E: Unknown identifier "Round" [D:\DEXiMod\DEXiMod\DexiMod.pas (2098)]
E: Unknown identifier "Abs" [D:\DEXiMod\DEXiMod\DexiMod.pas (2107)]
E: Unknown identifier "Abs" [D:\DEXiMod\DEXiMod\DexiMod.pas (2133)]
E: Unknown identifier "Max" [D:\DEXiMod\DEXiMod\DexiMod.pas (4526)]
E: Unknown identifier "AnsiCompareText", did you mean "OnCompareText"? [D:\DEXiMod\DEXiMod\Lists.pas (162)]
E: Unknown identifier "Abs" [D:\DEXiMod\DEXiMod\DexiUtl.pas (150)]
...
With so many issues, I really can’t use 2331 for production. What do you suggest, what to do next?
Thanks,
Marko