Giter VIP home page Giter VIP logo

sulu-rector's Introduction


Sulu logo


GitHub license GitHub tag (latest SemVer) Test workflow status GitHub commit activity GitHub contributors Packagist downloads


Sulu is a highly extensible open-source PHP content management system based on the Symfony framework. Sulu is developed to deliver robust multi-lingual and multi-portal websites while providing an intuitive and extensible administration interface to manage the full content lifecycle.

Have a look at the official Sulu website for a comprehensive list of Sulu's features, core values and use cases.


Sulu Slideshow


This repository contains the core framework of the Sulu content management system. The framework implements the functionality that is built into the Sulu content management system and therefore is a dependency of all Sulu projects.

If you want to start a new Sulu project, you might be interested in the sulu/skeleton template repository. If you are planning to extend your existing Sulu project, visit the Sulu organization on GitHub for a complete list of official Sulu bundles.

๐Ÿš€ย  Installation and Documentation

The sulu/skeleton repository provides a pre-configured project template to quick-start your development. Visit the official Sulu documentation to find out how to use the project template for starting your own Sulu project.

โค๏ธย  Community and Contributions

The Sulu content management system is a community-driven open source project backed by various partner companies. We are committed to a fully transparent development process and highly appreciate any contributions. Whether you are helping us fixing bugs, proposing new feature, improving our documentation or spreading the word - we would love to have you as part of the Sulu community.

๐Ÿ“ซย  Have a question? Want to chat? Ran into a problem?

We are happy to welcome you in our official Slack channel or answer your questions via GitHub Discussions! Obviously you can always reach out to us directly via the Sulu twitter account or post your question on StackOverflow with the official sulu tag.

๐Ÿคย  Found a bug? Missing a specific feature?

Feel free to file a new issue with a respective title and description on the the sulu/sulu repository. If you already found a solution to your problem, we would love to review your pull request! Have a look at our contribution guidelines to find out about our coding standards.

โœ…ย  Requirements

Sulu requires a PHP version higher or equal to 8.2 and is compatible with every Symfony version starting from 5.4. Have a look at the require section in the composer.json of the sulu/sulu core framework to find an up-to-date list of the requirements of Sulu content management system.

๐Ÿ“˜ย  License

The Sulu content management system is released under the under terms of the MIT License.

sulu-rector's People

Contributors

alexander-schranz avatar rogoit avatar tomasvotruba avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

sulu-rector's Issues

Nessesary steps to update actual NCA client projects from version 2.2 to 2.4

Sulu Update

Nessesary steps to update actual NCA client projects from version 2.2 to 2.4

Composer file

require

-   "doctrine/dbal": "^2.10",
-   "sulu/sulu": "~2.2.4",
+   "sulu/sulu": "^2.4",

config

+"allow-plugins": {
+    "symfony/flex": true,
+    "symfony/thanks": true
+}

Bundles

+Sulu\Bundle\ActivityBundle\SuluActivityBundle::class => ['all' => true],
+Sulu\Bundle\TrashBundle\SuluTrashBundle::class => ['all' => true],

Config files

config/packages/security_admin.yaml

+    access_control:
+       - { path: ^/admin/p/, roles: IS_AUTHENTICATED_ANONYMOUSLY }

// I could not do this in security yaml because it was empty and could not do format well

config/routes_admin.yaml

+sulu_activity_api:
+    resource: "@SuluActivityBundle/Resources/config/routing_api.yml"
+    type: rest
+    prefix: /admin/api
+
+sulu_trash_api:
+    resource: "@SuluTrashBundle/Resources/config/routing_api.yml"
+    type: rest
+    prefix: /admin/api
+
+sulu_preview_api:
+    type: rest
+    resource: "@SuluPreviewBundle/Resources/config/routing_api.yml"
+    prefix: /admin/api
+
+sulu_preview_public:
+    resource: "@SuluPreviewBundle/Resources/config/routing_public.yml"
+    prefix: /admin/p

Javascript and CSS asset files for admin area

Rebuild

bin/console sulu:admin:update-build

DB migrations

bin/console doctrine:migrations:diff
bin/console doctrine:migrations:migrate

Update to PHP 8

composer.json require

-"php": "^7.4",
+"php": "^8.1",

Dockerfile

-FROM php:7.4-apache AS webserver
+FROM php:8.1-apache AS webserver

Add docker-compose.override.yml

version: '3'

services:
+###> symfony/mailer ###
+  mailer:
+     image: schickling/mailcatcher
+     ports: [1025, 1080]
+###< symfony/mailer ###

// Do not know if this is needed

Include jscodeshift for JS upgrades

For JS changes there exist also the possibilities to create transformers via jscodeshift. I think it would be great to include this also for sulu-rector to update also JS to newer sulu versions.

It is not target to run jscodeshift via rector binary but it would be great to have the jscodeshift transformers inside this repository so a Sulu upgrade just requires the sulu-rector package.

Doctrine Cache Provider

Hi Alex,

what do you think about this or could this be done by Rector out of the box. I think there is also happeing a lot in the Symfony context.

See you
Roland

services:
doctrine_phpcr.meta_cache_provider:

  •    class: Symfony\Component\Cache\DoctrineProvider
    
  •    class: Doctrine\Common\Cache\Psr6\DoctrineProvider
    
  •    factory: ['Doctrine\Common\Cache\Psr6\DoctrineProvider', 'wrap']
      public: false
      arguments:
          - '@doctrine_phpcr.meta_cache_pool'
      tags:
          - { name: 'kernel.reset', method: 'reset' }
    

    doctrine_phpcr.nodes_cache_provider:

  •    class: Symfony\Component\Cache\DoctrineProvider
    
  •    class: Doctrine\Common\Cache\Psr6\DoctrineProvider
    
  •    factory: ['Doctrine\Common\Cache\Psr6\DoctrineProvider', 'wrap']
      public: false
      arguments:
          - '@doctrine_phpcr.nodes_cache_pool'
      tags:
          - { name: 'kernel.reset', method: 'reset' }
    

XML Template Update

Add possibility to update xml templates. Via some rector processor.

-<controller>Sulu\Bundle\ArticleBundle\Controller\WebsiteArticleController:indexAction</controller>
+<controller>Sulu\Bundle\ArticleBundle\Controller\WebsiteArticleController::indexAction</controller>

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.