Git Product home page Git Product logo

architecture's Introduction

This repository is created by initiative of Magento architects to discuss with the Magento community any open questions around Magento 2 architecture such as design documents, proposals, or any other architectural artifacts.


NOTE: We do not guarantee that approved changes will be delivered into Magento code base. The purpose of the repository is to start open discussions with the Magento community around architectural concepts of the Magento 2 platform.


Documents in the Repository

New documents are processed through PRs targeting the master branch. As a result, the master branch must contain content approved by Magento architects only.

The Workflow

  1. Fork the repository and add or edit a document in your branch. Contributions are expected from Magento core engineers mostly, although the community members are able to contribute as well.
  2. Create a PR with the new or updated document to discuss
    1. Use Design Document template for a new document
  3. Share the PR with internal team(s) and the Magento community through existing channels (Twitter, Slack, blog post, etc)
    1. Suggestion: include deadline for receiving feedback
  4. Get a feedback. We expect a feedback as:
    1. Comments into the PR thread
    2. Likes/dislikes/other emojis to the comments or the PR itself. We kindly encourage contributors to submit explanations about pros and cons that they have noticed.
  5. Update the PR to the received feedback accordingly or submit a reply if the proposed changes are not applicable with clear explanation.
    1. Add needs update label while the PR is in work
  6. When all participants of the discussion have come to agreement and confirmed their approval, a Magento core architect merges the PR.

Design Documents Review Requirements

  • Required reviewers are architects assigned to the affected components
  • Anybody else may join the review and provide feedback, but they're not obligated to review the entire document or to meet deadlines
  • For existing (running or about to run) projects, a minimum time frame given for one round of review is 2 business days from the notification notice. The author may specify due date. For documents that do not block any existing projects (proposals or design documents that describe features for unforeseeable future), no due date is guaranteed.

Assigned Reviewer Responsibilities

  • Review the entire document by specified due date (if any)
    • If it is impossible, find a replacement
    • If the due date is unreasonable for the size of the document, agree on another due date with the author
  • Include a detailed feedback
    • Ensure the feedback is objective
    • Ensure the feedback provides value to the document. Avoid side-notes and off-topics (or mention explicitly that this is just a note for future)
    • If the document is rejected, include clear and objective explanation for it. Rejection is final

The implementation process is out of scope in this project.

After approval of the document, a new discussion may be raised basing on the issues occurred during implementation. It is also possible in case of new informational updates that discover hidden sides of the future implementation. If it is the case, a new PR should be opened to update existing document. The PR should include explained reasons for the proposed change.

architecture's People

Contributors

akaplya avatar alexmaxhorkun avatar antonkril avatar avattam06 avatar buskamuza avatar cpartica avatar cspruiell avatar damienwebdev avatar danielrenaud avatar drewml avatar hostep avatar jacobbrownaustin avatar jean-bernard-valentaten avatar joni-jones avatar kandy avatar kevinbkozan avatar lenaorobei avatar maghamed avatar melnikovi avatar mslabko avatar nathanjosiah avatar nrkapoor avatar nuzil avatar okolesnyk avatar paliarush avatar prabhuram93 avatar tariqjawed83 avatar viktym avatar vzabaznov avatar zetlen avatar

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.