Releases: welaika/wordmove
v5.2.2
5.2.1
New features 🆕
- Updating the required Photocopier version, now Wordmove supports
ed25519
ssh keys
Bugfixes 🐛
- there was an error in
Wordmove::Hook::Local
andWordmove::Hook::Remote
in how the class' logger was defined.
Notes 📓
Due to a stupid error I immediately released 5.2.1 after 5.2.0. I'm sorry about that. This is why you won't find 5.2.0's relase notes.
v5.1.0
Hello everybody!
I'm particularly happy to announce this release, since it is 💯 % brought to you by contributors!
I'd really like to 👏 and 🙏 and 🎉 those really nice people for these...
Bug fixes
- by @akiko-pusu #584 : solved a security related problem updating Wordmove from using
Kernel#open
to usingFile#Open
(tech ref. here)
New features
- by @korkey128k #595 : if you mispelled an environment name -
wordmove pull -d -e productio
anyone? - now you'll receive a really clear and polite error message instead of an exception with an ununderstandable error - by @maiorano84 #597 : the
--path
flag passed to wp-cli now has super powers! Wordmove will read it from yourwp-cli.yml
when present, otherwise it will set it to its ownwordpress_path
. This will enable you to easily manage exhotic scaffolds or practices. Any Bedrock user out there? Read more about the discussed features @ #590 and #591. And I'm really happy to thank @nlemoine too, for his terrific report and his contribution to the discussion. The documentation is updated to inform about the behaviour: https://github.com/welaika/wordmove/wiki/movefile.yml-configurations-explained#global-options
I'm totally thrilled by this participation ❤️
A hug 🤗 to all the community hard facing up to COVID-19 👾 . Be safe and keep it up. 💪
v5.0.2
- This bugfix release fixes the bug #561 and introduces new tests checking the hooks execution order.
The new hook data structure introduced in https://github.com/welaika/wordmove/releases/tag/v5.0.0 was implemented with a main goal: having an arbitrary order on hooks. Due to a bug the code was anyway grouping the hooks by local/remote before the execution, thus breaking the expectation.
v5.0.1
v5.0.0
Full commit history @ v4.0.1...v5.0.0
New major version, so prepare for the...
Breaking changes
- wordmove now requires ruby 2.6.5. Go and update! Don't you have 2.6.5 prinstalled? Take a look to https://github.com/welaika/wordmove/wiki/Install-the-appropriate-Ruby-version
hooks
has changed it's data structure. Reference to #557 and linked issue for the history. All the documentation has been updated, so let's take a look there. Documentation for older version retained in the dedicated wiki page https://github.com/welaika/wordmove/wiki/Hooks
New features
- project dependencies updated! Yay!
- wordmove's
list
command enters the show! #548 All of us have to thank @akiko-pusu for the excellent work! 👏 - refactored the logger implementing "secrets filtering". Sensitive data will no more be logged on STDOUT. We had this need with some customers and moreover I don't want this project's issue tracker to become full of password and users 👾 Currently we mask the following data:
:database, :password
:database, :host
:vhost
:ssh, :password
:ssh, :host
:ftp, :password
:ftp, :host
:wordpress_path
- database adaptation ("search-and-replace") can now be done with the default
wpcli
adapter even if you're working outside the project directory. More @ #513 and all the applauses go to @tnzk 🎉 👏
Bugfix
- a bug printing multiple time the
Using Movefile: xyz
should be fixed
Extra
With the help of @huraji we have discovered a voodoo-ish trick about how to push/pull only specific plugins and themes. If you're curious we have produced a little wiki page @ https://github.com/welaika/wordmove/wiki/Work-only-on-specific-plugins-or-themes 👏
That's all folks 🐰
v4.0.1
- 3e58577 Fix doctor's local schema validation
Thanks to @laposlaszlo and @nghh on issue #506 to have spotted this out
v4.0.0
Unfortunately this is a major version w/o a lot fun inside :) Anyway I thought about it and IMHO worth the major bump in order to raise your attention about why this release could break something.
The only and interested commit is
- 252ec90 Hooks raise when their command exits with error
Follow the commit link to read full (?) explanation. But here it is the short one: if you relied on hooks chain in your movefile.yml
having a hook exiting with error (a failing hook) before Wordmove just logged the fact and continued its work while now Wordmove logs the fact and exists throwing an exception (so w/ a non-zero exit code).
So as far as it is formally a backward compatible new behavior, we can't risk to let you update production environments or CI/CD servers without a little warning and attention.
The change is introduced because:
- hooks should be more CD-oriented and so every step MUST be "green" before continue
- this way you can rely more on the order relation between hooks (
a
must be completed successfully in order to runb
; before it was not possible) - you can break long hooks like
a && b && c
into single, more readable hooks
- 'a'
- 'b'
- 'c'
obtaining the same behavior as using bash's &&
operator.
- if you have a lot of hooks or really verbose ones (webpack builds anyone?) now Wordmove will blow up and you certainly will notice the problem. He had a real life experience where we trashed half an hour of work and useless debugging before noticing webpack was no more compiling the production build correctly! 👿
What should I do if I'd like to have optionally failing hooks?
My advice is to wrap your maybe-fail
hooks in little shell scripts and manage from there the return status (explicitly exit 0
at the bottom would be enough in most cases)
Future improvements
- Support maybe fail hooks through configuration
- do not blow up with stack trace, but rescue with an informational message and/or...
- chat notifier on success/failure
v3.2.3
Full what changed report at v3.2.2...v3.2.3
Resume:
- removed the command escape for remote hooks' command, since it was causing problem with complex commands. See #492 and thanks to @Frieshansen de8eed2
- adapt gzip options to Alpine Linux 93a0caa thanks to @cu39
- Update README.mdown c4655ad thanks to @burhandodhy
- Update bundler gem dependency. If you'll get errors about
bundler
you just need to update it one-time withgem install bundler
In the meantime me and all the developers at weLaika would love to