Re: [Json] [Cbor] JSON and int64s - any change in current best practice since I-JSON

Jeremy O'Donoghue <jodonogh@qti.qualcomm.com> Mon, 29 January 2024 10:35 UTC

Return-Path: <jodonogh@qti.qualcomm.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7B47BC14F70A; Mon, 29 Jan 2024 02:35:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.005
X-Spam-Level:
X-Spam-Status: No, score=-2.005 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=qualcomm.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mxDaaFVyxROQ; Mon, 29 Jan 2024 02:35:31 -0800 (PST)
Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9267EC14F706; Mon, 29 Jan 2024 02:35:31 -0800 (PST)
Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.17.1.24/8.17.1.24) with ESMTP id 40T6GApS003838; Mon, 29 Jan 2024 10:35:30 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= from:to:cc:subject:date:message-id:references:in-reply-to :content-type:mime-version; s=qcppdkim1; bh=ANRjo2VhampT3ew0rGys vC8tuhlCwdnVNDQIr5Dgq6k=; b=WxlW/ewvlGrLwV1/lEERw3IeKLe/cHu0+Bt3 FGsExpkYd0alNaGSHqv53mYnMusSYlZzIZSODyRSyYsWoe0FNoEnmUYxx233ftyr 6VkjS6DO7zhVDCF3g1Z6Hw8s6Odg3n8jRQt4z1nWp/a86a3Cu9rDrxIMymivactW kkILus1kibpRxxwgxoJiFs2d3WFLAWGP+3XXpj7GgD6nNGVZe8BygJmtuAnteXgB dH/aKLvNVm7oLGcBmHj0AmZdgrfn09CCz+lieBpfNvfiNMdb64abpT9H8KBm2pKF p7eXLJXk1nHOLBmClGhjpXZxjp9bR6P/LNCFCvnjl2LIRgOlqQ==
Received: from nam10-mw2-obe.outbound.protection.outlook.com (mail-mw2nam10lp2100.outbound.protection.outlook.com [104.47.55.100]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3vx3dtrscy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 29 Jan 2024 10:35:29 +0000 (GMT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NrAgqSzTKAN5UIWW+rXZgJ0/FW0eHB7ynynBHj58khVMLXGzr3tSIsbt0xKcLsdCDUsTl8EcQzVTRISuTngVBOFiW337yXkeyyvPh4AuOu/cOpJeuN5dbNIiaY7D88XPy9UcoOn/BsqKmy2XR8VZ88y9TOTU4qOD/nz7Wmbh5R065xkoDDG9JZ1NBkM9m7/DZzI/+TCN0WMi7S8BPjiezgGMLssUnYviHAvhbzI6zYliXBJkjGbe9j6TfLUiGKBlV6TkmlJtkcL2ep11CG6Tr6/L7eK2rTISPsyvZ52Dan7Dkq/C+DGsZE8+Q2Vn+coFWe3xXn6Gx/cDB58g6BmSqA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ANRjo2VhampT3ew0rGysvC8tuhlCwdnVNDQIr5Dgq6k=; b=hDLP2wG6nXNuVeDpE72VJtDji9sQIhIaNphPmJwT/w9tIBWZxeeS6R36l8QwqlCoioaXjd9MQoHwVz83vUF8Dwybz9iBNtx95nqPeY02SGYXKZmVMgIequeZP9094p8vvMGRq5zzV6MOVFvXOcAOnNk0wBjM7d89B6X5cF0K2/mIYOAJsLa2O8fJK3dsEHCD1YLcrOvEKKMLkbiIphpQJyp2F6s45ynaMA04cJXWrZTN6OtT4xoAUVN5Ekh79dmrsjpVKpJEPPmS+/vMul+E8AqI8TbLTNH+Nf0ILOBYsKjURyqGiPGj6JoJyg3PEsmPFsorzDoIYRADfhqNNQ5kAA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=qti.qualcomm.com; dmarc=pass action=none header.from=qti.qualcomm.com; dkim=pass header.d=qti.qualcomm.com; arc=none
Received: from PH0PR02MB7256.namprd02.prod.outlook.com (2603:10b6:510:1a::23) by BN0PR02MB7981.namprd02.prod.outlook.com (2603:10b6:408:168::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7228.32; Mon, 29 Jan 2024 10:35:26 +0000
Received: from PH0PR02MB7256.namprd02.prod.outlook.com ([fe80::2c0a:883c:ec4e:ad39]) by PH0PR02MB7256.namprd02.prod.outlook.com ([fe80::2c0a:883c:ec4e:ad39%7]) with mapi id 15.20.7228.029; Mon, 29 Jan 2024 10:35:26 +0000
From: Jeremy O'Donoghue <jodonogh@qti.qualcomm.com>
To: Carsten Bormann <cabo@tzi.org>
CC: Joe Hildebrand <hildjj@cursive.net>, "json@ietf.org" <json@ietf.org>, "cbor@ietf.org" <cbor@ietf.org>, Tim Bray <tbray@textuality.com>
Thread-Topic: [Cbor] [Json] JSON and int64s - any change in current best practice since I-JSON
Thread-Index: AQHaShYzRILMnFHwxUCyL/DIvr5mBbDgYWgAgAYnDwCABB7uAIAACJQAgAMYYwCAABfmz4AADAMAgAKqKfKAAArcAIAAB+A5
Date: Mon, 29 Jan 2024 10:35:26 +0000
Message-ID: <PH0PR02MB7256E16278CC5FB1F1C9090EF27E2@PH0PR02MB7256.namprd02.prod.outlook.com>
References: <87527a42-aaac-4f39-b320-05f18a2808c1@codalogic.com> <C31BF4C8-9E6C-48F8-BF7B-D2C379273B3F@tzi.org> <CAHBU6it4SaLawSiBgK9ySkbxjtHE6CX-P3r=hzcVy4ksoQo-Cg@mail.gmail.com> <CAChr6SxHfLW-A1asAndKJz-AiyJv5QP18bi=_bNdKXw7zYHThw@mail.gmail.com> <CAChr6SweYdCWxSABZ7g20Zd-xBFzcK0Ritq53S7WtjSwc-vLmw@mail.gmail.com> <E5A68370-CC2F-4618-AB39-39A382656616@cursive.net> <807fea1b-a22b-4d6b-aa5d-720c9b12023c@codalogic.com> <09233A73-3A6B-4E6F-AEB8-596AC6442E24@cursive.net> <869950DC-647B-4481-AEF8-9E092384E99F@tzi.org> <CBD32B58-8328-4602-89C6-BC2A7A875A0D@cursive.net> <994E2C0A-4AE0-4720-8C67-913BBF033E11@tzi.org> <0BB09B30-B606-44CC-85DC-95A47E485316@cursive.net> <B22EDB2D-0AD1-4582-9191-EFB40E163F19@tzi.org> <F6EB02CA-C240-4FA1-92A8-C5BB883929C7@cursive.net> <29BD1557-59A1-4578-901B-C626ABBE9A78@tzi.org> <B25E10D2-17CF-4B3D-B04B-BABE3A209B90@cursive.net> <6A73993B-B54D-480D-AF79-081EE9D2E1C8@cursive.net> <94BD8ECC-0D50-4C09-9B29-7552AFC4D9ED@tzi.org> <0C97FF67-A3D4-44EC-BD17-AC1F7A2BA9A2@cursive.net> <80D3667A-BC74-4197-BBBC-2B7B9D478D34@tzi.org> <PH0PR02MB72562E37EEB0AC197AB28283F2782@PH0PR02MB7256.namprd02.prod.outlook.com> <64F16573-3CBB-4D21-B974-9E0E0E89D465@tzi.org> <PH0PR02MB7256FACC8FD6E1AAAB388365F27E2@PH0PR02MB7256.namprd02.prod.outlook.com> <4BED31C6-156C-4CF1-A3DC-31BCEC82806F@tzi.org>
In-Reply-To: <4BED31C6-156C-4CF1-A3DC-31BCEC82806F@tzi.org>
Accept-Language: en-GB, en-US
Content-Language: en-GB
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: PH0PR02MB7256:EE_|BN0PR02MB7981:EE_
x-ms-office365-filtering-correlation-id: ff5d1603-1787-4f6f-0dad-08dc20b601ad
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: mh9s4vq6dctzPgF71aeDwjUfVFpjsYiBZUnDaAWeDDvffn6NmWNI2Y4CoGyZBF06wEwPFmR0cDT7cOsXsyLgLvL8EczuWHcJfbfEytpjBMG4j6ZxtGLVw4YF/u3ei4IBM7eou++YA2TEgbg12YMnAZjzMsSKonXw1BTPzkam+dVCrabaC+nXISzLdsqfjrNciDP8GO7ttlpuwfN4bj7vLZMdvQCSA9iVi10w4ZMHT5KNHwu/SAlpwuG87spXPy+xJ1KfCLrDYp7LEn1CVHWcFNbU7JUEoeSfjPFgSvACydrrxxx0ztQm7I6/rdkVm9PwF3vFOHxfsmkQdX/Abjgt3nWsLDhb2B36MdOwDX86RUFcZqQjdzSpFEUa/n7zydt53PBMXIAWrguZ+wmWQBzrNMpgVZYBs2XTSIK7KdfuihPkBvf/t4sXhWSx26Klrty+n9xDpgpyIzr2+iEGzejjF4TmPj3RLFcwkSlicmBk+qVLrLH7hmSsbHayH94MeFYP2IM9u/lPNA21zIF1l35UlB0KzMPHN38I+s2LsCkje15NN4ptBqXKz0yckxDi3GGIOapUfVVyv0sMlCqvnP1/eReK2cWrFax/Qlap65nWwfnbbqDquaPFKKcbY0KFBTvCzMTUrpwASItZX09PJQn8tg==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH0PR02MB7256.namprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(396003)(366004)(39860400002)(346002)(376002)(136003)(230173577357003)(230922051799003)(230273577357003)(451199024)(186009)(1800799012)(64100799003)(38070700009)(83380400001)(53546011)(54906003)(6916009)(316002)(66946007)(64756008)(66446008)(66556008)(91956017)(7696005)(76116006)(6506007)(86362001)(66476007)(9326002)(8936002)(8676002)(966005)(478600001)(4326008)(71200400001)(26005)(2906002)(9686003)(52536014)(33656002)(5660300002)(41300700001)(166002)(38100700002)(122000001)(55016003); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: yJD+mgwuL5XrESYpW9y2EO7RNfhMQBRtBuS+8Mo/eqFbXQF5nZlE94szEfCNH76Ix0pLoSdmETjoL83eLA400KSAOju3t/NR+bEaYnmUk/Fc+dbF6GBbwiFykQCbpvH5V+bfxBQvwxSd807ch9oPB35XHgINL34F0lIrYYQ4s5+J9RvnJA9KnrYwT4xyKfTEeiEVKoslKFAaXo2R4q5b2mS3F9UJbEdwqWO8eMjRvdKKT2jo9/rTfS/QSq5bWFf+OnRU0VpJJWxbG3IQTENC9jijjjWyJr4NTyU6Sh6n+JgJ/z4g4/GlvDu4QR2fFR6wNBO2W2nK5MNXU7OHgQFzVP/lU4wD/JqSfZHKTvNmeOSLamyFxYnmvwHP24D4Wk6kNzxOxPZiVa+GYf4Wg6rIrk1Gp61f8rsivxvdbiTzmZIVizBf1X7C1CHdo9n0k1XEJy6s3CP8rto0/uliA2dPBA5vqbZLJP/HCQZrRpshLrs8woh27lhrFMXsNgSD1gXdwo+7b2hTULXh3ULmQpXrCmhDn7DHDO7OX/zEskMxsxH4Txs3TAaj0LZ3IeoxVJwhaEDbre0tGOPRbXCe34YvSQ6p9vMr95IF3yCdlSjmcpdUtSXlfirXwSuj58VXy0c/BsYO1KoQ4gZuWpO8tej25UV9e9GiZrhY5/SHLbtoz2EzL4jD7eR8u8Qjk67VC8MMijnUFBJ8UT5VXjOqg2ab5h6a3GzZFJYxXVddzJMML31XNM6c2hRDAmW5LIVH5lEfXlOaqUTNeSiiaXJevbJ0pdIK2wsIbH35CWYuswQgke/U+kA1F7EEIrpEeZcexh9p+Q0OGpj82CHsG81KNvxpMqajtFeZTVtkV+nYXlYcoKqyKlGFf9TzOzEHyp0RMYFcSZ6kyzgWdNIJyKaBJ9US8ivS6ltNndvMXS898uz9I15PzYCY5s6+dRdQaP7LXDu2LpjYnHJB4ebyt531Ycgj7+upTbizBkhGl1IjndPW7AiVLTx+MATuYE0pcMhx99FALb/WKKKryKpTkgsa8iAen3s++f54pZppIKONkY+dpZqGLNT3Cv196hnn6henT0lH1OHZ0MJmfZuR7EMmYKR2W9peMN07Cjl5IU/U0q2prGzbAnYdA2+kD9iwpt2xOdhznFESAV94AedxhUGHK5Eb6vsyns9qme++5xmafvO9ARlng4KncyeMPLChGAyg6P+Lq2VIwNqmQsbWi77Nf7jlmAScjFJrFr+j9/DfpUGvI4gcAgOiqTQecvrcFoLQIDcx+qhnjr931N7XXu4NN7sR2rd7vVM+ibczqQrs1+vv58M5QTc1bETKeWg3Ly5BHy8rljWVXUGzkpaztN1bO45XOhXir5CWjJhUCs9UbWBrMlfy9Eg030KoEjkPJXyWTNDp/08/i0vRmYR2rSzZDc/0smPG+WzJlOiIV09H1T63AABBiPdbIlKUdcixSfJhDyTnWV9ezwzlb/i8BA0TJv/9NnodE68QpHn7+kdeLyRFUuI+w7K70ss+dc2D1yQQi6RUF2Qm3ei0RD5ftGNcqkV1O9WeUqsOHCIFG/LiJi2BiQ21cai7PBR6Sybc0hGTgfNIB6BDDUi6zfmGnGSr7SSuoQ==
Content-Type: multipart/alternative; boundary="_000_PH0PR02MB7256E16278CC5FB1F1C9090EF27E2PH0PR02MB7256namp_"
MIME-Version: 1.0
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: vNwO/aqSNf6Hu2fuaURUpuPH6bheP4v2nxz3wJvE+2ndxDEm804Q9rvPxSGHrGIiYs696biAUyl3B0FQQ9vImNrWLhg80Ocy0+i4OE22LC7p62TSOB108weKacvdEvhdAM6u6LlSAarc7DJiyScfP85WfJA6evq8hFNfeovceX0FaIcn3FpVd1ZgObugM38Et9c4Eg5lfY9eBDSVlRrvDYF8AnzK663rvJtqFC+ixYWLp4dJtoSxoIJX5B1Z5kXRbG1oGF6BMYvTFa1rsaa6ze8flllKQw5NOQ6GTz85oXbK7iJZG6OEKejeFJorUuE0kCWH6n92QkemSbepzguyIlogirzUxEgiQA5gGRu0Sotd5Ai3X5zMm9lNo3ZY9caQskIusTRk5r2e1KYdHoZqQWlqSnGg5m6Cry5+fwdS4g7mqlh6zi6psSKYD36dMbYjg70gUnxJHbL17YJBALlbcdF0kMjCMrlDFSsRzJFnx5UWyhoXsg3aJgz29WwjoOER9elfvHrSqkijbZioA8kFKE3gFq7VuJLUTUM4MCim5UIV85ofkPGxcRWzZv2Em3y2byzXr/HTA9voj084nTOT1VbJR9tkLcIpmgFyRXNLXS+Cj3ybB9/lidLa5GhVc4ge
X-OriginatorOrg: qti.qualcomm.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: PH0PR02MB7256.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ff5d1603-1787-4f6f-0dad-08dc20b601ad
X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Jan 2024 10:35:26.3737 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 98e9ba89-e1a1-4e38-9007-8bdabc25de1d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: ANQfPaYzAXxHh889dWEiLXlDHqHjrgDg4LgG075/W2iImiwWdHOC5FkfH082BU23bTzG580eQ+cfwKiXpVlERYUg2X0z/Glj28uuQFy31lo=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR02MB7981
X-Proofpoint-GUID: PvAPC7OZqD6yPsq0kMdA7hc7aiS4MZnV
X-Proofpoint-ORIG-GUID: PvAPC7OZqD6yPsq0kMdA7hc7aiS4MZnV
X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-01-29_06,2024-01-29_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 lowpriorityscore=0 suspectscore=0 bulkscore=0 clxscore=1015 phishscore=0 malwarescore=0 adultscore=0 impostorscore=0 spamscore=0 mlxlogscore=999 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2401190000 definitions=main-2401290076
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/7Af1nR2K7u6zHkOBnP-6LCX32BA>
Subject: Re: [Json] [Cbor] JSON and int64s - any change in current best practice since I-JSON
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 29 Jan 2024 10:35:35 -0000

Hi Carsten,

Proposed text looks good to me.

I like test vectors, but I agree that they represent a lot of work. I wonā€™t die on that hill or I might end up with the action to create them šŸ˜Š

Jeremy

On 29/01/2024, 10:05, "Carsten Bormann" <cabo@tzi.org> wrote:

WARNING: This email originated from outside of Qualcomm. Please be wary of any links or attachments, and do not enable macros.

On 2024-01-29, at 10:54, Jeremy O'Donoghue <jodonogh@qti.qualcomm.com> wrote:
>
> ā€œNote: Implementors are advised that the built-in numeric parsers in some programming implementations accept only a subset of the floating point syntax defined in [IEEE 754] and used in this document. In particular, care may be required with respect to supporting input with leading and/or trailing zeros.ā€

Thanks!

I combined this with the text already there, streamlined it a bit, and came up with:

https://github.com/cbor-wg/edn-literal/pull/30

Please have a look!

> Might also be good to have a couple of examples which are known to fail with at least some language parsers. At least for myself, the first thing I do in an implementation is to implement all of the examples in an RFC as test cases, so this is an easy way to ensure that implementers catch any issues.

There are some examples in that note; Iā€™m not sure we should do a full-on attempt at defining test vectors in this document though.

GrĆ¼ĆŸe, Carsten