profile
viewpoint
Ángel Guzmán Maeso shakaran Quijost Manzanares, Ciudad Real, España https://shakaran.net Senior Backend Engineer. Available for freelance work.

avanzu/AdminThemeBundle 276

Admin Theme based on the AdminLTE Template for easy integration into symfony

shakaran/AdminThemeBundle 2

Admin Theme based on the AdminLTE Template for easy integration into symfony

shakaran/adstxtparser 2

⤴ 📮 A open source implementation in PHP of Ads.txt Specification Version 1.0.1 (OpenRTB working group)

shakaran/apogeus 2

Open Source RPG

shakaran/Big-Big-RSS 2

✉️ :bookmark: A PHP and Ajax feed reader

shakaran/EasyAdminBundle 1

The new (and simple) admin generator for Symfony applications.

cpeters5/orchidroots 0

Main branch of OrchidRoots project starting V4

shakaran/AlgoliaSearchBundle 0

Seamless integration of Algolia Search into your Symfony project.

shakaran/amazon-s3-php-class 0

A standalone Amazon S3 (REST) client for PHP 5.2.x using CURL that does not require PEAR.

shakaran/api-php-sdk 0

Packlink API PHP SDK

push eventNeoRazorX/facturascripts

NeoRazorX

commit sha 1855a6b43e1e7f57ebb418e594c98149eccf5520

Minor improvement.

view details

push time in 2 hours

pull request commentphp-memcached-dev/php-memcached

fix php8 arginfo

@remicollet Please review as you added the most recent iteration of these stub files.

m6w6

comment created time in 2 hours

issue openedsymfony/maker-bundle

Maker bundle is creating files in the wrong directory

I have a fresh install of Symfony 4.4 and after installation i'm facing the following issue:

After running: php bin/console make:user

It creates the files:


 The name of the security user class (e.g. User) [User]:
 > User

 Do you want to store user data in the database (via Doctrine)? (yes/no) [yes]:
 > 

 Enter a property name that will be the unique "display" name for the user (e.g. email, username, uuid) [email]:
 > 

 Will this app need to hash/check user passwords? Choose No if passwords are not needed or will be checked/hashed by some other system (e.g. a single sign-on server).

 Does this app need to hash/check user passwords? (yes/no) [yes]:
 > 

 created: home/src/Entity/User.php
 created: home/src/Repository/UserRepository.php
 updated: home/src/Entity/User.php
 updated: config/packages/security.yaml

           
  Success! 
           

 Next Steps:
   - Review your new App\Entity\User class.
   - Use make:entity to add more fields to your User entity and then run make:migration.
   - Create a way to authenticate! See https://symfony.com/doc/current/security.html

It's creating the files in home/, instead of the already existing src/ folder.

How could I fix this?

created time in 6 hours

Pull request review commentsymfony/maker-bundle

keeping aliens at bay with maker + new security 5.1 features

 public function updateForAuthenticator(string $yamlSource, string $firewallName,          $firewall = $newData['security']['firewalls'][$firewallName]; -        if (!isset($firewall['guard'])) {-            $firewall['guard'] = [];-        }+        if ($useSecurity51) {+            if (!isset($firewall['custom_authenticator'])) {+                $firewall['custom_authenticator'] = $authenticatorClass;+            }

Yes, indeed. custom_authenticators and custom_authenticator are both allowed.

jrushlow

comment created time in 7 hours

Pull request review commentsymfony/maker-bundle

keeping aliens at bay with maker + new security 5.1 features

+<?= "<?php\n" ?>++namespace <?= $namespace ?>;++use Symfony\Component\HttpFoundation\RedirectResponse;+use Symfony\Component\HttpFoundation\Request;+use Symfony\Component\HttpFoundation\Response;+use Symfony\Component\Routing\Generator\UrlGeneratorInterface;+use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;+use Symfony\Component\Security\Http\Authenticator\AbstractLoginFormAuthenticator;+use Symfony\Component\Security\Http\Authenticator\Passport\Badge\CsrfTokenBadge;+use Symfony\Component\Security\Http\Authenticator\Passport\Badge\PasswordUpgradeBadge;+use Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge;+use Symfony\Component\Security\Http\Authenticator\Passport\Credentials\PasswordCredentials;+use Symfony\Component\Security\Http\Authenticator\Passport\Passport;+use Symfony\Component\Security\Http\Authenticator\Passport\PassportInterface;+use Symfony\Component\Security\Http\Util\TargetPathTrait;++class <?= $class_name; ?> extends AbstractLoginFormAuthenticator+{+    use TargetPathTrait;++    public const LOGIN_ROUTE = 'app_login';++    private <?= $use_typed_properties ? 'UrlGeneratorInterface ' : null ?>$urlGenerator;++    public function __construct(UrlGeneratorInterface $urlGenerator)+    {+        $this->urlGenerator = $urlGenerator;+    }++    public function supports(Request $request): ?bool+    {+        return self::LOGIN_ROUTE === $request->attributes->get('_route')+            && $request->isMethod('POST');+    }

abstract support added in https://github.com/symfony/symfony/pull/39213

  • removed from template
jrushlow

comment created time in 7 hours

Pull request review commentsymfony/maker-bundle

keeping aliens at bay with maker + new security 5.1 features

+<?= "<?php\n" ?>++namespace <?= $namespace ?>;++use Symfony\Component\HttpFoundation\RedirectResponse;+use Symfony\Component\HttpFoundation\Request;+use Symfony\Component\HttpFoundation\Response;+use Symfony\Component\Routing\Generator\UrlGeneratorInterface;+use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;+use Symfony\Component\Security\Http\Authenticator\AbstractLoginFormAuthenticator;+use Symfony\Component\Security\Http\Authenticator\Passport\Badge\CsrfTokenBadge;+use Symfony\Component\Security\Http\Authenticator\Passport\Badge\PasswordUpgradeBadge;+use Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge;+use Symfony\Component\Security\Http\Authenticator\Passport\Credentials\PasswordCredentials;+use Symfony\Component\Security\Http\Authenticator\Passport\Passport;+use Symfony\Component\Security\Http\Authenticator\Passport\PassportInterface;+use Symfony\Component\Security\Http\Util\TargetPathTrait;++class <?= $class_name; ?> extends AbstractLoginFormAuthenticator+{+    use TargetPathTrait;++    public const LOGIN_ROUTE = 'app_login';++    private <?= $use_typed_properties ? 'UrlGeneratorInterface ' : null ?>$urlGenerator;++    public function __construct(UrlGeneratorInterface $urlGenerator)+    {+        $this->urlGenerator = $urlGenerator;+    }++    public function supports(Request $request): ?bool+    {+        return self::LOGIN_ROUTE === $request->attributes->get('_route')+            && $request->isMethod('POST');+    }++    public function authenticate(Request $request): PassportInterface+    {+        /** @var string $password */+        $password = $request->request->get('password', '');++        /** @var string $userIdentifier */+        $userIdentifier = $request->request->get('<?= $username_field ?>', '');++        /** @var string|null */+        $csrf = $request->get('_csrf_token');++        return new Passport(+            new UserBadge($userIdentifier),+            new PasswordCredentials($password),+            [+                new PasswordUpgradeBadge($password),

no longer needed https://github.com/symfony/symfony/pull/39213 thanks for that @wouterj

  • removed badge in the template
jrushlow

comment created time in 7 hours

issue openedsymfony/maker-bundle

Ansi Color and strange characters

Hi, I have the following issue on Windows with cmd and phpStorm terminal. I try to reinstall wamp and composer but nothing work. On my second computer php cli work perfectly so I think I miss something.

Description When you wrote make:entity or make:form (maybe more command do the same issue) I got strange character like this : image

--no-ansi remove a part of strange character but not all :

Examples With make:entity : image You can see colors work with the first sentence but not works after the input With make:entity and --no-ansi : image

created time in 7 hours

PR opened php-memcached-dev/php-memcached

fix php8 arginfo

A few fixes for stub/arginfo to match the reality, which makes the test suite complete successfully on PHP-8.0

+22 -22

0 comment

3 changed files

pr created time in 8 hours

pull request commentsymfony/maker-bundle

Make convert services

Giving up so much code for ideological reasons @weaverryan

ghost

comment created time in 20 hours

issue commentphp-memcached-dev/php-memcached

PHP 8 support

It builds and works with latest stable 8.0 - looks it's good time to tag new release

ruudk

comment created time in a day

pull request commentsymfony/maker-bundle

new Maker for api-platform data persisters

Hey @zairigimad!

I just talked with @dunglas and he was also thinking we should have these maker commands (and so I pointed him to your PR!). But we think it makes most sense for these to live inside of API Platform itself, so that once you install API Platform, you have the commands. Would you be willing to re-make this PR to API Platform? I'm not sure if it would just "drop in" or if some extra work would be needed - I'd be happy to help.

Thank you!

Hey @weaverryan ,

Sure, no problem, I will check the PR in Api-Platform, and maybe will add other Makers :)

zairigimad

comment created time in a day

startedvedmaka/mediawikifs

started time in a day

issue openedsymfony/maker-bundle

make controller generates controller with attributes but symfony does not support it yet

Symfony 5.2 will support attributes for routes, but it's not the case for Symfony 5.1. I just made a fresh install and used the maker, the generated route was the following:

#[Route('/main', name: 'main')]
public function index(): Response
{
       
}

This doesn't work. It seems critical but I didn't see any issue in that way so here it is.

created time in 2 days

push eventphp-memcached-dev/php-memcached

Aaron Stone

commit sha 356283d156a5fd6fd7069038b0483720de612e89

Revert "Update .travis.yml" This reverts commit 77144b6eba665bb6c79a7ca75579908ada6118f3.

view details

push time in 3 days

Pull request review commentsymfony/maker-bundle

keeping aliens at bay with maker + new security 5.1 features

 public function updateForAuthenticator(string $yamlSource, string $firewallName,          $firewall = $newData['security']['firewalls'][$firewallName]; -        if (!isset($firewall['guard'])) {-            $firewall['guard'] = [];-        }+        if ($useSecurity51) {+            if (!isset($firewall['custom_authenticator'])) {+                $firewall['custom_authenticator'] = $authenticatorClass;+            }

I think Wouter is right. Should we (can't we) use custom_authenticators? So... we would need to check to see if either keys are configured?

jrushlow

comment created time in 3 days

Pull request review commentsymfony/maker-bundle

keeping aliens at bay with maker + new security 5.1 features

+<?= "<?php\n" ?>++namespace <?= $namespace ?>;++use Symfony\Component\HttpFoundation\RedirectResponse;+use Symfony\Component\HttpFoundation\Request;+use Symfony\Component\HttpFoundation\Response;+use Symfony\Component\Routing\Generator\UrlGeneratorInterface;+use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;+use Symfony\Component\Security\Http\Authenticator\AbstractLoginFormAuthenticator;+use Symfony\Component\Security\Http\Authenticator\Passport\Badge\CsrfTokenBadge;+use Symfony\Component\Security\Http\Authenticator\Passport\Badge\PasswordUpgradeBadge;+use Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge;+use Symfony\Component\Security\Http\Authenticator\Passport\Credentials\PasswordCredentials;+use Symfony\Component\Security\Http\Authenticator\Passport\Passport;+use Symfony\Component\Security\Http\Authenticator\Passport\PassportInterface;+use Symfony\Component\Security\Http\Util\TargetPathTrait;++class <?= $class_name; ?> extends AbstractLoginFormAuthenticator+{+    use TargetPathTrait;++    public const LOGIN_ROUTE = 'app_login';++    private <?= $use_typed_properties ? 'UrlGeneratorInterface ' : null ?>$urlGenerator;++    public function __construct(UrlGeneratorInterface $urlGenerator)+    {+        $this->urlGenerator = $urlGenerator;+    }++    public function supports(Request $request): ?bool+    {+        return self::LOGIN_ROUTE === $request->attributes->get('_route')+            && $request->isMethod('POST');+    }++    public function authenticate(Request $request): PassportInterface+    {+        /** @var string $password */+        $password = $request->request->get('password', '');++        /** @var string $userIdentifier */+        $userIdentifier = $request->request->get('<?= $username_field ?>', '');++        /** @var string|null */+        $csrf = $request->get('_csrf_token');++        return new Passport(+            new UserBadge($userIdentifier),+            new PasswordCredentials($password),+            [+                new PasswordUpgradeBadge($password),

I just pinged you on this on Slack. I think it IS still required, though maybe it shouldn't be in a perfect world.

jrushlow

comment created time in 3 days

PR closed symfony/maker-bundle

Reviewers
new Maker for api-platform data persisters

New Command to generate API DataPersister

I Like Symfony and API Platform, I would like to leverage the power of Maker Bundle to generate code for API Platform.

Makers for API Platform: In this PR:

  • [x] DataPersister

Next:

  • [ ] DataProvider

  • [ ] DataTransformer

This PR is for DataPersister Maker.

Capture d’écran 2020-10-24 à 22 11 52

generated code :

<details> <summary>ArticleDataPersister.php</summary>

<?php

namespace App\DataPersister;

use ApiPlatform\Core\DataPersister\ContextAwareDataPersisterInterface;

final class ArticleDataPersister implements ContextAwareDataPersisterInterface
{
    public function supports($data, array $context = []): bool
    {
        // implement your logic to check whether the given data is supported by this data persister
        return true;
    }

    public function persist($data, array $context = [])
    {
        // call your persistence layer to save $data
        return $data;
    }

    public function remove($data, array $context = [])
    {
        // call your persistence layer to delete $data
    }
}

</details>

+369 -0

2 comments

7 changed files

zairigimad

pr closed time in 3 days

pull request commentsymfony/maker-bundle

new Maker for api-platform data persisters

Ah, @dunglas just told me that a Maker has been started already on API Platform! https://github.com/api-platform/core/pull/3850

That is probably the PR we should use - it's clearly a good idea, as multiple people are proposing it (and I also think it's a good idea). So, unfortunately @zairigimad even though this is aa very good PR, I'm going to close it in favor of the other one on API Platform. I hope you could review that one over there and propose any improvements from your PR.

Thanks!

zairigimad

comment created time in 3 days

PR closed symfony/maker-bundle

Reviewers
lower symfony/contracts dependency version a tad bit more Status: Needs Review

PR #728 introduced symfony/deprecations-contracts at version ^2.3 which prevented some users from using maker bundle.

PR #746 fixed the reported issue by lowering the version constraint to ^2.2. But in reality we can lower it even further to 2.1 as this is when symfony/deprecation-contracts was introduced.

+1 -1

3 comments

1 changed file

jrushlow

pr closed time in 3 days

pull request commentsymfony/maker-bundle

lower symfony/contracts dependency version a tad bit more

good point, thanks for the feedback @stof

jrushlow

comment created time in 3 days

created tagsymfony/maker-bundle

tagv1.24.2

Symfony Maker Bundle

created time in 3 days

release symfony/maker-bundle

v1.24.2

released time in 3 days

PR merged symfony/maker-bundle

fixed typo in postgres extension name Related Tests Pass Status: Reviewed

fixes #748

+1 -1

1 comment

1 changed file

jrushlow

pr closed time in 3 days

issue closedsymfony/maker-bundle

Fix typo in make:docker:database driver for postgres

See line: https://github.com/symfony/maker-bundle/blob/40b49abf01810453f73e3e239759f1736607f029/src/Docker/DockerDatabaseServices.php#L92

Driver name for postgres is "pdo_pgsql" not "pdo_pdsql". Because of this, selecting postgres throws error:

image

closed time in 3 days

delyro

push eventsymfony/maker-bundle

Jesse Rushlow

commit sha 5feb67d41cfa262b56b258c1e80ae47475f6a756

fixed typo in postgres extension name

view details

Ryan Weaver

commit sha 87620ef23319ebbdfc5b51dd6b6e7d12003f4564

bug #749 fixed typo in postgres extension name (jrushlow) This PR was merged into the 1.0-dev branch. Discussion ---------- fixed typo in postgres extension name fixes #748 Commits ------- 5feb67d fixed typo in postgres extension name

view details

push time in 3 days

issue closedsymfony/maker-bundle

Fix typo in make:docker:database driver for postgres

See line: https://github.com/symfony/maker-bundle/blob/40b49abf01810453f73e3e239759f1736607f029/src/Docker/DockerDatabaseServices.php#L92

Driver name for postgres is "pdo_pgsql" not "pdo_pdsql". Because of this, selecting postgres throws error:

image

closed time in 3 days

delyro

pull request commentsymfony/maker-bundle

fixed typo in postgres extension name

Thanks Jesse!

jrushlow

comment created time in 3 days

pull request commentsymfony/maker-bundle

new Maker for api-platform data persisters

Hey @zairigimad!

I just talked with @dunglas and he was also thinking we should have these maker commands (and so I pointed him to your PR!). But we think it makes most sense for these to live inside of API Platform itself, so that once you install API Platform, you have the commands. Would you be willing to re-make this PR to API Platform? I'm not sure if it would just "drop in" or if some extra work would be needed - I'd be happy to help.

Thank you!

zairigimad

comment created time in 3 days

issue commentsymfony/maker-bundle

Fix typo in make:docker:database driver for postgres

thanks @delyro for the heads up! We have a fix ready to go on this and should be merged soon.

delyro

comment created time in 3 days

more