Re: [calsify] SKIP was Re: AD review of draft-ietf-calext-rscale-03

Ken Murchison <murch@andrew.cmu.edu> Thu, 05 February 2015 16:19 UTC

Return-Path: <murch@andrew.cmu.edu>
X-Original-To: calsify@ietfa.amsl.com
Delivered-To: calsify@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0F7C21A88DD for <calsify@ietfa.amsl.com>; Thu, 5 Feb 2015 08:19:45 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.21
X-Spam-Level:
X-Spam-Status: No, score=-4.21 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id b03aD0bKFC_G for <calsify@ietfa.amsl.com>; Thu, 5 Feb 2015 08:19:43 -0800 (PST)
Received: from smtp.andrew.cmu.edu (SMTP.ANDREW.CMU.EDU [128.2.105.203]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 721101A88CF for <calsify@ietf.org>; Thu, 5 Feb 2015 08:19:43 -0800 (PST)
Received: from localhost.localdomain (cpe-76-180-151-43.buffalo.res.rr.com [76.180.151.43]) (user=murch mech=PLAIN (0 bits)) by smtp.andrew.cmu.edu (8.14.8/8.14.8) with ESMTP id t15GJc2V022081 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Thu, 5 Feb 2015 11:19:38 -0500
Message-ID: <54D3981A.8060007@andrew.cmu.edu>
Date: Thu, 05 Feb 2015 11:19:38 -0500
From: Ken Murchison <murch@andrew.cmu.edu>
Organization: Carnegie Mellon University
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0
MIME-Version: 1.0
To: Barry Leiba <barryleiba@computer.org>, Gregory Yakushev <yakushev@google.com>
References: <68FCD7D11F934509267D5915@cyrus.local> <54D0E2E9.2030505@andrew.cmu.edu> <99B9DDB4AEFC12755724C5DD@caldav.corp.apple.com> <54D107AC.3050706@andrew.cmu.edu> <2D953326EFEE238B1CCF867E@caldav.corp.apple.com> <54D10C50.20909@andrew.cmu.edu> <54D10FDB.6070001@andrew.cmu.edu> <54D12AAC.7000202@dmfs.org> <54D12E31.4020506@andrew.cmu.edu> <55A07C99191DC58DAAA160D5@caldav.corp.apple.com> <54D1368F.2000501@dmfs.org> <6BD446FBAB897BCD227A82F1@caldav.corp.apple.com> <54D14289.90201@dmfs.org> <54D21CA2.5020807@andrew.cmu.edu> <54D224D0.1050309@dmfs.org> <54D22DEB.7020501@andrew.cmu.edu> <ABACEFE79E9862C8D9F72A4D@caldav.corp.apple.com> <33B390A4-BF1A-4C51-B29F-6F41CB22EC56@dmfs.org> <CAJxDCqXb1XUKDDQiWdH-OKRVXuRO-owUZa-MO2rrG6W4mrv1+A@mail.gmail.com> <CAC4RtVAreNuHp70TAvQ4+rWaMHqqpk7_aKhUWyi-XpcxUP=EQw@mail.gmail.com> <CAJxDCqWwMweSF5jE_9QDxeEMAgq3PSb0-V8nWC9Bqfup5UUt_A@mail.gmail.com> <CALaySJLn9cr=qswj8Lb_1bAFYg_R49vrja+-Ts7OBj9F_xKKcw@mail.gmail.com>
In-Reply-To: <CALaySJLn9cr=qswj8Lb_1bAFYg_R49vrja+-Ts7OBj9F_xKKcw@mail.gmail.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-PMX-Version: 6.0.3.2322014, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2015.2.5.161218
X-SMTP-Spam-Clean: 28% ( SXL_IP_DYNAMIC 3, MULTIPLE_RCPTS 0.1, HTML_00_01 0.05, HTML_00_10 0.05, BODYTEXTP_SIZE_3000_LESS 0, BODY_SIZE_2000_2999 0, BODY_SIZE_5000_LESS 0, BODY_SIZE_7000_LESS 0, DATE_TZ_NA 0, FROM_EDU_TLD 0, NO_URI_FOUND 0, RDNS_GENERIC_POOLED 0, RDNS_POOLED 0, RDNS_RESIDENTIAL 0, RDNS_SUSP 0, RDNS_SUSP_GENERIC 0, RDNS_SUSP_SPECIFIC 0, REFERENCES 0, __BOUNCE_CHALLENGE_SUBJ 0, __BOUNCE_NDR_SUBJ_EXEMPT 0, __CT 0, __CTE 0, __CT_TEXT_PLAIN 0, __FORWARDED_MSG 0, __HAS_FROM 0, __HAS_MSGID 0, __INT_PROD_LOC 0, __IN_REP_TO 0, __MIME_TEXT_ONLY 0, __MIME_VERSION 0, __MOZILLA_MSGID 0, __MOZILLA_USER_AGENT 0, __MULTIPLE_RCPTS_CC_X2 0, __PHISH_SPEAR_STRUCTURE_1 0, __RDNS_POOLED_1 0, __REFERENCES 0, __SANE_MSGID 0, __SUBJ_ALPHA_NEGATE 0, __TO_MALFORMED_2 0, __USER_AGENT 0)
X-SMTP-Spam-Score: 28%
X-Scanned-By: MIMEDefang 2.74 on 128.2.105.203
Archived-At: <http://mailarchive.ietf.org/arch/msg/calsify/sfJYPv7J_Ukm4vcayDLbsatWX-8>
Cc: Calsify <calsify@ietf.org>
Subject: Re: [calsify] SKIP was Re: AD review of draft-ietf-calext-rscale-03
X-BeenThere: calsify@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <calsify.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/calsify>, <mailto:calsify-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/calsify/>
List-Post: <mailto:calsify@ietf.org>
List-Help: <mailto:calsify-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/calsify>, <mailto:calsify-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 05 Feb 2015 16:19:45 -0000

On 02/05/2015 11:13 AM, Barry Leiba wrote:
>>> I do NOT think that we need to accompany this with any list of
>>> calendars.  Whoever implements a particular calendar needs to know how
>>> it works in order to generate the right SKIP values anyway.  So why
>>> not just say that, and forget about having to include the SKIPs?
>> Because there should be an agreement between all implementation on what SKIP
>> default is applied to a given Calendar. Say, we agree here that SKIP should
>> default to BACKWARD for all calendars except HEBREW, for which it should
>> default to FORWARD. This information needs to be written somewhere and set
>> in stone, so that all implementation apply correct default when expanding
>> RRULEs.
> No, the point isn't that we should agree that SKIP defaults to
> BACKWARD or FORWARD or BANANA, except for anything.  We should agree
> that the way each calendar behaves in this regard is specific to each
> calendar, and implementors of a particular calendar need to understand
> how that calendar works and implement it right.
>
>> Otherwise an implementor without deep knowledge of a particular calendar
>> (its not required if he bases his implementation on ICU for example), can
>> apply a different default. I don't see how can we do without a registry for
>> variable defaults, if we choose this option.
> We do this sort of thing all the time, and it works.  Do we get bad
> implementations sometimes, because someone gets it wrong?  Sure.
> Those usually get fixed.  I think that situation is *far* better than
> having skip rules (perhaps wrong ones, created by the same buggy
> implementations) imbedded in the iCalendar entries.

FWIW, the ICU library, which I assume most implementations will use, 
seems to always skip forward to the next valid date if/when you try to 
set an invalid one, regardless of calendar.  So, If I try to set Feb 29 
in a non-leap year it gives me Mar 1.  If I try to set 30 Adar I in a 
non-leap year it gives me 1 Nisan. I could try some more examples using 
Chinese leap months and Ethiopic leap day.

AFAICT, it never skips backwards on its own, I have to do that one layer up.

-- 
Kenneth Murchison
Principal Systems Software Engineer
Carnegie Mellon University