git-annex/Assistant
Joey Hess 9eb10caa27
Some optimisations to string splitting code.
Turns out that Data.List.Utils.split is slow and makes a lot of
allocations. Here's a much simpler single character splitter that behaves
the same (even in wacky corner cases) while running in half the time and
75% the allocations.

As well as being an optimisation, this helps move toward eliminating use of
missingh.

(Data.List.Split.splitOn is nearly as slow as Data.List.Utils.split and
allocates even more.)

I have not benchmarked the effect on git-annex, but would not be surprised
to see some parsing of eg, large streams from git commands run twice as
fast, and possibly in less memory.

This commit was sponsored by Boyd Stephen Smith Jr. on Patreon.
2017-01-31 19:06:22 -04:00
..
Alert remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Install avoid warnings about not exported System.Directory.isSymbolicLink 2016-04-28 15:18:11 -04:00
Pairing switch away from deprecated interface 2016-09-05 14:39:44 -04:00
Threads webapp: full wormhole pairing UI (untested) 2016-12-27 16:41:35 -04:00
Types remove xmpp support 2016-11-14 14:53:08 -04:00
WebApp improve description of password prompting 2016-12-28 16:07:49 -04:00
Alert.hs fix tricky warning with ghc 8 2016-11-15 18:51:07 -04:00
BranchChange.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Changes.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Commits.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Common.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
CredPairCache.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
DaemonStatus.hs remove xmpp support 2016-11-14 14:53:08 -04:00
DeleteRemote.hs get, move, copy, mirror: Added --failed switch which retries failed copies/moves 2016-08-03 12:37:12 -04:00
Drop.hs add VerifiedCopy data type 2015-10-08 16:55:11 -04:00
Fsck.hs Relicense 5 source files that are not part of the webapp from AGPL to GPL. 2016-11-21 23:46:59 -04:00
Gpg.hs Relicense 5 source files that are not part of the webapp from AGPL to GPL. 2016-11-21 23:46:59 -04:00
Install.hs make assistant not write wrappers when GIT_ANNEX_PACKAGE_INSTALL is set 2016-04-27 14:05:46 -04:00
MakeRemote.hs Pass the various gnupg-options configs to gpg in several cases where they were not before. 2016-05-23 17:03:20 -04:00
Monad.hs remove xmpp support 2016-11-14 14:53:08 -04:00
NamedThread.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Pairing.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Pushes.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
RemoteControl.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Repair.hs Relicense 5 source files that are not part of the webapp from AGPL to GPL. 2016-11-21 23:46:59 -04:00
RepoProblem.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Restart.hs Relicense 5 source files that are not part of the webapp from AGPL to GPL. 2016-11-21 23:46:59 -04:00
ScanRemotes.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Ssh.hs Some optimisations to string splitting code. 2017-01-31 19:06:22 -04:00
Sync.hs mocked up wormhole pairing interface in webapp 2016-12-24 16:55:36 -04:00
TransferQueue.hs get, move, copy, mirror: Added --failed switch which retries failed copies/moves 2016-08-03 12:37:12 -04:00
TransferrerPool.hs Always use filesystem encoding for all file and handle reads and writes. 2016-12-24 14:46:31 -04:00
TransferSlots.hs get, move, copy, mirror: Added --failed switch which retries failed copies/moves 2016-08-03 12:37:12 -04:00
Unused.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Upgrade.hs Relicense 5 source files that are not part of the webapp from AGPL to GPL. 2016-11-21 23:46:59 -04:00
WebApp.hs unified AuthToken type between webapp and tor 2016-11-22 14:18:34 -04:00