Skip to content

Releases: phpgt/PropFunc

v2.0.0

Choose a tag to compare

@g105b g105b released this 05 Oct 10:20
036a100

PropFunc now uses GT\PropFunc and a clearer naming convention for magic property accessors. When upgrading to this major release, rename hooks such as __prop_get_name and __prop_set_name to __propGetName and __propSetName. PHP 8.1 or later is required; the legacy Gt\PropFunc namespace remains autoloadable.

  • 2bc05d74 Tighten dependency requirements.
  • 3e798034 Update dependencies through Dependabot.
  • 60a94ee4 Create SECURITY.md.
  • 3710e760 Add JetBrains sponsorship to README with H1 heading.
  • b874c919 Update dependencies and the supported PHP version.
  • 892b7c88 Update the CI runner.
  • 539fd96f Add GT\PropFunc and adopt camelCase magic accessor hooks.

Internal __prop data structure

Choose a tag to compare

@g105b g105b released this 23 Mar 12:47

Sometimes it becomes useful to store the value of a class's magic properties internally, so this minor patch release introduced the __prop internal property, which can be access by any class using the MagicProp trait.

v1 release

Choose a tag to compare

@g105b g105b released this 23 Mar 11:53

PropFunc is heavily used in php.gt/dom due to the reliance on a the W3C specification. There have been minor improvements made since it was integrated within Dom, so now v1 is being released to allow Dom to get ready for its next stable release.

Have fun!

Refactored to drop inner key-value array

Choose a tag to compare

@g105b g105b released this 23 Mar 10:54

This release finalises the way private/protected values should be accessed via the magic methods. Now if a class needs one of its public properties changing to read-only, it can do by making the property private/protected and implementing the magic getter.

Tested

Tested Pre-release
Pre-release

Choose a tag to compare

@g105b g105b released this 17 Feb 17:28

The simple functionality of the repository is now tested. The main plans are for using with PHP.Gt/Dom, so before v1 is released it will be battle-tested in a few real world applications.