aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2016-01-17Break functionality into separate filesGravatar Jon Bernard 7-368/+414
2016-01-17Ignore task filesGravatar Jon Bernard 1-0/+3
2016-01-17Simplify tox configurationGravatar Jon Bernard 1-5/+2
2016-01-15Move implementation and tests back to directoriesGravatar Jon Bernard 5-7/+7
I think keeping the physical separation is helpful, especially as more features get added.
2016-01-15Add initial support for nestingGravatar Jon Bernard 2-8/+14
This feature means to replace what was called 'packages'. The old packages implementation was only one subdirectory lower than the home directory and quite limiting in that regard. Even worse, they had to be configured manually in the configuration file and could not be created from the command line. This approach offers any depth the user specifies because the rule is: you can only add files to the repository, not directories. So if a user adds a directory, the effect will be that each file contained in any portion of that directory will be moved into the repository and a symlink created. This completely removes both manual configuration and link ambiguity because there is always only once choice. The repository is used to maintain the directory structure, but only the leaf nodes (files) are symlinked in the home directory. This also makes it easy to store other non-dotfile files in the repository like wallpapers, fonts, music, or whatever.
2016-01-15Show confirmation on stdout for each successful operationGravatar Jon Bernard 1-4/+19
2016-01-15Improve custom exceptionsGravatar Jon Bernard 2-24/+52
2016-01-14Update unlink verbose messageGravatar Jon Bernard 1-1/+1
2016-01-14Call internal methods after entry verificationGravatar Jon Bernard 1-4/+2
2016-01-13Add failing test for adding a nested dotfileGravatar Jon Bernard 1-0/+8
2016-01-13Fix cli unit test overrideGravatar Jon Bernard 1-4/+7
This was not my first choice, but it works. I need to put this in a fixture so it's not duplicated for every cli test function.
2016-01-13Add stub for recursive dotfile discoveryGravatar Jon Bernard 1-0/+8
2016-01-13Separate dotfile error checking from actionGravatar Jon Bernard 1-14/+30
2016-01-12Update development version stringGravatar Jon Bernard 1-1/+1
2016-01-12Integrate pytest and flake8 into setuptoolsGravatar Jon Bernard 3-1/+14
2016-01-11Add custom exceptions for dotfile validationGravatar Jon Bernard 1-7/+40
2016-01-10Introduce custom exceptions for better error handlingGravatar Jon Bernard 1-10/+27
2016-01-10Mark CLI test as failing for the momentGravatar Jon Bernard 1-18/+2
I've tried a few approaches to overriding the defaults to test the click cli components and so far none of them have worked. Need to revisit this at some point.
2016-01-08Skip install for tox flake8 targetGravatar Jon Bernard 1-0/+1
2016-01-08Cleanup formatting and docstringsGravatar Jon Bernard 1-10/+5
2016-01-08Remove home directory cli optionGravatar Jon Bernard 2-10/+9
2016-01-08Add ignore item to skip repository git filesGravatar Jon Bernard 1-5/+15
2016-01-07Update readme to explain recent changesGravatar Jon Bernard 1-0/+22
2016-01-06Try to create relative symlinks when linkingGravatar Jon Bernard 1-1/+1
2016-01-06Fix tests to match recent changesGravatar Jon Bernard 2-15/+59
2016-01-06Add link scheme for flat repositoryGravatar Jon Bernard 1-28/+90
This commit also includes support for all of the CLI commands. This is for a "flat" repository where dotfiles must be proper files, no directories or files in subdirectories. Support for that is coming and should cover what used to be called "packages" in a more automatic way without requiring configuration file settings. At the moment, this is the bare minimum of useful functionality: flat repository, no 'ignores', no 'externals', no 'packages', and no 'prefixes'. In this way I can make sure I get the object model and abstractions correct before building on it further. This I feel is what the old version suffered from and caused difficulties in maintenance. The above-mentioned features will return in some form as I move through each of them, not to worry. I'd like to see how far I can get without any configuration file before any of that stuff gets added back in.
2016-01-05Rename sync/unsync to link/unlinkGravatar Jon Bernard 2-11/+11
I think this naming is more appropriate and intuitive
2016-01-04Merge list into status and remove verboseGravatar Jon Bernard 2-109/+31
2016-01-04Cleanup verbose status functionGravatar Jon Bernard 1-7/+15
2016-01-04Add verbose status optionGravatar Jon Bernard 2-20/+48
2016-01-04Add test for repository expected nameGravatar Jon Bernard 1-3/+4
2016-01-04Clean up dotfile state functionGravatar Jon Bernard 1-8/+4
2016-01-04Remove unique_suffix function, not neededGravatar Jon Bernard 2-24/+2
2016-01-04Test both nested and non-nested repo directoriesGravatar Jon Bernard 1-2/+2
2016-01-04Update docstringsGravatar Jon Bernard 1-30/+10
2016-01-04Enable use of '-h' for help commandGravatar Jon Bernard 1-1/+1
2016-01-04Nest repository in homedir for testingGravatar Jon Bernard 1-4/+4
There is a bug when the home directory is not a parent of the repository, this will fixed shortly.
2016-01-04Simplify tox flake8 targetGravatar Jon Bernard 1-1/+1
2016-01-04Use click decorator for version optionGravatar Jon Bernard 3-16/+2
2016-01-03Add cli testsGravatar Jon Bernard 2-2/+38
2016-01-03Use test fixtures and some cleanupGravatar Jon Bernard 2-170/+77
2016-01-03Add custom fixtures for testingGravatar Jon Bernard 1-0/+17
2016-01-03Consolidate tests into a single fileGravatar Jon Bernard 9-711/+234
2016-01-03Consolidate new implementation into a single fileGravatar Jon Bernard 10-968/+232
2016-01-02Update repository tests to match recent changesGravatar Jon Bernard 1-106/+29
2016-01-02Update dotfile tests to match recent changesGravatar Jon Bernard 1-64/+66
2016-01-02Simplify dotfile state management logicGravatar Jon Bernard 1-38/+32
2016-01-02Remove dotfile-specific operations from repositoryGravatar Jon Bernard 1-51/+9
These are handled in the CLI and there is no need for repository to be involved.
2016-01-01Implement dotfile state managementGravatar Jon Bernard 5-27/+110
2016-01-01Disable travis email notificationGravatar Jon Bernard 1-0/+3