1
0
mirror of https://github.com/TheLocehiliosan/yadm synced 2026-03-02 03:49:29 +00:00
Commit Graph

243 Commits

Author SHA1 Message Date
Tim Byrne
d245f633bf Remove invalid linked alternates (#65) 2019-04-10 09:23:34 -05:00
Tim Byrne
a2cc970dd6 Remove unnecessary Git invocations
`git ls-files` was being called multiple times during the processing of
alternates. This is now run once, and kept in an array.
2019-04-09 07:53:27 -05:00
Tim Byrne
093fc24b1b Test that links are removed for invalid alternates (#65) 2019-04-05 08:58:59 -05:00
Tim Byrne
2375a0955b Standardize sort order
Prevent localizations from interfering with sorting order.
2019-04-05 08:58:30 -05:00
Tim Byrne
0c6be5e398 Fix bug with alternate linked directories
Previously the tracked files were sorted, and then the files and their
parent directories were considered for possible alternates. Depending on
the length of directories and names of files, inconsistencies would
occur because the directory separator (/) would be part of the sorting.

To fix this, a unique list of tracked files and their parent directories
are sorted into a single list which is processed.
2019-04-05 08:58:30 -05:00
Tim Byrne
fb1181c8a9 Add tests for directory alternates
While this feature was added back in version 1.05, tests were never
added for it. These tests have identified bugs in the directory
alternates.
2019-04-05 08:58:22 -05:00
Tim Byrne
2aa1710214 Remove superfluous ; in comments 2019-03-24 17:22:11 -05:00
Tim Byrne
58edf313aa Process .yadm/encrypt in sorted order 2019-03-24 17:05:11 -05:00
Tim Byrne
2848ca2d1d Update contributing guide with website info (#146) 2019-03-24 15:48:35 -05:00
Tim Byrne
282b772ce5 Add yamllint to testenv
Also organize pip install command so software can be added/removed
easier.
2019-03-24 14:27:21 -05:00
Tim Byrne
826f9bc09e Validate yaml files with yamllint 2019-03-21 23:05:57 -05:00
Tim Byrne
ca2f93146d Add shields.io badges for website branches 2019-03-20 02:06:50 -05:00
Tim Byrne
9b1ac4b76b Add shields.io badge for Arch Linux 2019-03-20 00:37:32 -05:00
Tim Byrne
eb7462061e Allocate a pseudo-TTY
This will help color shows up in travis-ci logs.
2019-03-19 19:34:17 -05:00
Tim Byrne
af6febc598 Use language minimal
`bash` is actually an alias for `minimal` in travis-ci.
2019-03-19 17:37:15 -05:00
Tim Byrne
0ff508d046 Reduce travis-ci sudo requirement
`sudo` is not actually required.
2019-03-19 17:37:03 -05:00
Tim Byrne
402b57880d Update GPLv3 LICENSE information
This does NOT change the licensing.
2019-03-14 18:25:02 -05:00
Tim Byrne
bd86b66ea8 Update README
* Add shield.io badges
* Add brief description
* Change website to yadm.io
2019-03-14 18:22:02 -05:00
Tim Byrne
f3e4c7d140 Add contribution guideline 2019-03-14 08:22:16 -05:00
Tim Byrne
19c6eb6009 Add GitHub templates 2019-03-13 17:32:29 -05:00
Tim Byrne
b443bbede2 Add contrib/hooks 2019-03-12 22:07:25 -05:00
Tim Byrne
abcc201894 Improve Makefile usage info 2019-03-11 23:20:40 -05:00
Tim Byrne
27859af307 Add make target "scripthost"
Hopefully this target will help others demonstrate problems in a
reproducible way.
2019-03-01 08:07:30 -06:00
Tim Byrne
d32e63fc92 Split packages onto separate lines
This will make it easier to see the changes in the dependencies included
in the yadm/testbed image.
2019-03-01 08:07:30 -06:00
Tim Byrne
7e7d199721 Add code of conduct
Adapted from the www.contributor-covenant.org
2019-02-27 08:12:43 -06:00
Tim Byrne
c3a9b62189 Remove BATS-based tests 2019-02-25 17:08:07 -06:00
Tim Byrne
23e4b38ef2 Update Makefile
* Add usage/help
* Check for dependencies in testing targets
* Remove bats-based targets
* Change location of testenv
2019-02-25 16:32:34 -06:00
Tim Byrne
0f2039f79d Create a flag to identify when running inside testbed 2019-02-25 16:30:05 -06:00
Tim Byrne
e7f9616b39 Rewrite testing system (#119)
The new test system is written with py.test. These tests are more
comprehensive, run faster by an order of magnitude, and are far more
maintainable. The tests themselves conform to PEP8.
2019-02-20 07:48:25 -06:00
Tim Byrne
09a018ea5a Release 1.12.0
Update version number and update documentation

* Add basic Zsh completion (#71, #79)
* Support directories in `.yadm/encrypt` (#81, #82)
* Support exclusions in `.yadm/encrypt` (#86)
* Improve portability with printf (#87)
* Eliminate usage of `eval` and `ls`
1.12.0
2017-10-24 22:12:23 -05:00
Tim Byrne
8af5425dc3 Capitalize headings 2017-10-24 07:40:40 -05:00
Tim Byrne
805d7647a8 Update documentation to reflect new .yadm/encrypt functionality 2017-10-24 07:38:13 -05:00
Tim Byrne
db9c00287b Fix contrib target 2017-10-16 17:36:14 -05:00
Tim Byrne
75e0bf94bb Merge pull request #91 from luzat/fix-whitespace 2017-10-16 17:24:22 -05:00
Thomas Luzat
ac2aed9ab4 Indentation: Convert tab to space 2017-10-09 15:21:32 +02:00
Tim Byrne
d411db9f6f Consolidate cd to YADM_WORK 2017-09-22 12:30:24 -05:00
Tim Byrne
c24906ec10 Handle exclusions in .yadm/encrypt (#86) 2017-09-21 14:21:23 -05:00
Tim Byrne
2517e4b4ac Add test-case for exclusions in .yadm/encrypt (#86) 2017-09-21 14:21:22 -05:00
Tim Byrne
cc30dfc24b Re-number unit tests 2017-09-16 09:33:12 -05:00
Tim Byrne
f23bdb8147 Remove last use of LS_PROGRAM
Globs are not determined by an `eval` of `ls` anymore. The only other
use of `ls` can be replaced with a simple `printf`.
2017-09-16 09:33:12 -05:00
Tim Byrne
b78bb1eef4 Eliminate the use of eval
`eval` has always been used to process the globs in `.yadm/encrypt`.
This is being removed, as there is a risk of executing "dirty" data
found in `.yadm/encrypt`.

Caveats of this change:
  * Brace and tilde expansion will no longer work in `.yadm/encrypt`
  * Paths with spaces must not be quoted anymore
2017-09-16 09:32:38 -05:00
Tim Byrne
57866714c4 Replace echo with printf (#87) 2017-09-15 18:35:41 -05:00
Tim Byrne
abf6cd1c4c Merge pull request #81 from japm48/patch-1
Add support for directories in .yadm/encrypt
2017-09-04 13:22:21 -05:00
Tim Byrne
df952094a1 Add test case for supporting directories in .yadm/encrypt (#81) 2017-09-04 13:19:04 -05:00
Tim Byrne
e09b5a551e Declare PHONY targets in Makefile 2017-09-04 11:59:06 -05:00
Tim Byrne
eef9bfa2f7 Add a testhost target
This target runs Bash in an ephemeral docker container with the HEAD
revision of yadm mounted at /bin/yadm. You can override the version
using any "commit-ish". Eg. `target=1.06 make testhost`
2017-09-04 11:59:06 -05:00
Tim Byrne
f0886ef622 Merge pull request #79 from Mellbourn/zsh-completion
* Unified the naming between bash and zsh
* Cleaned up indentations, line endings
* Tweaked documentation
2017-08-24 18:35:17 -05:00
Tim Byrne
5d4f3aac5b Release 1.11.1
Update version number and update documentation

* Create private dirs prior to merge (#74)
1.11.1
2017-08-23 07:28:35 -05:00
Tim Byrne
ebc90bfc98 Create secured private dirs (#74)
Directories are created prior to merge during clone, and prior to any
Git command run.

This directly addresses CVE-2017-11353.

When cloning a repo which includes data in a .ssh or .gnupg directory,
if those directories do not exist at the time of cloning, yadm will
create the directories with mask 0700 prior to merging the fetched data
into the work-tree.

When running a Git command and .ssh or .gnupg directories do not exist,
create those directories with mask 0700 prior to running the Git
command. However, do not create those directories if
yadm.auto-private-dirs is false.
2017-08-22 21:28:07 -05:00
japm48
8e3a5dbf47 Fix for issue #81
See details in #81
2017-08-20 06:55:59 +02:00