1
0
mirror of https://github.com/Tarrasch/zsh-autoenv.git synced 2024-11-30 10:10:58 +02:00
Commit Graph

14 Commits

Author SHA1 Message Date
Daniel Hahler
468fa71d15
Fix tests: match $CRAMTMP more losely (#78)
Fixes https://github.com/Tarrasch/zsh-autoenv/issues/76.
2017-12-14 00:53:53 +01:00
Rob Speed
7e0d027b21 _autoenv_get_file_upwards: do not dereference symlinks (#73)
This prevents issues where autoenv scripts use $0. When a shell enters the directory holding the autoenv scripts, it works as expected with $0 being the path to the symlink. However, if the shell enters one of its child directories the path to the script is dereferenced, and $0 is instead the path to the symlink's target.

From `man 1 zshexpn`:

> A – Turn a file name into an absolute path as the 'a' modifier does, and then pass  the  result  through  the  realpath(3) library function to resolve symbolic links.

Note: Symlinks are dereferenced elsewhere for authorization, so that behavior is unchanged.
2017-11-02 02:40:45 +01:00
Daniel Hahler
b90d2c4f80 _autoenv_get_file_upwards: handle relative paths
If `$look_from` is `.` the resulting file patch will be relative.
2017-08-11 10:27:20 +02:00
Rob Speed
dfb5648505 Automatically upgrade v1 hashes (SHA-1) to v2 (cksum) (#55)
A new parameter is added to `_autoenv_hash_pair` to specify the version, defaulting to the latest (2). It outputs a `cksum`-based hash for version 2 and `shasum`-based for version 1.
Moves logic to check for an entry in `$AUTOENV_AUTH_FILE` into its own function (`_autoenv_authorized_pair`), as it may need to be called twice.
Modifies `_autoenv_authorized_env_file` to check for v1 entries when v2 fails.

Fixes #53. Alternative implementation to #54.
2017-01-10 12:07:39 +01:00
Daniel Hahler
398b6f4f54 Use cksum instead of sha1sum for checksums (#54)
This provides better performance, but requires you to re-authenticate all files.

Fixes https://github.com/Tarrasch/zsh-autoenv/issues/53.
2017-01-05 01:16:21 +01:00
Daniel Hahler
998c09addd Create path to non-existing auth file (#49)
This changes the tests to have the auth file in a non-existing subdir
always, as with `$HOME/.local/share` not being there already.

Fixes https://github.com/Tarrasch/zsh-autoenv/issues/48.
2016-06-16 01:45:25 +02:00
Daniel Hahler
e68a914487 Change default values: .env => .autoenv.zsh etc
This changes the defaults:
 - AUTOENV_FILE_ENTER:   .env       => .autoenv.zsh
 - AUTOENV_FILE_LEAVE:   .env_leave => .autoenv_leave.zsh

`.env` is usually used only for key-value pairs for environment
settings, e.g. with foreman.  We do not want to interfere with this.

This also renames the setting/variable AUTOENV_ENV_FILENAME to
AUTOENV_AUTH_FILE, and uses the [XDG
spec](http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html#variables)
for the default location.

The new default location for the auth file will be
~/.local/share/autoenv_auth.

When the old setting is used, or the previous default exists, a warning
is given with instructions.

Fixes https://github.com/Tarrasch/zsh-autoenv/issues/31.
Closes https://github.com/Tarrasch/zsh-autoenv/pull/32.
2015-05-22 17:20:06 +02:00
Daniel Hahler
7699fe6aba tests: rename setup.sh to setup.zsh 2015-04-23 16:03:21 +02:00
Daniel Hahler
b3a56f449f Merge pull request #22 from Tarrasch/improve-and-test-zstat-integration
Improve and test zstat integration
2015-01-26 14:08:25 +01:00
Daniel Hahler
5cb689875e tests: abort if setup fails!
Otherwise the user's auth file might get removed.
2015-01-25 19:48:56 +01:00
Daniel Hahler
6fe08c3fde Improve zsh/zstat integration; also make it handle dirs 2015-01-25 19:22:52 +01:00
Daniel Hahler
5655e26d6a Encapsulate the file name in the hash pair for stricter matching
Ref: https://github.com/Tarrasch/zsh-autoenv/pull/13#issuecomment-65559752
2014-12-04 10:35:09 +01:00
Daniel Hahler
13bb443f48 Fix _autoenv_deauthorize with regard to newline handling, add tests 2014-12-04 07:20:44 +01:00
Daniel Hahler
d9ff71ac1d Some more refactoring, adding support for autoenv_source_parent
- use file mtime with "entered" stack
 - fix loading of varstash; look at $functions
 - Refactor stack handling, add tests
 - Refactor `_autoenv_get_file_upwards`, add tests
 - tests: setup: reset AUTOENV_ENV_FILENAME
2014-11-24 20:13:18 +01:00