[mythtv-users] 0.22 upgrade makes people searches case-sensitive

Michael T. Dean mtdean at thirdcontact.com
Sat Nov 21 04:51:39 UTC 2009


On 11/20/2009 11:29 PM, f-myth-users at media.mit.edu wrote:
>     > Date: Fri, 20 Nov 2009 22:37:55 -0500
>     > From: "Michael T. Dean" <mtdean at thirdcontact.com>
>
>     > On 11/20/2009 09:53 PM, f-myth-users at media.mit.edu wrote:
>     > > (Then there's the
>     > > issue of command-line options, of course.)
>
>     > Oh, and if you mean the settings names used with overrides (which are 
>     > not meant for general use, anyway), not anymore.  
>     > http://svn.mythtv.org/trac/changeset/22779
>
> Ah.  I'm on -commits, but the comment for that commit makes absolutely
> no mention of that.  Inspection of the code finds some toLower's that
> I assume are doing this (I haven't compared to the previous version
> of the code since those change regions are large).
>
> So I take it that all of these will now work?  If so, that's much
> friendlier than the old regime.
>
>   mythfrontend -O ThemePainter=OpenGL
>   mythfrontend -O ThemePainter=opengl
>   mythfrontend -O themepainter=OpenGL
>   mythfrontend -O themepainter=opengl
>
> Is this going to be documented somewhere?

Only names are case insensitive.  Values are--as they always have 
been--case sensitive.  Some values /must/ be case sensitive (such as 
those containing file/path information) and there's really nothing to 
distinguish them from ones that don't need to be, so we can't just 
toLower() everything.  And, IMHO, it's not worth the effort to add--let 
alone maintain--the extra code required to allow a way to identify some 
settings as case-sensitive values and others as case-insensitive.

The settings overrides are /not/ designed to be user-friendly.  They're 
really designed as a means of temporarily changing a value when 
something bad happens.  Note, also, that mythfrontend --help doesn't 
list any of the -O settings names you can use.  Therefore, it requires a 
knowledge of code to use them, and using them properly requires a very 
good understanding of the code.  (If you don't believe me, try 
overriding the NoPromptOnExit for mythfrontend.)

I don't think you'd argue that a new user isn't going to intuit that if 
they change the theme painter to OpenGL and then restart mythfrontend 
and it doesn't start  that they need to restart with:

mythfrontend -O ThemePainter=qt

And, it's not the case-sensitivity that's preventing that.  Instead, 
they're going to have to do a search or or ask on IRC or something.  
When doing so, they should get the proper command to copy/paste to fix 
things up.  Therefore, I would argue, it's just not worth the extra code.

Mike


More information about the mythtv-users mailing list