ghc 8 added backtraces on uncaught errors. This is great, but git-annex was using error in many places for a error message targeted at the user, in some known problem case. A backtrace only confuses such a message, so omit it. Notably, commands like git annex drop that failed due to eg, numcopies, used to use error, so had a backtrace. This commit was sponsored by Ethan Aubin.
		
			
				
	
	
		
			41 lines
		
	
	
	
		
			1 KiB
			
		
	
	
	
		
			Haskell
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
	
		
			1 KiB
			
		
	
	
	
		
			Haskell
		
	
	
	
	
	
{- git-annex command
 | 
						||
 -
 | 
						||
 - Copyright 2012 Joey Hess <id@joeyh.name>
 | 
						||
 -
 | 
						||
 - Licensed under the GNU GPL version 3 or higher.
 | 
						||
 -}
 | 
						||
 | 
						||
module Command.AddUnused where
 | 
						||
 | 
						||
import Logs.Location
 | 
						||
import Command
 | 
						||
import Annex.Ingest
 | 
						||
import Command.Unused (withUnusedMaps, UnusedMaps(..), startUnused)
 | 
						||
 | 
						||
cmd :: Command
 | 
						||
cmd = notDirect $ 
 | 
						||
	command "addunused" SectionMaintenance 
 | 
						||
		"add back unused files"
 | 
						||
		(paramRepeating paramNumRange) (withParams seek)
 | 
						||
 | 
						||
seek :: CmdParams -> CommandSeek
 | 
						||
seek = withUnusedMaps start
 | 
						||
 | 
						||
start :: UnusedMaps -> Int -> CommandStart
 | 
						||
start = startUnused "addunused" perform
 | 
						||
	(performOther "bad")
 | 
						||
	(performOther "tmp")
 | 
						||
 | 
						||
perform :: Key -> CommandPerform
 | 
						||
perform key = next $ do
 | 
						||
	logStatus key InfoPresent
 | 
						||
	addLink file key Nothing
 | 
						||
	return True
 | 
						||
  where
 | 
						||
	file = "unused." ++ key2file key
 | 
						||
 | 
						||
{- The content is not in the annex, but in another directory, and
 | 
						||
 - it seems better to error out, rather than moving bad/tmp content into
 | 
						||
 - the annex. -}
 | 
						||
performOther :: String -> Key -> CommandPerform
 | 
						||
performOther other _ = giveup $ "cannot addunused " ++ other ++ "content"
 |