2020-01-07 09:03:13 -05:00
|
|
|
# Changelog
|
|
|
|
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
|
|
|
|
## [Unreleased]
|
|
|
|
|
2022-01-18 20:34:36 -05:00
|
|
|
### Added
|
|
|
|
|
|
|
|
- `check-dumpfile` action. It runs in the build, install and update actions, and checks if a
|
|
|
|
new completion configuration needs to be dumped. It's more powerful than `compinit`, which
|
|
|
|
just checks if the number of completion functions and the Zsh version changed. The
|
|
|
|
`check-dumpfile` action also checks if the actual list of completion functions changed. It's
|
|
|
|
intended to be used with `compinit -C`, so no checks are done during the shell startup.
|
2021-11-06 18:04:47 -04:00
|
|
|
|
2022-01-11 22:51:06 -05:00
|
|
|
## [1.7.0] - 2022-01-12
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
- The output of `zimfw init` to be friendlier to the terminal startup screen
|
|
|
|
when called without `-q`.
|
|
|
|
- Only compile scripts via the `zimfw` tool after actions where scripts can
|
|
|
|
change (build, install, update, upgrade).
|
|
|
|
- Move compilation of the completion dumpfile to the completion module,
|
|
|
|
[here](https://github.com/zimfw/completion/blob/9386a76eac3f55b1c04d57d26238f725b4b3ba25/init.zsh#L10-L11).
|
|
|
|
- Don't compile user Zsh startup scripts anymore
|
|
|
|
(See [#450](https://github.com/zimfw/zimfw/pull/450)). This means you can:
|
|
|
|
- either manually delete the compiled files, as they won't be updated by Zim
|
|
|
|
anymore (recommended):
|
|
|
|
```
|
|
|
|
for zfile in ${ZDOTDIR:-${HOME}}/.z(shenv|profile|shrc|login|logout); do
|
|
|
|
rm -f ${zfile}.zwc(|.old)(N)
|
|
|
|
done
|
|
|
|
```
|
|
|
|
- or add the following to your .zlogin so Zsh startup scripts continue to be
|
|
|
|
compiled:
|
|
|
|
```diff
|
|
|
|
+for zfile in ${ZDOTDIR:-${HOME}}/.z(shenv|profile|shrc|login|logout); do
|
|
|
|
+ if [[ ! ${zfile}.zwc -nt ${zfile} ]] zcompile -R ${zfile}
|
|
|
|
+done
|
|
|
|
+unset zfile
|
|
|
|
```
|
|
|
|
|
|
|
|
### Deprecated
|
|
|
|
- The login_init.zsh script, which is now empty. This means you can safely
|
|
|
|
remove the following line from your .zlogin:
|
|
|
|
```diff
|
|
|
|
-source ${ZIM_HOME}/login_init.zsh -q &!
|
|
|
|
```
|
|
|
|
|
2021-11-21 14:41:25 -05:00
|
|
|
## [1.6.2] - 2021-11-21
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
- Force local zsh emulation options, so the code is not broken by unexpected
|
|
|
|
option changes by the user.
|
|
|
|
|
2021-11-08 12:03:49 -05:00
|
|
|
## [1.6.1] - 2021-11-08
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
- Missing line break before showing git log when using the git tool to update.
|
|
|
|
|
2021-11-06 18:04:47 -04:00
|
|
|
## [1.6.0] - 2021-11-06
|
|
|
|
|
2021-09-19 14:37:13 -04:00
|
|
|
### Added
|
2021-09-21 09:27:56 -04:00
|
|
|
- `list` action. Using it with `-v` also shows the current details for all
|
2021-09-19 14:37:13 -04:00
|
|
|
modules.
|
|
|
|
|
2021-09-21 17:36:32 -04:00
|
|
|
### Changed
|
|
|
|
- Be quieter and don't output warnings when `-q` is provided.
|
2021-11-06 18:04:47 -04:00
|
|
|
- Be more verbose when `-v` is provided: show skipped external and frozen
|
|
|
|
modules with the install and update actions.
|
|
|
|
- Show warning instead of error when module was not installed with the tool
|
|
|
|
currently in use.
|
2021-09-26 20:47:44 -04:00
|
|
|
- Manually setting any `zmodule` initialization option will disable all the
|
|
|
|
default values from the other initialization options, so only user-provided
|
|
|
|
values are used in this case. I.e. it's either all automatic, or all manual.
|
2021-10-26 12:15:40 -04:00
|
|
|
- Also install new modules when starting a new shell (via `zimfw init`, that
|
|
|
|
is sourced in .zshrc).
|
2021-09-21 17:36:32 -04:00
|
|
|
|
2021-08-26 19:12:39 -04:00
|
|
|
### Fixed
|
2021-09-19 14:37:13 -04:00
|
|
|
- Error in `zimfw update` with the `git` tool when module directory is under a
|
|
|
|
symlinked directory.
|
|
|
|
- Warning when `WARN_CREATE_GLOBAL` is set and `ZIM_HOME` is not.
|
2021-09-20 22:14:12 -04:00
|
|
|
- "zsh: command not found: zmodule" when trying to run `zmodule` from the shell.
|
|
|
|
Show a more informative error instead.
|
2021-09-19 14:37:13 -04:00
|
|
|
- Don't try to install or update external modules.
|
2021-03-19 19:44:53 -04:00
|
|
|
|
2021-08-10 11:38:01 -04:00
|
|
|
## [1.5.0] - 2021-08-10
|
2021-08-10 10:56:25 -04:00
|
|
|
|
|
|
|
### Added
|
2021-08-26 19:12:39 -04:00
|
|
|
- Option to use the new `degit` tool in `zmodule`, that is able to install and
|
|
|
|
update modules from GitHub without requiring `git`. Modules are installed
|
|
|
|
faster and take less disk space when using this tool. It can be set as the
|
|
|
|
default with `zstyle ':zim:zmodule' use 'degit'`.
|
2021-08-10 10:56:25 -04:00
|
|
|
|
|
|
|
### Fixed
|
|
|
|
- Force `core.autocrlf=false` when doing `git clone`.
|
|
|
|
(See [#404](https://github.com/zimfw/zimfw/issues/404))
|
|
|
|
- Allow uninstalling modules with custom names that have a slash.
|
|
|
|
|
|
|
|
|
2021-03-19 19:44:53 -04:00
|
|
|
## [1.4.3] - 2021-03-19
|
|
|
|
|
2021-03-16 18:04:40 -04:00
|
|
|
### Fixed
|
|
|
|
- Prefer the prezto module format when using defaults to initialize a module.
|
2021-03-19 19:44:53 -04:00
|
|
|
This is the format we use in our Zim framework modules. It's not well
|
|
|
|
documented anywhere officially, but in short words a prezto module can have:
|
2021-03-16 18:04:40 -04:00
|
|
|
* a `functions` subdirectory that is added to the fpath by the framework,
|
|
|
|
* files inside the `functions` subdirectory that are autoloaded by the
|
2021-03-19 19:44:53 -04:00
|
|
|
framework (except for those with names matching `_*` or `prompt_*_setup`),
|
2021-03-16 18:04:40 -04:00
|
|
|
* an `init.zsh` file that is sourced by the framework.
|
2021-02-19 15:26:10 -05:00
|
|
|
|
|
|
|
## [1.4.2] - 2021-02-19
|
|
|
|
|
2021-02-19 15:17:10 -05:00
|
|
|
### Fixed
|
2021-02-19 15:26:10 -05:00
|
|
|
- "Not a valid ref: refs/remotes/origin/main" error in `zimfw update`, when the
|
|
|
|
repository's default branch was renamed to main.
|
2021-02-17 18:28:24 -05:00
|
|
|
|
|
|
|
## [1.4.1] - 2021-02-17
|
|
|
|
|
2021-02-17 17:51:22 -05:00
|
|
|
### Fixed
|
2021-02-19 15:26:10 -05:00
|
|
|
- Correctly get the repository's default branch in `zimfw update`. The related
|
|
|
|
change in version 1.4.0 actually broke updating the modules, as new changes
|
|
|
|
stopped being fetched.
|
2021-01-07 13:41:35 -05:00
|
|
|
|
|
|
|
## [1.4.0] - 2021-01-07
|
|
|
|
|
2020-11-07 14:39:30 -05:00
|
|
|
### Added
|
2020-10-26 20:32:25 -04:00
|
|
|
- Prompt before uninstalling modules, unless `-q` is set.
|
2021-01-02 18:40:58 -05:00
|
|
|
- Show build date in info.
|
2020-08-01 10:39:07 -04:00
|
|
|
|
2020-11-07 14:39:30 -05:00
|
|
|
### Fixed
|
2021-01-07 13:41:35 -05:00
|
|
|
- Show error when no parameter is provided to `-c|--cmd` in `zmodule`.
|
2021-02-19 15:26:10 -05:00
|
|
|
- Use repository's default branch instead of hardcoding the default to `master`
|
|
|
|
in `zimfw update`, when no branch is specified in `zmodule`.
|
2020-11-07 14:39:30 -05:00
|
|
|
|
2020-08-01 10:39:07 -04:00
|
|
|
## [1.3.2] - 2020-08-01
|
|
|
|
|
2020-07-31 22:03:47 -04:00
|
|
|
### Fixed
|
|
|
|
- Compiled files must also be cleaned from modules defined with absolute paths.
|
2020-07-24 11:30:19 -04:00
|
|
|
|
|
|
|
## [1.3.1] - 2020-07-24
|
|
|
|
|
2020-07-23 22:49:39 -04:00
|
|
|
### Fixed
|
2020-07-31 22:03:47 -04:00
|
|
|
- "gzip: stdin: unexpected end of file" error when trying to upgrade.
|
2020-07-23 22:49:39 -04:00
|
|
|
(See [#407](https://github.com/zimfw/zimfw/issues/407))
|
2020-07-05 10:36:21 -04:00
|
|
|
|
|
|
|
## [1.3.0] - 2020-07-05
|
|
|
|
|
2020-07-02 18:16:44 -04:00
|
|
|
### Added
|
2020-07-31 22:03:47 -04:00
|
|
|
- `-c|-cmd` option to `zmodule`. This allows for executing any specified command.
|
2020-06-09 22:39:39 -04:00
|
|
|
|
|
|
|
## [1.2.2] - 2020-06-10
|
|
|
|
|
2020-06-05 23:09:23 -04:00
|
|
|
### Fixed
|
|
|
|
- Allow local modules to be initialized and compiled in their respective
|
2020-07-31 22:03:47 -04:00
|
|
|
directories, when absolute paths are given, instead of forcing them to be
|
|
|
|
installed inside `ZIM_HOME`.
|
2020-05-26 09:02:25 -04:00
|
|
|
|
|
|
|
## [1.2.1] - 2020-05-26
|
|
|
|
|
2020-05-25 14:40:34 -04:00
|
|
|
### Fixed
|
2020-05-26 09:02:25 -04:00
|
|
|
- "No such file or directory" error when building a new file. This was a
|
2020-06-09 22:39:39 -04:00
|
|
|
regression introduced after replacing `cmp` by `cksum` in version 1.2.0.
|
2020-05-25 15:01:00 -04:00
|
|
|
- Show warning message when nothing found to be initialized in a module.
|
2020-05-17 11:30:14 -04:00
|
|
|
|
|
|
|
## [1.2.0] - 2020-05-17
|
|
|
|
|
2020-05-16 21:22:22 -04:00
|
|
|
### Changed
|
|
|
|
- Use `cksum` instead of `cmp`, and `zargs` instead of `xargs`, so we don't
|
|
|
|
depend on busybox or diffutils and findutils.
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
- Error messages and the `zmodule` usage text.
|
2020-01-26 15:42:03 -05:00
|
|
|
|
|
|
|
## [1.1.1] - 2020-01-26
|
|
|
|
|
2020-01-22 12:48:19 -05:00
|
|
|
### Fixed
|
|
|
|
- "no such file or directory" error before initial check for latest version.
|
2020-01-26 15:33:17 -05:00
|
|
|
- Show error when no modules defined in .zimrc, instead of allowing xargs to
|
|
|
|
execute the action with no positional parameters.
|
2020-01-20 07:03:20 -05:00
|
|
|
|
|
|
|
## [1.1.0] - 2020-01-20
|
|
|
|
|
2020-01-11 16:43:13 -05:00
|
|
|
### Added
|
2020-01-13 12:24:43 -05:00
|
|
|
- `help` and `version` actions.
|
2020-01-20 07:03:20 -05:00
|
|
|
- `-v` verbose option. Normal mode output is now focused on the specified action.
|
2020-01-15 12:35:30 -05:00
|
|
|
- Asynchronously check the latest version every 30 days. This can be disabled
|
|
|
|
with `zstyle ':zim' disable-version-check yes`.
|
2020-01-11 16:43:13 -05:00
|
|
|
|
|
|
|
### Changed
|
2020-01-11 17:17:09 -05:00
|
|
|
- When upgrading, download latest release asset instead of raw file from the
|
|
|
|
master branch.
|
2020-01-11 16:43:13 -05:00
|
|
|
- `curl` is preferred over `wget`.
|
2020-01-20 07:03:20 -05:00
|
|
|
(See [#360](https://github.com/zimfw/zimfw/issues/360))
|
2020-01-11 16:43:13 -05:00
|
|
|
- `wget`'s output is only shown in verbose mode.
|
2020-01-09 07:29:40 -05:00
|
|
|
|
|
|
|
## [1.0.1] - 2020-01-09
|
|
|
|
|
2020-01-08 16:45:54 -05:00
|
|
|
### Fixed
|
|
|
|
- Zsh 5.2 does not recognize the `:P` modifier. Replace it by `:A`.
|
2020-01-08 08:19:52 -05:00
|
|
|
- Also compile and clean .zprofile among the startup files.
|
2020-01-13 12:24:43 -05:00
|
|
|
- Don't fail on `clean-dumpfile` when there's nothing to remove.
|
2020-01-07 09:03:13 -05:00
|
|
|
|
|
|
|
## [1.0.0] - 2020-01-07
|
|
|
|
|
|
|
|
This is a major change, where modules are not git submodules in the Zim repo
|
|
|
|
anymore, but customized and installed separately as individual repositories.
|
|
|
|
External modules can more easily be installed, updated and uninstalled. This
|
2021-09-19 14:37:13 -04:00
|
|
|
makes Zim a project for Zsh that is both a set of community-maintained
|
2020-01-07 09:03:13 -05:00
|
|
|
modules with a default installation (like on-my-zsh and prezto) and a plugin
|
|
|
|
manager (like antigen and zplug).
|
|
|
|
|
|
|
|
This version is not backwards-compatible with previous versions, so a new
|
|
|
|
installation of Zim is required.
|
|
|
|
|
|
|
|
Take your time to review the updated [README.md] and the changes listed below.
|
|
|
|
|
|
|
|
### Added
|
|
|
|
- `zimfw` CLI tool.
|
|
|
|
- `zmodule` function to define modules.
|
|
|
|
- Automatic installation script.
|
|
|
|
- zsh-users/zsh-autosuggestions is enabled by default in new installations.
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
- The Zim "core" is reduced to a single file, namely zimfw.zsh, that is
|
|
|
|
self-updated without requiring git. With this, `ZIM_HOME` is not (the root of)
|
|
|
|
a git repo anymore.
|
|
|
|
- Zsh and modules are configured in .zshrc instead of .zimrc.
|
|
|
|
- .zimrc is not sourced during Zsh startup anymore, and only contains the module
|
|
|
|
definitions.
|
|
|
|
- Zim's init.zsh and login_init.zsh scripts are generated by the `zimfw` CLI
|
|
|
|
tool and contain static code. This allows for constant startup time,
|
|
|
|
regardless of how complex the module definitions are.
|
|
|
|
- Zim modules moved to individual repositories in the https://github.com/zimfw
|
|
|
|
organization.
|
|
|
|
- Zim modules are configured with `zstyle` instead of environment variables.
|
|
|
|
- Zim themes are sourced directly, instead of working with prompinit, and are
|
|
|
|
configured with environment variables instead of with promptinit parameters.
|
|
|
|
- The [environment] module is reduced in scope to to only set Zsh options. The
|
|
|
|
additional code moved to the [input] module (smart-URL widgets), the [utility]
|
|
|
|
module (default pager), and a new [termtitle] module (terminal window title).
|
|
|
|
- The minimal theme is renamed to [s1ck94].
|
|
|
|
|
|
|
|
### Removed
|
|
|
|
- `zmanage` CLI tool.
|
|
|
|
- The directory and history modules. Their code moved into the [environment]
|
|
|
|
module.
|
|
|
|
- The prompt module, and the external lean, liquidprompt and pure themes.
|
|
|
|
Use `zmodule miekg/lean`, or `zmodule nojhan/liquidprompt`, or `zmodule
|
|
|
|
sindresorhus/pure --source async.zsh --source pure.zsh` to define one of these
|
|
|
|
external themes, respectively. The Zim themes moved to individual repositories.
|
|
|
|
- Support for themes that require promptinit.
|
|
|
|
(See [#325](https://github.com/zimfw/zimfw/issues/325))
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
- `ZIM_HOME` is set in .zshenv instead of .zshrc. The issue was that the
|
|
|
|
variable was not available in .zlogin in non-interactive login shells.
|
|
|
|
|
|
|
|
[README.md]: https://github.com/zimfw/zimfw/blob/master/README.md
|
|
|
|
[environment]: https://github.com/zimfw/environment
|
|
|
|
[input]: https://github.com/zimfw/input
|
|
|
|
[utility]: https://github.com/zimfw/utility
|
|
|
|
[termtitle]: https://github.com/zimfw/termtitle
|
|
|
|
[s1ck94]: https://github.com/zimfw/s1ck94
|
|
|
|
|
2022-01-11 22:51:06 -05:00
|
|
|
[Unreleased]: https://github.com/zimfw/zimfw/compare/v1.7.0...HEAD
|
|
|
|
[1.7.0]: https://github.com/zimfw/zimfw/compare/v1.6.2...v1.7.0
|
2021-11-21 14:41:25 -05:00
|
|
|
[1.6.2]: https://github.com/zimfw/zimfw/compare/v1.6.1...v1.6.2
|
2021-11-08 12:03:49 -05:00
|
|
|
[1.6.1]: https://github.com/zimfw/zimfw/compare/v1.6.0...v1.6.1
|
2021-11-06 18:04:47 -04:00
|
|
|
[1.6.0]: https://github.com/zimfw/zimfw/compare/v1.5.0...v1.6.0
|
2021-08-10 10:56:25 -04:00
|
|
|
[1.5.0]: https://github.com/zimfw/zimfw/compare/v1.4.3...v1.5.0
|
2021-03-19 19:44:53 -04:00
|
|
|
[1.4.3]: https://github.com/zimfw/zimfw/compare/v1.4.2...v1.4.3
|
2021-02-19 15:26:10 -05:00
|
|
|
[1.4.2]: https://github.com/zimfw/zimfw/compare/v1.4.1...v1.4.2
|
2021-02-17 18:28:24 -05:00
|
|
|
[1.4.1]: https://github.com/zimfw/zimfw/compare/v1.4.0...v1.4.1
|
2021-01-07 13:41:35 -05:00
|
|
|
[1.4.0]: https://github.com/zimfw/zimfw/compare/v1.3.2...v1.4.0
|
2020-08-01 10:39:07 -04:00
|
|
|
[1.3.2]: https://github.com/zimfw/zimfw/compare/v1.3.1...v1.3.2
|
2020-07-24 11:30:19 -04:00
|
|
|
[1.3.1]: https://github.com/zimfw/zimfw/compare/v1.3.0...v1.3.1
|
2020-07-05 10:36:21 -04:00
|
|
|
[1.3.0]: https://github.com/zimfw/zimfw/compare/v1.2.2...v1.3.0
|
2020-06-09 22:39:39 -04:00
|
|
|
[1.2.2]: https://github.com/zimfw/zimfw/compare/v1.2.1...v1.2.2
|
2020-05-26 09:02:25 -04:00
|
|
|
[1.2.1]: https://github.com/zimfw/zimfw/compare/v1.2.0...v1.2.1
|
2020-05-17 11:30:14 -04:00
|
|
|
[1.2.0]: https://github.com/zimfw/zimfw/compare/v1.1.1...v1.2.0
|
2020-01-26 15:42:03 -05:00
|
|
|
[1.1.1]: https://github.com/zimfw/zimfw/compare/v1.1.0...v1.1.1
|
2020-01-20 07:03:20 -05:00
|
|
|
[1.1.0]: https://github.com/zimfw/zimfw/compare/v1.0.1...v1.1.0
|
2020-01-09 07:29:40 -05:00
|
|
|
[1.0.1]: https://github.com/zimfw/zimfw/compare/v1.0.0...v1.0.1
|
2020-01-07 09:03:13 -05:00
|
|
|
[1.0.0]: https://github.com/zimfw/zimfw/compare/5d66578...v1.0.0
|