I try to load own extensions via composer.json but when I run the application I always get this error:
#1411840171: The class "Bm\AhContentelements\Rendering\VideoTagRenderer" you are trying to
register is not available
I load my ah contentelements extension in json as:
{
"repositories": [
{
"type": "composer",
"url": "https://composer.typo3.org/"
},
{
"type": "package",
"package": {
"name": "Bm/ah-content-api",
"version": "0.0.1",
"type": "typo3-cms-extension",
"source": {
"url": "https://user#bitbucket.org/u/ah_config_typo3.git",
"type": "git",
"reference": "master"
}
}
},
{
"type": "package",
"package": {
"name": "Bm/ah-contentelements",
"version": "0.0.1",
"type": "typo3-cms-extension",
"source": {
"url": "https://user#bitbucket.org/u/ah_contentelements_typo3.git",
"type": "git",
"reference": "master"
}
}
}
],
"name": "typo3/cms-base-distribution",
"description": "TYPO3 CMS Base Distribution",
"license": "GPL-2.0-or-later",
"require": {
"helhum/typo3-console": "^4.9.3 || ^5.2",
"typo3/cms-about": "^8.7.10",
"typo3/cms-belog": "^8.7.10",
"typo3/cms-beuser": "^8.7.10",
"typo3/cms-context-help": "^8.7.10",
"typo3/cms-documentation": "^8.7.10",
"typo3/cms-felogin": "^8.7.10",
"typo3/cms-fluid-styled-content": "^8.7.10",
"typo3/cms-form": "^8.7.10",
"typo3/cms-func": "^8.7.10",
"typo3/cms-impexp": "^8.7.10",
"typo3/cms-info": "^8.7.10",
"typo3/cms-info-pagetsconfig": "^8.7.10",
"typo3/cms-rte-ckeditor": "^8.7.10",
"typo3/cms-setup": "^8.7.10",
"typo3/cms-sys-note": "^8.7.10",
"typo3/cms-t3editor": "^8.7.10",
"typo3/cms-tstemplate": "^8.7.10",
"typo3/cms-viewpage": "^8.7.10",
"typo3/cms-wizard-crpages": "^8.7.10",
"typo3/cms-wizard-sortpages": "^8.7.10",
"typo3/cms": "^8.7",
"dmitryd/typo3-realurl": "2.*",
"GridElementsTeam/Gridelements": "8.2.*",
"clickstorm/cs_seo": "3.*",
"Bm/ah-content-api": "0.0.1",
"Bm/ah-contentelements": "0.0.1"
},
"scripts": {
"typo3-cms-scripts": [
"typo3cms install:fixfolderstructure",
"typo3cms install:generatepackagestates"
],
"post-autoload-dump": [
"#typo3-cms-scripts"
]
},
"extra": {
"typo3/cms": {
"web-dir": "public"
},
"helhum/typo3-console": {
"comment": "This option is not needed ay more for helhum/typo3-console 5.x",
"install-extension-dummy": false
}
},
"autoload": {
"psr-4": {
"Bm\\AhContentelements\\": "public/typo3conf/ext/ah-contentelements/Classes",
"Bm\\AhContentapi\\": "public/typo3conf/ext/ah-contentapi/Classes"
}
}
}
What do I wrong, I'm struggling with this for days now..
I never did it the way you did it. I always include a composer.json in each of my extensions. There the autoload part looks like this:
"autoload": {
"psr-4": {
"Bm\\AhContentelements\\": "Classes"
}
}
In the repositories section of my main composer.json I then have something like this:
{
"type": "path",
"url": "./packages/*"
},
I then require my extension with composer require Bm/ah-contentelements:"#dev". Composer then searches the packages directory for the specified extension.
I think the path is wrong: you have to use the root (the directory on the same level like your composer file and the vendor directory) like "web" or "html".
so instead of
"autoload": {
"psr-4": {
"Bm\\AhContentelements\\": "typo3conf/ext/ah-contentelements/Classes",
"Bm\\AhContentapi\\": "typo3conf/ext/ah-contentapi/Classes"
}
you should use something like
"autoload": {
"psr-4": {
"Bm\\AhContentelements\\": "web/typo3conf/ext/ah-contentelements/Classes",
"Bm\\AhContentapi\\": "web/typo3conf/ext/ah-contentapi/Classes"
}
After changing do not forget to composer dump-autoload
My first steps with TYPO3 CMSand composer... but I cannot install my own distribution package. Try to:
composer require stsa/hellotypo3
I've got this error:
[InvalidArgumentException]
Could not find a version of package stsa/hellotypo3 matching your minimum-stability (stable). Require it with an explicit version constraint allowing its desired stability.
I've install TYPO3 9.5.1 via composer and (for testing) install a 3rd party extension like mask with composer require mask/mask. It works perfectly.
Here's my composer.json of my distribution extension, which I've uploaded to packgist. The json-file is valid, but there must be sth. wrong ..
{
"name": "stsa/hellotypo3",
"type": "typo3-cms-extension",
"description": "FLUID Templates & TypoScript",
"homepage": "https://www.hello.de/",
"keywords": [
"TYPO3",
"CMS",
"extension"
],
"authors": [
{
"name": "Stsa",
"email": "contact#hello.de",
"role": "Developer",
"homepage": "https://www.hello.de/"
}
],
"license": [
"GPL-2.0-or-later"
],
"require": {
"typo3/cms-core": "^9.5"
},
"autoload": {
"psr-4": {
"Stsa\\Hellotypo3\\": "Classes/"
}
},
"replace": {
"hellotypo3": "self.version",
"typo3-ter/hellotypo3": "self.version"
}
}
No way .. it doesn't work with that. I also try to set "minimum-stability": "stable". But honestly, I have no idea what I can do ..?! Can someone help me? Thanks.
EDIT 1: Today I've update my own extension at packgist. It must be available now with this vendor/name.
EDIT 2: Now I've made a test extension via sitepackagebuilder, upload to git, sumbit to packgist. Try to install via composer require hellotypo3de/hellotest .. still the same Error warning: Could not find a version of package hellotypo3de/hellotest matching your minimum-stability (stable). Require it with an explicit version constraint allowing its desired stability. ..?! Where's my mistake?
I assume you want to use your extension only on one installation as local extension. So that's the way to go:
Create a directory, e.g. packages in your project's root directory.
Move your extension into this directory and name the folder stsa-hellotypo3. The part before the dash is your namespace, the part behind the package name.
Add to your composer.json of your extension the following entry:
"extra": {
"typo3/cms": {
"extension-key": "stsa_hellotypo3"
}
}
Now TYPO3 will use stsa_hellotypo3 as extension key.
Change into your composer.json file in your TYPO3 project root the repositories entry:
"repositories": [
{
"type": "path",
"url": "packages/*"
},
{
"type": "composer",
"url": "https://composer.typo3.org/"
}
],
composer will look now into the packages folder for packages to install.
Now you can add your extension to the project:
composer require stsa/hellotypo3:#dev
The extension is symlink'ed as stsa_hellotypo3 in typo3conf/ext/ directory. With the #dev the development version is installed (which you have). you can also add a version entry into your extension's composer.json file, then you can omit the #dev.
If you do it that way you don't have to add your extension's autoloading information to the root composer.json file.
It's possible to install your local distribution extension manually. You have to insert your extension at the "require-section" and add a new type of package at the "repositories-section" in your repsoitory root composer.json. See my example:
{
"repositories": [
{
"type": "composer",
"url": "https://composer.typo3.org/"
},
{
"type":"package",
"package": {
"name": "stsa/hellotypo3",
"version":"master",
"source": {
"url": "https://github.com/name/hellotypo3-distribution.git",
"type": "git",
"reference":"dev-master"
}
}
}
],
"name": "typo3/cms-base-distribution",
"description" : "TYPO3 CMS Base Distribution",
"license": "GPL-2.0-or-later",
"config": {
"platform": {
"php": "7.2"
}
},
"require": {
"helhum/typo3-console": "^5.5.5",
"typo3/minimal": "^9.5",
"typo3/cms-about": "^9.5",
"typo3/cms-adminpanel": "^9.5",
"typo3/cms-belog": "^9.5",
"typo3/cms-beuser": "^9.5",
"typo3/cms-felogin": "^9.5",
"typo3/cms-fluid-styled-content": "^9.5",
"typo3/cms-form": "^9.5",
"typo3/cms-impexp": "^9.5",
"typo3/cms-info": "^9.5",
"typo3/cms-redirects": "^9.5",
"typo3/cms-reports": "^9.5",
"typo3/cms-rte-ckeditor": "^9.5",
"typo3/cms-setup": "^9.5",
"typo3/cms-seo": "^9.5",
"typo3/cms-sys-note": "^9.5",
"typo3/cms-t3editor": "^9.5",
"typo3/cms-tstemplate": "^9.5",
"typo3/cms-viewpage": "^9.5",
"stsa/hellotypo3": "dev-master"
},
"scripts":{
"typo3-cms-scripts": [
"typo3cms install:fixfolderstructure",
"typo3cms install:generatepackagestates"
],
"post-autoload-dump": [
"#typo3-cms-scripts"
]
},
"extra": {
"typo3/cms": {
"cms-package-dir": "{$vendor-dir}/typo3/cms",
"web-dir": "public"
}
}
}
dev-master is here important!
The composer.jsonfrom your extension looks like this:
{
"name": "stsa/hellotypo3",
"type": "typo3-cms-extension",
"description": "FLUID Templates & TypoScript",
"homepage": "https://www.hellotypo3.de/",
"keywords": [
"TYPO3",
"CMS",
"extension"
],
"authors": [
{
"name": "StSa",
"email": "hello#hellotypo3.de",
"role": "Developer",
"homepage": "https://www.hellotypo3.de/"
}
],
"license": [
"GPL-2.0-or-later"
],
"require": {
"typo3/cms-core": "^9.5"
},
"autoload": {
"psr-4": {
"Stsa\\Hellotypo3\\": "Classes/"
}
},
"replace": {
"hellotypo3": "self.version",
"typo3-ter/hellotypo3": "self.version"
},
"extra": {
"typo3/cms": {
"extension-key": "hellotypo3"
}
}
}
Or you can install your extension from packgist, but don't forget:
composer require stsa/hellotypo3:master-dev#dev
or
composer req stsa/hellotypo3:#dev
"require": {
"typo3/cms-core:^9.5"
},
Does that work? If not sry, but hope it helps
I'm trying to install extension via composer, but I get the following error log:
Using version ^6.0 for georgringer/news
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested package minimum-stability could not be found in any version, there may be a typo in the package name.
Problem 2
- Installation request for georgringer/news ^6.0 -> satisfiable by georgringer/news[6.0.0].
- georgringer/news 6.0.0 requires typo3/cms-core ^7.6.13 || >=8.5.0 <9 -> no matching package found.
Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum-stability setting
see <https://getcomposer.org/doc/04-schema.md#minimum-stability> for more details.
Read <https://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.
Installation failed, reverting ./composer.json to its original content.
my guess is that require-dev has to be changed to something else, but no idea what exactly. That's how my composer.json file looks:
{
"name": "typo3/cms",
"description": "TYPO3 CMS is a free open source Content Management Framework initially created by Kasper Skaarhoj and licensed under GNU/GPL.",
"keywords": ["typo3", "cms", "content management system", "extbase"],
"homepage": "https://typo3.org/",
"type": "typo3-cms-core",
"license": "GPL-2.0+",
"authors": [{
"name": "TYPO3 CMS Core Team",
"role": "Developer",
"homepage": "https://forge.typo3.org/projects/typo3cms-core"
},
{
"name": "The TYPO3 Community",
"role": "Contributor",
"homepage": "https://typo3.org/community/"
}
],
"support": {
"general": "https://typo3.org/support/",
"issues": "https://forge.typo3.org",
"irc": "irc://irc.freenode.net/#typo3-cms",
"news": "nntp://lists.typo3.org"
},
"config": {
"optimize-autoloader": true,
"bin-dir": "bin"
},
"require": {
"php": ">=5.5.0",
"ext-json": "*",
"ext-pcre": "*",
"ext-session": "*",
"ext-xml": "*",
"psr/log": "~1.0.0",
"pear/http_request2": "~2.3.0",
"swiftmailer/swiftmailer": "~5.4.5",
"symfony/console": "^2.7",
"symfony/finder": "^2.7",
"doctrine/instantiator": "~1.0.4",
"typo3/class-alias-loader": "^1.0",
"typo3/cms-composer-installers": "^1.2.8",
"psr/http-message": "~1.0",
"cogpowered/finediff": "~0.3.1",
"mso/idna-convert": "^0.9.1"
},
"require-dev": {
"phpunit/phpunit": "~4.8.0",
"mikey179/vfsStream": "1.6.0",
"symfony/polyfill-mbstring": "~1.0",
"friendsofphp/php-cs-fixer": "^2.0"
},
"suggest": {
"ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images",
"ext-fileinfo": "Used for proper file type detection in the file abstraction layer",
"ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files",
"ext-openssl": "",
"ext-soap": "",
"ext-zip": "",
"ext-mysqli": ""
},
"extra": {
"typo3/class-alias-loader": {
"always-add-alias-loader": true
},
"branch-alias": {
"dev-TYPO3_7-6": "7.x-dev"
}
},
"replace": {
"typo3/cms-about": "self.version",
"typo3/cms-aboutmodules": "self.version",
"typo3/cms-adodb": "self.version",
"typo3/cms-backend": "self.version",
"typo3/cms-belog": "self.version",
"typo3/cms-beuser": "self.version",
"typo3/cms-context-help": "self.version",
"typo3/cms-core": "self.version",
"typo3/cms-cshmanual": "self.version",
"typo3/cms-css-styled-content": "self.version",
"typo3/cms-dbal": "self.version",
"typo3/cms-documentation": "self.version",
"typo3/cms-extbase": "self.version",
"typo3/cms-extensionmanager": "self.version",
"typo3/cms-feedit": "self.version",
"typo3/cms-felogin": "self.version",
"typo3/cms-filelist": "self.version",
"typo3/cms-filemetadata": "self.version",
"typo3/cms-fluid": "self.version",
"typo3/cms-fluid-styled-content": "self.version",
"typo3/cms-form": "self.version",
"typo3/cms-frontend": "self.version",
"typo3/cms-func": "self.version",
"typo3/cms-func-wizards": "self.version",
"typo3/cms-impexp": "self.version",
"typo3/cms-indexed-search": "self.version",
"typo3/cms-indexed-search-mysql": "self.version",
"typo3/cms-info": "self.version",
"typo3/cms-info-pagetsconfig": "self.version",
"typo3/cms-install": "self.version",
"typo3/cms-lang": "self.version",
"typo3/cms-linkvalidator": "self.version",
"typo3/cms-lowlevel": "self.version",
"typo3/cms-opendocs": "self.version",
"typo3/cms-recordlist": "self.version",
"typo3/cms-recycler": "self.version",
"typo3/cms-reports": "self.version",
"typo3/cms-rsaauth": "self.version",
"typo3/cms-rtehtmlarea": "self.version",
"typo3/cms-saltedpasswords": "self.version",
"typo3/cms-scheduler": "self.version",
"typo3/cms-setup": "self.version",
"typo3/cms-sv": "self.version",
"typo3/cms-sys-action": "self.version",
"typo3/cms-sys-note": "self.version",
"typo3/cms-t3editor": "self.version",
"typo3/cms-t3skin": "self.version",
"typo3/cms-taskcenter": "self.version",
"typo3/cms-tstemplate": "self.version",
"typo3/cms-version": "self.version",
"typo3/cms-viewpage": "self.version",
"typo3/cms-wizard-crpages": "self.version",
"typo3/cms-wizard-sortpages": "self.version",
"typo3/cms-workspaces": "self.version"
},
"autoload": {
"psr-4": {
"TYPO3\\CMS\\About\\": "typo3/sysext/about/Classes/",
"TYPO3\\CMS\\Aboutmodules\\": "typo3/sysext/aboutmodules/Classes/",
"TYPO3\\CMS\\Backend\\": "typo3/sysext/backend/Classes/",
"TYPO3\\CMS\\Belog\\": "typo3/sysext/belog/Classes/",
"TYPO3\\CMS\\Beuser\\": "typo3/sysext/beuser/Classes/",
"TYPO3\\CMS\\ContextHelp\\": "typo3/sysext/context_help/Classes/",
"TYPO3\\CMS\\Core\\": "typo3/sysext/core/Classes/",
"TYPO3\\CMS\\Cshmanual\\": "typo3/sysext/cshmanual/Classes/",
"TYPO3\\CMS\\CssStyledContent\\": "typo3/sysext/css_styled_content/Classes/",
"TYPO3\\CMS\\Dbal\\": "typo3/sysext/dbal/Classes/",
"TYPO3\\CMS\\Documentation\\": "typo3/sysext/documentation/Classes/",
"TYPO3\\CMS\\Extbase\\": "typo3/sysext/extbase/Classes/",
"TYPO3\\CMS\\Extensionmanager\\": "typo3/sysext/extensionmanager/Classes/",
"TYPO3\\CMS\\Feedit\\": "typo3/sysext/feedit/Classes/",
"TYPO3\\CMS\\Felogin\\": "typo3/sysext/felogin/Classes/",
"TYPO3\\CMS\\Filelist\\": "typo3/sysext/filelist/Classes/",
"TYPO3\\CMS\\Fluid\\": "typo3/sysext/fluid/Classes/",
"TYPO3\\CMS\\FluidStyledContent\\": "typo3/sysext/fluid_styled_content/Classes/",
"TYPO3\\CMS\\Form\\": "typo3/sysext/form/Classes/",
"TYPO3\\CMS\\Frontend\\": "typo3/sysext/frontend/Classes/",
"TYPO3\\CMS\\Func\\": "typo3/sysext/func/Classes/",
"TYPO3\\CMS\\Impexp\\": "typo3/sysext/impexp/Classes/",
"TYPO3\\CMS\\IndexedSearch\\": "typo3/sysext/indexed_search/Classes/",
"TYPO3\\CMS\\IndexedSearchMysql\\": "typo3/sysext/indexed_search_mysql/Classes/",
"TYPO3\\CMS\\Info\\": "typo3/sysext/info/Classes/",
"TYPO3\\CMS\\InfoPagetsconfig\\": "typo3/sysext/info_pagetsconfig/Classes/",
"TYPO3\\CMS\\Install\\": "typo3/sysext/install/Classes/",
"TYPO3\\CMS\\Lang\\": "typo3/sysext/lang/Classes/",
"TYPO3\\CMS\\Linkvalidator\\": "typo3/sysext/linkvalidator/Classes/",
"TYPO3\\CMS\\Lowlevel\\": "typo3/sysext/lowlevel/Classes/",
"TYPO3\\CMS\\Opendocs\\": "typo3/sysext/opendocs/Classes/",
"TYPO3\\CMS\\Recordlist\\": "typo3/sysext/recordlist/Classes/",
"TYPO3\\CMS\\Recycler\\": "typo3/sysext/recycler/Classes/",
"TYPO3\\CMS\\Reports\\": "typo3/sysext/reports/Classes/",
"TYPO3\\CMS\\Rsaauth\\": "typo3/sysext/rsaauth/Classes/",
"TYPO3\\CMS\\Rtehtmlarea\\": "typo3/sysext/rtehtmlarea/Classes/",
"TYPO3\\CMS\\Saltedpasswords\\": "typo3/sysext/saltedpasswords/Classes/",
"TYPO3\\CMS\\Scheduler\\": "typo3/sysext/scheduler/Classes/",
"TYPO3\\CMS\\Setup\\": "typo3/sysext/setup/Classes/",
"TYPO3\\CMS\\Sv\\": "typo3/sysext/sv/Classes/",
"TYPO3\\CMS\\SysAction\\": "typo3/sysext/sys_action/Classes/",
"TYPO3\\CMS\\SysNote\\": "typo3/sysext/sys_note/Classes/",
"TYPO3\\CMS\\T3editor\\": "typo3/sysext/t3editor/Classes/",
"TYPO3\\CMS\\Taskcenter\\": "typo3/sysext/taskcenter/Classes/",
"TYPO3\\CMS\\Tstemplate\\": "typo3/sysext/tstemplate/Classes/",
"TYPO3\\CMS\\Version\\": "typo3/sysext/version/Classes/",
"TYPO3\\CMS\\Viewpage\\": "typo3/sysext/viewpage/Classes/",
"TYPO3\\CMS\\WizardCrpages\\": "typo3/sysext/wizard_crpages/Classes/",
"TYPO3\\CMS\\WizardSortpages\\": "typo3/sysext/wizard_sortpages/Classes/",
"TYPO3\\CMS\\Workspaces\\": "typo3/sysext/workspaces/Classes/"
},
"classmap": [
"typo3/sysext/core/Resources/PHP/",
"typo3/sysext/fluid/Resources/PHP/"
],
"files": [
"typo3/sysext/core/Resources/PHP/GlobalDebugFunctions.php"
]
},
"autoload-dev": {
"psr-4": {
"TYPO3\\CMS\\Backend\\Tests\\": "typo3/sysext/backend/Tests/",
"TYPO3\\CMS\\Belog\\Tests\\": "typo3/sysext/belog/Tests/",
"TYPO3\\CMS\\Beuser\\Tests\\": "typo3/sysext/beuser/Tests/",
"TYPO3\\CMS\\Core\\Tests\\": "typo3/sysext/core/Tests/",
"TYPO3\\CMS\\Dbal\\Tests\\": "typo3/sysext/dbal/Tests/",
"TYPO3\\CMS\\Documentation\\Tests\\": "typo3/sysext/documentation/Tests/",
"TYPO3\\CMS\\Extbase\\Tests\\": "typo3/sysext/extbase/Tests/",
"TYPO3\\CMS\\Extensionmanager\\Tests\\": "typo3/sysext/extensionmanager/Tests/",
"TYPO3\\CMS\\Felogin\\Tests\\": "typo3/sysext/felogin/Tests/",
"TYPO3\\CMS\\Fluid\\Tests\\": "typo3/sysext/fluid/Tests/",
"TYPO3\\CMS\\Form\\Tests\\": "typo3/sysext/form/Tests/",
"TYPO3\\CMS\\Frontend\\Tests\\": "typo3/sysext/frontend/Tests/",
"TYPO3\\CMS\\Impexp\\Tests\\": "typo3/sysext/impexp/Tests/",
"TYPO3\\CMS\\IndexedSearch\\Tests\\": "typo3/sysext/indexed_search/Tests/",
"TYPO3\\CMS\\Install\\Tests\\": "typo3/sysext/install/Tests/",
"TYPO3\\CMS\\Lang\\Tests\\": "typo3/sysext/lang/Tests/",
"TYPO3\\CMS\\Lowlevel\\Tests\\": "typo3/sysext/lowlevel/Tests/",
"TYPO3\\CMS\\Recordlist\\Tests\\": "typo3/sysext/recordlist/Tests/",
"TYPO3\\CMS\\Reports\\Tests\\": "typo3/sysext/reports/Tests/",
"TYPO3\\CMS\\Rsaauth\\Tests\\": "typo3/sysext/rsaauth/Tests/",
"TYPO3\\CMS\\Saltedpasswords\\Tests\\": "typo3/sysext/saltedpasswords/Tests/",
"TYPO3\\CMS\\Scheduler\\Tests\\": "typo3/sysext/scheduler/Tests/",
"TYPO3\\CMS\\Sv\\Tests\\": "typo3/sysext/sv/Tests/",
"TYPO3\\CMS\\Workspaces\\Tests\\": "typo3/sysext/workspaces/Tests/",
"TYPO3\\CMS\\Recycler\\Tests\\": "typo3/sysext/recycler/Tests/"
},
"classmap": ["typo3/sysext/extbase/Tests/Unit/Object/Container/Fixtures/"]
}
}
You should never use the typo3/cms package for running sites, create your own distribution instead and do composer require typo3/cms to add TYPO3. Among others this allows you to finely tune what packages and settings are used.
Here is an distribution example to help you get started. Also see TYPO3 and Composer for a general introduction.
The issue at hand is that Composer cannot determine the version of the typo3/cms package. You could work around this by setting the COMPOSER_ROOT_VERSION environment variable:
export COMPOSER_ROOT_VERSION=X.Y.Z
But again, you should use your own distribution instead.
You can simply add
"typo3/cms": "~7.6",
to your require/require-dev options, so the news package should find a matching typo version.
The error u receive is simple: the news-package cant find a version for typo in the composer file.
NOTE: For an cleaner working dir you can configure how/where the basic package(typo3) should be saved with the extra-config block
EDIT:
the new composer.json file
{
"name": "typo3/cms",
"description": "TYPO3 CMS is a free open source Content Management Framework initially created by Kasper Skaarhoj and licensed under GNU/GPL.",
"keywords": ["typo3", "cms", "content management system", "extbase"],
"homepage": "https://typo3.org/",
"type": "typo3-cms-core",
"license": "GPL-2.0+",
"authors": [{
"name": "TYPO3 CMS Core Team",
"role": "Developer",
"homepage": "https://forge.typo3.org/projects/typo3cms-core"
},
{
"name": "The TYPO3 Community",
"role": "Contributor",
"homepage": "https://typo3.org/community/ "
}
],
"support": {
"general": "https://typo3.org/support/",
"issues": "https://forge.typo3.org",
"irc": "irc://irc.freenode.net/#typo3-cms",
"news": "nntp://lists.typo3.org"
},
"config": {
"optimize-autoloader": true,
"bin-dir": "bin"
},
"require": {
"php": ">=5.6.0",
"typo3/cms": "*",
"georgringer/news": "*",
"ext-json": "*",
"ext-pcre": "*",
"ext-session": "*",
"ext-xml": "*",
"psr/log": "~1.0.0",
"pear/http_request2": "*",
"swiftmailer/swiftmailer": "~5.4.5",
"symfony/console": "^2.7",
"symfony/finder": "^2.7",
"doctrine/instantiator": "~1.0.4",
"typo3/class-alias-loader": "^1.0",
"typo3/cms-composer-installers": "^1.2.8",
"psr/http-message": "~1.0",
"cogpowered/finediff": "~0.3.1",
"mso/idna-convert": "^0.9.1"
},
"require-dev": {
"phpunit/phpunit": "~4.8.0",
"mikey179/vfsStream": "1.6.0",
"symfony/polyfill-mbstring": "~1.0"
},
"suggest": {
"ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images",
"ext-fileinfo": "Used for proper file type detection in the file abstraction layer",
"ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files",
"ext-openssl": "",
"ext-soap": "",
"ext-zip": "",
"ext-mysqli": ""
},
"extra": {
"typo3/class-alias-loader": {
"always-add-alias-loader": true
},
"branch-alias": {
"dev-TYPO3_7-6": "7.x-dev"
}
},
"replace": {
"typo3/cms-about": "self.version",
"typo3/cms-aboutmodules": "self.version",
"typo3/cms-adodb": "self.version",
"typo3/cms-backend": "self.version",
"typo3/cms-belog": "self.version",
"typo3/cms-beuser": "self.version",
"typo3/cms-context-help": "self.version",
"typo3/cms-core": "self.version",
"typo3/cms-cshmanual": "self.version",
"typo3/cms-css-styled-content": "self.version",
"typo3/cms-dbal": "self.version",
"typo3/cms-documentation": "self.version",
"typo3/cms-extbase": "self.version",
"typo3/cms-extensionmanager": "self.version",
"typo3/cms-feedit": "self.version",
"typo3/cms-felogin": "self.version",
"typo3/cms-filelist": "self.version",
"typo3/cms-filemetadata": "self.version",
"typo3/cms-fluid": "self.version",
"typo3/cms-fluid-styled-content": "self.version",
"typo3/cms-form": "self.version",
"typo3/cms-frontend": "self.version",
"typo3/cms-func": "self.version",
"typo3/cms-func-wizards": "self.version",
"typo3/cms-impexp": "self.version",
"typo3/cms-indexed-search": "self.version",
"typo3/cms-indexed-search-mysql": "self.version",
"typo3/cms-info": "self.version",
"typo3/cms-info-pagetsconfig": "self.version",
"typo3/cms-install": "self.version",
"typo3/cms-lang": "self.version",
"typo3/cms-linkvalidator": "self.version",
"typo3/cms-lowlevel": "self.version",
"typo3/cms-opendocs": "self.version",
"typo3/cms-recordlist": "self.version",
"typo3/cms-recycler": "self.version",
"typo3/cms-reports": "self.version",
"typo3/cms-rsaauth": "self.version",
"typo3/cms-rtehtmlarea": "self.version",
"typo3/cms-saltedpasswords": "self.version",
"typo3/cms-scheduler": "self.version",
"typo3/cms-setup": "self.version",
"typo3/cms-sv": "self.version",
"typo3/cms-sys-action": "self.version",
"typo3/cms-sys-note": "self.version",
"typo3/cms-t3editor": "self.version",
"typo3/cms-t3skin": "self.version",
"typo3/cms-taskcenter": "self.version",
"typo3/cms-tstemplate": "self.version",
"typo3/cms-version": "self.version",
"typo3/cms-viewpage": "self.version",
"typo3/cms-wizard-crpages": "self.version",
"typo3/cms-wizard-sortpages": "self.version",
"typo3/cms-workspaces": "self.version"
},
"autoload": {
"psr-4": {
"TYPO3\\CMS\\About\\": "typo3/sysext/about/Classes/",
"TYPO3\\CMS\\Aboutmodules\\": "typo3/sysext/aboutmodules/Classes/",
"TYPO3\\CMS\\Backend\\": "typo3/sysext/backend/Classes/",
"TYPO3\\CMS\\Belog\\": "typo3/sysext/belog/Classes/",
"TYPO3\\CMS\\Beuser\\": "typo3/sysext/beuser/Classes/",
"TYPO3\\CMS\\ContextHelp\\": "typo3/sysext/context_help/Classes/",
"TYPO3\\CMS\\Core\\": "typo3/sysext/core/Classes/",
"TYPO3\\CMS\\Cshmanual\\": "typo3/sysext/cshmanual/Classes/",
"TYPO3\\CMS\\CssStyledContent\\": "typo3/sysext/css_styled_content/Classes/",
"TYPO3\\CMS\\Dbal\\": "typo3/sysext/dbal/Classes/",
"TYPO3\\CMS\\Documentation\\": "typo3/sysext/documentation/Classes/",
"TYPO3\\CMS\\Extbase\\": "typo3/sysext/extbase/Classes/",
"TYPO3\\CMS\\Extensionmanager\\": "typo3/sysext/extensionmanager/Classes/",
"TYPO3\\CMS\\Feedit\\": "typo3/sysext/feedit/Classes/",
"TYPO3\\CMS\\Felogin\\": "typo3/sysext/felogin/Classes/",
"TYPO3\\CMS\\Filelist\\": "typo3/sysext/filelist/Classes/",
"TYPO3\\CMS\\Fluid\\": "typo3/sysext/fluid/Classes/",
"TYPO3\\CMS\\FluidStyledContent\\": "typo3/sysext/fluid_styled_content/Classes/",
"TYPO3\\CMS\\Form\\": "typo3/sysext/form/Classes/",
"TYPO3\\CMS\\Frontend\\": "typo3/sysext/frontend/Classes/",
"TYPO3\\CMS\\Func\\": "typo3/sysext/func/Classes/",
"TYPO3\\CMS\\Impexp\\": "typo3/sysext/impexp/Classes/",
"TYPO3\\CMS\\IndexedSearch\\": "typo3/sysext/indexed_search/Classes/",
"TYPO3\\CMS\\IndexedSearchMysql\\": "typo3/sysext/indexed_search_mysql/Classes/",
"TYPO3\\CMS\\Info\\": "typo3/sysext/info/Classes/",
"TYPO3\\CMS\\InfoPagetsconfig\\": "typo3/sysext/info_pagetsconfig/Classes/",
"TYPO3\\CMS\\Install\\": "typo3/sysext/install/Classes/",
"TYPO3\\CMS\\Lang\\": "typo3/sysext/lang/Classes/",
"TYPO3\\CMS\\Linkvalidator\\": "typo3/sysext/linkvalidator/Classes/",
"TYPO3\\CMS\\Lowlevel\\": "typo3/sysext/lowlevel/Classes/",
"TYPO3\\CMS\\Opendocs\\": "typo3/sysext/opendocs/Classes/",
"TYPO3\\CMS\\Recordlist\\": "typo3/sysext/recordlist/Classes/",
"TYPO3\\CMS\\Recycler\\": "typo3/sysext/recycler/Classes/",
"TYPO3\\CMS\\Reports\\": "typo3/sysext/reports/Classes/",
"TYPO3\\CMS\\Rsaauth\\": "typo3/sysext/rsaauth/Classes/",
"TYPO3\\CMS\\Rtehtmlarea\\": "typo3/sysext/rtehtmlarea/Classes/",
"TYPO3\\CMS\\Saltedpasswords\\": "typo3/sysext/saltedpasswords/Classes/",
"TYPO3\\CMS\\Scheduler\\": "typo3/sysext/scheduler/Classes/",
"TYPO3\\CMS\\Setup\\": "typo3/sysext/setup/Classes/",
"TYPO3\\CMS\\Sv\\": "typo3/sysext/sv/Classes/",
"TYPO3\\CMS\\SysAction\\": "typo3/sysext/sys_action/Classes/",
"TYPO3\\CMS\\SysNote\\": "typo3/sysext/sys_note/Classes/",
"TYPO3\\CMS\\T3editor\\": "typo3/sysext/t3editor/Classes/",
"TYPO3\\CMS\\Taskcenter\\": "typo3/sysext/taskcenter/Classes/",
"TYPO3\\CMS\\Tstemplate\\": "typo3/sysext/tstemplate/Classes/",
"TYPO3\\CMS\\Version\\": "typo3/sysext/version/Classes/",
"TYPO3\\CMS\\Viewpage\\": "typo3/sysext/viewpage/Classes/",
"TYPO3\\CMS\\WizardCrpages\\": "typo3/sysext/wizard_crpages/Classes/",
"TYPO3\\CMS\\WizardSortpages\\": "typo3/sysext/wizard_sortpages/Classes/",
"TYPO3\\CMS\\Workspaces\\": "typo3/sysext/workspaces/Classes/"
},
"classmap": [
"typo3/sysext/core/Resources/PHP/",
"typo3/sysext/fluid/Resources/PHP/"
],
"files": [
"typo3/sysext/core/Resources/PHP/GlobalDebugFunctions.php"
]
},
"autoload-dev": {
"psr-4": {
"TYPO3\\CMS\\Backend\\Tests\\": "typo3/sysext/backend/Tests/",
"TYPO3\\CMS\\Belog\\Tests\\": "typo3/sysext/belog/Tests/",
"TYPO3\\CMS\\Beuser\\Tests\\": "typo3/sysext/beuser/Tests/",
"TYPO3\\CMS\\Core\\Tests\\": "typo3/sysext/core/Tests/",
"TYPO3\\CMS\\Dbal\\Tests\\": "typo3/sysext/dbal/Tests/",
"TYPO3\\CMS\\Documentation\\Tests\\": "typo3/sysext/documentation/Tests/",
"TYPO3\\CMS\\Extbase\\Tests\\": "typo3/sysext/extbase/Tests/",
"TYPO3\\CMS\\Extensionmanager\\Tests\\": "typo3/sysext/extensionmanager/Tests/",
"TYPO3\\CMS\\Felogin\\Tests\\": "typo3/sysext/felogin/Tests/",
"TYPO3\\CMS\\Fluid\\Tests\\": "typo3/sysext/fluid/Tests/",
"TYPO3\\CMS\\Form\\Tests\\": "typo3/sysext/form/Tests/",
"TYPO3\\CMS\\Frontend\\Tests\\": "typo3/sysext/frontend/Tests/",
"TYPO3\\CMS\\Impexp\\Tests\\": "typo3/sysext/impexp/Tests/",
"TYPO3\\CMS\\IndexedSearch\\Tests\\": "typo3/sysext/indexed_search/Tests/",
"TYPO3\\CMS\\Install\\Tests\\": "typo3/sysext/install/Tests/",
"TYPO3\\CMS\\Lang\\Tests\\": "typo3/sysext/lang/Tests/",
"TYPO3\\CMS\\Lowlevel\\Tests\\": "typo3/sysext/lowlevel/Tests/",
"TYPO3\\CMS\\Recordlist\\Tests\\": "typo3/sysext/recordlist/Tests/",
"TYPO3\\CMS\\Reports\\Tests\\": "typo3/sysext/reports/Tests/",
"TYPO3\\CMS\\Rsaauth\\Tests\\": "typo3/sysext/rsaauth/Tests/",
"TYPO3\\CMS\\Saltedpasswords\\Tests\\": "typo3/sysext/saltedpasswords/Tests/",
"TYPO3\\CMS\\Scheduler\\Tests\\": "typo3/sysext/scheduler/Tests/",
"TYPO3\\CMS\\Sv\\Tests\\": "typo3/sysext/sv/Tests/",
"TYPO3\\CMS\\Workspaces\\Tests\\": "typo3/sysext/workspaces/Tests/",
"TYPO3\\CMS\\Recycler\\Tests\\": "typo3/sysext/recycler/Tests/"
},
"classmap": ["typo3/sysext/extbase/Tests/Unit/Object/Container/Fixtures/"]
}
}
I'm working with Symfony 3. I used FOSCommentBundle on my project, it uses assetic-bundle which is not supported by Symfony 3. I tried running the command composer require symfony/assetic-bundle
but I keep getting:
Cannot run program(in directory "C:\wamp\www\myProject") "composer"CreateProcess error=2".
Ps: I'm a beginner
{
"name": "symfony/symfony",
"type": "library",
"description": "The Symfony PHP framework",
"keywords": ["framework"],
"homepage": "https://symfony.com",
"license": "MIT",
"authors": [
{
"name": "Fabien Potencier",
"email": "fabien#symfony.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"require": {
"php": ">=5.5.9",
"doctrine/common": "~2.4",
"twig/twig": "~1.28|~2.0",
"psr/cache": "~1.0",
"psr/log": "~1.0",
"symfony/polyfill-intl-icu": "~1.0",
"symfony/polyfill-mbstring": "~1.0",
"symfony/polyfill-php56": "~1.0",
"symfony/polyfill-php70": "~1.0",
"symfony/polyfill-util": "~1.0",
"symfony/assetic-bundle": "~2"
},
"replace": {
"symfony/asset": "self.version",
"symfony/browser-kit": "self.version",
"symfony/cache": "self.version",
"symfony/class-loader": "self.version",
"symfony/config": "self.version",
"symfony/console": "self.version",
"symfony/css-selector": "self.version",
"symfony/dependency-injection": "self.version",
"symfony/debug": "self.version",
"symfony/debug-bundle": "self.version",
"symfony/doctrine-bridge": "self.version",
"symfony/dom-crawler": "self.version",
"symfony/event-dispatcher": "self.version",
"symfony/expression-language": "self.version",
"symfony/filesystem": "self.version",
"symfony/finder": "self.version",
"symfony/form": "self.version",
"symfony/framework-bundle": "self.version",
"symfony/http-foundation": "self.version",
"symfony/http-kernel": "self.version",
"symfony/inflector": "self.version",
"symfony/intl": "self.version",
"symfony/ldap": "self.version",
"symfony/monolog-bridge": "self.version",
"symfony/options-resolver": "self.version",
"symfony/process": "self.version",
"symfony/property-access": "self.version",
"symfony/property-info": "self.version",
"symfony/proxy-manager-bridge": "self.version",
"symfony/routing": "self.version",
"symfony/security": "self.version",
"symfony/security-core": "self.version",
"symfony/security-csrf": "self.version",
"symfony/security-guard": "self.version",
"symfony/security-http": "self.version",
"symfony/security-bundle": "self.version",
"symfony/serializer": "self.version",
"symfony/stopwatch": "self.version",
"symfony/templating": "self.version",
"symfony/translation": "self.version",
"symfony/twig-bridge": "self.version",
"symfony/twig-bundle": "self.version",
"symfony/validator": "self.version",
"symfony/var-dumper": "self.version",
"symfony/web-profiler-bundle": "self.version",
"symfony/yaml": "self.version"
},
"require-dev": {
"cache/integration-tests": "dev-master",
"doctrine/cache": "~1.6",
"doctrine/data-fixtures": "1.0.*",
"doctrine/dbal": "~2.4",
"doctrine/orm": "~2.4,>=2.4.5",
"doctrine/doctrine-bundle": "~1.4",
"monolog/monolog": "~1.11",
"ocramius/proxy-manager": "~0.4|~1.0|~2.0",
"predis/predis": "~1.0",
"symfony/phpunit-bridge": "~3.2",
"egulias/email-validator": "~1.2,>=1.2.1",
"symfony/polyfill-apcu": "~1.1",
"symfony/security-acl": "~2.8|~3.0",
"phpdocumentor/reflection-docblock": "^3.0"
},
"conflict": {
"phpdocumentor/reflection-docblock": "<3.0",
"phpdocumentor/type-resolver": "<0.2.0"
},
"provide": {
"psr/cache-implementation": "1.0"
},
"autoload": {
"psr-4": {
"Symfony\\Bridge\\Doctrine\\": "src/Symfony/Bridge/Doctrine/",
"Symfony\\Bridge\\Monolog\\": "src/Symfony/Bridge/Monolog/",
"Symfony\\Bridge\\ProxyManager\\": "src/Symfony/Bridge/ProxyManager/",
"Symfony\\Bridge\\Swiftmailer\\": "src/Symfony/Bridge/Swiftmailer/",
"Symfony\\Bridge\\Twig\\": "src/Symfony/Bridge/Twig/",
"Symfony\\Bundle\\": "src/Symfony/Bundle/",
"Symfony\\Component\\": "src/Symfony/Component/"
},
"classmap": [
"src/Symfony/Component/Intl/Resources/stubs"
],
"exclude-from-classmap": [
"**/Tests/"
]
},
"minimum-stability": "dev",
"extra": {
"branch-alias": {
"dev-master": "3.1-dev"
}
}
When I run composer require symfony/assetic-bundle -vvv this is what I get:
Cannot run program "composer" (in directory "C:\wamp\www\myProject"): CreateProcess error=2,
The specified file can not be found
Just tried to install TYPO3 Surf at a TYPO3 CMS 7.6.10 Installation, but it didn't work.
C:\xampp\htdocs\typo3_src-7.6.10>composer require typo3/surf=dev-master
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for typo3/surf dev-master -> satisfiable by typo3/surf[dev-master].
- typo3/surf dev-master requires symfony/console ^2.8|^3.0 -> satisfiable by symfony/console[2.8.x-dev, 3.0.x-dev, 3.1.x-dev, 3.2.x-dev, v2.8.0, v2.8.0-BETA1, v2.8.1, v2.8.2, v2.8.3, v2.8.4, v2.8.5, v2.8.6, v2.8.7, v2.8.8, v2.8.9, v3.0.0, v3.0.0-BETA1, v3.0.1, v3.0.2, v3.0.3, v3.0.4, v3.0.5, v3.0.6, v3.0.7, v3.0.8, v3.0.9, v3.1.0, v3.1.0-BETA1, v3.1.0-RC1, v3.1.1, v3.1.2, v3.1.3] but these conflict with your requirements or minimum-stability.
Installation failed, reverting ./composer.json to its original content.
Without actually using surf currently, check out the latest betas, as a phar file is now used. So you don't need any composer installation and you won't run into those troubles you have right now.
Check out https://github.com/TYPO3/Surf/releases
At the moment only works with TYPO3 CMS 8 and newer.
The TYPO3 CMS 7 uses a old version of symfony/console.
{
"repositories": [
{
"type": "composer",
"url": "https://composer.typo3.org/"
}
],
"name": "markussom/creativeworkspace",
"require": {
"typo3/cms": "8.3.1 as 7.6.10",
"typo3/cms-beuser": "^8.3",
"typo3/cms-fluid-styled-content": "^8.3",
"typo3/cms-filelist": "^8.3",
"typo3/cms-impexp": "^8.3",
"typo3/cms-lowlevel": "^8.3",
"typo3/cms-rsaauth": "^8.3",
"typo3/cms-rtehtmlarea": "^8.3",
"typo3/cms-filemetadata": "^8.3",
"typo3/cms-setup": "^8.3",
"typo3/cms-tstemplate": "^8.3",
"typo3/cms-viewpage": "^8.3",
"typo3-ter/news": "^5.0.0",
"typo3-ter/realurl": "^2.0.14",
"helhum/typo3-console": "^3.3.1"
},
"scripts": {
"package-states": [
"./vendor/bin/typo3cms install:generatepackagestates"
],
"folder-structure": [
"./vendor/bin/typo3cms install:fixfolderstructure"
],
"post-autoload-dump": [
"#package-states",
"#folder-structure"
]
},
"extra": {
"typo3/cms": {
"cms-package-dir": "{$vendor-dir}/typo3/cms",
"web-dir": "Web"
},
"helhum/typo3-console": {
"install-binary": false
}
}
"require-dev": {
"typo3/cms-belog": "^8.3",
"typo3/cms-info": "^8.3",
"typo3/cms-reports": "^8.3",
"typo3/cms-info-pagetsconfig": "^8.3",
"TYPO3/Surf": "dev-master"
},
"config": {
"optimize-autoloader": true
}
}
Just for the sake of keeping giving an alternative in more recent times since the question was asked, there are a number of people starting to move to Docker and the easiest way I know how to do that is for TYPO3 is with DDEV, which is open source. Currently the opensource version for DDEV Live is not available yet but we're using DDEV Local for all local development and live is supposed to be showing up soon or so they've said. There's also DDEV Live available directly from DRUD which would be a managed solution and it sound like it's pretty robust setup though I haven't personally used it yet.
https://www.drud.com/
https://www.youtube.com/watch?v=HZVMPoI9SIk