Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Aug 11, 2025

This PR adds comprehensive GitHub Copilot instructions to improve AI assistance for contributors and maintainers working on the guzzle-cache-middleware repository.

What's Added

Created .github/copilot-instructions.md with detailed guidance covering:

Language and Communication

  • Establishes English as the primary language for all code, comments, documentation, issues, and pull requests
  • Defines clear naming conventions and documentation standards

Development Environment

  • Documents the make init command for setting up the development environment (Docker containers + Composer dependencies)
  • Explains the make test workflow for running the PHPUnit test suite
  • Provides additional development commands and Docker usage instructions

Project Architecture

  • Comprehensive overview of the HTTP cache middleware for Guzzle 6+
  • Detailed explanation of key components (CacheMiddleware, Storage adapters, Caching strategies)
  • Documents the code organization and design patterns (Middleware, Strategy, Adapter patterns)

Coding Standards

  • Specifies PHP 8.1+ requirements and PSR compliance (PSR-4, PSR-7, PSR-6, PSR-16)
  • Documents code style standards from .editorconfig (4 spaces, LF endings, UTF-8)
  • Establishes naming conventions and PHPDoc documentation requirements

Testing Guidelines

  • Explains PHPUnit test structure and organization
  • Categorizes test types (unit, integration, strategy-specific)
  • Provides best practices for writing effective tests

HTTP Caching Implementation

  • Details RFC 7234 compliance requirements
  • Explains Cache-Control directives, expiration logic, and validation mechanisms
  • Documents supported features and various caching strategies

Contribution Guidelines

  • Outlines development workflow and pull request processes
  • Includes performance considerations for cache operations
  • Covers dependency management and compatibility requirements

These instructions will help GitHub Copilot provide more accurate and contextually appropriate suggestions when working with this codebase, ensuring consistency with the project's architecture, coding standards, and development practices.

Fixes #204.

Warning

Firewall rules blocked me from connecting to one or more addresses

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/repos/CarbonPHP/carbon/zipball/4be0c005164249208ce1b5ca633cd57bdd42ff33
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/doctrine/inflector/zipball/4bd5c1cdfcd00e9e2d8c484f79150f67e5d355d9
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/guzzle/guzzle/zipball/7b2f29fe81dc4da0ca0ea7d42107a0845946ea77
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/guzzle/promises/zipball/7c69f28996b0a6920945dd20b3857e499d9ca96c
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/guzzle/psr7/zipball/c2270caaabe631b3b44c85f99e5a04bbb8060d16
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/illuminate/cache/zipball/5306a5d099395323d2e0c93beb12fa03c310d374
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/illuminate/contracts/zipball/b2a62b4a85485fca9cf5fa61a933ad64006ff528
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/illuminate/support/zipball/5c405512d75dcaf5d37791badce02d86ed8e4bc4
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/kylekatarnls/update-helper/zipball/429be50660ed8a196e0798e5939760f168ec8ce9
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-cache/adapter-common/zipball/8788309be72aa7be69b88cdc0687549c74a7d479
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-cache/array-adapter/zipball/7658acf46b35a23b7be13e50a2792049e1c678c4
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-cache/hierarchical-cache/zipball/dedffd0a74f72c1db76e57ce29885836944e27f3
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-cache/simple-cache-bridge/zipball/63c0179d9afeb34ed383870a64d19eb9a3fea0c1
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-cache/tag-interop/zipball/b062b1d735357da50edf8387f7a8696f3027d328
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/sVoVmb /usr/bin/composer install (http block)
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/sVoVmb /usr/bin/composer install (http block)
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/539c6691e0623af6dc6f9c20384c120f963465a0
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/05d5692a7993ecccd56a03e40cd7e5b09b1d404e
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/symfony/deprecation-contracts/zipball/63afe740e99a13ba87ec199bb07bbdee937a5b62
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/symfony/polyfill-php80/zipball/0cc9dd0f17f61d8131e7df6b84bd344899fe2608
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/symfony/translation-contracts/zipball/450d4172653f38818657022252f9d81be89ee9a8
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/symfony/translation/zipball/45036b1d53accc48fe9bab71ccd86d57eba0dd94
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/thephpleague/flysystem-local/zipball/6691915f77c7fb69adfb87dcd550052dc184ee10
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/thephpleague/flysystem/zipball/2203e3151755d874bb2943649dae1eb8533ac93e
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)
  • https://api.github.com/repos/thephpleague/mime-type-detection/zipball/2d6702ff215bf922936ccc1ad31007edc76451b9
    • Triggering command: /usr/bin/php8.3 -n -c /tmp/MAsPaF /usr/bin/composer install --no-interaction (http block)

If you need me to access, download, or install something from one of these locations, you can either:


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copy link
Contributor Author

Copilot AI commented Aug 11, 2025

@Kevinrob 👋 This repository doesn't have Copilot instructions. With Copilot instructions, I can understand the repository better, work faster and produce higher quality PRs.

I can generate a .github/copilot-instructions.md file for you automatically. Click here to open a pre-filled issue and assign it to me. I'll write the instructions, and then tag you for review.

Co-authored-by: Kevinrob <4509277+Kevinrob@users.noreply.github.com>
Copilot AI changed the title [WIP] ✨Set up Copilot instructions ✨ Add GitHub Copilot instructions for repository Aug 11, 2025
Copilot AI requested a review from Kevinrob August 11, 2025 10:53
Copilot finished work on behalf of Kevinrob August 11, 2025 10:53
@Kevinrob Kevinrob marked this pull request as ready for review August 12, 2025 14:40
@Kevinrob Kevinrob merged commit 8514d2d into master Aug 12, 2025
12 of 16 checks passed
@Kevinrob Kevinrob deleted the copilot/fix-204 branch August 12, 2025 14:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

✨Set up Copilot instructions

2 participants