Jump to content

Problème pour installer un thème


Lucie Géraud

Recommended Posts

Bonjour, 

J'aimerais installer un autre thème pour mon site, donc je fais importer un thème et quand je sauvegarde, ça me marque : "La taille du fichier dépasse la taille autorisée par le serveur. La limite est fixée à 8 Mo". 

Mais impossible de réduire un zip, il fait 10 Mo au lieu de 8 demandé.. 

Si quelqu'un peut m'aider se serait génial ! 

Bonne journée :)

Link to comment
Share on other sites

Je crois surtout que le problème c'ets un zip de plus de 8Mo pour un template c'ets une aberration sans nom.

Mais bon, la mode au milliard de module lorsqu'on achète un template peut certainement justifier l’obésité de ceux ci.

Ou peut être simplement que vous essayez de charger une archive incluant la documentation expliquant comment installer le template.

Link to comment
Share on other sites

Il y a 9 heures, doekia a dit :

35M incluant quasi tout symfony et même les unit-tests ... comme si on avait pas eu assez de pénétration avec ça

là tu soulèves le gap générationnel sur le développement web et la vision de ce que les nouveaux appellent le legacy code alors que nous on parle de framework Prestashop.

Link to comment
Share on other sites

12 hours ago, doekia said:

Il suffit s'ajouter ps_checkout comme module du thème... lui seul c'est ... devinez ....

35M incluant quasi tout symfony et même les unit-tests ... comme si on avait pas eu assez de pénétration avec ça

N'importe quoi ...

https://github.com/PrestaShopCorp/ps_checkout/releases/latest

3.55 MB !

Il y a très peu de composants Symfony, voici la liste de tous les composants Symfony : https://symfony.com/doc/3.4/components/index.html et si on regarde le composer.json de ce module https://github.com/PrestaShopCorp/ps_checkout/blob/master/composer.json

        "symfony/config": "^3.4",
        "symfony/dependency-injection": "^3.4",
        "symfony/finder": "^3.4",
        "symfony/options-resolver": "^3.4",

Avec le jeu des dépendances, on se retrouve au final avec 10 packages Symfony mais une bonne partie sont des polyfill ou de petits packages.

Enfin les UnitTests ne posent aucun problème de sécurité, c'est le package qui permet de les lancer qui est dangereux en production, mais les tests eux ne représentent absolument aucun danger.

2 hours ago, Mediacom87 said:

là tu soulèves le gap générationnel sur le développement web et la vision de ce que les nouveaux appellent le legacy code alors que nous on parle de framework Prestashop.

Effectivement le gap générationel semble abyssal ^^

23 hours ago, Divine said:

Je suis d'accord : 10 Mo pour le zip d'un thème !... mon dieu :blink:

Totalement d'accord, mais les modules ne sont souvent pas le plus problématique en terme de poids (car y a pleins de choses à redire sur d'autres points) le problème c'est que la plupart des thèmes embarquent désormais des fichiers photoshop PSD mais aussi plusieurs layout avec souvent pas mal d'images absolument optimisées.

Link to comment
Share on other sites

@Janett vraiment 3.5M ?!?

$ du -sh v2.15*.zip
11M	v2.15.3-ps_checkout.zip

$ ls -als v2.15*
10396 -rw-rw-r-- 1 doekia doekia 10641544 May 28 19:47 v2.15.3-ps_checkout.zip

ps_checkout$ ls -als vendor
total 72
4 drwxr-xr-x 17 doekia doekia 4096 May 26 12:35 .
4 drwxr-xr-x 11 doekia doekia 4096 May 26 12:35 ..
4 -rw-r--r--  1 doekia doekia  178 May 26 12:35 autoload.php
4 drwxr-xr-x  2 doekia doekia 4096 May 26 12:35 bin
4 drwxr-xr-x  2 doekia doekia 4096 May 26 12:35 composer
4 drwxr-xr-x  6 doekia doekia 4096 May 26 12:35 guzzlehttp
4 drwxr-xr-x  3 doekia doekia 4096 May 26 12:35 monolog
4 drwxr-xr-x  3 doekia doekia 4096 May 26 12:35 paragonie
4 drwxr-xr-x  3 doekia doekia 4096 May 26 12:35 phpoption
4 drwxr-xr-x  5 doekia doekia 4096 May 26 12:35 prestashop
4 drwxr-xr-x  6 doekia doekia 4096 May 26 12:35 psr
4 drwxr-xr-x  3 doekia doekia 4096 May 26 12:35 ramsey
4 drwxr-xr-x  3 doekia doekia 4096 May 26 12:35 react
4 drwxr-xr-x  3 doekia doekia 4096 May 26 12:35 segmentio
4 drwxr-xr-x  3 doekia doekia 4096 May 26 12:35 sentry
4 drwxr-xr-x 13 doekia doekia 4096 May 26 12:35 symfony
4 drwxr-xr-x  3 doekia doekia 4096 May 26 12:35 vlucas
4 drwxr-xr-x  3 doekia doekia 4096 May 26 12:35 webmozart

Il s'agit de l'archive transmise par le client qu'il a téléchargé depuis sont espace addons (date de l'archive)

ps_checkout$ du -sh .
25M	.

Donc 25M désolé ma mémoire a faibli

 

Une dernière pour la route (car cela pose encore moins de problème si les phpunit sont exclues des modules en prod)

Absent nous n'auront pas à nous tordre l'esprit à évaluer chacun des éléments. Après chacun gère la sécurité de sa plateforme comme il l'entend, mais le marchand de base il doit pouvoir faire une confiance aveugle au code qu'il déploie. Donc pour moi les phpunit et autre code de test c'est purement à bannir.

ps_checkout$ grep -rc 'eval(' . --include='*.php' | grep -v -e ':0$'
./vendor/symfony/config/Tests/Resource/ReflectionClassResourceTest.php:2
./vendor/symfony/config/Tests/Resource/ClassExistenceResourceTest.php:1
./vendor/symfony/dependency-injection/Tests/Dumper/PhpDumperTest.php:17
./vendor/symfony/cache/Tests/Simple/PhpArrayCacheTest.php:3
./vendor/symfony/cache/Tests/Adapter/PhpArrayAdapterTest.php:2
./vendor/symfony/cache/Traits/RedisTrait.php:1
./vendor/symfony/expression-language/Tests/ExpressionLanguageTest.php:1
./vendor/symfony/yaml/Tests/ParserTest.php:1
./vendor/symfony/yaml/Tests/DumperTest.php:1
ps_checkout$ find . -name 'phpunit*' -o -name '*Test*'
./vendor/guzzlehttp/log-subscriber/tests/FormatterTest.php
./vendor/guzzlehttp/log-subscriber/tests/SimpleLoggerTest.php
./vendor/guzzlehttp/log-subscriber/tests/LogSubscriberTest.php
./vendor/guzzlehttp/log-subscriber/phpunit.xml.dist
./vendor/guzzlehttp/streams/tests/AsyncReadStreamTest.php
./vendor/guzzlehttp/streams/tests/UtilsTest.php
./vendor/guzzlehttp/streams/tests/StreamDecoratorTraitTest.php
./vendor/guzzlehttp/streams/tests/BufferStreamTest.php
./vendor/guzzlehttp/streams/tests/CachingStreamTest.php
./vendor/guzzlehttp/streams/tests/NullStreamTest.php
./vendor/guzzlehttp/streams/tests/LimitStreamTest.php
./vendor/guzzlehttp/streams/tests/StreamTest.php
./vendor/guzzlehttp/streams/tests/DroppingStreamTest.php
./vendor/guzzlehttp/streams/tests/GuzzleStreamWrapperTest.php
./vendor/guzzlehttp/streams/tests/InflateStreamTest.php
./vendor/guzzlehttp/streams/tests/PumpStreamTest.php
./vendor/guzzlehttp/streams/tests/LazyOpenStreamTest.php
./vendor/guzzlehttp/streams/tests/AppendStreamTest.php
./vendor/guzzlehttp/streams/tests/FnStreamTest.php
./vendor/guzzlehttp/streams/tests/Exception/SeekExceptionTest.php
./vendor/guzzlehttp/streams/tests/NoSeekStreamTest.php
./vendor/guzzlehttp/streams/phpunit.xml.dist
./vendor/guzzlehttp/ringphp/tests/CoreTest.php
./vendor/guzzlehttp/ringphp/tests/Future/FutureArrayTest.php
./vendor/guzzlehttp/ringphp/tests/Future/CompletedFutureArrayTest.php
./vendor/guzzlehttp/ringphp/tests/Future/CompletedFutureValueTest.php
./vendor/guzzlehttp/ringphp/tests/Future/FutureValueTest.php
./vendor/guzzlehttp/ringphp/tests/Client/MockHandlerTest.php
./vendor/guzzlehttp/ringphp/tests/Client/CurlMultiHandlerTest.php
./vendor/guzzlehttp/ringphp/tests/Client/CurlFactoryTest.php
./vendor/guzzlehttp/ringphp/tests/Client/CurlHandlerTest.php
./vendor/guzzlehttp/ringphp/tests/Client/MiddlewareTest.php
./vendor/guzzlehttp/ringphp/tests/Client/StreamHandlerTest.php
./vendor/guzzlehttp/ringphp/phpunit.xml.dist
./vendor/symfony/config/Tests
./vendor/symfony/config/Tests/Definition/ArrayNodeTest.php
./vendor/symfony/config/Tests/Definition/IntegerNodeTest.php
./vendor/symfony/config/Tests/Definition/FloatNodeTest.php
./vendor/symfony/config/Tests/Definition/PrototypedArrayNodeTest.php
./vendor/symfony/config/Tests/Definition/FinalizationTest.php
./vendor/symfony/config/Tests/Definition/MergeTest.php
./vendor/symfony/config/Tests/Definition/BooleanNodeTest.php
./vendor/symfony/config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php
./vendor/symfony/config/Tests/Definition/Builder/BooleanNodeDefinitionTest.php
./vendor/symfony/config/Tests/Definition/Builder/NodeBuilderTest.php
./vendor/symfony/config/Tests/Definition/Builder/ExprBuilderTest.php
./vendor/symfony/config/Tests/Definition/Builder/NumericNodeDefinitionTest.php
./vendor/symfony/config/Tests/Definition/Builder/EnumNodeDefinitionTest.php
./vendor/symfony/config/Tests/Definition/Builder/TreeBuilderTest.php
./vendor/symfony/config/Tests/Definition/ScalarNodeTest.php
./vendor/symfony/config/Tests/Definition/Dumper/YamlReferenceDumperTest.php
./vendor/symfony/config/Tests/Definition/Dumper/XmlReferenceDumperTest.php
./vendor/symfony/config/Tests/Definition/NormalizationTest.php
./vendor/symfony/config/Tests/Definition/EnumNodeTest.php
./vendor/symfony/config/Tests/DependencyInjection/ConfigCachePassTest.php
./vendor/symfony/config/Tests/ConfigCacheFactoryTest.php
./vendor/symfony/config/Tests/Loader/LoaderResolverTest.php
./vendor/symfony/config/Tests/Loader/LoaderTest.php
./vendor/symfony/config/Tests/Loader/FileLoaderTest.php
./vendor/symfony/config/Tests/Loader/DelegatingLoaderTest.php
./vendor/symfony/config/Tests/ConfigCacheTest.php
./vendor/symfony/config/Tests/FileLocatorTest.php
./vendor/symfony/config/Tests/Resource/DirectoryResourceTest.php
./vendor/symfony/config/Tests/Resource/FileExistenceResourceTest.php
./vendor/symfony/config/Tests/Resource/GlobResourceTest.php
./vendor/symfony/config/Tests/Resource/ComposerResourceTest.php
./vendor/symfony/config/Tests/Resource/ReflectionClassResourceTest.php
./vendor/symfony/config/Tests/Resource/FileResourceTest.php
./vendor/symfony/config/Tests/Resource/ClassExistenceResourceTest.php
./vendor/symfony/config/Tests/Util/XmlUtilsTest.php
./vendor/symfony/config/Tests/ResourceCheckerConfigCacheTest.php
./vendor/symfony/config/Tests/Exception/FileLoaderLoadExceptionTest.php
./vendor/symfony/config/phpunit.xml.dist
./vendor/symfony/dependency-injection/Tests
./vendor/symfony/dependency-injection/Tests/DefinitionDecoratorTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/CheckCircularReferencesPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/CheckExceptionOnInvalidReferenceBehaviorPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/CheckArgumentsValidityPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/InlineServiceDefinitionsPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveInvalidReferencesPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/CheckDefinitionValidityPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveTaggedIteratorArgumentPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveBindingsPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/AutowireRequiredMethodsPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveNamedArgumentsPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/IntegrationTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveHotPathPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveParameterPlaceHoldersPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ServiceLocatorTagPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/PriorityTaggedServiceTraitTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/AnalyzeServiceReferencesPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveFactoryClassPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveClassPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ExtensionCompilerPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveInstanceofConditionalsPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/DefinitionErrorExceptionPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/FactoryReturnTypePassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/DecoratorServicePassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/RemoveUnusedDefinitionsPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/RegisterServiceSubscribersPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/MergeExtensionConfigurationPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/AutowireExceptionPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveDefinitionTemplatesPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/PassConfigTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/AutoAliasServicePassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/RegisterEnvVarProcessorsPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/AutowirePassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolvePrivatesPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/CheckReferenceValidityPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveReferencesToAliasesPassTest.php
./vendor/symfony/dependency-injection/Tests/Compiler/ResolveChildDefinitionsPassTest.php
./vendor/symfony/dependency-injection/Tests/ReferenceTest.php
./vendor/symfony/dependency-injection/Tests/LazyProxy/Instantiator/RealServiceInstantiatorTest.php
./vendor/symfony/dependency-injection/Tests/LazyProxy/PhpDumper/NullDumperTest.php
./vendor/symfony/dependency-injection/Tests/ParameterBag/EnvPlaceholderParameterBagTest.php
./vendor/symfony/dependency-injection/Tests/ParameterBag/FrozenParameterBagTest.php
./vendor/symfony/dependency-injection/Tests/ParameterBag/ParameterBagTest.php
./vendor/symfony/dependency-injection/Tests/Argument/RewindableGeneratorTest.php
./vendor/symfony/dependency-injection/Tests/ContainerTest.php
./vendor/symfony/dependency-injection/Tests/Loader/XmlFileLoaderTest.php
./vendor/symfony/dependency-injection/Tests/Loader/LoaderResolverTest.php
./vendor/symfony/dependency-injection/Tests/Loader/ClosureLoaderTest.php
./vendor/symfony/dependency-injection/Tests/Loader/PhpFileLoaderTest.php
./vendor/symfony/dependency-injection/Tests/Loader/IniFileLoaderTest.php
./vendor/symfony/dependency-injection/Tests/Loader/FileLoaderTest.php
./vendor/symfony/dependency-injection/Tests/Loader/GlobFileLoaderTest.php
./vendor/symfony/dependency-injection/Tests/Loader/YamlFileLoaderTest.php
./vendor/symfony/dependency-injection/Tests/Loader/DirectoryLoaderTest.php
./vendor/symfony/dependency-injection/Tests/Extension/ExtensionTest.php
./vendor/symfony/dependency-injection/Tests/ContainerBuilderTest.php
./vendor/symfony/dependency-injection/Tests/EnvVarProcessorTest.php
./vendor/symfony/dependency-injection/Tests/ParameterTest.php
./vendor/symfony/dependency-injection/Tests/DefinitionTest.php
./vendor/symfony/dependency-injection/Tests/CrossCheckTest.php
./vendor/symfony/dependency-injection/Tests/Fixtures/TestDefinition1.php
./vendor/symfony/dependency-injection/Tests/Fixtures/TestDefinition2.php
./vendor/symfony/dependency-injection/Tests/Fixtures/TestServiceSubscriber.php
./vendor/symfony/dependency-injection/Tests/Dumper/XmlDumperTest.php
./vendor/symfony/dependency-injection/Tests/Dumper/YamlDumperTest.php
./vendor/symfony/dependency-injection/Tests/Dumper/PhpDumperTest.php
./vendor/symfony/dependency-injection/Tests/Dumper/GraphvizDumperTest.php
./vendor/symfony/dependency-injection/Tests/ChildDefinitionTest.php
./vendor/symfony/dependency-injection/Tests/ServiceLocatorTest.php
./vendor/symfony/dependency-injection/Tests/Config/ContainerParametersResourceCheckerTest.php
./vendor/symfony/dependency-injection/Tests/Config/ContainerParametersResourceTest.php
./vendor/symfony/dependency-injection/Tests/Config/AutowireServiceResourceTest.php
./vendor/symfony/dependency-injection/phpunit.xml.dist
./vendor/symfony/cache/Tests
./vendor/symfony/cache/Tests/CacheItemTest.php
./vendor/symfony/cache/Tests/DoctrineProviderTest.php
./vendor/symfony/cache/Tests/Simple/MemcachedCacheTest.php
./vendor/symfony/cache/Tests/Simple/FilesystemCacheTest.php
./vendor/symfony/cache/Tests/Simple/ApcuCacheTest.php
./vendor/symfony/cache/Tests/Simple/CacheTestCase.php
./vendor/symfony/cache/Tests/Simple/ArrayCacheTest.php
./vendor/symfony/cache/Tests/Simple/RedisArrayCacheTest.php
./vendor/symfony/cache/Tests/Simple/PhpFilesCacheTest.php
./vendor/symfony/cache/Tests/Simple/PhpArrayCacheWithFallbackTest.php
./vendor/symfony/cache/Tests/Simple/AbstractRedisCacheTest.php
./vendor/symfony/cache/Tests/Simple/RedisCacheTest.php
./vendor/symfony/cache/Tests/Simple/Psr6CacheTest.php
./vendor/symfony/cache/Tests/Simple/ChainCacheTest.php
./vendor/symfony/cache/Tests/Simple/PhpArrayCacheTest.php
./vendor/symfony/cache/Tests/Simple/NullCacheTest.php
./vendor/symfony/cache/Tests/Simple/TraceableCacheTest.php
./vendor/symfony/cache/Tests/Simple/PdoCacheTest.php
./vendor/symfony/cache/Tests/Simple/RedisClusterCacheTest.php
./vendor/symfony/cache/Tests/Simple/PdoDbalCacheTest.php
./vendor/symfony/cache/Tests/Simple/DoctrineCacheTest.php
./vendor/symfony/cache/Tests/Simple/MemcachedCacheTextModeTest.php
./vendor/symfony/cache/Tests/Adapter/PredisClusterAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/PhpArrayAdapterWithFallbackTest.php
./vendor/symfony/cache/Tests/Adapter/PdoAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/RedisClusterAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/TagAwareAndProxyAdapterIntegrationTest.php
./vendor/symfony/cache/Tests/Adapter/NullAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/PhpFilesAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/DoctrineAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/AdapterTestCase.php
./vendor/symfony/cache/Tests/Adapter/TagAwareAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/RedisAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/ApcuAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/MemcachedAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/PhpArrayAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/ArrayAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/FilesystemAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/ProxyAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/ChainAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/PdoDbalAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/NamespacedProxyAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/PredisAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/SimpleCacheAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/TraceableAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/PredisRedisClusterAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/TraceableTagAwareAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/AbstractRedisAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/MaxIdLengthAdapterTest.php
./vendor/symfony/cache/Tests/Adapter/RedisArrayAdapterTest.php
./vendor/symfony/cache/phpunit.xml.dist
./vendor/symfony/expression-language/Tests
./vendor/symfony/expression-language/Tests/ParsedExpressionTest.php
./vendor/symfony/expression-language/Tests/Node/ArrayNodeTest.php
./vendor/symfony/expression-language/Tests/Node/ConstantNodeTest.php
./vendor/symfony/expression-language/Tests/Node/NodeTest.php
./vendor/symfony/expression-language/Tests/Node/ArgumentsNodeTest.php
./vendor/symfony/expression-language/Tests/Node/NameNodeTest.php
./vendor/symfony/expression-language/Tests/Node/ConditionalNodeTest.php
./vendor/symfony/expression-language/Tests/Node/GetAttrNodeTest.php
./vendor/symfony/expression-language/Tests/Node/FunctionNodeTest.php
./vendor/symfony/expression-language/Tests/Node/UnaryNodeTest.php
./vendor/symfony/expression-language/Tests/Node/BinaryNodeTest.php
./vendor/symfony/expression-language/Tests/Node/AbstractNodeTest.php
./vendor/symfony/expression-language/Tests/ParserCache/ParserCacheAdapterTest.php
./vendor/symfony/expression-language/Tests/Fixtures/TestProvider.php
./vendor/symfony/expression-language/Tests/ExpressionTest.php
./vendor/symfony/expression-language/Tests/ParserTest.php
./vendor/symfony/expression-language/Tests/ExpressionLanguageTest.php
./vendor/symfony/expression-language/Tests/LexerTest.php
./vendor/symfony/expression-language/Tests/ExpressionFunctionTest.php
./vendor/symfony/expression-language/phpunit.xml.dist
./vendor/symfony/filesystem/Tests
./vendor/symfony/filesystem/Tests/ExceptionTest.php
./vendor/symfony/filesystem/Tests/FilesystemTestCase.php
./vendor/symfony/filesystem/Tests/LockHandlerTest.php
./vendor/symfony/filesystem/Tests/FilesystemTest.php
./vendor/symfony/filesystem/phpunit.xml.dist
./vendor/symfony/options-resolver/Tests
./vendor/symfony/options-resolver/Tests/Debug/OptionsResolverIntrospectorTest.php
./vendor/symfony/options-resolver/Tests/OptionsResolverTest.php
./vendor/symfony/options-resolver/phpunit.xml.dist
./vendor/symfony/finder/Tests
./vendor/symfony/finder/Tests/Iterator/IteratorTestCase.php
./vendor/symfony/finder/Tests/Iterator/FileTypeFilterIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/SizeRangeFilterIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/MultiplePcreFilterIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/RealIteratorTestCase.php
./vendor/symfony/finder/Tests/Iterator/CustomFilterIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/DepthRangeFilterIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/PathFilterIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/ExcludeDirectoryFilterIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/FilenameFilterIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/FilecontentFilterIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/FilterIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/DateRangeFilterIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/SortableIteratorTest.php
./vendor/symfony/finder/Tests/Iterator/RecursiveDirectoryIteratorTest.php
./vendor/symfony/finder/Tests/FinderTest.php
./vendor/symfony/finder/Tests/Comparator/NumberComparatorTest.php
./vendor/symfony/finder/Tests/Comparator/DateComparatorTest.php
./vendor/symfony/finder/Tests/Comparator/ComparatorTest.php
./vendor/symfony/finder/Tests/GlobTest.php
./vendor/symfony/finder/phpunit.xml.dist
./vendor/symfony/yaml/Tests
./vendor/symfony/yaml/Tests/InlineTest.php
./vendor/symfony/yaml/Tests/YamlTest.php
./vendor/symfony/yaml/Tests/Fixtures/YtsBasicTests.yml
./vendor/symfony/yaml/Tests/Fixtures/sfTests.yml
./vendor/symfony/yaml/Tests/Fixtures/YtsErrorTests.yml
./vendor/symfony/yaml/Tests/ParserTest.php
./vendor/symfony/yaml/Tests/ParseExceptionTest.php
./vendor/symfony/yaml/Tests/DumperTest.php
./vendor/symfony/yaml/Tests/Command/LintCommandTest.php
./vendor/symfony/yaml/phpunit.xml.dist
./vendor/monolog/monolog/src/Monolog/Handler/TestHandler.php
./vendor/prestashop/module-lib-service-container/tests/Unit/phpunit.xml
./vendor/prestashop/module-lib-service-container/tests/Unit/DependencyInjection/ServiceContainerTest.php
./vendor/prestashop/module-lib-service-container/tests/Unit/DependencyInjection/ContainerProviderTest.php
./vendor/prestashop/decimal/tests/Operation/ComparisonTest.php
./vendor/prestashop/decimal/tests/Operation/MultiplicationTest.php
./vendor/prestashop/decimal/tests/Operation/DivisionTest.php
./vendor/prestashop/decimal/tests/Operation/AdditionTest.php
./vendor/prestashop/decimal/tests/Operation/MagnitudeChangeTest.php
./vendor/prestashop/decimal/tests/Operation/RoundingTest.php
./vendor/prestashop/decimal/tests/Operation/SubtractionTest.php
./vendor/prestashop/decimal/tests/DecimalNumberTest.php
./vendor/prestashop/decimal/phpunit.xml.dist
./vendor/prestashop/module-lib-cache-directory-provider/tests/Unit/Cache/CacheDirectoryProviderTest.php
./vendor/prestashop/module-lib-cache-directory-provider/tests/Unit/phpunit.xml
./vendor/segmentio/analytics-php/test/ConsumerForkCurlTest.php
./vendor/segmentio/analytics-php/test/ConsumerLibCurlTest.php
./vendor/segmentio/analytics-php/test/ConsumerFileTest.php
./vendor/segmentio/analytics-php/test/AnalyticsTest.php
./vendor/segmentio/analytics-php/test/ConsumerSocketTest.php
./vendor/sentry/sentry/phpunit.xml
./vendor/paragonie/random_compat/phpunit-autoload.php
./vendor/psr/log/Psr/Log/Test
./vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php
./vendor/psr/log/Psr/Log/Test/DummyTest.php
./vendor/psr/log/Psr/Log/Test/TestLogger.php

 

Link to comment
Share on other sites

1 hour ago, doekia said:

@Janett vraiment 3.5M ?!?

Il s'agit de l'archive transmise par le client qu'il a téléchargé depuis sont espace addons (date de l'archive)

Donc 25M désolé ma mémoire a faibli

 

Il doit s'agir d'une vieille version, celle qui contenait des PDF du guide utilisateur (dossier docs, un pdf par langue avec de grosses captures d'écran), le poids d'un fichier PHP est négligeable puisque ce n'est que du texte ;)

Ce qui peut jouer également sur une boutique, c'est le processus de mise à jour d'un module ne supprimer pas les fichiers obsolètes, une boutique qui a connu la version 1 puis la version 2 aura beaucoup de fichiers inutilisés.

La version Addons est la même que celle présente sur GitHub, c'est une GitHub Action qui envoi automatiquement le ZIP de release présent sur GitHub sur Addons pour information.

Je t'invite à vérifier sur les dernières versions ;) 

1 hour ago, doekia said:

Une dernière pour la route (car cela pose encore moins de problème si les phpunit sont exclues des modules en prod)

Absent nous n'auront pas à nous tordre l'esprit à évaluer chacun des éléments. Après chacun gère la sécurité de sa plateforme comme il l'entend, mais le marchand de base il doit pouvoir faire une confiance aveugle au code qu'il déploie. Donc pour moi les phpunit et autre code de test c'est purement à bannir.

Les fichiers que tu mentionnes ne sont pas dangereux et ne sont pas exécutables puisque les dépendances nécessaires ne sont pas présentes, une tentative d'execution provoquera une erreur fatale puisque des fichiers ne pourront être inclus et des classes seront introuvables.

Faire l'amalgame être un package dangereux (PHPUnit) et des fichiers de tests inoffensifs c'est vraiment vouloir faire passer des vessies pour des lanternes 🤣

 

Edited by Janett (see edit history)
Link to comment
Share on other sites

@Janett

Il y a 6 heures, Janett a dit :

Faire l'amalgame être un package dangereux (PHPUnit) et des fichiers de tests inoffensifs c'est vraiment vouloir faire passer des vessies pour des lanternes 🤣

Vecteur d'attaque de l'an dernier et quand tu dis que le tests sont inoffensif, tu les as vérifié un à un? Et question bonus, ils servent à quoi finalement sur la machine de production ces "tests"?

v2.15.3-ps_checkout.zip

Il y a 6 heures, Janett a dit :

Il doit s'agir d'une vieille version, celle qui contenait des PDF du guide utilisateur (dossier docs, un pdf par langue avec de grosses captures d'écran), le poids d'un fichier PHP est négligeable puisque ce n'est que du texte 

je ne parlais pas de la taille chez le client mais du zip en provenance addons (voir attachement)

la taille c'est 25M (dont "seulement" 9M de pdf) ça nous fait quand même un beau bébé de 15M

Si j'enlève tout ce qui est test je gagne encore 4M

D'origine:

ps_checkout$ du -sh *
20K	classes
32K	config
4.0K	config.xml
140K	controllers
8.6M	docs
4.0K	index.php
12K	LICENSE
116K	logo.png
4.0K	package.json
4.0K	package-lock.json
64K	ps_checkout.php
4.0K	README.md
1.1M	src
664K	translations
96K	upgrade
11M	vendor
2.9M	views

Une fois enlevé l'inutile:

ps_checkout$ du -sh *
20K	classes
32K	config
4.0K	config.xml
140K	controllers
4.0K	index.php
12K	LICENSE
116K	logo.png
4.0K	package.json
4.0K	package-lock.json
64K	ps_checkout.php
4.0K	README.md
1.1M	src
664K	translations
96K	upgrade
6.9M	vendor
2.9M	views

 

Link to comment
Share on other sites

4 hours ago, doekia said:

Vecteur d'attaque de l'an dernier et quand tu dis que le tests sont inoffensif, tu les as vérifié un à un? Et question bonus, ils servent à quoi finalement sur la machine de production ces "tests"?

Le vecteur d’attaque de l’an dernier ce n’était pas les fichiers de tests mais le package PHPUnit. Il ne faut pas tout mélanger non plus…

4 hours ago, doekia said:

Cet article parle de la période durant laquelle la version 1 du module contenait le package PHPUnit qui pouvait donc servir de vecteur d’attaque.

A l’époque une mise à jour 1.2.9 du module était sortie rapidement pour supprimer toute trace de ce package dans le module via le processus de mise à jour.

Il n’est pas question des fichiers de tests qui ne sont pas exécutables sans le package PHPUnit et provoqueront une erreur 500 à l’exécution en raison de classes introuvables.

4 hours ago, doekia said:

je ne parlais pas de la taille chez le client mais du zip en provenance addons (voir attachement)

la taille c'est 25M (dont "seulement" 9M de pdf) ça nous fait quand même un beau bébé de 15M

Si j'enlève tout ce qui est test je gagne encore 4M

 

Tu prends le ZIP de la version 2.15.3 tu as 2 versions de maintenance de retard et depuis la version 2.15.4 la taille du ZIP est bien de 3.55 Mb

Certes il est possible de gagner encore 4 Mb comme tu le démontres mais on est quand même déjà loin des 35 Mb que tout nous annonçait avec l’ensemble des packages Symfony ce qui est totalement faux.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...