On 6/10/20 9:13 AM, Michael Davidsaver wrote:
> On 6/9/20 6:33 PM, Hu, Yong wrote:
>> Michael,
>>
>> When you say "restrictions", does that mean a newer version of EPICS IOC will fail to load a .db file in which a record name contains a "weird" character?
>
> Eventually, yes. That is what I'm considering.
cf. for a concrete proposal. https://github.com/epics-base/epics-base/pull/78
>> If the IOC fails to load .db because it does not follow the new rules/restrictions, facilities that have already used "weird" characters will suffer badly when they upgrade EPICS base to a newer version.
>
> I recognize and want to avoid this.
> Any new restriction would begin as a warning,
> and likely remain so for a number of years.
> This would mainly serve as an early indication
> of names which would cause problems in other
> contexts. Record names which would be impossible
> in link to (like "a b" below, or "123"), or which
> would never parse as channel names (like "x.y").
>
> 3.15.0.1 introduced a warning for record
> names containing " \"'.$". These might now
> begin to be enforced. And include "\t" for
> good measure.
>
>
>
>> Yong
>>
>>
>> On 6/8/20, 5:09 PM, "Tech-talk on behalf of Michael Davidsaver via Tech-talk" <tech-talk-bounces at aps.anl.gov on behalf of tech-talk at aps.anl.gov> wrote:
>>
>> I'm looking to collect examples of epics record names in the wild.
>>
>> This is an early step towards (maybe) adding restrictions on what
>> characters a record name can contain, and in what positions.
>> eg. restricting possible first and last characters.
>>
>> In particular I'm looking for examples including characters
>> beyond the usual alphanumeric separated by ':' or '-'.
>> And in what positions they may (or may not) appear.
>>
>> An example from the NSLS2 naming convention (for which I am have
>> some responsibility).
>>
>> > TST{evm:1D-DlyGen:31}Evt:Trig2-SP
>>
>> Which is notable for containing "{" and "}" in the middle.
>>
>>
>>
>> As background. At present, records can be created with almost
>> any characters in a name.
>>
>> > record(ai, "a b") {}
>> > record(ai, "x.y") {}
>> > record(ai, "x\"") {}
>>
>> However, record names including '.' can't be addressed and aren't
>> very useful. Further, names including spaces can't be targeted
>> by links.
>>
>> On the subject of links. Dirk was surprised to find that
>> the syntax for link parsing treats "[0]" as a record name,
>> but "[0,1]" as a constant array.
>>
>> https://urldefense.com/v3/__https://bugs.launchpad.net/epics-base/*bug/1882520__;Kw!!P4SdNyxKAPE!TwNJ4RpksYZmN8YbfgjiN7Y3igc4486VOLcj-_1L1KUqPcMdbvxVXH_bSrI3$
>>
>> Rather than carving out another exception, I'd like to look at
>> coding a general rule.
>>
>
- References:
- weird record names? Michael Davidsaver via Tech-talk
- Re: weird record names? Hu, Yong via Tech-talk
- Re: weird record names? Michael Davidsaver via Tech-talk
- Navigate by Date:
- Prev:
Re: weird record names? Faucett, John Allen via Tech-talk
- Next:
How to run IOC in docker containers properly xiao zhang via Tech-talk
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: weird record names? Michael Davidsaver via Tech-talk
- Next:
Re: weird record names? Konrad, Martin via Tech-talk
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
|