Coder Social home page Coder Social logo

application-skeleton's People

Contributors

absumo avatar bjorvack avatar daphneslootmans avatar davysumo avatar dependabot[bot] avatar jonasdekeukelaere avatar katrienvh avatar stijnvrolijk avatar tijsverkoyen avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

application-skeleton's Issues

Webpack config missing Vue loader

When setting up a new framework project, the following error is thrown during npm run build

Error loading ./node_modules/frameworkstylepackage/src/js/Framework/Components/Toast.vue

NPM suggest: To load Vue files: 1. Add Encore.enableVueLoader() to your webpack.config.js file.

Since our core bundle and style package include Vue files now, we should add the Vue loader by default.

Missing components

This is a list of components that almost any of our framework projects will use but are not present in the skeleton composer.json as of today:

  • symfony/form
  • symfony/messenger
  • symfony/validator
  • annotations
  • symfony/mailer
  • symfony/dotenv *
  • symfony/monolog-bundle *
  • symfony/yaml *

* are required to deploy to staging

Pipeline fixes

These are still issues that occur when running a CI pipeline on a new skeleton project:

PHPStan

 Line   src/Repository/User/UserRepository.php                                 
 ------ ----------------------------------------------------------------------- 
  88     Method App\Repository\User\UserRepository::getAllFilteredUsers()       
         return type has no value type specified in iterable type               
         SumoCoders\FrameworkCoreBundle\Pagination\Paginator.                   
         ๐Ÿ’ก See:                                                                
         https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-i  
         terable-type                                                           

Edit: Fixed in sumocoders/FrameworkCoreBundle@4e2fb98

  Line   src/Security/CustomAuthenticator.php            
 ------ ------------------------------------------------ 
  37     Expression on left side of ?? is not nullable.  
  38     Expression on left side of ?? is not nullable.  
  39     Expression on left side of ?? is not nullable.  

Edit: Fixed in sumocoders/Framework-User-Implementation-Example@cf2df0a

     Error                                                              
 -- ------------------------------------------------------------------- 
     Ignored error pattern #array of function array_map expects array,  
     iterable<.*># was not matched in reported errors.                  
 -- ------------------------------------------------------------------- 

Standard.js

standard: Run `standard --fix` to automatically fix some problems.
  /builds/getuigenonderweg/app/assets/app.js:14:1: Do not use 'new' for side effects.
  /builds/getuigenonderweg/app/assets/controllers/hello_controller.js:1:48: Extra semicolon.
  /builds/getuigenonderweg/app/assets/controllers/hello_controller.js:13:1: Expected indentation of 2 spaces but found 4.
  /builds/getuigenonderweg/app/assets/controllers/hello_controller.js:13:12: Missing space before function parentheses.
  /builds/getuigenonderweg/app/assets/controllers/hello_controller.js:14:1: Expected indentation of 4 spaces but found 8.
  /builds/getuigenonderweg/app/assets/controllers/hello_controller.js:14:103: Extra semicolon.
  /builds/getuigenonderweg/app/assets/controllers/hello_controller.js:15:1: Expected indentation of 2 spaces but found 4.

To-do: remove hello_controller.js by default?
Edit: PR: #67

Lock cachetool version by default

Right now we run into issues when deploying older projects because the default Deployer recipe always downloads the latest version of cachetool (which is now 8.x), but if you're deploying a project on 7.4, this crashes the deploy.

Edit: Deployer latest release (17 days ago) actually fixed this and now defaults to the 7.0.0 version of cachetool, which is compatible with 7.4

Deployer currently uses a cachetool_url option, see https://github.com/deployphp/deployer/blob/master/contrib/cachetool.php#L54. Which defaults to the 7.0.0 version. We should be able to set this url in our deploy.php with the appropriate version. See https://github.com/gordalina/cachetool#compatibility for version compatibility.

To avoid these kind of issues in the future, we should lock the cachetool version. Each cachetool version has a unique download URL, so we should be able to automagically fetch the correct version of cachetool based on the PHP version of the project. Extend or override the default Deployer task, adjust the URL, done.

SensioLabs Security Checker Discontinued

"sensiolabs/security-checker": "^6.0",

Excerpt from SensioLabs Security Checker:
WARNING: Don't use this piece of software anymore as the underlying web service will stop working at the end of January 2021. Instead, use the Open-Source CLI tool that does the same locally, or use the Symfony CLI tool.

Including it will add a script to composer auto-scripts that will break any and all composer commands in dev env.

blocks.html.twig

In config/packages/twig.yaml we ask for a blocks.html.twig file, but this file isn't in the templates folder of new projects by default. We should create it in the PostCreate script.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.