On středa 11. ledna 2017 14:22:53 CET Stephen Benjamin wrote: > ----- Original Message ----- > > > From: "Daniel Lobato Garcia" <elobat...@gmail.com> > > To: foreman-dev@googlegroups.com > > Sent: Wednesday, January 11, 2017 11:05:39 AM > > Subject: [foreman-dev] Revert removal of @host.params for host_param > > > > Hi foreman devs, > > > > Just noticed today https://github.com/theforeman/foreman/pull/3983/files > > after some comments on IRC. What's the background behind this change? > > > > As far as I can see, this merely moves > > > > @host.param to host_param > > @host.param_true? to host_param_true? > > @host.param_false? to host_param_false? > > @host.info to host_enc > > > > without gaining anything from the change. This will force people to > > change their templates (including our community templates) when the > > deprecation is removed, and there's nothing to gain. > > > > Does someone know what's the rationale behind this change? As it stands > > right now, I propose reverting that commit entirely to avoid inflicting > > that pain on users - which include many devs who maintain templates. > > > > Best, > > I know the macros look better, but it seems like a small gain for a > lot of pain. A lot of users use the existing methods in parameter values > (ERB w/ safe mode off), and their own custom templates. > > And the standard response to these kinds of complaints is "well, it's > deprecated and users have enough time to change." But I really just > don't think that's sufficient, this is more change for the sake of > change. > > Also, the deprecation wasn't really smooth as it broke REX tests. > http://ci.theforeman.org/job/test_plugin_matrix/2466/ > > > - Stephen
Hello I strongly disagree that this does not have big benefits. Using internal Foreman objects in templates is a bad practice. It blocks us from improving our code. Therefore it's very important to build a DSL that users can use in templates and keep that compatible. We can then later change the implementation of host_param_true method without any templates changing. Think of this as a templating API. Another less significant benefit is that for plugins it's easier to wrap/alias the template method rather than manipulating something that's used internally in @host. Still not ideal but that should be solved by https://github.com/ theforeman/foreman/pull/3701 Of course it will require users to migrate to new template helpers which is why we move there slowly and hopefully with proper deprecations. I was hoping to do the update for community-templates since it's very easy migration. If you think it's too complicated for users we could provide rake task or migration. But please don't revert this. -- Marek -- You received this message because you are subscribed to the Google Groups "foreman-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to foreman-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.