From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by sourceware.org (Postfix) with ESMTPS id 745E33839DFA for ; Wed, 7 Sep 2022 06:22:59 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 745E33839DFA Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1662531779; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type; bh=BCuopsIetXip3gt0/kMfccopzOGwWzJQuPBl5hwjGl4=; b=COIiAocFawTk/zMxu1L/2r/rlwmGS+EEVhm/cLX4/+fORBi3uC+o5UhI3n1xl09iIbasp4 Y1xAACuuAlMTuL3DmSh9LFjIJyfhgVR4leIuthSdar2s4RMveMggvByxdnMJgbtLL/2DtK tHOebm57IpOLX4HA14KfCi/qiEiTHOg= Received: from mail-ot1-f70.google.com (mail-ot1-f70.google.com [209.85.210.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-615--V74-0wHNWqhsFre26WGqg-1; Wed, 07 Sep 2022 02:22:52 -0400 X-MC-Unique: -V74-0wHNWqhsFre26WGqg-1 Received: by mail-ot1-f70.google.com with SMTP id j19-20020a9d7393000000b00639226c791fso7566711otk.6 for ; Tue, 06 Sep 2022 23:22:52 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date; bh=BCuopsIetXip3gt0/kMfccopzOGwWzJQuPBl5hwjGl4=; b=YQVLQtlTtC7n2IZBgiHGgsncTEKnmy/QFQHP+mVe5U/Qz7A11CkrVBEIXzowS+QSwv 7H8WITKAcmejfZPXZPV6jNmjxLb8J2qhu66P76G2dqAQvF3j5j6ZbOfWyfSGecJdy8At etSgUBT87OKKEyY3hbBbUgvhIDjPBQ1rIs72xser7XNQ13F8lBLRLGaOfZ2lp4DeQT1R wJ/4sAac2YRV/3GAnxSPb6SdfRM1b9/DzC9PGFmQDA/eAr4+iMz3vTrhH02MMsqlhe16 EmOxPLtPe7imJLHf5HwYZajqbXTnuBUVjxDH6PKeqJGFosEFoc3ulafYo3XWaVn2Hmyu sFyA== X-Gm-Message-State: ACgBeo0Gp+EgkroGDkuuFdle6YolAPoCOri1F2PLurxb+VUlejTUZWmx LH98A/+vgP4F+6209xUa/0yIIvsoCLrsRXGAfLR0NNG5+uqkYXUS+vdj2pWJoalhf5QWXocIpJW sPC2goGKCYmOVcX0XlbbVwW8= X-Received: by 2002:a05:6870:a997:b0:11c:5a86:e11a with SMTP id ep23-20020a056870a99700b0011c5a86e11amr967310oab.270.1662531771923; Tue, 06 Sep 2022 23:22:51 -0700 (PDT) X-Google-Smtp-Source: AA6agR4AsuzxKndSAUmuLug3avE4GNAgIiZXwPaQiPGx07URv5PERw/2BtCuZ4IJZT+5MIcO7GGdPCxvx2PGD5RG3H8= X-Received: by 2002:a05:6870:a997:b0:11c:5a86:e11a with SMTP id ep23-20020a056870a99700b0011c5a86e11amr967303oab.270.1662531771639; Tue, 06 Sep 2022 23:22:51 -0700 (PDT) MIME-Version: 1.0 From: Ulrich Drepper Date: Wed, 7 Sep 2022 08:22:41 +0200 Message-ID: Subject: [RFC] database with API information To: Ulrich Drepper via Gcc X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/alternative; boundary="000000000000ad42ef05e81057e1" X-Spam-Status: No, score=-5.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --000000000000ad42ef05e81057e1 Content-Type: text/plain; charset="UTF-8" I talked to Jonathan the other day about adding all the C++ library APIs to the name hint file now that the size of the table is not really a concern anymore. Jonathan mentioned that he has to create and maintain a similar file for the module support. It needs to list all the exported interfaces and this is mostly a superset of the entries in the hint table. Instead of duplicating the information it should be kept in one place. Neither file itself is a natural fit because the additional information needed (e.g., the standard version information for the name hint table) is not needed in the other location. Hence, let's use a simple database, a CSV file for simplicity, and generate both files from this. Easily done, I have an appropriate script and a CSV file with the information of both Jonathan's current export file and the current state of the name hint table. The only detail that keeps me from submitting this right now is the way the script is implemented. This is just a natural fit for a Python script. The default installation comes with a csv module and there are nice ways to adjust and output boilerplate headers like those needed in those files. It would be possible to create separate awk scripts (there is only one Python script) but it'll be rather ugly and harder to maintain than the Python version. Of course the problem is: I don't think that there is yet any maintainer tool written in Python (except some release engineering tools). The question is therefore: is it time to lift this restriction? I cannot today imagine any machine capable of serving a gcc developer which doesn't also have a Python implementation. As long as there is no dependency on exotic modules I doubt that anything will break. Opinions? --000000000000ad42ef05e81057e1--