You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(80) |
Jun
(71) |
Jul
(34) |
Aug
(58) |
Sep
|
Oct
(220) |
Nov
(146) |
Dec
(36) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(28) |
Feb
(152) |
Mar
(293) |
Apr
(213) |
May
(158) |
Jun
(96) |
Jul
(78) |
Aug
(39) |
Sep
(169) |
Oct
(128) |
Nov
(83) |
Dec
(149) |
2003 |
Jan
(155) |
Feb
(14) |
Mar
(60) |
Apr
(86) |
May
(92) |
Jun
(109) |
Jul
(25) |
Aug
(44) |
Sep
(10) |
Oct
(39) |
Nov
(37) |
Dec
(128) |
2004 |
Jan
(71) |
Feb
(199) |
Mar
(192) |
Apr
(360) |
May
(93) |
Jun
(75) |
Jul
(51) |
Aug
(195) |
Sep
(390) |
Oct
(186) |
Nov
(173) |
Dec
(331) |
2005 |
Jan
(102) |
Feb
(154) |
Mar
(160) |
Apr
(88) |
May
(79) |
Jun
(78) |
Jul
(126) |
Aug
(94) |
Sep
(110) |
Oct
(187) |
Nov
(188) |
Dec
(31) |
2006 |
Jan
(12) |
Feb
(40) |
Mar
(123) |
Apr
(102) |
May
(62) |
Jun
(36) |
Jul
(19) |
Aug
(31) |
Sep
(59) |
Oct
(67) |
Nov
(57) |
Dec
(35) |
2007 |
Jan
(153) |
Feb
(53) |
Mar
(27) |
Apr
(11) |
May
(49) |
Jun
(3) |
Jul
(56) |
Aug
(58) |
Sep
(30) |
Oct
(57) |
Nov
(47) |
Dec
(155) |
2008 |
Jan
(71) |
Feb
(68) |
Mar
(79) |
Apr
(72) |
May
(82) |
Jun
(10) |
Jul
(19) |
Aug
(25) |
Sep
(17) |
Oct
(10) |
Nov
(32) |
Dec
(9) |
2009 |
Jan
(26) |
Feb
(1) |
Mar
(1) |
Apr
(12) |
May
(16) |
Jun
(7) |
Jul
(12) |
Aug
(22) |
Sep
(21) |
Oct
|
Nov
(7) |
Dec
|
2010 |
Jan
(3) |
Feb
(3) |
Mar
(1) |
Apr
|
May
(5) |
Jun
(5) |
Jul
|
Aug
|
Sep
(4) |
Oct
(2) |
Nov
|
Dec
(6) |
2011 |
Jan
(3) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
(8) |
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(8) |
Jun
|
Jul
(3) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
(11) |
Mar
(1) |
Apr
(4) |
May
|
Jun
|
Jul
(2) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
(5) |
Feb
|
Mar
|
Apr
(3) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(3) |
Nov
(2) |
Dec
(1) |
2015 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(6) |
2016 |
Jan
(8) |
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
|
2017 |
Jan
(3) |
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2018 |
Jan
(1) |
Feb
|
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
|
2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(2) |
2022 |
Jan
(3) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Eric B. <er...@go...> - 2023-03-05 18:01:24
|
On 05/03/2023 5:48, Duke Normandin wrote: > Hello! > Just installed Gobo on my Linux box. > Total noob to Eiffel. > I subscribed to the mailing list at sourceforge, but there was no > confirmation email telling me the correct address to use in my MUA. > Can you supply the address please. Mailing list email address in Cc: > Also, I need to find the best noob Eiffel tutorial possible. NOT an > academic dissertation, but a step-by-step howto. Is there such a > resource? Did you have a look at eiffel.org? -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Eric B. <er...@go...> - 2022-08-28 11:15:57
|
On 15/08/2022 19:51, Philippe K wrote: > Hello, > > I have some questions about the current state of gec, for the purpose of > use in an embedded context (micro controller) with a Real Time OS : > > 1) How big is the gec runtime (code size and memory size) (without Boehm > gc) ? Although this may vary from one environment to another, the data > can be provided for a standard environment say Ubuntu with gcc or > Windows with Microsoft C compiler. For example what are the sizes for a > single class "Hello world" application ? Hello world executable on Windows with Microsoft C compiler: 185 kB. > 2) Are threads implemented using the POSIX standard pthreads ? Yes, except on Windows. > 3) Has anyone experimented with porting an eiffel application, compiled > with Gobo, to an RTOS that is POSIX pthreads compliant (i.e. : FreeRTOS) ? Not that I'm aware of. > 4) Are there any plans for SCOOP to be implemented in Gobo (although not > included in the current ECMA standard)? Yes, but not in the near future. > Will it be designed with the > possibility of use with certain RTOSes such as FreeRTOS ? Probably not, unless that is some funding. > 5) Assertions are currently not checked in gec. Is there a plan to make > it available? Yes, but not in the near future. > And about gedoc: is it able to generate graphviz script generation in > order to produce automatically a BON class diagram ? (and to overcome > the display issue of client double arrow ) This is currently not available, but it could be implemented. -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Philippe K <phi...@gm...> - 2022-08-15 17:52:01
|
Hello, I have some questions about the current state of gec, for the purpose of use in an embedded context (micro controller) with a Real Time OS : 1) How big is the gec runtime (code size and memory size) (without Boehm gc) ? Although this may vary from one environment to another, the data can be provided for a standard environment say Ubuntu with gcc or Windows with Microsoft C compiler. For example what are the sizes for a single class "Hello world" application ? 2) Are threads implemented using the POSIX standard pthreads ? 3) Has anyone experimented with porting an eiffel application, compiled with Gobo, to an RTOS that is POSIX pthreads compliant (i.e. : FreeRTOS) ? 4) Are there any plans for SCOOP to be implemented in Gobo (although not included in the current ECMA standard)? Will it be designed with the possibility of use with certain RTOSes such as FreeRTOS ? 5) Assertions are currently not checked in gec. Is there a plan to make it available? And about gedoc: is it able to generate graphviz script generation in order to produce automatically a BON class diagram ? (and to overcome the display issue of client double arrow ) Thanks. Best regards. Philippe. |
From: Eric B. <er...@go...> - 2022-01-11 19:33:19
|
On 31/12/2021 18:28, Eric Bezault wrote: > On 31/12/2021 16:25, Louis M via gobo-eiffel-develop wrote: >> Hi, >> >> I am starting with Gobo and I have a problem compiling code with it, I >> have created a simple ecf (using EiffelStudio 19.05) and a simple >> APPLICATION class containing nothing (an empty creator 'make' and >> that's all). When I try to compile, I got this output: > > [...] > You need to use a more recent version of EiffelStudio. EiffelBase > has been improved in recent years to work both with EiffelStudio > and Gobo Eiffel. Note that I think that it should work with the version of EiffelBase which comes with EiffelStudio 20.11. No need to jump directly to EiffelStudio 21.11. I was told that https://svn.eiffel.com/eiffelstudio-public/tags/ may not be updated anymore. But the full version of EiffelSutdio 20.11 is 20.11.10.5048, which means that the SVN version which was used to build it is 105048. So I guess that you should be able to check out the code from https://svn.eiffel.com/eiffelstudio-public/trunk/ at this version should you want to build the GPL version of EiffelStudio 20.11. -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Louis M <ei...@ti...> - 2022-01-11 16:50:43
|
Hello Eric, On 2022-01-11 11:38 a.m., Eric Bezault wrote: > I was told that https://svn.eiffel.com/eiffelstudio-public/tags/ > may not be updated anymore. Sadly, I am not surprised. > But the full version of EiffelSutdio 20.11 > is 20.11.10.5048, which means that the SVN version which was used to > build it is 105048. So I guess that you should be able to check out > the code from https://svn.eiffel.com/eiffelstudio-public/trunk/ > at this version should you want to build the GPL version of > EiffelStudio 20.11. Good find. I will do that. Thanks. Good day, Louis M |
From: Eric B. <er...@go...> - 2022-01-09 22:28:23
|
This new release of Gobo Eiffel should work fine with EiffelStudio 21.11. Please see the release notes here: https://github.com/gobo-eiffel/gobo/blob/master/History.md You can download the Gobo package from SourceForge: https://sourceforge.net/projects/gobo-eiffel/files/gobo-eiffel If you prefer to get the code directly from the Git repository, it is available from GitHub: https://github.com/gobo-eiffel/gobo As always, you can browse the Gobo Eiffel documentation on-line at: http://www.gobosoft.com Happy Eiffeling. -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Eric B. <er...@go...> - 2021-12-31 21:13:17
|
On 31/12/2021 16:25, Louis M via gobo-eiffel-develop wrote: > Hi, > > I am starting with Gobo and I have a problem compiling code with it, I > have created a simple ecf (using EiffelStudio 19.05) and a simple > APPLICATION class containing nothing (an empty creator 'make' and > that's all). When I try to compile, I got this output: [...] > The $GOBO environment variable set. I have tried to manually set the > $ISE_LIBRARY and $ISE_PRECOMP environment variable (used in the ecf > file) and it did nothing. Before using it, I have compiled Gobo by > using: '$GOBO/bin/install.sh gcc'. I have the last Github commit. > > So I don't know what I am missing, but a little help would be nice. No need to set $ISE_LIBRARY. Gec will do it for you. You need to use a more recent version of EiffelStudio. EiffelBase has been improved in recent years to work both with EiffelStudio and Gobo Eiffel. Alternatively, you can use the version of EiffelBase which comes with Gobo Eiffel. In your ECF file you will have to replace: <library name="base" location="$ISE_LIBRARY\library\base\base.ecf"/> by: <library name="free_elks" location="${GOBO}/library/free_elks/library_${GOBO_EIFFEL}.ecf"/> This will magically use the version in Gobo Eifffel when using gec and the version in $ISE_EIFFEL when using EiffelStudio. -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Louis M <ei...@ti...> - 2021-12-31 15:43:31
|
Hi, I am starting with Gobo and I have a problem compiling code with it, I have created a simple ecf (using EiffelStudio 19.05) and a simple APPLICATION class containing nothing (an empty creator 'make' and that's all). When I try to compile, I got this output: ---------------------------------------------------------- Degree 6: 0/0/0 0:0:0.010 Degree 5: 0/0/0 0:0:0.089 [GVKBU-1] class REFLECTOR (486,2): unknown built-in routine `c_set_dynamic_type' in class REFLECTOR. ---- [GVKBU-1] class REFLECTOR (478,2): unknown built-in routine `c_new_type_instance_of' in class REFLECTOR. ---- [GVKBU-1] class REFLECTOR (468,2): unknown built-in routine `c_new_tuple_instance_of' in class REFLECTOR. ---- [GVKBU-1] class REFLECTOR (456,2): unknown built-in routine `c_new_instance_of' in class REFLECTOR. ---- [GVKBU-1] class REFLECTOR (416,2): unknown built-in routine `field_count_of_type' in class REFLECTOR. ---- [GVKBU-1] class REFLECTOR (233,2): unknown built-in routine `is_tuple_type' in class REFLECTOR. ---- [GVKBU-1] class REFLECTOR (220,2): unknown built-in routine `is_special_type' in class REFLECTOR. ---- [GVKBU-1] class REFLECTOR (209,2): unknown built-in routine `is_special_any_type' in class REFLECTOR. ---- Degree 4: 0/0/0 0:0:0.041 Degree 3: 0/0/0 0:0:0.064 Degree -2: 0/0/0 0:0:0.016 Total Time: 0/0/0 0:0:0.220 ---------------------------------------------------------- The $GOBO environment variable set. I have tried to manually set the $ISE_LIBRARY and $ISE_PRECOMP environment variable (used in the ecf file) and it did nothing. Before using it, I have compiled Gobo by using: '$GOBO/bin/install.sh gcc'. I have the last Github commit. So I don't know what I am missing, but a little help would be nice. Thanks and happy new year to all. Louis M |
From: Eric B. <er...@be...> - 2018-10-16 20:46:12
|
On 12/10/2018 9:58, Eric Bezault wrote: > In case you had not noticed, some tests with UT_URI are > still failing: > > https://travis-ci.org/ebezault/gobo/jobs/440374769 I removed the modifications in class UT_URI until all tests are fixed. -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Eric B. <er...@be...> - 2018-10-12 08:35:53
|
Hi Berend, In case you had not noticed, some tests with UT_URI are still failing: https://travis-ci.org/ebezault/gobo/jobs/440374769 -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Eric B. <er...@be...> - 2018-10-10 00:34:34
|
Hi Berend, If I remove the faulty postconditions, I now get invariant violations: BORT: [UT_TEST_URI_PARSER.test_parsing] Eiffel exception ------------------------------------------------------------------------------- Class / Object Routine Nature of exception Effect ------------------------------------------------------------------------------- UT_URI stop_query_value @2 valid_query: <0000023AA3B06A98> Precondition violated. Fail ------------------------------------------------------------------------------- UT_URI stop_query @5 <0000023AA3B06A98> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI parse_reference @67 <0000023AA3B06A98> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI make @6 <0000023AA3B06A98> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER test_parsing @6 <0000023AA3B044D8> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE fast_call <0000023AA3B04558> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE call @3 <0000023AA3B04558> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute_without_rescue @4 <0000023AA3B044D8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute_with_rescue @3 <0000023AA3B044D8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute @10 <0000023AA3B044D8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- TS_TEST_SUITE execute @5 <0000023AA3B045B8> Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_summary @44 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_output @10 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute @9 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI make @5 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI root's creation <0000023AA3B02588> Routine failure. Exit ------------------------------------------------------------------------------- ABORT: [UT_TEST_URI_RESOLVE.test_normal_cases] Eiffel exception ------------------------------------------------------------------------------- Class / Object Routine Nature of exception Effect ------------------------------------------------------------------------------- UT_URI _invariant @3 query_items_if_query: <0000023AA3B1BF38> Class invariant violated. Fail ------------------------------------------------------------------------------- UT_URI _invariant <0000023AA3B1BF38> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI make_resolve @10 <0000023AA3B1BF38> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE test_normal_cases @18 <0000023AA3B04DA8> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE fast_call <0000023AA3B04E28> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE call @3 <0000023AA3B04E28> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute_without_rescue @4 <0000023AA3B04DA8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute_with_rescue @3 <0000023AA3B04DA8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute @10 <0000023AA3B04DA8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- TS_TEST_SUITE execute @5 <0000023AA3B045B8> Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_summary @44 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_output @10 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute @9 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI make @5 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI root's creation <0000023AA3B02588> Routine failure. Exit ------------------------------------------------------------------------------- ABORT: [UT_TEST_URI_RESOLVE.test_abnormal_cases] Eiffel exception ------------------------------------------------------------------------------- Class / Object Routine Nature of exception Effect ------------------------------------------------------------------------------- UT_URI _invariant @3 query_items_if_query: <0000023AA3B1F238> Class invariant violated. Fail ------------------------------------------------------------------------------- UT_URI _invariant <0000023AA3B1F238> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI make_resolve @10 <0000023AA3B1F238> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE test_abnormal_cases @2 <0000023AA3B050A8> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE fast_call <0000023AA3B05128> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE call @3 <0000023AA3B05128> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute_without_rescue @4 <0000023AA3B050A8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute_with_rescue @3 <0000023AA3B050A8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute @10 <0000023AA3B050A8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- TS_TEST_SUITE execute @5 <0000023AA3B045B8> Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_summary @44 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_output @10 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute @9 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI make @5 <0000023AA3B02588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI root's creation <0000023AA3B02588> Routine failure. Exit ------------------------------------------------------------------------------- On 09/10/2018 18:19, Eric Bezault wrote: > Hi Berend, > > After your modifications in class UT_URI, the following > tests are now failing when compiled with all assertions on. > Can you please fix them? > > > Test Results: > ABORT: [UT_TEST_URI_PARSER.test_parsing] Eiffel exception > ------------------------------------------------------------------------------- > > Class / Object Routine Nature of exception Effect > ------------------------------------------------------------------------------- > > UT_URI stop_query_name @6 scan_value: > <00000153D3327A98> Postcondition violated. Fail > ------------------------------------------------------------------------------- > > UT_URI stop_query_name @6 > <00000153D3327A98> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI parse_reference @41 > <00000153D3327A98> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI make @6 > <00000153D3327A98> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER test_parsing @6 > <00000153D33254D8> Routine failure. Fail > ------------------------------------------------------------------------------- > > PROCEDURE fast_call > <00000153D3325558> Routine failure. Fail > ------------------------------------------------------------------------------- > > PROCEDURE call @3 > <00000153D3325558> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER execute_without_rescue @4 > <00000153D33254D8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER execute_with_rescue @3 > <00000153D33254D8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER execute @10 > <00000153D33254D8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > TS_TEST_SUITE execute @5 > <00000153D33255B8> Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute_with_summary @44 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute_with_output @10 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute @9 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI make @5 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI root's creation > <00000153D3323588> Routine failure. Exit > ------------------------------------------------------------------------------- > > > ABORT: [UT_TEST_URI_PARSER.test_query] Eiffel exception > ------------------------------------------------------------------------------- > > Class / Object Routine Nature of exception Effect > ------------------------------------------------------------------------------- > > UT_URI stop_query_value @11 stop_query_part_scan: > <00000153D3328768> Postcondition violated. Fail > ------------------------------------------------------------------------------- > > UT_URI stop_query_value @11 > <00000153D3328768> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI stop_query @5 > <00000153D3328768> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI parse_reference @67 > <00000153D3328768> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI make @6 > <00000153D3328768> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER test_query @1 > <00000153D33257A8> Routine failure. Fail > ------------------------------------------------------------------------------- > > PROCEDURE fast_call > <00000153D3325828> Routine failure. Fail > ------------------------------------------------------------------------------- > > PROCEDURE call @3 > <00000153D3325828> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER execute_without_rescue @4 > <00000153D33257A8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER execute_with_rescue @3 > <00000153D33257A8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER execute @10 > <00000153D33257A8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > TS_TEST_SUITE execute @5 > <00000153D33255B8> Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute_with_summary @44 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute_with_output @10 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute @9 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI make @5 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI root's creation > <00000153D3323588> Routine failure. Exit > ------------------------------------------------------------------------------- > > > ABORT: [UT_TEST_URI_PARSER.test_rootless_path] Eiffel exception > ------------------------------------------------------------------------------- > > Class / Object Routine Nature of exception Effect > ------------------------------------------------------------------------------- > > UT_URI stop_query_value @11 stop_query_part_scan: > <00000153D332DAC8> Postcondition violated. Fail > ------------------------------------------------------------------------------- > > UT_URI stop_query_value @11 > <00000153D332DAC8> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI stop_query @5 > <00000153D332DAC8> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI parse_reference @67 > <00000153D332DAC8> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI make @6 > <00000153D332DAC8> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER test_rootless_path @3 > <00000153D3325C28> Routine failure. Fail > ------------------------------------------------------------------------------- > > PROCEDURE fast_call > <00000153D3325CA8> Routine failure. Fail > ------------------------------------------------------------------------------- > > PROCEDURE call @3 > <00000153D3325CA8> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER execute_without_rescue @4 > <00000153D3325C28> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER execute_with_rescue @3 > <00000153D3325C28> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_PARSER execute @10 > <00000153D3325C28> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > TS_TEST_SUITE execute @5 > <00000153D33255B8> Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute_with_summary @44 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute_with_output @10 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute @9 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI make @5 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI root's creation > <00000153D3323588> Routine failure. Exit > ------------------------------------------------------------------------------- > > > ABORT: [UT_TEST_URI_RESOLVE.test_normal_cases] Eiffel exception > ------------------------------------------------------------------------------- > > Class / Object Routine Nature of exception Effect > ------------------------------------------------------------------------------- > > UT_URI stop_query_value @11 stop_query_part_scan: > <00000153D332E578> Postcondition violated. Fail > ------------------------------------------------------------------------------- > > UT_URI stop_query_value @11 > <00000153D332E578> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI stop_query @5 > <00000153D332E578> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI parse_reference @67 > <00000153D332E578> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI make @6 > <00000153D332E578> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_RESOLVE test_normal_cases @1 > <00000153D3325DA8> Routine failure. Fail > ------------------------------------------------------------------------------- > > PROCEDURE fast_call > <00000153D3325E28> Routine failure. Fail > ------------------------------------------------------------------------------- > > PROCEDURE call @3 > <00000153D3325E28> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_RESOLVE execute_without_rescue @4 > <00000153D3325DA8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_RESOLVE execute_with_rescue @3 > <00000153D3325DA8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_RESOLVE execute @10 > <00000153D3325DA8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > TS_TEST_SUITE execute @5 > <00000153D33255B8> Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute_with_summary @44 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute_with_output @10 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute @9 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI make @5 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI root's creation > <00000153D3323588> Routine failure. Exit > ------------------------------------------------------------------------------- > > > ABORT: [UT_TEST_URI_RESOLVE.test_abnormal_cases] Eiffel exception > ------------------------------------------------------------------------------- > > Class / Object Routine Nature of exception Effect > ------------------------------------------------------------------------------- > > UT_URI stop_query_value @11 stop_query_part_scan: > <00000153D33306F8> Postcondition violated. Fail > ------------------------------------------------------------------------------- > > UT_URI stop_query_value @11 > <00000153D33306F8> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI stop_query @5 > <00000153D33306F8> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI parse_reference @67 > <00000153D33306F8> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_URI make @6 > <00000153D33306F8> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_RESOLVE test_abnormal_cases @1 > <00000153D33260A8> Routine failure. Fail > ------------------------------------------------------------------------------- > > PROCEDURE fast_call > <00000153D3326128> Routine failure. Fail > ------------------------------------------------------------------------------- > > PROCEDURE call @3 > <00000153D3326128> Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_RESOLVE execute_without_rescue @4 > <00000153D33260A8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_RESOLVE execute_with_rescue @3 > <00000153D33260A8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > UT_TEST_URI_RESOLVE execute @10 > <00000153D33260A8> (From TS_TEST_CASE) Routine failure. Fail > ------------------------------------------------------------------------------- > > TS_TEST_SUITE execute @5 > <00000153D33255B8> Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute_with_summary @44 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute_with_output @10 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI execute @9 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI make @5 > <00000153D3323588> (From TS_TESTER) Routine failure. Fail > ------------------------------------------------------------------------------- > > XURI root's creation > <00000153D3323588> Routine failure. Exit > ------------------------------------------------------------------------------- > > -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Eric B. <er...@be...> - 2018-10-09 19:56:23
|
Hi Berend, After your modifications in class UT_URI, the following tests are now failing when compiled with all assertions on. Can you please fix them? Test Results: ABORT: [UT_TEST_URI_PARSER.test_parsing] Eiffel exception ------------------------------------------------------------------------------- Class / Object Routine Nature of exception Effect ------------------------------------------------------------------------------- UT_URI stop_query_name @6 scan_value: <00000153D3327A98> Postcondition violated. Fail ------------------------------------------------------------------------------- UT_URI stop_query_name @6 <00000153D3327A98> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI parse_reference @41 <00000153D3327A98> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI make @6 <00000153D3327A98> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER test_parsing @6 <00000153D33254D8> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE fast_call <00000153D3325558> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE call @3 <00000153D3325558> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute_without_rescue @4 <00000153D33254D8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute_with_rescue @3 <00000153D33254D8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute @10 <00000153D33254D8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- TS_TEST_SUITE execute @5 <00000153D33255B8> Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_summary @44 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_output @10 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute @9 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI make @5 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI root's creation <00000153D3323588> Routine failure. Exit ------------------------------------------------------------------------------- ABORT: [UT_TEST_URI_PARSER.test_query] Eiffel exception ------------------------------------------------------------------------------- Class / Object Routine Nature of exception Effect ------------------------------------------------------------------------------- UT_URI stop_query_value @11 stop_query_part_scan: <00000153D3328768> Postcondition violated. Fail ------------------------------------------------------------------------------- UT_URI stop_query_value @11 <00000153D3328768> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI stop_query @5 <00000153D3328768> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI parse_reference @67 <00000153D3328768> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI make @6 <00000153D3328768> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER test_query @1 <00000153D33257A8> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE fast_call <00000153D3325828> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE call @3 <00000153D3325828> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute_without_rescue @4 <00000153D33257A8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute_with_rescue @3 <00000153D33257A8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute @10 <00000153D33257A8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- TS_TEST_SUITE execute @5 <00000153D33255B8> Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_summary @44 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_output @10 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute @9 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI make @5 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI root's creation <00000153D3323588> Routine failure. Exit ------------------------------------------------------------------------------- ABORT: [UT_TEST_URI_PARSER.test_rootless_path] Eiffel exception ------------------------------------------------------------------------------- Class / Object Routine Nature of exception Effect ------------------------------------------------------------------------------- UT_URI stop_query_value @11 stop_query_part_scan: <00000153D332DAC8> Postcondition violated. Fail ------------------------------------------------------------------------------- UT_URI stop_query_value @11 <00000153D332DAC8> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI stop_query @5 <00000153D332DAC8> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI parse_reference @67 <00000153D332DAC8> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI make @6 <00000153D332DAC8> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER test_rootless_path @3 <00000153D3325C28> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE fast_call <00000153D3325CA8> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE call @3 <00000153D3325CA8> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute_without_rescue @4 <00000153D3325C28> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute_with_rescue @3 <00000153D3325C28> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_PARSER execute @10 <00000153D3325C28> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- TS_TEST_SUITE execute @5 <00000153D33255B8> Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_summary @44 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_output @10 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute @9 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI make @5 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI root's creation <00000153D3323588> Routine failure. Exit ------------------------------------------------------------------------------- ABORT: [UT_TEST_URI_RESOLVE.test_normal_cases] Eiffel exception ------------------------------------------------------------------------------- Class / Object Routine Nature of exception Effect ------------------------------------------------------------------------------- UT_URI stop_query_value @11 stop_query_part_scan: <00000153D332E578> Postcondition violated. Fail ------------------------------------------------------------------------------- UT_URI stop_query_value @11 <00000153D332E578> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI stop_query @5 <00000153D332E578> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI parse_reference @67 <00000153D332E578> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI make @6 <00000153D332E578> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE test_normal_cases @1 <00000153D3325DA8> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE fast_call <00000153D3325E28> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE call @3 <00000153D3325E28> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute_without_rescue @4 <00000153D3325DA8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute_with_rescue @3 <00000153D3325DA8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute @10 <00000153D3325DA8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- TS_TEST_SUITE execute @5 <00000153D33255B8> Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_summary @44 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_output @10 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute @9 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI make @5 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI root's creation <00000153D3323588> Routine failure. Exit ------------------------------------------------------------------------------- ABORT: [UT_TEST_URI_RESOLVE.test_abnormal_cases] Eiffel exception ------------------------------------------------------------------------------- Class / Object Routine Nature of exception Effect ------------------------------------------------------------------------------- UT_URI stop_query_value @11 stop_query_part_scan: <00000153D33306F8> Postcondition violated. Fail ------------------------------------------------------------------------------- UT_URI stop_query_value @11 <00000153D33306F8> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI stop_query @5 <00000153D33306F8> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI parse_reference @67 <00000153D33306F8> Routine failure. Fail ------------------------------------------------------------------------------- UT_URI make @6 <00000153D33306F8> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE test_abnormal_cases @1 <00000153D33260A8> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE fast_call <00000153D3326128> Routine failure. Fail ------------------------------------------------------------------------------- PROCEDURE call @3 <00000153D3326128> Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute_without_rescue @4 <00000153D33260A8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute_with_rescue @3 <00000153D33260A8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- UT_TEST_URI_RESOLVE execute @10 <00000153D33260A8> (From TS_TEST_CASE) Routine failure. Fail ------------------------------------------------------------------------------- TS_TEST_SUITE execute @5 <00000153D33255B8> Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_summary @44 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute_with_output @10 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI execute @9 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI make @5 <00000153D3323588> (From TS_TESTER) Routine failure. Fail ------------------------------------------------------------------------------- XURI root's creation <00000153D3323588> Routine failure. Exit ------------------------------------------------------------------------------- -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Berend de B. <be...@po...> - 2018-03-15 01:32:51
|
>>>>> "Eric" == Eric Bezault <er...@be...> writes: Eric> It's not a simple as that. I don't want to have to maintain Eric> to set of files: .xace and .ecf for every library, every Eric> tool, every example, every test. So the .xace files will Eric> soon become unusable (if they reference a cluster that does Eric> not exist anymore, etc.). True, do whatever takes the least amount of your time. But it would be good to have some example on how to write a .ecf that is compatible between Gobo and ISE. So I can try this out actually. Are there any examples? -- All the best, Berend de Boer |
From: Eric B. <er...@be...> - 2018-03-12 13:21:51
|
On 3/12/2018 02:08, Berend de Boer wrote: >>>>>> "Eric" == Eric Bezault ericb@gobosoft com [gobo-eiffel] >>>>>> <gob...@ya...> writes: > > Eric> So I'm wondering whether it is still worth supporting Xace > Eric> in Gobo. I'm spending a lot of time trying to maintain Xace > Eric> so that it can support new options introduced in ECF. This > Eric> time could be better spent doing something else. So it > Eric> might be time to stop supporting Xace and use ECF as primary > Eric> Eiffel config file notation in Gobo. > > I agree. As long as they are compatible... > > But I'll switch to .ecf, and simply stick a notice in gexace that > development has stopped, and new options will not be supported. That's > good enough for me. It's not a simple as that. I don't want to have to maintain to set of files: .xace and .ecf for every library, every tool, every example, every test. So the .xace files will soon become unusable (if they reference a cluster that does not exist anymore, etc.). So the tool gexace is one thing, but all the existing .xace files in the Gobo package is also something to take into account. And my gut feeling is that all .xace files out there processed by gexace use in one way or another some .xace files from the Gobo package. So keeping an unmaintained version of gexace without maintaining the .xace files does not seem useful to me. -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Berend de B. <be...@po...> - 2018-03-12 01:08:48
|
>>>>> "Eric" == Eric Bezault ericb@gobosoft com [gobo-eiffel] <gob...@ya...> writes: Eric> So I'm wondering whether it is still worth supporting Xace Eric> in Gobo. I'm spending a lot of time trying to maintain Xace Eric> so that it can support new options introduced in ECF. This Eric> time could be better spent doing something else. So it Eric> might be time to stop supporting Xace and use ECF as primary Eric> Eiffel config file notation in Gobo. I agree. As long as they are compatible... But I'll switch to .ecf, and simply stick a notice in gexace that development has stopped, and new options will not be supported. That's good enough for me. The big advantage of .ecf is that it supports using libraries at different stages of Eiffel evolution, gexace just emits a single .ecf and that does no longer always work. -- All the best, Berend de Boer |
From: Eric B. <er...@be...> - 2018-03-10 14:06:30
|
Hello, Currently the only Eiffel compilers supported in Gobo are EiffelStudio and Gobo itself. And they both support ECF. So I'm wondering whether it is still worth supporting Xace in Gobo. I'm spending a lot of time trying to maintain Xace so that it can support new options introduced in ECF. This time could be better spent doing something else. So it might be time to stop supporting Xace and use ECF as primary Eiffel config file notation in Gobo. -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Eric B. <er...@be...> - 2018-01-22 02:35:46
|
On 12/21/2017 22:45, Berend de Boer wrote: > For a long time I haven't been able to compile xplain2sql with > gobo. The error messages do not really indicate what to do to fix the > problem. > > Here's the output: > > xplain2sql/src# geant compile_ge > Parser contains 1 shift/reduce conflict and 3 reduce/reduce conflicts. > > [CATCALL] class SQL_GENERATOR_TSQL65 (ANY,95,8): type 'STRING_8' of > actual argument #1 does not conform to type 'UC_STRING' of formal > argument in feature `is_equal' in class 'UC_STRING' [...] > The location of the error is irrelevant it seems, it complaints about > the ANY class. But I can't find the actual problem. Catcall errors detected through dynamic type set analysis are not easy to report because they depend on several factors. From the errors, I can see that in class SQL_GENERATOR_TSQL65 (or one of its ancestors) you are calling `equal (x, y)' where `x' might be attached to an object of type UC_STRING and `y' may be attached to an object of type STRING. I can see that you make many of such calls in class SQL_GENERATOR. I suggest that you replace these calls by `STRING_.same_string (x, y)' where `STRING_' is inherited from KL_IMPORTED_STRING_ROUTINES. Note that the catcall errors reported by 'gec' are just potential catcalls. If you can compile without such errors you are guaranteed that no catcall will occur at runtime. But even if you get such errors, it does not mean that catcall will occur at runtime. So, alternatively you can use the compilation option --catcall=no when compiling with 'gec'. It will not report catcall errors at compile time, but will raise an exception if one occurs at runtime. (I didn't check, but this option might only be support on the command-line, not through Xace. We might be able to configure it in eiffel.eant though, with some variable instead of hard-coding 'catcall="error"'.) > I have been unable to enable catcalls in ISE Eiffel, I don't think > there is an option for that in system.xace. The catcall detection mechanism in ISE Eiffel is different than the one in Gobo. It's not based of dynamic type set analysis but on the use of keywords when declaring Eiffel entities in the class text. It makes error messages easier to understand, but it will reject more code that with Gobo and it requires to edit nearly all classes to add these keywords (same kind of effort at the one to convert a non-void-safe library to void-safety). -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Berend de B. <be...@po...> - 2017-12-21 21:46:17
|
Hi All, For a long time I haven't been able to compile xplain2sql with gobo. The error messages do not really indicate what to do to fix the problem. Here's the output: xplain2sql/src# geant compile_ge Parser contains 1 shift/reduce conflict and 3 reduce/reduce conflicts. [CATCALL] class SQL_GENERATOR_TSQL65 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_TSQL70 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_TSQL2000 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_TSQL2016 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_SQLITE_3 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_PGSQL_72 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_PGSQL_73 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_PGSQL_81 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_PGSQL_82 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_PGSQL_95 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_ORACLE (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_MYSQL322 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_MYSQL4 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_MYSQL5 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_MSQL (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_MSACCESS2000 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_MSACCESS97 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_FIREBIRD_21 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_INTERBASE6 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_FOXPRO (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_DB2_71 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_DB2_6 (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_BASIC (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class SQL_GENERATOR_ANSI (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' [CATCALL] class XPLAIN_PARSER (ANY,95,8): type 'STRING_8' of actual argument #1 does not conform to type 'UC_STRING' of formal argument in feature `is_equal' in class 'UC_STRING' BUILD FAILED! The location of the error is irrelevant it seems, it complaints about the ANY class. But I can't find the actual problem. Would anyone have a clue how to get either a better error message or know what to fix? xplain2sql is here: https://github.com/berenddeboer/xplain2sql I have been unable to enable catcalls in ISE Eiffel, I don't think there is an option for that in system.xace. -- Thanks for any tips, Berend de Boer |
From: Eric B. <er...@go...> - 2017-07-14 20:52:59
|
The focus of this release was to support multi-threading. In particular: * 'gec', the Gobo Eiffel Compiler, can now compile Eiffel applications in multi-threaded mode, using the same EiffelThread library as ISE Eiffel. * Made 'gelint' multi-threaded. It now runs almost 3 times faster on a 4-CPU machine. * Made 'gedoc' multi-threaded. It now runs almost 3 times faster on a 4-CPU machine. Note that this release does not support SCOOP yet. This release of Gobo Eiffel should work fine with EiffelStudio 17.05. You can download the Gobo package from SourceForge: https://sourceforge.net/projects/gobo-eiffel/files/gobo-eiffel If you prefer to get the code directly from the Git repository, it is available from GitHub: https://github.com/gobo-eiffel/gobo As always, you can browse the Gobo Eiffel documentation on-line at: http://www.gobosoft.com Happy Eiffeling. -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Eric B. <er...@go...> - 2017-04-02 15:33:16
|
The focus of this release has been put on Continuous Integration and Continuous Delivery. Indeed the technology behind the tools of the Gobo package makes them very suitable for this kind of tasks, complementary to your favorite Eiffel development tools such as ISE EiffelStudio. Therefore: * The documentation of 'gelint', a useful tool to check the validity rules in your Eiffel system, has been added. * A new tool, 'gedoc', for pretty-printing and generation of HTML documentation out of Eiffel classes, has been implemented. This release of Gobo Eiffel should work fine with EiffelStudio 16.05 and 17.01. You can download the Gobo package from SourceForge: https://sourceforge.net/projects/gobo-eiffel/files/gobo-eiffel If you prefer to get the code directly from the Git repository, it is available from GitHub: https://github.com/gobo-eiffel/gobo As always, you can browse the Gobo Eiffel documentation on-line at: http://www.gobosoft.com Happy Eiffeling. -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Bertrand M. <Ber...@in...> - 2017-01-15 19:08:06
|
Dear Eric: Congratulations on this release, it looks exciting. > Among other things, the Gobo Eiffel libraries are usable in void-safe mode, and the tools such as gelex and geyacc generate void-safe Eiffel classes. This is great to hear. It's fantastic to see the Gobo libraries updated to that standard. I knowthat for many people void-safety conversion has been a long road, but it is a move to a better world. With best wishes -- to you and the other members of this group -- for 2017, -- Bertrand Meyer -----Original Message----- From: eif...@go... [mailto:eif...@go...] On Behalf Of Eric Bezault Sent: Saturday, 14 January, 2017 10:02 To: gobolist <gob...@ya...>; Gobo Developers Mailing List <gob...@li...>; eif...@go... Subject: [eiffel-users] Gobo Eiffel 4.0 released It has been a long time since the last "official" release of this package. During this time I continued maintaining and improviding the Gobo Eiffel tools and libraries in the Git repository hosted on Github: https://github.com/gobo-eiffel/gobo Among other things, the Gobo Eiffel libraries are usable in void-safe mode, and the tools such as gelex and geyacc generate void-safe Eiffel classes. I must say that I'm very exited with the new 'capability' option that ISE added to ECF in EiffelStudio 17.01. This release of Gobo Eiffel should work fine with EiffelStudio 16.05 and 17.01, but it does not take advantage of ECF capabilities yet. This will be for the next release of Gobo. In the meantime, you can download the Gobo package from SourceForge: https://sourceforge.net/projects/gobo-eiffel/files/gobo-eiffel If you prefer to get the code directly from the Git repository, use the Github link above. Note that it is now possible to use the library classes out of the repository as-is. A bootstrap is only needed to compile the tools in $GOBO/bin. As always, you can browse the Gobo Eiffel documentation on-line at: http://www.gobosoft.com Happy Eiffeling. -- Eric Bezault mailto:er...@go... http://www.gobosoft.com -- You received this message because you are subscribed to the Google Groups "Eiffel Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to eif...@go.... Visit this group at https://groups.google.com/group/eiffel-users. For more options, visit https://groups.google.com/d/optout. |
From: Bernd S. <be...@fa...> - 2017-01-14 14:44:51
|
On 14/01/17 09:02, Eric Bezault wrote: > It has been a long time since the last "official" release > of this package. Amazing news and congratulation! Bernd |
From: Eric B. <er...@go...> - 2017-01-14 09:41:40
|
It has been a long time since the last "official" release of this package. During this time I continued maintaining and improviding the Gobo Eiffel tools and libraries in the Git repository hosted on Github: https://github.com/gobo-eiffel/gobo Among other things, the Gobo Eiffel libraries are usable in void-safe mode, and the tools such as gelex and geyacc generate void-safe Eiffel classes. I must say that I'm very exited with the new 'capability' option that ISE added to ECF in EiffelStudio 17.01. This release of Gobo Eiffel should work fine with EiffelStudio 16.05 and 17.01, but it does not take advantage of ECF capabilities yet. This will be for the next release of Gobo. In the meantime, you can download the Gobo package from SourceForge: https://sourceforge.net/projects/gobo-eiffel/files/gobo-eiffel If you prefer to get the code directly from the Git repository, use the Github link above. Note that it is now possible to use the library classes out of the repository as-is. A bootstrap is only needed to compile the tools in $GOBO/bin. As always, you can browse the Gobo Eiffel documentation on-line at: http://www.gobosoft.com Happy Eiffeling. -- Eric Bezault mailto:er...@go... http://www.gobosoft.com |
From: Eric B. <er...@go...> - 2016-11-25 21:06:54
|
Hi Wolfgang, Do you have an example where it actually crashes? I tried that: s := "" s.copy ("") And it did not crash. I noticed something wrong in your reasoning below. You wrote: >> If the string to copy is empty, i.e. `old_area=Void' then `area' is >> void, too, after `standard_copy' This is not true. `old_area' is not affected by `standard_copy'. It's a local variable, not an attribute. And as far as I can see, the `area' of a STRING_8 is never void. Even for an empty string, `make' creates an `area'. The reason why there is a test for Void with `old_area' is that when called from `twin', the target of `copy' may be a non-initialized object (with its reference attributes Void). -- Eric Bezault mailto:er...@go... http://www.gobosoft.com On 11/25/2016 10:37, Wolfgang Jansen wrote: > On 24/11/16 23:51, Wolfgang Jansen wrote: >> >> Hi Eric, >> >> I found an fatal error in routine READABLE_STRING_8.copy if the >> argument is a non-void but empty string. The origin text is as follows: >> >> copy (other: like Current) >> -- Reinitialize by copying the characters of `other'. >> -- (This is also used by `twin'.) >> local >> old_area: like area >> do >> if other /= Current then >> old_area := area >> standard_copy (other) >> -- Note: <= is needed as all Eiffel string should >> have an >> -- extra character to insert null character at the >> end. >> if old_area = Void or else old_area = other.area or >> else old_area.count <= count then >> -- Prevent copying of large `area' if only a >> few characters are actually used. >> area := area.resized_area (count + 1) >> else >> old_area.copy_data (area, 0, 0, count) >> area := old_area >> end >> internal_hash_code := 0 >> end >> ensure then >> new_result_count: count = other..count >> -- same_characters: For every `i' in 1..`count', `item' >> (`i') = `other'.`item' (`i') >> end >> >> >> If the string to copy is empty, i.e. `old_area=Void' then `area' is >> void, too, >> after `standard_copy'. Then branch `if old_area=Void or else ...' >> leads to instruction `area := area.resized_area (count + 1)' that must >> crash. I propose the following modification (it works fine for me): >> >> >> copy (other: like Current) >> -- Reinitialize by copying the characters of `other'. >> -- (This is also used by `twin'.) >> local >> old_area: like area >> do >> if other /= Current then >> old_area := area >> standard_copy (other) >> -- Note: <= is needed as all Eiffel string should >> have an >> -- extra character to insert null character at the >> end. >> if old_area = Void then >> elseif old_area = other.area or else old_area.count <= >> count then >> -- Prevent copying of large `area' if only a >> few characters are actually used. >> area := area.resized_area (count + 1) >> else >> old_area.copy_data (area, 0, 0, count) >> area := old_area >> end >> internal_hash_code := 0 >> end >> ensure then >> new_result_count: count = other..count >> -- same_characters: For every `i' in 1..`count', `item' >> (`i') = `other'.`item' (`i') >> end >> >> >> I do not know whether the bug is already in ISE's distribution of the >> class. >> >> Best regards >> Wolfgang >> >> -- >> Dr. Wolfgang Jansen >> Lauenburger Straße 40 >> D-12169 Berlin >> >> Tel: (+49) 0172 40 86 916 >> e-mail: wo....@ka... >> >> >> ------------------------------------------------------------------------------ >> >> >> _______________________________________________ >> gobo-eiffel-develop mailing list >> gob...@li... >> https://lists.sourceforge.net/lists/listinfo/gobo-eiffel-develop > > Sorry, I introduced another bug into the routine, now it fails if the > target string was empty. > We need to guard both possibilities: the target is empty or the source > is empty. The improved improvement of the critical lines reads as follows: > > if area = Void then > -- Nothing to copy or modify. > elseif old_area = Void or else old_area.count <= count > or else old_area = area then > -- Prevent copying of large `area' if only a few > characters are actually used. > area := area.resized_area (count + 1) > else > old_area.copy_data (area, 0, 0, count) > area := old_area > end > > The `if' condition guards the call in the `elseif' branch, the left > `elseif' condition guards the following call and the call in the `else' > branch. What case ever occurs, the target has at least as many > characters as needed, all characters of the source are copied, and > `count' is set correctly. > > -- > Dr. Wolfgang Jansen > Lauenburger Straße 40 > D-12169 Berlin > > Tel: (+49) 0172 40 86 916 > e-mail: wo....@ka... > > > > ------------------------------------------------------------------------------ > > > > _______________________________________________ > gobo-eiffel-develop mailing list > gob...@li... > https://lists.sourceforge.net/lists/listinfo/gobo-eiffel-develop > |
From: Wolfgang J. <wo....@ka...> - 2016-11-25 09:38:01
|
On 24/11/16 23:51, Wolfgang Jansen wrote: > > Hi Eric, > > I found an fatal error in routine READABLE_STRING_8.copy if the > argument is a non-void but empty string. The origin text is as follows: > > copy (other: like Current) > -- Reinitialize by copying the characters of `other'. > -- (This is also used by `twin'.) > local > old_area: like area > do > if other /= Current then > old_area := area > standard_copy (other) > -- Note: <= is needed as all Eiffel string should > have an > -- extra character to insert null character at the > end. > if old_area = Void or else old_area = other.area or > else old_area.count <= count then > -- Prevent copying of large `area' if only a > few characters are actually used. > area := area.resized_area (count + 1) > else > old_area.copy_data (area, 0, 0, count) > area := old_area > end > internal_hash_code := 0 > end > ensure then > new_result_count: count = other.count > -- same_characters: For every `i' in 1..`count', `item' > (`i') = `other'.`item' (`i') > end > > > If the string to copy is empty, i.e. `old_area=Void' then `area' is > void, too, > after `standard_copy'. Then branch `if old_area=Void or else ...' > leads to instruction `area := area.resized_area (count + 1)' that must > crash. I propose the following modification (it works fine for me): > > > copy (other: like Current) > -- Reinitialize by copying the characters of `other'. > -- (This is also used by `twin'.) > local > old_area: like area > do > if other /= Current then > old_area := area > standard_copy (other) > -- Note: <= is needed as all Eiffel string should > have an > -- extra character to insert null character at the > end. > if old_area = Void then > elseif old_area = other.area or else old_area.count <= > count then > -- Prevent copying of large `area' if only a > few characters are actually used. > area := area.resized_area (count + 1) > else > old_area.copy_data (area, 0, 0, count) > area := old_area > end > internal_hash_code := 0 > end > ensure then > new_result_count: count = other.count > -- same_characters: For every `i' in 1..`count', `item' > (`i') = `other'.`item' (`i') > end > > > I do not know whether the bug is already in ISE's distribution of the > class. > > Best regards > Wolfgang > > -- > Dr. Wolfgang Jansen > Lauenburger Straße 40 > D-12169 Berlin > > Tel: (+49) 0172 40 86 916 > e-mail:wo....@ka... > > > ------------------------------------------------------------------------------ > > > _______________________________________________ > gobo-eiffel-develop mailing list > gob...@li... > https://lists.sourceforge.net/lists/listinfo/gobo-eiffel-develop Sorry, I introduced another bug into the routine, now it fails if the target string was empty. We need to guard both possibilities: the target is empty or the source is empty. The improved improvement of the critical lines reads as follows: if area = Void then -- Nothing to copy or modify. elseif old_area = Void or else old_area.count <= count or else old_area = area then -- Prevent copying of large `area' if only a few characters are actually used. area := area.resized_area (count + 1) else old_area.copy_data (area, 0, 0, count) area := old_area end The `if' condition guards the call in the `elseif' branch, the left `elseif' condition guards the following call and the call in the `else' branch. What case ever occurs, the target has at least as many characters as needed, all characters of the source are copied, and `count' is set correctly. -- Dr. Wolfgang Jansen Lauenburger Straße 40 D-12169 Berlin Tel: (+49) 0172 40 86 916 e-mail: wo....@ka... |