Hmmm. I had entirely forgotten we had such tunable and warnID. So we
were letting people turn this on/off before because we allowed it, but
since DFDL
doesn't formally allow it we had deprecated the use of bits for
bigInteger types, but let people continue to use it via the allow
property.

Removing a WarnID is not backward compatible - people may have configs
that suppress that warning, or tests that look for it.
Removing a tunable is not backward compatible - people may have API
calls that set it.

I think this is low likelihood, but we do need to think about it.

At minimum the release note will need to discuss this in the section
on compatibility.

On Thu, Sep 26, 2024 at 1:07 PM Kilo, Olabusayo
<ok...@owlcyberdefense.com> wrote:
>
> Will do! By extension, this means we'll be deprecating/removing the 
> allowBigIntegerBits tunable and the DeprecatedBigIntegerBits WarnID, correct?
>
> --
> Lola Kilo
> ________________________________
> From: Mike Beckerle <mbecke...@apache.org>
> Sent: Thursday, September 26, 2024 7:54 AM
> To: dev@daffodil.apache.org <dev@daffodil.apache.org>
> Subject: Re: Questions about addressing warnings for daf-2926
>
> I'm ok adding this now, so long as there are comments in the code
> easily found indicating this is non-portable DFDL feature.
> E.g., put keyword "PORTABILITY" in the comments so that we can search it 
> easily.
>
> The idea is in the future, should portability become a bigger deal
> than now, we can add some sort of portability check and
> warnings/errors easily.
>
>
>
>
> On Wed, Sep 25, 2024 at 3:29 PM Kilo, Olabusayo
> <ok...@owlcyberdefense.com> wrote:
> >
> > I currently have some code that adds support for date/time/datetime types 
> > and binary packed decimal representations (DAFFODIL-2931), as per what the 
> > spec currently says:
> >
> > > 'bits' may only be used for xs:boolean, xs:byte, xs:short, xs:int, 
> > > xs:long, xs:unsignedByte, xs:unsignedShort, xs:unsignedInt, and 
> > > xs:unsignedLong simple types with binary representation, and for calendar 
> > > (date and time) simple types with binary packed representation.
> >
> > Do we want to wait for a spec update to remove the warning, or should I 
> > update the code to drop the warning and add support for all types now and 
> > push my changes?
> >
> > --
> > Lola Kilo
> > ________________________________
> > From: Mike Beckerle <mbecke...@apache.org>
> > Sent: Saturday, September 21, 2024 1:27 PM
> > To: dev@daffodil.apache.org <dev@daffodil.apache.org>
> > Subject: Re: Questions about addressing warnings for daf-2926
> >
> > On Thu, Sep 19, 2024 at 3:20 PM Kilo, Olabusayo
> > <ok...@owlcyberdefense.com> wrote:
> > >
> > > Below are some warnings that need some discussion on how best to approach
> > >
> > > (noEmptyDefault) Element with no empty representation. Xsd default can 
> > > only be used when unparsed
> > >
> > >   *
> > > this warning shows up when an element cannot be empty (ex has 
> > > dfdl:length=1), but has a default value. As discussed with Steve, default 
> > > is ignored when parsing, and can only be applied on unparsing. We also 
> > > discussed updating the warning to say "Element with no empty 
> > > representation. XSD default='xxx' will be ignored when parsing." 
> > > (DAFFODIL-2929).
> > >   *
> > > The question is how to handle the tests that display this warning. Some 
> > > suggestions are to:
> > >      *
> > > add the warning to all the affected tests
> > >      *
> > > suppress this warning in the schema
> > >   *
> > > Affected Tests
> > >      *
> > > org.apache.daffodil.section00.general.TestUnparserFileBuffering#test_parseFixedLengthStringLength0_ffb
> > >      *
> > > org.apache.daffodil.section00.general.TestUnparserGeneral#test_parseFixedLengthStringLength0
> > >      *
> > > org.apache.daffodil.section13.boolean.TestBoolean#test_booleanDefault
> >
> > I think for the above, the "suppress this warning in the schema" is
> > the right thing.
> >
> > >
> > >
> > > (deprecatedBigIntegerBits)In a future release, lengthUnits='bits' will 
> > > only be supported for the following types: xs:boolean, xs:byte, xs:int, 
> > > xs:long, xs:short, xs:unsignedByte, xs:unsignedInt, xs:unsignedLong, 
> > > xs:unsignedShort
> > >
> > >   *
> > > this warning shows up when we use lengthUnits='bits' for xs:date or 
> > > xs:dateTime. On discussing with Steve, he thinks this may be a bug due to 
> > > the fact that we support bits on hexBinary and should support bits on 
> > > xs:date for example for the IBM4690Packed binaryCalendarRep which needs a 
> > > length that is a multiple of 4, which means we can't use bytes. Thoughts?
> >
> > Yes this is a bug. Bits should be allowed without warning for the
> > date/time/datetime types and binary packed decimal representations.
> >
> > In fact we should just drop this warning entirely, as DFDL Workgroup
> > issue https://github.com/OpenGridForum/DFDL/issues/12 is about opening
> > up use of lengthUnits 'bits' to all types. (Originally it was about
> > hexBinary, but integer, nonNegativeInteger, float, double, and even
> > string should be able to use lengthUnits 'bits' also.
> >
> > >   *
> > > Affected Tests
> > >      *
> > > org.apache.daffodil.section05.simple_types.TestSimpleTypes#test_dateBinIBM4690Packed2
> > >      *
> > > org.apache.daffodil.section05.simple_types.TestSimpleTypes#test_dateBinBCD5
> > >      *
> > > org.apache.daffodil.section12.lengthKind.TestLengthKindPrefixed#test_pl_bin_date_bin_bits_bcd
> > >      *
> > > org.apache.daffodil.section12.lengthKind.TestLengthKindPrefixed#test_pl_bin_dec_bin_bits
> > >      *
> > > org.apache.daffodil.section12.lengthKind.TestLengthKindPrefixed#test_pl_bin_hex_bin_bits
> > >      *
> > > org.apache.daffodil.section12.lengthKind.TestLengthKindPrefixed#test_pl_bin_dec_bin_bits_bcd
> > >      *
> > > org.apache.daffodil.section12.lengthKind.TestLengthKindPrefixed#test_pl_bin_dec_txt_bits
> > >      *
> > > org.apache.daffodil.section12.lengthKind.TestLengthKindPrefixed#test_pl_bin_date_bin_bits_ibm4690
> > >      *
> > > org.apache.daffodil.section12.lengthKind.TestLengthKindPrefixed#test_pl_bin_dec_bin_bits_ibm4690
> > >      *
> > > org.apache.daffodil.section12.lengthKind.TestLengthKindPrefixed#test_pl_bin_hex_txt_bits
> > >      *
> > > org.apache.daffodil.section12.lengthKind.TestLengthKindPrefixed#test_pl_bin_dec_bin_bits_packed
> > >      *
> > > org.apache.daffodil.section12.lengthKind.TestLengthKindPrefixed#test_pl_bin_date_bin_bits_packed
> > >
> > >
> > >
> > > --
> > > Lola Kilo

Reply via email to