sumocoders / application-skeleton Goto Github PK
View Code? Open in Web Editor NEWA simple way to set up new Framework applications
A simple way to set up new Framework applications
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.
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:
* are required to deploy to staging
These are still issues that occur when running a CI pipeline on a new skeleton project:
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: 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
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.
If you have a default old Node version, this line throws warnings:
We should prefix it with nvm run + check for other shell_exec usage that is unprefixed.
application-skeleton/composer.json
Line 29 in 063f419
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.
We'll have to edit the PostCreateProject script to remove the ./.github/workflows folder after setting up the project.
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.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.