with new changes from version 1.5.0.
8 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
No unreleased changes.
1.5.0 - 2021-08-10
Added
- Option to use the new
degit
tool inzmodule
, that is able to install and update modules from GitHub without requiringgit
. Modules are installed faster and take less disk space when using this tool. It can be set as the default withzstyle ':zim:zmodule' use 'degit'
.
Fixed
- Force
core.autocrlf=false
when doinggit clone
. (See #404) - Allow uninstalling modules with custom names that have a slash.
1.4.3 - 2021-03-19
Fixed
- Prefer the prezto module format when using defaults to initialize a module.
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:
- a
functions
subdirectory that is added to the fpath by the framework, - files inside the
functions
subdirectory that are autoloaded by the framework (except for those with names matching_*
orprompt_*_setup
), - an
init.zsh
file that is sourced by the framework.
- a
1.4.2 - 2021-02-19
Fixed
- "Not a valid ref: refs/remotes/origin/main" error in
zimfw update
, when the repository's default branch was renamed to main.
1.4.1 - 2021-02-17
Fixed
- 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.
1.4.0 - 2021-01-07
Added
- Prompt before uninstalling modules, unless
-q
is set. - Show build date in info.
Fixed
- Show error when no parameter is provided to
-c|--cmd
inzmodule
. - Use repository's default branch instead of hardcoding the default to
master
inzimfw update
, when no branch is specified inzmodule
.
1.3.2 - 2020-08-01
Fixed
- Compiled files must also be cleaned from modules defined with absolute paths.
1.3.1 - 2020-07-24
Fixed
- "gzip: stdin: unexpected end of file" error when trying to upgrade. (See #407)
1.3.0 - 2020-07-05
Added
-c|-cmd
option tozmodule
. This allows for executing any specified command.
1.2.2 - 2020-06-10
Fixed
- Allow local modules to be initialized and compiled in their respective
directories, when absolute paths are given, instead of forcing them to be
installed inside
ZIM_HOME
.
1.2.1 - 2020-05-26
Fixed
- "No such file or directory" error when building a new file. This was a
regression introduced after replacing
cmp
bycksum
in version 1.2.0. - Show warning message when nothing found to be initialized in a module.
1.2.0 - 2020-05-17
Changed
- Use
cksum
instead ofcmp
, andzargs
instead ofxargs
, so we don't depend on busybox or diffutils and findutils.
Fixed
- Error messages and the
zmodule
usage text.
1.1.1 - 2020-01-26
Fixed
- "no such file or directory" error before initial check for latest version.
- Show error when no modules defined in .zimrc, instead of allowing xargs to execute the action with no positional parameters.
1.1.0 - 2020-01-20
Added
help
andversion
actions.-v
verbose option. Normal mode output is now focused on the specified action.- Asynchronously check the latest version every 30 days. This can be disabled
with
zstyle ':zim' disable-version-check yes
.
Changed
- When upgrading, download latest release asset instead of raw file from the master branch.
curl
is preferred overwget
. (See #360)wget
's output is only shown in verbose mode.
1.0.1 - 2020-01-09
Fixed
- Zsh 5.2 does not recognize the
:P
modifier. Replace it by:A
. - Also compile and clean .zprofile among the startup files.
- Don't fail on
clean-dumpfile
when there's nothing to remove.
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 makes Zim the first project for Zsh that is both a set of community-maintained 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
, orzmodule nojhan/liquidprompt
, orzmodule 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)
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.