castopod/composer.json
semantic-release-bot 0eeedb9dc6 chore(release): 2.0.0-next.1 [skip ci]
# [2.0.0-next.1](https://code.castopod.org/adaures/castopod/compare/v1.11.0...v2.0.0-next.1) (6/19/2024)

### Bug Fixes

* add missing php-icons config file to bundle ([56612f0](56612f0c76))
* **docs:** add base to og image using env variable ([fe67659](fe676590f2))
* **import:** rewrite download_file helper to output curl response directly to file ([eb7ad2f](eb7ad2f7e1))
* include app/Resources/icons folder to bundle ([3fd5efc](3fd5efc795))
* **platforms:** add platforms service + reduce memory consumption when rendering platform cards ([fe73e9f](fe73e9fae9))
* set owner email visibility when editing podcast ([fc4f982](fc4f982556)), closes [#473](https://code.castopod.org/adaures/castopod/issues/473)

### Build System

* release next major version as prerelease ([8275226](827522643e))

### Features

* add Plugins module with base files for plugins architecture ([7253e13](7253e13ac2))
* **plugins:** abstract settings form for general, podcast and episode types ([b62b483](b62b483ad9))
* **plugins:** activate / deactivate plugin using settings table ([27d2a1b](27d2a1b0ff))
* **plugins:** add aside with plugin metadata next to plugin's readme ([dfb7888](dfb7888aeb))
* **plugins:** add before channel/item hooks to allow podcast/episode data edit when generating rss ([80d2c48](80d2c48ee2))
* **plugins:** add json schema definition for plugin manifest ([b5eddf3](b5eddf351f))
* **plugins:** add methods to easily retrieve general, podcast and episode settings in hooks methods ([3a900bb](3a900bbab6))
* **plugins:** add new field types + validate & cast user data before storing settings ([6f833fc](6f833fc76a))
* **plugins:** add options to manifest for building forms and storing plugin settings ([3d8aedf](3d8aedf9c3))
* **plugins:** add settings page for podcast and episode if defined in the plugin's manifest ([89ac92f](89ac92fb41))
* **plugins:** add siteHead hook to add custom meta tags to public pages ([e80a33b](e80a33bf2a))
* **plugins:** display errors when plugin is invalid instead of crashing ([8ec7909](8ec79097bb))
* **plugins:** handle empty states and long strings in UI ([45ac2a4](45ac2a4be9))
* **plugins:** load and validate plugin manifest.json ([1510e36](1510e36c0a))
* **plugins:** load plugins using file locator service ([587938d](587938d2bf))
* **plugins:** load README.md file to view plugin's instructions in UI ([e6bfdfc](e6bfdfc390))
* **plugins:** register plugins using Plugin.php file instead of namespace + simplify i18n structure ([2035c39](2035c39fd1))
* **plugins:** uninstall plugins via CLI and admin UI ([9a80de4](9a80de4068))
* set owner email to hidden by default in podcast create form ([7a6d9df](7a6d9df6db))
* support podcast:txt tag with verify use case ([57e459e](57e459e187)), closes [#468](https://code.castopod.org/adaures/castopod/issues/468)

### BREAKING CHANGES

* next major release including plugins architecture
2024-06-19 10:12:35 +00:00

108 lines
5.0 KiB
JSON

{
"name": "adaures/castopod",
"version": "2.0.0-next1",
"type": "project",
"description": "Castopod is an open-source hosting platform made for podcasters who want engage and interact with their audience.",
"homepage": "https://castopod.org",
"license": "AGPL-3.0-or-later",
"require": {
"php": "^8.3",
"adaures/ipcat-php": "^v1.0.0",
"adaures/podcast-persons-taxonomy": "^v1.0.1",
"aws/aws-sdk-php": "^3.305.4",
"chrisjean/php-ico": "^1.0.4",
"cocur/slugify": "^v4.5.1",
"codeigniter4/framework": "v4.5.1",
"codeigniter4/settings": "v2.2.0",
"codeigniter4/shield": "v1.0.3",
"codeigniter4/tasks": "dev-develop",
"geoip2/geoip2": "v3.0.0",
"james-heinrich/getid3": "^2.0.0-beta5",
"league/commonmark": "^2.4.2",
"league/html-to-markdown": "5.1.1",
"melbahja/seo": "^v2.1.1",
"michalsn/codeigniter4-uuid": "v1.1.0",
"mpratt/embera": "^2.0.38",
"opawg/user-agents-v2-php": "dev-main",
"phpseclib/phpseclib": "~2.0.47",
"vlucas/phpdotenv": "v5.6.0",
"whichbrowser/parser": "^v2.1.8",
"yassinedoghri/codeigniter-icons": "dev-develop",
"yassinedoghri/podcast-feed": "dev-main"
},
"require-dev": {
"captainhook/captainhook": "^5.23.0",
"codeigniter/phpstan-codeigniter": "v1.4.3",
"mikey179/vfsstream": "^v1.6.11",
"phpstan/extension-installer": "^1.3.1",
"phpstan/phpstan": "^1.10.67",
"phpunit/phpunit": "^10.5.20",
"rector/rector": "^1.0.4",
"symplify/coding-standard": "^12.1.4",
"symplify/easy-coding-standard": "^12.1.14"
},
"autoload": {
"psr-4": {
"App\\": "app/"
},
"exclude-from-classmap": [
"**/Database/Migrations/**"
]
},
"autoload-dev": {
"psr-4": {
"Tests\\Support\\": "tests/_support"
}
},
"scripts": {
"dev": "php spark serve",
"test": "vendor/bin/phpunit --no-coverage",
"analyse": "vendor/bin/phpstan analyse --ansi",
"rector": "vendor/bin/rector process --dry-run --ansi --memory-limit=2G",
"rector:fix": "vendor/bin/rector process --ansi --memory-limit=2G",
"style": "vendor/bin/ecs check --ansi",
"style:fix": "vendor/bin/ecs check --fix --ansi",
"generate:auth-docs": "php spark auth:generate-docs",
"php-icons": "vendor/bin/php-icons scan",
"post-install-cmd": [
"@php vendor/opawg/user-agents-v2-php/src/UserAgentsGenerate.php > vendor/opawg/user-agents-v2-php/src/UserAgents.php",
"@php vendor/opawg/user-agents-v2-php/src/UserAgentsRSSGenerate.php > vendor/opawg/user-agents-v2-php/src/UserAgentsRSS.php",
"@php vendor/adaures/ipcat-php/src/IpDbGenerate.php > vendor/adaures/ipcat-php/src/IpDb.php",
"@php vendor/adaures/podcast-persons-taxonomy/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > modules/Admin/Language/en/PersonsTaxonomy.php",
"@php vendor/adaures/podcast-persons-taxonomy/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-fr.json > modules/Admin/Language/fr/PersonsTaxonomy.php",
"@php vendor/adaures/podcast-persons-taxonomy/src/ReversedTaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > vendor/adaures/podcast-persons-taxonomy/src/ReversedTaxonomy.php",
"vendor/bin/php-icons init && vendor/bin/php-icons scan"
],
"post-update-cmd": [
"@composer dump-autoload",
"@php vendor/opawg/user-agents-v2-php/src/UserAgentsGenerate.php > vendor/opawg/user-agents-v2-php/src/UserAgents.php",
"@php vendor/opawg/user-agents-v2-php/src/UserAgentsRSSGenerate.php > vendor/opawg/user-agents-v2-php/src/UserAgentsRSS.php",
"@php vendor/adaures/ipcat-php/src/IpDbGenerate.php > vendor/adaures/ipcat-php/src/IpDb.php",
"@php vendor/adaures/podcast-persons-taxonomy/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > modules/Admin/Language/en/PersonsTaxonomy.php",
"@php vendor/adaures/podcast-persons-taxonomy/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-fr.json > modules/Admin/Language/fr/PersonsTaxonomy.php",
"@php vendor/adaures/podcast-persons-taxonomy/src/ReversedTaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > vendor/adaures/podcast-persons-taxonomy/src/ReversedTaxonomy.php",
"vendor/bin/php-icons init && vendor/bin/php-icons scan"
]
},
"support": {
"source": "https://code.castopod.org/adaures/castopod.git",
"discord": "https://castopod.org/discord"
},
"minimum-stability": "dev",
"prefer-stable": true,
"config": {
"optimize-autoloader": true,
"preferred-install": "dist",
"sort-packages": true,
"allow-plugins": {
"phpstan/extension-installer": true
}
},
"repositories": [
{
"type": "vcs",
"url": "https://github.com/codeigniter4/tasks.git"
}
]
}