Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dependencies upgrade #379

Merged
merged 1 commit into from Jan 17, 2018
Merged

Conversation

soullivaneuh
Copy link
Contributor

@soullivaneuh soullivaneuh commented Jan 13, 2018

Closes #268
Closes #297
Closes #321
Closes #337 (replace)
Closes #366 (replace)
Closes #378 (replace)
Closes #353

Because some dependencies are linked together (e.g. PHPUnit with Symfony, Nelmio alice with data-fixtures...), I decided to make a global PR to update them all.

  • Travis update
  • Composer dependencies update
  • Composer lint (~ and simple | should be used by convention)
  • Fix tests
  • Rollback symfony/symfony dependencies to ^3.4 || ^4.0 when tests will be fixed
  • Remove all BC tricks
  • PHP migration on php-cs-fixer
  • Introduce header comment on php-cs-fixer (to make it working well with strict_type declaration placement)
  • Add strict typing on methods

@soullivaneuh soullivaneuh changed the base branch from master to 2.x January 13, 2018 20:45
@soullivaneuh soullivaneuh mentioned this pull request Jan 13, 2018
2 tasks
@soullivaneuh soullivaneuh force-pushed the dependencies-upgrade branch 6 times, most recently from 8b60f57 to a677b3c Compare January 13, 2018 21:35
@soullivaneuh
Copy link
Contributor Author

I kept Symfony 4.0.* on allowed failure section because some package are not yet compatible, like phpcr-bundle or paratest.

@soullivaneuh
Copy link
Contributor Author

Oh, phpunit is completly failing with Symfony 4... I'll update travis and composer to make Symfony 4 test mandatory plus an extra test with problematic dependencies.

@FlintCIBot
Copy link

Lint errors was found.

A patch is also available.

Please see the report: https://flintci.io/repositories/1364/analyses/902

@FlintCIBot
Copy link

Lint errors was found.

A patch is also available.

Please see the report: https://flintci.io/repositories/1364/analyses/903

@soullivaneuh
Copy link
Contributor Author

BTW @lsmith77, can you please merge master on 2.x? Some fixes are needed like public services.

Branches are currently diverged: https://github.com/liip/LiipFunctionalTestBundle/branches

@soullivaneuh soullivaneuh force-pushed the dependencies-upgrade branch 4 times, most recently from 1868ccd to 826d2be Compare January 13, 2018 22:57
@FlintCIBot
Copy link

Lint errors was found.

A patch is also available.

Please see the report: https://flintci.io/repositories/1364/analyses/906

@FlintCIBot
Copy link

Lint errors was found.

A patch is also available.

Please see the report: https://flintci.io/repositories/1364/analyses/907

@alexislefebvre
Copy link
Collaborator

@soullivaneuh I merged services in #376.

@soullivaneuh soullivaneuh force-pushed the dependencies-upgrade branch 3 times, most recently from 2977278 to 353525c Compare January 13, 2018 23:26
@soullivaneuh soullivaneuh mentioned this pull request Jan 13, 2018
10 tasks
@soullivaneuh
Copy link
Contributor Author

I'm afraid we have to drop LTS support this time because of strict type inheritance: https://travis-ci.org/liip/LiipFunctionalTestBundle/jobs/328587754#L662

@soullivaneuh
Copy link
Contributor Author

I just tested this branch on my project, it works like a charm! 💚

Here is my composer installation:

behat/transliterator                v1.2.0                           String transliterator
clue/stream-filter                  v1.4.0                           A simple and modern approach to stream filtering in PHP
composer/ca-bundle                  1.1.0                            Lets you find a path to the system CA bundle, and includes a fallback to the Mozilla CA bundle.
cpliakas/git-wrapper                v2.0.0                           A PHP wrapper around the Git command line utility.
dama/doctrine-test-bundle           v4.0.2                           Symfony 2/3 bundle to isolate doctrine database tests and improve test performance
docker-php/docker-php               dev-2.0-dev 5279929              A Docker PHP client
docker-php/docker-php-api           4.1.35.x-dev a7781fa             Docker API generated files from OpenAPI Specification
doctrine/annotations                v1.6.0                           Docblock Annotations Parser
doctrine/cache                      v1.7.1                           Caching library offering an object-oriented API for many cache backends
doctrine/collections                v1.5.0                           Collections Abstraction library
doctrine/common                     v2.8.1                           Common Library for Doctrine projects
doctrine/data-fixtures              v1.3.0                           Data Fixtures for all Doctrine Object Managers
doctrine/dbal                       v2.6.3                           Database Abstraction Layer
doctrine/doctrine-bundle            1.8.1                            Symfony DoctrineBundle
doctrine/doctrine-cache-bundle      1.3.2                            Symfony Bundle for Doctrine Cache
doctrine/doctrine-migrations-bundle v1.3.1                           Symfony DoctrineMigrationsBundle
doctrine/inflector                  v1.3.0                           Common String Manipulations with regard to casing and singular/plural rules.
doctrine/instantiator               1.1.0                            A small, lightweight utility to instantiate objects in PHP without invoking their constructors
doctrine/lexer                      v1.0.1                           Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.
doctrine/migrations                 v1.6.2                           Database Schema migrations using Doctrine DBAL
doctrine/orm                        v2.6.0                           Object-Relational-Mapper for PHP
friendsofsymfony/user-bundle        dev-master 6731b46               Symfony FOSUserBundle
fzaninotto/faker                    v1.7.1                           Faker is a PHP library that generates fake data for you.
greg0ire/enum                       v4.0.0                           work around the missing enum type in php
guzzlehttp/guzzle                   6.3.0                            Guzzle is a PHP HTTP client library
guzzlehttp/promises                 v1.3.1                           Guzzle promises library
guzzlehttp/psr7                     1.4.2                            PSR-7 message implementation that also provides common utility methods
hwi/oauth-bundle                    dev-master 71b010d               Support for authenticating users using both OAuth1.0a and OAuth2 in Symfony2.
jane-php/json-schema-runtime        dev-master 8c3d00b               Jane runtime Library
jane-php/open-api-runtime           dev-master d704827               Jane OpenAPI Runtime Library, dependencies and utility class for a library generated by jane/openapi
jane/openapi-runtime                v2.0.0                           Jane OpenAPI Runtime Library, dependencies and utility class for a library generated by jane/openapi
jane/runtime                        v2.1.0                           Jane runtime Library
javiereguiluz/easyadmin-bundle      v1.17.8                          Admin generator for Symfony applications
jdorn/sql-formatter                 v1.2.17                          a PHP SQL highlighting library
jeremykendall/php-domain-parser     4.0.3-alpha                      Public Suffix List based URL parsing implemented in PHP.
knplabs/doctrine-behaviors          1.5.0                            Doctrine2 behavior traits
knplabs/github-api                  2.7.0                            GitHub API v3 client
knplabs/knp-markdown-bundle         1.6.0                            Knplabs markdown bundle transforms markdown into html
league/uri                          4.2.3                            URI manipulation library
liip/functional-test-bundle         dev-dependencies-upgrade b5e4d10 This bundles provides additional functional test-cases for Symfony2 applications
m4tthumphrey/php-gitlab-api         9.6.1                            GitLab API client
matthiasnoback/symfony-config-test  v3.1.0                           Library for testing user classes related to the Symfony Config Component
michelf/php-markdown                1.7.0                            PHP Markdown
monolog/monolog                     1.23.0                           Sends your logs to files, sockets, inboxes, databases and various web services
myclabs/deep-copy                   1.7.0                            Create deep copies (clones) of your objects
nelmio/alice                        v3.1.3                           Expressive fixtures generator
ocramius/package-versions           1.2.0                            Composer plugin that provides efficient querying for installed package versions (no runtime IO)
ocramius/proxy-manager              2.1.1                            A library providing utilities to generate, instantiate and generally operate with Object Proxies
pagerfanta/pagerfanta               v1.0.5                           Pagination for PHP 5.3
paragonie/random_compat             v2.0.11                          PHP 5.x polyfill for random_bytes() and random_int() from PHP 7
php-amqplib/php-amqplib             v2.7.0                           Formerly videlalvaro/php-amqplib.  This library is a pure PHP implementation of the AMQP protocol. It's been tested against RabbitMQ.
php-amqplib/rabbitmq-bundle         v1.14.2                          Integrates php-amqplib with Symfony & RabbitMq. Formerly oldsound/rabbitmq-bundle.
php-http/cache-plugin               v1.5.0                           PSR-6 Cache plugin for HTTPlug
php-http/client-common              1.7.0                            Common HTTP Client implementations and tools for HTTPlug
php-http/discovery                  1.3.0                            Finds installed HTTPlug implementations and PSR-7 message factories
php-http/guzzle6-adapter            v1.1.1                           Guzzle 6 HTTP Adapter
php-http/httplug                    v1.1.0                           HTTPlug, the HTTP client abstraction for PHP
php-http/httplug-bundle             1.8.1                            Symfony integration for HTTPlug
php-http/logger-plugin              v1.0.0                           PSR-3 Logger plugin for HTTPlug
php-http/message                    1.6.0                            HTTP Message related tools
php-http/message-factory            v1.0.2                           Factory interfaces for PSR-7 HTTP Message
php-http/mock-client                1.1.0                            Mock HTTP client
php-http/multipart-stream-builder   1.0.0                            A builder class that help you create a multipart stream
php-http/promise                    v1.0.0                           Promise used for asynchronous HTTP requests
php-http/socket-client              v1.4.0                           Socket client for PHP-HTTP
php-http/stopwatch-plugin           1.1.0                            Symfony Stopwatch plugin for HTTPlug
php-jsonpointer/php-jsonpointer     v3.0.2                           Implementation of JSON Pointer (http://tools.ietf.org/html/rfc6901)
phpseclib/phpseclib                 2.0.9                            PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.
psr/cache                           1.0.1                            Common interface for caching libraries
psr/container                       1.0.0                            Common Container Interface (PHP FIG PSR-11)
psr/http-message                    1.0.1                            Common interface for HTTP messages
psr/log                             1.0.2                            Common interface for logging libraries
psr/simple-cache                    1.0.0                            Common interfaces for simple caching
sebastian/diff                      2.0.1                            Diff implementation
sensio/framework-extra-bundle       v5.1.4                           This bundle provides a way to configure your controllers with annotations
sensiolabs/security-checker         v4.1.7                           A security checker for your composer.lock
sllh/doctrine-dbal-utc-datetime     v1.0.0                           UTC DateTime type for Doctrine DBAL
symfony/apache-pack                 v1.0.1                           A pack for Apache support in Symfony
symfony/asset                       v4.0.3                           Symfony Asset Component
symfony/browser-kit                 v4.0.3                           Symfony BrowserKit Component
symfony/cache                       v4.0.3                           Symfony Cache component with PSR-6, PSR-16, and tags
symfony/config                      v4.0.3                           Symfony Config Component
symfony/console                     v4.0.3                           Symfony Console Component
symfony/css-selector                v4.0.3                           Symfony CssSelector Component
symfony/debug                       v4.0.3                           Symfony Debug Component
symfony/debug-bundle                v4.0.3                           Symfony DebugBundle
symfony/dependency-injection        v4.0.3                           Symfony DependencyInjection Component
symfony/doctrine-bridge             v4.0.3                           Symfony Doctrine Bridge
symfony/dom-crawler                 v4.0.3                           Symfony DomCrawler Component
symfony/dotenv                      v4.0.3                           Registers environment variables from a .env file
symfony/event-dispatcher            v4.0.3                           Symfony EventDispatcher Component
symfony/filesystem                  v4.0.3                           Symfony Filesystem Component
symfony/finder                      v4.0.3                           Symfony Finder Component
symfony/flex                        v1.0.61                         
symfony/form                        v4.0.3                           Symfony Form Component
symfony/framework-bundle            v4.0.3                           Symfony FrameworkBundle
symfony/http-foundation             v4.0.3                           Symfony HttpFoundation Component
symfony/http-kernel                 v4.0.3                           Symfony HttpKernel Component
symfony/inflector                   v4.0.3                           Symfony Inflector Component
symfony/intl                        v4.0.3                           A PHP replacement layer for the C intl extension that includes additional data from the ICU library.
symfony/maker-bundle                v1.0.2                          
symfony/monolog-bridge              v4.0.3                           Symfony Monolog Bridge
symfony/monolog-bundle              v3.1.2                           Symfony MonologBundle
symfony/options-resolver            v3.4.3                           Symfony OptionsResolver Component
symfony/orm-pack                    v1.0.5                           A pack for the Doctrine ORM
symfony/phpunit-bridge              v3.4.3                           Symfony PHPUnit Bridge
symfony/polyfill-intl-icu           v1.6.0                           Symfony polyfill for intl's ICU-related data and classes
symfony/polyfill-mbstring           v1.6.0                           Symfony polyfill for the Mbstring extension
symfony/polyfill-php72              v1.6.0                           Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions
symfony/process                     v4.0.3                           Symfony Process Component
symfony/profiler-pack               v1.0.3                           A pack for the Symfony web profiler
symfony/property-access             v4.0.3                           Symfony PropertyAccess Component
symfony/routing                     v4.0.3                           Symfony Routing Component
symfony/security                    v4.0.3                           Symfony Security Component
symfony/security-bundle             v4.0.3                           Symfony SecurityBundle
symfony/serializer                  v3.4.3                           Symfony Serializer Component
symfony/stopwatch                   v4.0.3                           Symfony Stopwatch Component
symfony/templating                  v4.0.3                           Symfony Templating Component
symfony/translation                 v4.0.3                           Symfony Translation Component
symfony/twig-bridge                 v4.0.3                           Symfony Twig Bridge
symfony/twig-bundle                 v4.0.3                           Symfony TwigBundle
symfony/validator                   v4.0.3                           Symfony Validator Component
symfony/var-dumper                  v4.0.3                           Symfony mechanism for exploring and dumping PHP variables
symfony/web-profiler-bundle         v4.0.3                           Symfony WebProfilerBundle
symfony/yaml                        v3.4.3                           Symfony Yaml Component
theofidry/alice-data-fixtures       v1.0.1                           Nelmio alice extension to persist the loaded fixtures.
twig/extensions                     v1.5.1                           Common additional features for Twig that do not directly belong in core
twig/twig                           v2.4.4                           Twig, the flexible, fast, and secure template language for PHP
webmozart/assert                    1.2.0                            Assertions to validate method input/output with nice error messages.
zendframework/zend-code             3.3.0                            provides facilities to generate arbitrary code using an object oriented interface
zendframework/zend-diactoros        1.7.0                            PSR HTTP Message implementations
zendframework/zend-eventmanager     3.2.0                            Trigger and listen to events within a PHP application

@alexislefebvre
Copy link
Collaborator

Waow, it looks great, thanks for all the work!

Copy link
Collaborator

@alexislefebvre alexislefebvre left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎉

@alexislefebvre alexislefebvre added this to the 2.0 milestone Jan 15, 2018
Copy link
Contributor

@Jean85 Jean85 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've left some comments, but nothing is a blocker, LGTM! 👍

composer.json Outdated
"symfony/symfony": "^3.4 || ^4.0",
"symfony/phpunit-bridge": "^3.4 || ^4.0",
"doctrine/orm": "^2.5",
"symfony/console": "^3.4 || ^4.0",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is duplicated, since you require symfony/symfony a few lines up

@@ -10,7 +10,7 @@
>

<php>
<server name="KERNEL_DIR" value="tests/App" />
<server name="KERNEL_CLASS" value="Liip\FunctionalTestBundle\Tests\App\AppKernel" />
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

*
* @see http://www.whitewashing.de/2012/02/25/symfony2_controller_testing.html
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is getting lost, but it's probably outdated since it's from 2012...

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, this can be removed. (I added this link 2 years ago as a reference but most of the code in the blog post is not necessary anymore)

@Jean85 Jean85 mentioned this pull request Jan 15, 2018
@soullivaneuh
Copy link
Contributor Author

Duplicate dependencies on composer.json removed.

@soullivaneuh
Copy link
Contributor Author

It seems Travis is going away. 😕

@soullivaneuh
Copy link
Contributor Author

The build is here (and green): https://travis-ci.org/liip/LiipFunctionalTestBundle/builds/329147881

Apparently the PR status is broken.

@Jean85
Copy link
Contributor

Jean85 commented Jan 16, 2018

Maybe @lsmith77 can check on the GitHub settings? BTW since it's green IMHO we can merge it!

@lsmith77
Copy link
Contributor

we tightened some security settings .. looking into fixing 3rd party integrations ..

@alexislefebvre
Copy link
Collaborator

I closed and reopened the PR in order to have the Travis CI analysis.

@soullivaneuh
Copy link
Contributor Author

It looks like it's good! 👍

@alexislefebvre alexislefebvre merged commit 06782e5 into liip:2.x Jan 17, 2018
@alexislefebvre
Copy link
Collaborator

Thanks a lot @soullivaneuh for the amazing work!

@soullivaneuh soullivaneuh deleted the dependencies-upgrade branch January 17, 2018 13:25
@soullivaneuh
Copy link
Contributor Author

@alexislefebvre You are welcome! Hope the 2.0 release will be done soon. :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants