Skip to content

Commit

Permalink
CC-34501: Initialisation Order Amendment Process (#11163)
Browse files Browse the repository at this point in the history
CC-34501 Initialisation Order Amendment Process
  • Loading branch information
dmiseev authored Nov 15, 2024
0 parents commit 72576b2
Show file tree
Hide file tree
Showing 54 changed files with 3,539 additions and 0 deletions.
3 changes: 3 additions & 0 deletions .coveralls.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
coverage_clover: tests/_output/coverage.xml
json_path: tests/_output/coveralls-upload.json
service_name: travis-ci
14 changes: 14 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
; This file is for unifying the coding style for different editors and IDEs.
; More information at https://editorconfig.org
root = true

[*]
indent_style = space
indent_size = 4
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true

[*.bat]
end_of_line = crlf

36 changes: 36 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Define the line ending behavior of the different file extensions
# Set the default behavior, in case people don't have core.autocrlf set.
* text text=auto eol=lf

*.php diff=php

# Denote all files that are truly binary and should not be modified.
*.png binary
*.jpg binary
*.gif binary
*.jpeg binary
*.zip binary
*.phar binary
*.ttf binary
*.woff binary
*.woff2 binary
*.eot binary
*.ico binary
*.mo binary
*.pdf binary
*.xsd binary
*.exe binary

# Remove files for archives generated using `git archive`
dependency.json export-ignore
phpstan.json export-ignore
phpstan.neon export-ignore
psalm-report.json export-ignore linguist-generated=true
tooling.yml export-ignore
.coveralls.yml export-ignore
.travis.yml export-ignore
.editorconfig export-ignore
.gitattributes export-ignore
.gitignore export-ignore
architecture-baseline.json export-ignore
.github/ export-ignore
13 changes: 13 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
## PR Description
Add a meaningful description here that will let us know what you want to fix with this PR or what functionality you want to add.

## Steps before you submit a PR
- Please add tests for the code you add if it's possible.
- Please check out our contribution guide: https://docs.spryker.com/docs/dg/dev/code-contribution-guide.html
- Add a `contribution-license-agreement.txt` file with the following content:
`I hereby agree to Spryker\'s Contribution License Agreement in https://github.com/spryker/cart-reorder/blob/HASH_OF_COMMIT_YOU_ARE_BASING_YOUR_BRANCH_FROM_MASTER_BRANCH/CONTRIBUTING.md.`

This is a mandatory step to make sure you are aware of the license agreement and agree to it. `HASH_OF_COMMIT_YOU_ARE_BASING_YOUR_BRANCH_FROM_MASTER_BRANCH` is a hash of the commit you are basing your branch from the master branch. You can take it from commits list of master branch before you submit a PR.

## Checklist
- [x] I agree with the Code Contribution License Agreement in CONTRIBUTING.md
52 changes: 52 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: CI

on:
push:
branches:
- 'master'
pull_request:
workflow_dispatch:

jobs:
validation:
name: Validation
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.3'
extensions: mbstring, intl, bcmath
coverage: none

- name: Composer Install
run: composer install --prefer-dist --no-interaction --profile

- name: Run validation
run: composer validate

- name: Syntax check
run: find ./src -path src -prune -o -type f -name '*.php' -print0 | xargs -0 -n1 -P4 php -l -n | (! grep -v "No syntax errors detected" )

lowest:
name: Prefer Lowest
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
extensions: mbstring, intl, bcmath
coverage: none

- name: Composer Install
run: composer install --prefer-dist --no-interaction --profile

- name: Composer Update
run: composer update --prefer-lowest --prefer-dist --no-interaction --profile -vvv
36 changes: 36 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# IDE
.idea/
.project/
nbproject/
.buildpath/
.settings/
*.sublime-*

# OS
.DS_Store
*.AppleDouble
*.AppleDB
*.AppleDesktop

# grunt stuff
.grunt
.sass-cache
/node_modules/

# tooling
vendor/
composer.lock
.phpunit.result.cache

# built client resources
src/*/Zed/*/Static/Public
src/*/Zed/*/Static/Assets/sprite

# Propel classes
src/*/Zed/*/Persistence/Propel/Base/*
src/*/Zed/*/Persistence/Propel/Map/*

# tests
tests/**/_generated/
tests/_output/*
!tests/_output/.gitkeep
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# CartReorder Changelog

[Release Changelog](https://github.com/spryker/cart-reorder/releases)
69 changes: 69 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
SPRYKER - CONTRIBUTION AGREEMENT FOR PLATFORM CONTRIBUTIONS

Spryker Systems GmbH, Heidestraße 9-10, 10557 Berlin, Germany (“Spryker”), and its affiliates invite you to contribute
to Spryker’s Software, including but not limited to with bug fixes, enhancements, additions or features
(each a “Platform Contribution”). For the purposes of this Agreement, the “Software” includes any software,
which is owned and made available by Spryker. Contributions can consist of source code, documentation and/or other
code-related elements.

BY DISPLAYING, PUBLISHING, UPLOADING, PROMOTING OR OTHERWISE PROVIDING A PLATFORM CONTRIBUTION TO SPRYKER
(COLLECTIVELY, “SUBMITTING”), YOU AGREE TO THIS CONTRIBUTION AGREEMENT FOR PLATFORM CONTRIBUTIONS (THE “AGREEMENT”).

Spryker grants you the right to use the Software for the purpose of developing and submitting Platform Contributions
to the Software and/or Spryker’s documentation subject to your compliance with this Agreement.
Under the license granted in this Agreement, you must not (i) use the Software to set up a production live system;
(ii) copy any part of the Software except to develop and provide a Platform Contribution or make one copy for back-up
purposes; (iii) distribute, disclose, market, rent, lease, or transfer the Software or act as a service bureau with
respect to the Software; (iv) export the Software or install it in multiple locations; (v) disclose any confidential
information provided by Spryker; (vi) modify or make derivative works of the Software beyond what you will submit to
Spryker as Platform Contribution; or (vii) allow others to make or obtain copies of the Software.

You grant Spryker and its affiliates an irrevocable, perpetual, worldwide, royalty-free, non-exclusive,
unrestricted license and right to use, including to reproduce and store, disseminate and otherwise exploit, modify,
delete from, add to, create derivative works of, publicly perform, publicly display, reproduce, exchange parts
of a Platform Contribution or combine them with other code, use in data networks and distribute with or without
consideration and without limitations as to the number of items via all distribution channels (and to sublicense
the foregoing rights through multiple tiers of licensees) such Platform Contribution and any other copyright
protected material for any reason and in connection with advertising and promoting our software and/or Spryker’s
products in any media formats and through any channels now existing or developed in the future.
The granting of these rights covers any usage and exploitation rights for any unknown types of use as well as
with regard to any known types of use the right to unrestrictedly make publicly available and publish,
irrespective of the medium including any editions and versions and grant simple or exclusive usage,
exploitation or adaptation rights to third parties.

Spryker may reject, refuse to post or delete any Platform Contribution for any or no reason, including,
without limitation. Spryker may or may not mention your name when publishing the Platform Contribution.
From time to time, Spryker may remove the Platform Contribution permanently or temporarily, provided that even
if Spryker does remove such Platform Contribution, Spryker shall have no obligation to cease its other uses of
the Platform Contribution as permitted above.
Spryker respects the intellectual property of others, and requires that you do the same. Your Platform Contributions
must not infringe any copyright, patent, trademark, trade secret or other proprietary rights or other rights of any
person or entity and you may not upload, embed, post, email, transmit or otherwise make available a Platform Contribution
or any other material that infringes such rights.
If you are submitting a Platform Contribution that includes licensed rights, you will inform Spryker of the name of
such third-party licensor, the third-party license as such and any restrictions you are aware of.
If you are submitting a Platform Contribution that was developed by you in the course of your work for your employer
or as a contractor, vendor or agent for another principal, you are responsible for obtaining permission from your
employer or such other principal.
You will not include a Platform Contribution containing code governed by a license with copyleft effect. You agree
to be fully responsible for and to pay any and all royalties, fees, and any other monies owed to any person or
entity for any rights in a Platform Contribution submitted by you.
YOU REPRESENT AND WARRANT THAT: (I) YOU OWN THE PLATFORM CONTRIBUTION POSTED BY YOU OR OTHERWISE ARE ENTITLED TO
GRANT THE LICENSES AND RIGHTS SET FORTH ABOVE, INCLUDING WHERE NECESSARY HAVE OBTAINED YOUR EMPLOYER’S OR OTHER
PRINCIPAL’S PERMISSION, AND (II) THE SUBMISSION OF YOUR PLATFORM CONTRIBUTION DOES NOT VIOLATE THE PRIVACY RIGHTS,
PUBLICITY RIGHTS, CONTRACT RIGHTS, INTELLECTUAL PROPERTY OR ANY OTHER RIGHTS OF ANY PERSON OR ENTITY OR ANY
APPLICABLE LAW.

YOU AGREE TO INDEMNIFY AND HOLD SPRYKER AND ITS AFFILIATES, AND THEIR RESPECTIVE OFFICERS, AGENTS, PARTNERS AND EMPLOYEES,
HARMLESS FROM ANY LOSS, LIABILITY, COST, EXPENSE, CLAIM, OR DEMAND, INCLUDING WITHOUT LIMITATION, REASONABLE ATTORNEYS’ FEES,
DUE OR RELATING TO OR ARISING OUT OF THE USE OF THE YOUR PLATFORM CONTRIBUTION IN VIOLATION OF THIS AGREEMENT AND/OR
ARISING FROM A BREACH OF ANY TERMS OF THIS AGREEMENT AND/OR ANY BREACH OF YOUR REPRESENTATIONS AND WARRANTIES SET
FORTH IN THIS AGREEMENT AND/OR ARISING OUT OF OR RELATING TO ANY PLATFORM CONTRIBUTION THAT YOU SUBMIT.

This Agreement is governed by the laws of Germany to the exclusion of its conflict of laws provisions and
the United Nations Convention on Contracts for the International Sale of Goods (CISG). The parties consent to the
jurisdiction of the courts in Berlin (Germany).

This Agreement constitutes the entire agreement between the parties concerning the Platform Contributions submitted
by you. This Agreement supersedes any prior verbal understanding between the parties on the matter. This Agreement
may be amended only in a writing signed by an authorized officer of Spryker.
40 changes: 40 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
SPRYKER SYSTEMS GMBH EVALUATION LICENSE AGREEMENT

SPRYKER SYSTEMS GMBH, REGISTERED WITH THE COMMERCIAL REGISTER OF THE LOWER COURT OF HAMBURG UNDER HRB 134310
("WE" OR "SPRYKER")GRANTS YOU (THE "LICENSEE") THE RIGHT TO USE THE SOFTWARE (AS DEFINED BELOW)
UNDER THE PROVISIONS OF THIS EVALUATION LICENSE AGREEMENT (THE "AGREEMENT").

The "Software" includes any software owned and distributed by Spryker under this Agreement. The Software
contains elements of open source components, to which different license terms apply respectively.
These open source components are needed to be installed separately.

Spryker grants to Licensee, during the 45-calendar-day period (the "Evaluation Period") following the download of the Software,
the nontransferable, nonexclusive limited, free of charge license to permit Licensee's employees to internally use the Software
to test and evaluate the Software in connection with potentially purchasing non-evaluation licenses to the Software.

Licensee shall not (i) use the Software to set up a productive live system, for development purposes or any other purposes apart
from evaluating the Software; (ii) copy any part of the Software except to make one copy for back-up purposes; (iii) distribute,
disclose, market, rent, lease, or transfer the Software or act as a service bureau with respect to the Software; (iv) export the
Software or install it in multiple locations; (v) disclose any confidential information provided by Spryker; (vi) modify or make
derivative works of the Software; or (vii) allow others to make or obtain copies of the Software.

THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND. SPRYKER DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING
BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, TITLE, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE. SPRYKER WILL NOT
BE LIABLE FOR ANY DAMAGES ASSOCIATED WITH THE SOFTWARE, INCLUDING WITHOUT LIMITATION ORDINARY, INCIDENTAL, INDIRECT, OR CONSEQUENTIAL
DAMAGES OF ANY KIND, INCLUDING BUT NOT LIMITED TO DAMAGES RELATING TO LOST DATA OR LOST PROFITS, EVEN IF SPRYKER HAS BEEN ADVISED OF
THE POSSIBILITY OF SUCH DAMAGES.

Licensee's license to use the Software shall terminate on the earlier of (i) the expiration of the Evaluation Period, or (ii) the date
both parties enter into a definitive agreement for the provision by Spryker to Licensee of a non-evaluation license to the Software.
Upon termination of the license as provided above, Licensee shall promptly destroy the Software and any back-up copy of the Software
made during the Evaluation Period if Spryker and the Licensee have not agreed a non-evaluation license to the Software.

This Agreement shall be governed by the laws of Germany to the exclusion of IPR (International Law) and the United Nations Convention
on Contracts for the International Sale of Goods (CISG). The parties consent to the jurisdiction of the courts in Berlin (Germany).

This Agreement is not assignable or transferable by Licensee and any attempt to do so is null and void.

This Agreement constitutes the entire agreement between the parties concerning Licensee's use of the Software. This Agreement supersedes
any prior verbal understanding between the parties and any Licensee purchase order or other ordering document, regardless of whether such
document is received by Spryker before or after execution of this Agreement. This Agreement may be amended only in a writing signed by
an authorized officer of Spryker.
15 changes: 15 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# CartReorder Module
[![Latest Stable Version](https://poser.pugx.org/spryker/cart-reorder/v/stable.svg)](https://packagist.org/packages/spryker/cart-reorder)
[![Minimum PHP Version](https://img.shields.io/badge/php-%3E%3D%208.2-8892BF.svg)](https://php.net/)

CartReorder module provides ability to reorder orders.

## Installation

```
composer require spryker/cart-reorder
```

## Documentation

[Spryker Documentation](https://docs.spryker.com)
16 changes: 16 additions & 0 deletions architecture-baseline.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
[
{
"fileName": "src/Spryker/Zed/CartReorder/Dependency/Facade/CartReorderToCartFacadeBridge.php",
"description": "Bridges: Method `addToCart()` must have `public function create<DomainEntity>Collection(<DomainEntity>CollectionRequestTransfer): <DomainEntity>CollectionResponseTransfer` signature.",
"rule": "BridgeFacadeMethodsRule",
"ruleset": "Spryker",
"priority": "2"
},
{
"fileName": "src/Spryker/Zed/CartReorder/Dependency/Facade/CartReorderToSalesFacadeBridge.php",
"description": "Bridges: Method `getOffsetPaginatedCustomerOrderList()` must have `public function get<DomainEntity>Collection(<DomainEntity>CriteriaTransfer): <DomainEntity>CollectionTransfer` signature.",
"rule": "BridgeFacadeMethodsRule",
"ruleset": "Spryker",
"priority": "2"
}
]
14 changes: 14 additions & 0 deletions codeception.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
namespace: CartReorder
include:
- tests/SprykerTest/Zed/CartReorder
paths:
tests: tests
support: .
output: tests/_output
data: tests/_data
envs: tests/_envs
settings:
suite_class: \PHPUnit\Framework\TestSuite
colors: true
memory_limit: 1024M
log: true
52 changes: 52 additions & 0 deletions composer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
{
"name": "spryker/cart-reorder",
"type": "library",
"description": "CartReorder module",
"license": "proprietary",
"require": {
"php": ">=8.2",
"spryker/cart": "^7.0.0",
"spryker/cart-reorder-extension": "^1.0.0",
"spryker/kernel": "^3.33.0",
"spryker/quote": "^2.0.0",
"spryker/sales": "^11.0.0",
"spryker/transfer": "^3.27.0",
"spryker/zed-request": "^3.0.0"
},
"require-dev": {
"spryker/code-sniffer": "*",
"spryker/container": "*",
"spryker/customer": "*",
"spryker/oms": "*",
"spryker/propel": "*",
"spryker/store": "*",
"spryker/testify": "*"
},
"autoload": {
"psr-4": {
"Spryker\\": "src/Spryker/"
}
},
"autoload-dev": {
"psr-4": {
"SprykerTest\\": "tests/SprykerTest/"
}
},
"minimum-stability": "dev",
"prefer-stable": true,
"scripts": {
"cs-check": "phpcs -p -s --standard=vendor/spryker/code-sniffer/SprykerStrict/ruleset.xml src/ tests/",
"cs-fix": "phpcbf -p --standard=vendor/spryker/code-sniffer/SprykerStrict/ruleset.xml src/ tests/"
},
"extra": {
"branch-alias": {
"dev-master": "1.0.x-dev"
}
},
"config": {
"sort-packages": true,
"allow-plugins": {
"dealerdirect/phpcodesniffer-composer-installer": true
}
}
}
5 changes: 5 additions & 0 deletions dependency.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"include": {
"spryker/transfer": "Provides transfer objects definition with strict types."
}
}
2 changes: 2 additions & 0 deletions phpstan.neon
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
parameters:
level: 8
Loading

0 comments on commit 72576b2

Please sign in to comment.