Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1l94V1-0004Jw-FF for psycopg@arkaria.postgresql.org; Mon, 08 Feb 2021 11:14:35 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1l94V0-0008PF-EZ for psycopg@arkaria.postgresql.org; Mon, 08 Feb 2021 11:14:34 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1l94V0-0008P8-41 for psycopg@lists.postgresql.org; Mon, 08 Feb 2021 11:14:34 +0000 Received: from mail1.dalibo.net ([212.83.143.11] helo=mail.dalibo.com) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1l94Ux-0003PF-SG for psycopg@postgresql.org; Mon, 08 Feb 2021 11:14:33 +0000 Received: from [192.168.0.29] (lan31-5-82-234-69-236.fbx.proxad.net [82.234.69.236]) by mail.dalibo.com (Postfix) with ESMTPSA id 58C9C20020; Mon, 8 Feb 2021 12:14:29 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=dalibo.com; s=a; t=1612782869; bh=2MJfK/K9afpvZN4KqKYrwzmpdBTkNb2dnzpyuWuSLS8=; h=Subject:To:References:From:Date:In-Reply-To:From; b=iktptFl/WWkxw6jeohccWaFy5zH8DY8CptT4Glupjh3mmzGE/14MtGyYk0+nUUDQd wbVoaVj68h21s66QIkLzN+HkEjxTIWi6pdtBTvQz7D53sHP+uIpeIFyTa1K7OwCm0F OK1KgQUCKEtO8S1UmDotOq2TcUGB4ogf5f1afDEI= Subject: Re: Latest developments in psycopg3 To: Daniele Varrazzo , psycopg@postgresql.org References: From: Denis Laxalde Message-ID: <4eb4e86a-c813-bb8f-ae93-4f1b9fd46b6b@dalibo.com> Date: Mon, 8 Feb 2021 12:14:27 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk Hello Daniele, Daniele Varrazzo a écrit : > If anyone would like to contribute, in ways other than funding, there > is also fun code to write (strictly typed, async, Cython if you wish) > and you are welcome to get in touch: I am sure there are practical > ways to contribute! I spent a bit of time looking around this last week. The first thing I did was to try out psycopg3 on a (small) project I maintain (pg_activity). Porting from psycopg2 wasn't too hard: - first, I needed the conn-info developments (in progress at the moment) along with recent works on the adaptation system so I did a local merge of master in conn-info branch. - second, I was missing the DictCursor cursor factory that's not (yet?) available in psycopg3, so I had to rewrite part of the code. - after that, tests pass and the application works fine without any further changes (the DictCursor ones are non-negligible though). So, based on that: - It seems to me that the conn-info developments work fine (also looked at the commits, which look fine as well to me): what needs to be done here? Any help needed? - There appears to be no card about dictcursor on the project board. What's the plan (and priority) for that (if any)? Then, following your idea to implement a django backend, I was wondering if doing the same for sqlalchemy would be a good thing to work on now? I'm also curious about the "strictly typed" thing you wrote above. What do you have in mind more specifically? Denis