composer.json 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. {
  2. "name": "ramsey/collection",
  3. "type": "library",
  4. "description": "A PHP library for representing and manipulating collections.",
  5. "keywords": [
  6. "array",
  7. "collection",
  8. "hash",
  9. "map",
  10. "queue",
  11. "set"
  12. ],
  13. "license": "MIT",
  14. "authors": [
  15. {
  16. "name": "Ben Ramsey",
  17. "email": "ben@benramsey.com",
  18. "homepage": "https://benramsey.com"
  19. }
  20. ],
  21. "require": {
  22. "php": "^7.3 || ^8",
  23. "symfony/polyfill-php81": "^1.23"
  24. },
  25. "require-dev": {
  26. "captainhook/captainhook": "^5.3",
  27. "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0",
  28. "ergebnis/composer-normalize": "^2.6",
  29. "fakerphp/faker": "^1.5",
  30. "hamcrest/hamcrest-php": "^2",
  31. "jangregor/phpstan-prophecy": "^0.8",
  32. "mockery/mockery": "^1.3",
  33. "phpspec/prophecy-phpunit": "^2.0",
  34. "phpstan/extension-installer": "^1",
  35. "phpstan/phpstan": "^0.12.32",
  36. "phpstan/phpstan-mockery": "^0.12.5",
  37. "phpstan/phpstan-phpunit": "^0.12.11",
  38. "phpunit/phpunit": "^8.5 || ^9",
  39. "psy/psysh": "^0.10.4",
  40. "slevomat/coding-standard": "^6.3",
  41. "squizlabs/php_codesniffer": "^3.5",
  42. "vimeo/psalm": "^4.4"
  43. },
  44. "config": {
  45. "sort-packages": true
  46. },
  47. "autoload": {
  48. "psr-4": {
  49. "Ramsey\\Collection\\": "src/"
  50. }
  51. },
  52. "autoload-dev": {
  53. "psr-4": {
  54. "Ramsey\\Console\\": "resources/console/",
  55. "Ramsey\\Collection\\Test\\": "tests/",
  56. "Ramsey\\Test\\Generics\\": "tests/generics/"
  57. },
  58. "files": [
  59. "vendor/hamcrest/hamcrest-php/hamcrest/Hamcrest.php"
  60. ]
  61. },
  62. "scripts": {
  63. "post-autoload-dump": "captainhook install --ansi -f -s",
  64. "dev:analyze": [
  65. "@dev:analyze:phpstan",
  66. "@dev:analyze:psalm"
  67. ],
  68. "dev:analyze:phpstan": "phpstan --memory-limit=1G analyse",
  69. "dev:analyze:psalm": "psalm --diff --config=psalm.xml",
  70. "dev:build:clean": "git clean -fX build/.",
  71. "dev:build:clear-cache": "git clean -fX build/cache/.",
  72. "dev:lint": "phpcs --cache=build/cache/phpcs.cache",
  73. "dev:lint:fix": "./bin/lint-fix.sh",
  74. "dev:repl": [
  75. "echo ; echo 'Type ./bin/repl to start the REPL.'"
  76. ],
  77. "dev:test": "phpunit",
  78. "dev:test:all": [
  79. "@dev:lint",
  80. "@dev:analyze",
  81. "@dev:test"
  82. ],
  83. "dev:test:coverage:ci": "phpunit --coverage-clover build/logs/clover.xml",
  84. "dev:test:coverage:html": "phpunit --coverage-html build/coverage",
  85. "test": "@dev:test:all"
  86. },
  87. "scripts-descriptions": {
  88. "dev:analyze": "Performs static analysis on the code base.",
  89. "dev:analyze:phpstan": "Runs the PHPStan static analyzer.",
  90. "dev:analyze:psalm": "Runs the Psalm static analyzer.",
  91. "dev:build:clean": "Removes everything not under version control from the build directory.",
  92. "dev:build:clear-cache": "Removes everything not under version control from build/cache/.",
  93. "dev:lint": "Checks all source code for coding standards issues.",
  94. "dev:lint:fix": "Checks source code for coding standards issues and fixes them, if possible.",
  95. "dev:repl": "Note: Use ./bin/repl to run the REPL.",
  96. "dev:test": "Runs the full unit test suite.",
  97. "dev:test:all": "Runs linting, static analysis, and unit tests.",
  98. "dev:test:coverage:ci": "Runs the unit test suite and generates a Clover coverage report.",
  99. "dev:test:coverage:html": "Runs the unit tests suite and generates an HTML coverage report.",
  100. "test": "Shortcut to run the full test suite."
  101. }
  102. }