From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id DBDCF9F8C4 for ; Tue, 7 Nov 2023 08:44:21 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id ACC5F1E59C for ; Tue, 7 Nov 2023 08:43:51 +0100 (CET) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS for ; Tue, 7 Nov 2023 08:43:50 +0100 (CET) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id 6CBB546CC3 for ; Tue, 7 Nov 2023 08:43:50 +0100 (CET) Date: Tue, 7 Nov 2023 08:43:49 +0100 From: Wolfgang Bumiller To: Thomas Lamprecht Cc: Philipp Hufnagl , Proxmox Backup Server development discussion , Lukas Wagner Message-ID: References: <20231023154302.2558918-1-p.hufnagl@proxmox.com> <20231023154302.2558918-2-p.hufnagl@proxmox.com> <54f6b050-02ce-4443-a3f3-e28ee2b875bd@proxmox.com> <69df7927-de20-4301-a785-2a57d53fcf2b@proxmox.com> <1b0eec17-d519-4d80-89f6-e08b9738fcd8@proxmox.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1b0eec17-d519-4d80-89f6-e08b9738fcd8@proxmox.com> X-SPAM-LEVEL: Spam detection results: 0 AWL 0.102 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record T_SCC_BODY_TEXT_LINE -0.01 - Subject: Re: [pbs-devel] [PATCH proxmox-backup 1/3] fix #4315: jobs: modify GroupFilter so include/exclude is tracked X-BeenThere: pbs-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Backup Server development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Nov 2023 07:44:21 -0000 On Wed, Oct 25, 2023 at 05:45:11PM +0200, Thomas Lamprecht wrote: > Am 25/10/2023 um 17:07 schrieb Philipp Hufnagl: > > > > > > On 10/25/23 15:33, Thomas Lamprecht wrote: > >> Am 24/10/2023 um 16:32 schrieb Philipp Hufnagl: > >>> > >>> > >>> On 10/24/23 12:43, Lukas Wagner wrote: > >>> > >>>> Do you have any examples in mind that would be more difficult to > >>>> represent? > >>> > >>> I would like to include all vms from 10 to to 30, but not 17,18 and 20. > >>> > >> > >> How is that more difficult? > >> > >> IMO Lukas proposal seems reasonable, a deterministic remove matches from > >> excludes fromm all matches from includes seems easier to understand, > >> from top of my head. > > > > You would have to do something like > > > > include 10-30 > > exclude 17 > > exclude 18 > > exclude 20 > > > > instead of > > > > include 10-30 > > exclude 17-20 > > include 19 > > > > While the first is easier to understand, the 2nd one allows (in my > > opinion) to build a cleaner solution for complex filtering. > > Easier to understand is *much* cleaner though, any admin that changes > a simple include/exclude filter manually, e.g., reversing the order, > has no idea that the end result is completely different. I disagree that either of them is actually easier, and we already have order dependent include/exclude behavior in `.pxarexcludes` and on the CLI via `--exclude` when creating a backup with proxmox-backup-client. Also, `.gitignore` also works like this, you have exclude and includes in order, the last match wins. This makes it much easier to say things like "exclude 1-100 except 50", which, to me, seems like the most complex case you would want anyway? Which you find easier probably depends on what you see more often, but for consistency's sake it may make more sense to stick to what we already have?