[yast-devel] Re: YaST GUI testing framework
On 9/24/18 6:37 PM, Rodion Iafarov wrote:
1) Will YCP be dropped in foreseeable future, if yes what shall be used instead? yaml+ruby?
I might add that this is also about the low-level YCP container classes such as YCPValue, YCPList, YCPMap, YCPString etc. - and, most importantly, YCPTerm which is what the UI interpreter uses heavily. It doesn't really use any "real" YCP stuff, but it revolves around those YCPValue-related container classes. Should we decide to drop that completely, we will have to come up with an alternative which in all likelyhood will work in a very similar way; the UI interpreter needs some container classes for transporting the UI terms from the application layer (no matter if it's YCP, Ruby, Perl or Python) to the UI C++ classes. The alternative would be to rewrite all UI-related application code completely, using "new" for new objects and passing their parent as a parameter. With the amount of UI terms we have all over the YaST code I don't think this is realistic for the forseeable future. We'd break 99.9% of all YaST code. Having said that, I don't believe those YCPValue-related classes will go away in the forseeable future. The macro player which basically uses YCP "eval" to execute a chunk of code for each macro segment is another matter. We'll have to think about that. (I had talked with Rodion about most of this; this is just a recap for those who were not part of that discussion.) Kind regards -- Stefan Hundhammer <shundhammer@suse.de> YaST Developer SUSE Linux GmbH GF: Felix Imendörffer, Jane Smithard, Graham Norton; HRB 21284 (AG Nürnberg) Maxfeldstr. 5, 90409 Nürnberg, Germany -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
Dne 25. 09. 18 v 11:13 Stefan Hundhammer napsal(a):
Should we decide to drop that completely, we will have to come up with an alternative which in all likelyhood will work in a very similar way; the UI interpreter needs some container classes for transporting the UI terms from the application layer (no matter if it's YCP, Ruby, Perl or Python) to the UI C++ classes.
There are Ruby bindings for libyui [1], but IMHO that would be too low level. There was a hackweek project about using a specific UI DSL [2] with slim-like [3] template support. This would be a better approach IMHO.
Having said that, I don't believe those YCPValue-related classes will go away in the forseeable future.
Yes, just like with the Ruby-YCP code. We are slowly replacing that with the native Ruby but some parts will never be touched and stay like that forever (or until dropped from the distro). Ladislav [1] https://github.com/libyui/libyui-bindings [2] https://github.com/libyui/ruby-ui [3] http://slim-lang.com/ -- Ladislav Slezák YaST Developer SUSE LINUX, s.r.o. Corso IIa Křižíkova 148/34 18600 Praha 8 -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
participants (2)
-
Ladislav Slezak
-
Stefan Hundhammer