This is possible since all the commits have been made by me. The code taken from SCLF (which is licensed LGPL-2.1-or-later) can also be included since the LGPL 2.1 is [compatible] with the GPL 3.0. compatible: https://www.gnu.org/licenses/license-list.en.html#LGPLv2.1 Change-Id: I2d274c29378679c489dc667a53b234642c3da817 Reviewed-on: https://cl.tvl.fyi/c/depot/+/5928 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
		
			
				
	
	
		
			20 lines
		
	
	
	
		
			769 B
		
	
	
	
		
			Common Lisp
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
	
		
			769 B
		
	
	
	
		
			Common Lisp
		
	
	
	
	
	
| ;; SPDX-License-Identifier: GPL-3.0-only
 | |
| ;; SPDX-FileCopyrightText: Copyright (C) 2022 by sterni
 | |
| 
 | |
| (in-package :maildir)
 | |
| (declaim (optimize (safety 3)))
 | |
| 
 | |
| (defun list (dir)
 | |
|   "Returns a list of pathnames to messages in a maildir. The messages are
 | |
|   returned in no guaranteed order. Note that this function doesn't fully
 | |
|   implement the behavior prescribed by maildir(5): It only looks at `cur`
 | |
|   and `new` and won't clean up `tmp` nor move files from `new` to `cur`,
 | |
|   since it is strictly read-only."
 | |
|   (flet ((subdir-contents (subdir)
 | |
|            (directory
 | |
|             (merge-pathnames
 | |
|              (make-pathname :directory `(:relative ,subdir)
 | |
|                             :name :wild :type :wild)
 | |
|              dir))))
 | |
|     (mapcan #'subdir-contents '("cur" "new"))))
 | |
| 
 |