Skip to content

Releases: tattersoftware/codeigniter4-patches

Bugfixes and Enhancements

26 Sep 12:26
0a6f3f1
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2.0.5...v2.1.0

Commit Hooks

30 Jun 23:15
2ab870e
Compare
Choose a tag to compare

Adds --no-verify arguments to skip post-commit hooks which may disrupt the patching process.

What's Changed

Full Changelog: v2.0.4...v2.0.5

With Dependencies

06 Jan 20:46
bfffa87
Compare
Choose a tag to compare
With Dependencies Pre-release
Pre-release

Adds the Composer directive with-all-dependencies to decrease the likelihood of failure due to upstream dependency issues.

What's Changed

Full Changelog: v2.0.3...v2.0.4

Remove writable

15 Jun 13:51
8401b5f
Compare
Choose a tag to compare

Since writable/ will often contain many ignored items that a project wants to keep, it should not be removed. It does not really need patching anyways.

Formatting

10 Jun 11:46
329af98
Compare
Choose a tag to compare
  • Improves formatting on display output
  • Fixes a bug where the final message after conflict was not displayed
  • New feature: restores the state of vendor/ after completing

Hotfix: Binary

10 Jun 01:51
f7b2bc1
Compare
Choose a tag to compare

Fixes a typo in the Composer binary name.

Library Refactor

10 Jun 01:43
625ff6b
Compare
Choose a tag to compare

This is a complete overhaul of this library into a single shell script. You can read about the reasons why in the release notes for version 1.2.0, but basically Patches as a CodeIgniter module was overly complex and under-performing. This simplified version is vastly more useful for accomplishing the end goal: patching project files to their framework equivalents.

Library Deprecation

09 Jun 13:25
b2e3613
Compare
Choose a tag to compare

This is a minor release with no content changes simply to notify users that this version of the library is deprecated in its entirety.

Patches began as a concept for alleviating the very rote task of comparing framework revisions to their project equivalent. A tremendous amount of effort went into the handlers and interactive command, which amounted to the following:

  1. Auto-merging updated files that were untouched in the project
  2. Notifying the developer (with optional diff) about updated files that were touched and needed conflict resolution

The eventual goal was to offer an additional, more complex Merger to handle three-way merges, thus relieving some of the work hidden in point 2 above. There were a handful of abandoned attempts at this, with the final conclusion: Git already does this better.

What else does Git do great? Point number one. Basically I realized that Patches had become an effort at recreating some of the power of Git in a PHP backend framework, very unnecessarily. So instead of pressing further into this approach, I will be ending support for this library as a PHP module and refactoring it into a command-line script that leverages git and composer to handle the heavy lifting.

Version 2 of this library is around the corner! For those who prefer the current approach: version 1.2 will remain available, or check out Liaison Revision.

Composer Updates

05 Nov 16:53
a0a9f49
Compare
Choose a tag to compare
  • Loosens dependencies to actual requirements
  • Updates PHPUnit to version 9

Composer v2

31 Oct 12:58
e357790
Compare
Choose a tag to compare
  • Updates Composer dependency to version 2 (note: does not affect library)
  • Adds development tools and applies numerous static analysis fixes
  • Improves Command readability
  • Bugfixes