[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
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