{"id":21867285,"url":"https://github.com/setbased/phing-extensions","last_synced_at":"2025-04-14T22:22:03.104Z","repository":{"id":25143030,"uuid":"28565300","full_name":"SetBased/phing-extensions","owner":"SetBased","description":"A collection of Phing extensions.","archived":false,"fork":false,"pushed_at":"2024-09-22T08:42:37.000Z","size":84,"stargazers_count":3,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-28T10:21:20.642Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SetBased.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-12-28T15:46:37.000Z","updated_at":"2024-09-22T08:41:53.000Z","dependencies_parsed_at":"2023-02-14T07:16:08.755Z","dependency_job_id":null,"html_url":"https://github.com/SetBased/phing-extensions","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SetBased%2Fphing-extensions","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SetBased%2Fphing-extensions/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SetBased%2Fphing-extensions/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SetBased%2Fphing-extensions/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SetBased","download_url":"https://codeload.github.com/SetBased/phing-extensions/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248969219,"owners_count":21191215,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-28T05:09:06.044Z","updated_at":"2025-04-14T22:22:03.085Z","avatar_url":"https://github.com/SetBased.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Phing Extensions\n\nA set of Phing extensions.\n\n[![Gitter](https://badges.gitter.im/SetBased/phing-extensions.svg)](https://gitter.im/SetBased/phing-extensions?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge)\n[![License](https://poser.pugx.org/setbased/phing-extensions/license)](https://packagist.org/packages/setbased/phing-extensions)\n[![Latest Stable Version](https://poser.pugx.org/setbased/phing-extensions/v/stable)](https://packagist.org/packages/setbased/phing-extensions)\n[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/SetBased/phing-extensions/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/SetBased/phing-extensions/?branch=master)\n\n# Overview\n\nThis collection of Phing extensions provides:\n\n* BumpBuildNumberTask\n* LastCommitTimeTask\n* ReadSemanticVersionTask\n* RemoveEmptyDirectoriesTask\n* SetDirectoryMTimeTask\n\n## BumpBuildNumberTask\n\nBumpBuildNumberTask bumps a build number to the next build number. The build number is published under supplied\nproperty for further usage in the Phing build script.\n\n#### Parameters\n\n| Name                | Type   | Description                                                                               | Default | Required |\n|---------------------|--------|-------------------------------------------------------------------------------------------|---------|----------|\n| File                | string | Filename for storing the build number.                                                    |         | No       |     \n| HaltOnError         | bool   | If true the build fails on errors, otherwise this task generates error events.            | True    | No       |                  \n| BuildNumberProperty | string | The name of the property for publishing the build number.                                 |         | No       |\n\n#### Example\n\n```XML\n\n\u003cproject\u003e\n    \u003ctaskdef name=\"BumpBuildNumberTask\" classname=\"\\SetBased\\Phing\\Task\\BumpBuildNumberTask\"/\u003e\n    \u003cBumpBuildNumberTask file=\".build_number.txt\" buildNumberProperty=\"BUILD_NUMBER\" haltOnError=\"true\"/\u003e\n    \u003cecho message=\"${BUILD_NUMBER}\"/\u003e\n\u003c/project\u003e\n```\n\n## LastCommitTimeTask\n\nLastCommitTimeTask sets the modification time of files to the last commit time in Git.\n\n#### Parameters\n\n| Name        | Type   | Description                                                                            | Default | Required |\n|-------------|--------|----------------------------------------------------------------------------------------|---------|----------|\n| Dir         | string | The directory were under which the sources are located. Typically the build directory. |         | Yes      |     \n| HaltOnError | bool   | If true the build fails on errors, otherwise this task generates error events.         | True    | No       |                  \n\n#### Example\n\n```XML\n\n\u003cproject\u003e\n    \u003ctaskdef name=\"LastCommitTimeTask\" classname=\"vendor.setbased.phing-extensions.src.Task.LastCommitTimeTask\"/\u003e\n    \u003cLastCommitTimeTask Dir=\"build\"/\u003e\n\u003c/project\u003e\n```\n\n## ReadSemanticVersionTask\n\nReadSemanticVersionTask asks the user for [Semantic version](http://semver.org/) and validates\nthe given input is a valid [Semantic version](http://semver.org/). The version and its parts are published\nunder supplied properties for further usage in the Phing build script.\n\n#### Parameters\n\n| Name               | Type   | Description                                                                               | Default | Required |\n|--------------------|--------|-------------------------------------------------------------------------------------------|---------|----------|\n| File               | string | Filename for storing the entered SemanticVersion.                                         |         | No       |     \n| HaltOnError        | bool   | If true the build fails on errors, otherwise this task generates error events.            | True    | No       |                  \n| VersionProperty    | string | The name of the property for publishing the version (e.g. 1.2.3-alpha.1).                 |         | No       |                            \n| ReleaseProperty    | string | The name of the property for publishing the major, minor, and patch version (e.g. 1.2.3). |         | No       |                            \n| MajorProperty      | string | The name of the property for publishing the major version (e.g. 1).                       |         | No       |                          \n| MinorProperty      | string | The name of the property for publishing the minor version (e.g. 2).                       |         | No       |                          \n| PatchProperty      | string | The name of the property for publishing the patch version (e.g. 3).                       |         | No       |                          \n| PreReleaseProperty | string | The name of the property for publishing the pre-release version (e.g. alpha.1).           |         | No       |                               \n\n#### Example\n\n```XML\n\n\u003cproject\u003e\n    \u003ctaskdef name=\"ReadSemanticVersion\" classname=\"vendor.setbased.phing-extensions.src.Task.ReadSemanticVersionTask\"/\u003e\n    \u003cReadSemanticVersion File=\".version\" VersionProperty=\"VERSION\"/\u003e\n    \u003cecho message=\"${VERSION}\"/\u003e\n\u003c/project\u003e\n```\n\n## RemoveEmptyDirectoriesTask\n\nRemoveEmptyDirectoriesTask removes recursively empty directories under a parent directory.\n\n#### Parameters\n\n| Name         | Type   | Description                                                                    | Default | Required |\n|--------------|--------|--------------------------------------------------------------------------------|---------|----------|\n| Dir          | string | The parent directory under which empty directories must be removed.            |         | True     |\n| RemoveParent | bool   | If true the parent directory is removed as well if it is empty.                | False   | No       |    \n| HaltOnError  | bool   | If true the build fails on errors, otherwise this task generates error events. | True    | No       |                  \n\n#### Example\n\n```XML\n\n\u003cproject\u003e\n    \u003ctaskdef name=\"RemoveEmptyDirs\" classname=\"vendor.setbased.phing-extensions.src.Task.RemoveEmptyDirsTask\"/\u003e\n    \u003cRemoveEmptyDirectoriesTask Dir=\"build/www/js\" RemoveParent=\"false\"/\u003e\n\u003c/project\u003e\n```\n\n## SetDirectoryMTimeTask\n\nSetDirectoryMTimeTask sets recursively the modification time of directories to the maximum modification time of its\nentries.\n\n#### Parameters\n\n| Name        | Type   | Description                                                                    | Default | Required |\n|-------------|--------|--------------------------------------------------------------------------------|---------|----------|\n| Dir         | string | The parent directory.                                                          |         | True     |\n| HaltOnError | bool   | If true the build fails on errors, otherwise this task generates error events. | True    | No       |                  \n\n#### Example\n\n```XML\n\n\u003cproject\u003e\n    \u003ctaskdef name=\"SetDirectoryMTimeTask\" classname=\"vendor.setbased.phing-extensions.src.Task.SetDirectoryMTimeTask\"/\u003e\n    \u003cSetDirectoryMTimeTask Dir=\"build\"/\u003e\n\u003c/project\u003e\n```\n\n# Installation\n\nWe recommend to install setbased/phing via [Composer](https://getcomposer.org/):\n\n```json\n{\n  \"require-dev\": {\n    \"setbased/phing-extensions\": \"2.*\"\n  }\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsetbased%2Fphing-extensions","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsetbased%2Fphing-extensions","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsetbased%2Fphing-extensions/lists"}