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 1nDVC0-0002U9-RX for pgsql-www@arkaria.postgresql.org; Fri, 28 Jan 2022 17:37:49 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nDVBz-0006Wl-OP for pgsql-www@arkaria.postgresql.org; Fri, 28 Jan 2022 17:37:47 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nDVBz-0006Wc-HE for pgsql-www@lists.postgresql.org; Fri, 28 Jan 2022 17:37:47 +0000 Received: from host-213-189-163-85.dynamic.voo.be ([213.189.163.85] helo=ploudseeker.com) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nDVBt-00006F-0m for pgsql-www@lists.postgresql.org; Fri, 28 Jan 2022 17:37:46 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cmatte.me; s=myselector; t=1643391457; bh=aixhviEiG4n7k9seEJpsFahRDh/A0z3jcaATtKdQ1VA=; h=Date:To:From:Subject; b=BiI+jxdQnVeScbf0g4t8McVd+pcqwQAqIudwv6p8ffsbYgbDmVK7W5+3++4thUwgM 4uRjuL9yyHLaf5g0WaShRBl10UU6JmfgDiMgWyyv8IXytKx1VehIjvZO/apUsjtvMK vHHZk4zUHqPSm4Pc2uGIHth0MtdvtuqylgcrlVBOwGyejBdu3TiGZJuGegTT4GYz9Y Qdrs24oodeyCf2d/XDEAu0UNzenc9/BN4DKE3pzBWhexGzj3cdcwqYkfUHob6M3sP/ ZWqFahbaLwcEn8xd1vmSBT7ZFJGN11QWMnfQVSP1jAifVRJaAHTDz7NXF4GBDsWjvn TXbHZogISzKHw== Content-Type: multipart/mixed; boundary="------------LfK65YM0eKiV0RaYAeV5iUj5" Message-ID: <1d060463-e562-7783-decd-b5a7f3c4c06c@cmatte.me> Date: Fri, 28 Jan 2022 18:37:37 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 To: PostgreSQL WWW Content-Language: en-US From: =?UTF-8?Q?C=c3=a9lestin_Matte?= Subject: [PATCH] pgarchives: pglister_sync: import lists with subscriber_access set to True List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------LfK65YM0eKiV0RaYAeV5iUj5 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit pglister_sync.py is a script used to synchronize things between pglister and pgarchives: lists, subscribers etc. subscriber_access is not set in pglister_sync's query, and is set to null=False in Django's model. As a consequence, pglister_sync fails to add new lists: Traceback (most recent call last): File "/srv/pgarchives/local/loader/pglister_sync.py", line 68, in 'groupname': l['group']['groupname'], psycopg2.errors.NotNullViolation: null value in column "subscriber_access" violates not-null constraint DETAIL: Failing row contains (8, test-pglister-sync, test-pglister-sync, , t, 1, null). I don't know if there is a way to configure postgres to use the default value , but I think it would be wiser to explicitly set this variable in pglister_sync.py. By default, subscriber_access is set to False and there is no way to modify that within the web interface. As a consequence, access to lists on private servers is restricted to superusers, and there is no easier way to modify that than to edit the database manually. It seems more logical to me that this value be set to True by default, as access can still be moderated to avoid lists being publicly available. That said, it may be better to have a way to modify that within the web interface in pglister. -- Célestin Matte --------------LfK65YM0eKiV0RaYAeV5iUj5 Content-Type: text/x-patch; charset=UTF-8; name="0001-pglister_sync-import-lists-with-subscriber_access-se.patch" Content-Disposition: attachment; filename*0="0001-pglister_sync-import-lists-with-subscriber_access-se.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA2ZTkzZjBlM2Q1YWUyOTdhM2NlNjFlMjM4NzA4YjcyMzVhY2Y5MDg0IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Qz1DMz1BOWxlc3Rpbj0yME1hdHRl Pz0gPGdpdGxhYkBjbWF0dGUubWU+CkRhdGU6IE1vbiwgMSBOb3YgMjAyMSAyMDo0Mzo1MSAr MDEwMApTdWJqZWN0OiBbUEFUQ0hdIHBnbGlzdGVyX3N5bmM6IGltcG9ydCBsaXN0cyB3aXRo IHN1YnNjcmliZXJfYWNjZXNzIHNldCB0bwogVHJ1ZQoKT3RoZXJ3aXNlLCB0aGVyZSBpcyBu byBpbi1hcHAgd2F5IHRvIHNldCBpdAotLS0KIGxvYWRlci9wZ2xpc3Rlcl9zeW5jLnB5IHwg MiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpk aWZmIC0tZ2l0IGEvbG9hZGVyL3BnbGlzdGVyX3N5bmMucHkgYi9sb2FkZXIvcGdsaXN0ZXJf c3luYy5weQppbmRleCBmOTVkMzY5Li5kZDViZWM0IDEwMDc1NQotLS0gYS9sb2FkZXIvcGds aXN0ZXJfc3luYy5weQorKysgYi9sb2FkZXIvcGdsaXN0ZXJfc3luYy5weQpAQCAtNjAsNyAr NjAsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgICAgICAgICAgJ25hbWUn OiBsWydsaXN0bmFtZSddLAogICAgICAgICB9KQogICAgICAgICBpZiBjdXJzLnJvd2NvdW50 ID09IDA6Ci0gICAgICAgICAgICBjdXJzLmV4ZWN1dGUoIklOU0VSVCBJTlRPIGxpc3RzIChs aXN0bmFtZSwgc2hvcnRkZXNjLCBkZXNjcmlwdGlvbiwgYWN0aXZlLCBncm91cGlkKSBTRUxF Q1QgJShuYW1lKXMsICUobmFtZSlzLCAlKGRlc2MpcywgJ3QnLCBncm91cGlkIEZST00gbGlz dGdyb3VwcyBXSEVSRSBncm91cG5hbWU9JShncm91cG5hbWUpcyBSRVRVUk5JTkcgbGlzdGlk LCBsaXN0bmFtZSIsIHsKKyAgICAgICAgICAgIGN1cnMuZXhlY3V0ZSgiSU5TRVJUIElOVE8g bGlzdHMgKGxpc3RuYW1lLCBzaG9ydGRlc2MsIGRlc2NyaXB0aW9uLCBhY3RpdmUsIGdyb3Vw aWQsIHN1YnNjcmliZXJfYWNjZXNzKSBTRUxFQ1QgJShuYW1lKXMsICUobmFtZSlzLCAlKGRl c2MpcywgJ3QnLCBncm91cGlkLCAndCcgRlJPTSBsaXN0Z3JvdXBzIFdIRVJFIGdyb3VwbmFt ZT0lKGdyb3VwbmFtZSlzIFJFVFVSTklORyBsaXN0aWQsIGxpc3RuYW1lIiwgewogICAgICAg ICAgICAgICAgICduYW1lJzogbFsnbGlzdG5hbWUnXSwKICAgICAgICAgICAgICAgICAnZGVz Yyc6IGxbJ2xvbmdkZXNjJ10sCiAgICAgICAgICAgICAgICAgJ2dyb3VwbmFtZSc6IGxbJ2dy b3VwJ11bJ2dyb3VwbmFtZSddLAotLSAKMi4zNC4xCgo= --------------LfK65YM0eKiV0RaYAeV5iUj5--