Gitify 2.1.0 has been released

Gitify 2.1.0-pl has just been released bringing new features, dependency upgrades and bug fixes. As always there has been some excellent contributions from the community.

Duplicate a context and resources keeping the tree structure

This feature from Vasily (@bezumkin) makes it possible to extract a context, copy the contents in the data file to another folder, give it a new key and then build it as a duplicated context. One valuable use case for this is using a translation tool on the extracted content, and then you've quickly added a language to your website!

You can view a video of this in action on Github.

New support for packages using the new xPDO 3 model structure (MODX 3)

Thanks to a donation from Jens (@jenswittmann), we were able to dedicate some time to add support for packages that use the new xPDO v3 model structure. In the older format, model files for a package were located in the core/components/{package_name}/model/ directory. Version 3 uses namespaced classes located by default in the core/components/{package_name}/src/ directory. Some popular extras that use this new structure are Collections, Formalicious and Articles.

Some new options are required in your .gitify file to use packages utilizing xPDO 3:
- namespace: The root namespace for the package
- model: The namespace of the model files
The class option should now also be the fully qualified class name.

Here's an example for CollectionSetting within the Collections extra:

collections_settings:
    namespace: Collections
    model: Collections\Model
    class: Collections\Model\CollectionSetting
    primary: id
    package: collections

Note that using the namespace option is what triggers Gitify to use the new structure for that package.

Here's an example for FormaliciousFieldType from the extra Formalicious:

formalicious_fields_types:    
    namespace: Sterc\Formalicious
model: Sterc\Formalicious\Model
class: Sterc\Formalicious\Model\FormaliciousFieldType
primary: id
package: formalicious

Optionally extract an element's category id rather than the category name

Thanks to Jens (@wuuti) for adding this feature. There have been reports of users having trouble when attempting to use the same category name twice. This feature will extract the unique category id rather than rely on the category name (which may double up). To use the category id, add the config option category_ids_in_elements: true to your .gitify file.

Fix non-English filename generation

It was found that if a filename in the extracted data started with a non-English character, it would be removed. Thanks to @livingroot for the patch fixing this bug!

Changlog

2.1.0 - 2023-12-11

  • Bump symfony/console to 5.4.32
  • Bump symfony/yaml to 5.4.31
  • Fix non-English filename generation (thanks @livingroot) [#442]
  • Add new config option 'category_ids_in_elements' to extract category ids instead of category names (thanks @wuuti) [#443]
  • Add ability to duplicate contexts with resources (thanks @bezumkin) [#439]
  • Add handling for packages using the new xPDO v3 model structure when extracting and building [#444]

Murray Wood

Murray is a part-time senior developer at modmore, regular MODX core contributor, author of many Commerce extensions, and recently became a dad. He works remotely from Hong Kong, spending his time building exciting new features, squashing bugs, and providing support.