--- /dev/null
+[[!comment format=mdwn
+ username="joey"
+ subject="""comment 4"""
+ date="2020-09-29T15:48:52Z"
+ content="""
+Should I reopen this?
+
+Skipping checking ignores seems like a likely approach for you, because
+any url you want to add seems likely to have an extension that is not
+ignored, and it's very unlikely that the filename that addurl picks will be
+ignored either.
+
+I can see two further ways to optimise it...
+
+The ignores check currently runs in the same stage as the download. Making
+the download happen in perform stage and the ignores check and git add
+happen in cleanup would improve parallelization because it would not block
+other downloads on the ignores check.
+
+Or, the ignores could not be checked by git-annex before git add,
+and instead git add be relied on to check, and if it fails,
+just clean up the annex link from the working tree. But the problem with
+that is, it does batch up calls to git add, and so if git add failed, it
+would be difficult to know which file(s) it rejected due to being ignored
+in order to clean them up. Also, I guess git add probably does an
+equivilant amount of work as git check-ignore to check the ignores, so
+at most this would halve that work, and eliminate a little overhead in
+talking to git check-ignore.
+
+Oh hmm, that suggests a third possibility: Run git add -f, since we've
+already checked the ignores, which would probably avoid it doing the ignore
+checking work.
+
+(Another other problem with skipping git check-ignore is it would need
+to download the url before git add checks if it's ignored ...
+but in fact it already does download the file before check-ignore, because
+it needs to determine if youtube-dl should be used, which needs the content
+of the url, and when youtube-dl is used, a different filename will be used.)
+"""]]