Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Main v2 merge #2944

Merged
merged 48 commits into from
Mar 28, 2024
Merged

Main v2 merge #2944

merged 48 commits into from
Mar 28, 2024

Commits on Dec 3, 2023

  1. Configuration menu
    Copy the full SHA
    2d3027e View commit details
    Browse the repository at this point in the history
  2. Update v3-changes.md

    ReneWerner87 committed Dec 3, 2023
    Configuration menu
    Copy the full SHA
    9bcc7f3 View commit details
    Browse the repository at this point in the history

Commits on Dec 5, 2023

  1. Update CONTRIBUTING.md (#2752)

    Grammar correction.
    tokelo-12 committed Dec 5, 2023
    Configuration menu
    Copy the full SHA
    a80b288 View commit details
    Browse the repository at this point in the history

Commits on Dec 7, 2023

  1. chore(encryptcookie)!: update default config (#2753)

    * chore(encryptcookie)!: update default config
    
    docs(encryptcookie): enhance documentation and examples
    
    BREAKING CHANGE: removed the hardcoded "csrf_" from the Except.
    
    * docs(encryptcookie): reads or modifies cookies
    
    * chore(encryptcookie): csrf config example
    
    * docs(encryptcookie): md table spacing
    sixcolors committed Dec 7, 2023
    Configuration menu
    Copy the full SHA
    e4d7e84 View commit details
    Browse the repository at this point in the history
  2. build(deps): bump actions/setup-go from 4 to 5 (#2754)

    Bumps [actions/setup-go](https://github.com/actions/setup-go) from 4 to 5.
    - [Release notes](https://github.com/actions/setup-go/releases)
    - [Commits](actions/setup-go@v4...v5)
    
    ---
    updated-dependencies:
    - dependency-name: actions/setup-go
      dependency-type: direct:production
      update-type: version-update:semver-major
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] committed Dec 7, 2023
    Configuration menu
    Copy the full SHA
    8aa8868 View commit details
    Browse the repository at this point in the history

Commits on Dec 8, 2023

  1. 🩹 middleware/logger/: log client IP address by default (#2755)

    * middleware/logger: Log client IP address by default.
    
    * Update doc.
    iredmail committed Dec 8, 2023
    Configuration menu
    Copy the full SHA
    c441bdf View commit details
    Browse the repository at this point in the history

Commits on Dec 12, 2023

  1. fix: don't constrain middlewares' context-keys to strings 🐛 (#2751)

    * Revert "Revert ":bug: requestid.Config.ContextKey is interface{} (#2369)" (#2742)"
    
    This reverts commit 28be17f.
    
    * fix: request ContextKey default value condition
    
    Should check for `nil` since it is `any`.
    
    * fix: don't constrain middlewares' context-keys to strings
    
    `context` recommends using "unexported type" as context keys to avoid
    collisions https://pkg.go.dev/github.com/gofiber/fiber/v2#Ctx.Locals.
    
    The official go blog also recommends this https://go.dev/blog/context.
    
    `fiber.Ctx.Locals(key any, value any)` correctly allows consumers to
    use unexported types or e.g. strings.
    
    But some fiber middlewares constrain their context-keys to `string` in
    their "default config structs", making it impossible to use unexported
    types.
    
    This PR removes the `string` _constraint_ from all middlewares, allowing
    to now use unexported types as per the official guidelines. However
    the default value is still a string, so it's not a breaking change, and
    anyone still using strings as context keys is not affected.
    benjajaja committed Dec 12, 2023
    Configuration menu
    Copy the full SHA
    b185083 View commit details
    Browse the repository at this point in the history

Commits on Dec 13, 2023

  1. 📚 Update app.md for indentation (#2761)

    Update app.md for indentation
    MehmetFiratKomurcu committed Dec 13, 2023
    Configuration menu
    Copy the full SHA
    090acbb View commit details
    Browse the repository at this point in the history
  2. build(deps): bump github.com/google/uuid from 1.4.0 to 1.5.0 (#2762)

    Bumps [github.com/google/uuid](https://github.com/google/uuid) from 1.4.0 to 1.5.0.
    - [Release notes](https://github.com/google/uuid/releases)
    - [Changelog](https://github.com/google/uuid/blob/master/CHANGELOG.md)
    - [Commits](google/uuid@v1.4.0...v1.5.0)
    
    ---
    updated-dependencies:
    - dependency-name: github.com/google/uuid
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] committed Dec 13, 2023
    Configuration menu
    Copy the full SHA
    c3fed55 View commit details
    Browse the repository at this point in the history

Commits on Dec 16, 2023

  1. build(deps): bump github/codeql-action from 2 to 3 (#2763)

    Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2 to 3.
    - [Release notes](https://github.com/github/codeql-action/releases)
    - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
    - [Commits](github/codeql-action@v2...v3)
    
    ---
    updated-dependencies:
    - dependency-name: github/codeql-action
      dependency-type: direct:production
      update-type: version-update:semver-major
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] committed Dec 16, 2023
    Configuration menu
    Copy the full SHA
    b0925dc View commit details
    Browse the repository at this point in the history

Commits on Dec 18, 2023

  1. Changing default log output (#2730)

    changing default log output
    
    Closes #2729
    brunodmartins committed Dec 18, 2023
    Configuration menu
    Copy the full SHA
    dc2d2ef View commit details
    Browse the repository at this point in the history

Commits on Dec 19, 2023

  1. Update hooks.md

    fix wrong hooks signature
    ReneWerner87 committed Dec 19, 2023
    Configuration menu
    Copy the full SHA
    43fa236 View commit details
    Browse the repository at this point in the history

Commits on Dec 22, 2023

  1. 🩹 Fix: CORS middleware should use the defined AllowedOriginsFunc conf…

    …ig when AllowedOrigins is empty (#2771)
    muhammadkholidb committed Dec 22, 2023
    Configuration menu
    Copy the full SHA
    1fac52a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c49faf9 View commit details
    Browse the repository at this point in the history
  3. 🩹🚨 - fix for redirect with query params (#2748)

    * redirect with query params did not work, fix it and add test for it
    
    * redirect middleware - fix test typo
    gilwo committed Dec 22, 2023
    Configuration menu
    Copy the full SHA
    d6c8876 View commit details
    Browse the repository at this point in the history

Commits on Dec 23, 2023

  1. Configuration menu
    Copy the full SHA
    38eb4bd View commit details
    Browse the repository at this point in the history

Commits on Jan 3, 2024

  1. ✨ feat: add liveness and readiness checks (#2509)

    * ✨ feat: add liveness and readiness checkers
    
    * 📝 docs: add docs for liveness and readiness
    
    * ✨ feat: add options method for probe checkers
    
    * ✅ tests: add tests for liveness and readiness
    
    * ♻️ refactor: change default endpoint values
    
    * ♻️ refactor: change default value for liveness endpoint
    
    * 📝 docs: add return status for liveness and readiness probes
    
    * ♻️ refactor: change probechecker to middleware
    
    * 📝 docs: move docs to middleware session
    
    * ♻️ refactor: apply gofumpt formatting
    
    * ♻️ refactor: remove unused parameter
    
    * split config and apply a review
    
    * apply reviews and add testcases
    
    * add benchmark
    
    * cleanup
    
    * rename middleware
    
    * fix linter
    
    * Update docs and config values
    
    * Revert change to IsReady
    
    * Updates based on code review
    
    * Update docs to match other middlewares
    
    ---------
    
    Co-authored-by: Muhammed Efe Cetin <efectn@protonmail.com>
    Co-authored-by: Juan Calderon-Perez <835733+gaby@users.noreply.github.com>
    Co-authored-by: Juan Calderon-Perez <jgcalderonperez@protonmail.com>
    4 people committed Jan 3, 2024
    Configuration menu
    Copy the full SHA
    6249bc4 View commit details
    Browse the repository at this point in the history

Commits on Jan 5, 2024

  1. prepare release v2.52.0

    - add more Parser tests
    ReneWerner87 committed Jan 5, 2024
    Configuration menu
    Copy the full SHA
    89f551b View commit details
    Browse the repository at this point in the history
  2. fix healthcheck.md

    ReneWerner87 committed Jan 5, 2024
    Configuration menu
    Copy the full SHA
    476e1ed View commit details
    Browse the repository at this point in the history

Commits on Jan 6, 2024

  1. Configuration menu
    Copy the full SHA
    2e66937 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7ba3137 View commit details
    Browse the repository at this point in the history

Commits on Jan 28, 2024

  1. Fix default value to false in docs of QueryBool (#2811)

    fix default value to false in docs of QueryBool
    CAEL0 committed Jan 28, 2024
    Configuration menu
    Copy the full SHA
    e524b73 View commit details
    Browse the repository at this point in the history

Commits on Feb 6, 2024

  1. Configuration menu
    Copy the full SHA
    8325ed0 View commit details
    Browse the repository at this point in the history
  2. Update ctx.md

    ReneWerner87 committed Feb 6, 2024
    Configuration menu
    Copy the full SHA
    56d2ec7 View commit details
    Browse the repository at this point in the history

Commits on Feb 8, 2024

  1. Update routing.md

    ReneWerner87 committed Feb 8, 2024
    Configuration menu
    Copy the full SHA
    4e0f180 View commit details
    Browse the repository at this point in the history

Commits on Feb 19, 2024

  1. Configuration menu
    Copy the full SHA
    a84a7ce View commit details
    Browse the repository at this point in the history
  2. Merge pull request #2867 from grivera64/v2

    📚 Doc: Fix code snippet indentation in /docs/api/middleware/keyauth.md
    gaby committed Feb 19, 2024
    Configuration menu
    Copy the full SHA
    cf54c25 View commit details
    Browse the repository at this point in the history
  3. fix: healthcheck middleware not working with route group (#2863)

    * fix: healthcheck middleware not working with route group
    
    * perf: change verification method to improve perf
    
    * Update healthcheck_test.go
    
    * test: add not matching route test for strict routing
    
    * add more test cases
    
    * correct tests
    
    * correct test helpers
    
    * correct tests
    
    * correct tests
    
    ---------
    
    Co-authored-by: Juan Calderon-Perez <835733+gaby@users.noreply.github.com>
    Co-authored-by: René Werner <rene@gofiber.io>
    3 people committed Feb 19, 2024
    Configuration menu
    Copy the full SHA
    5e30112 View commit details
    Browse the repository at this point in the history

Commits on Feb 21, 2024

  1. Merge pull request from GHSA-fmg4-x8pw-hjhg

    * Enforce Wildcard Origins with AllowCredentials check
    
    * Expand unit-tests, fix issues with subdomains logic, update docs
    
    * Update cors.md
    
    * Added test using localhost, ipv4, and ipv6 address
    
    * improve documentation markdown
    
    ---------
    
    Co-authored-by: René Werner <rene@gofiber.io>
    gaby and ReneWerner87 committed Feb 21, 2024
    Configuration menu
    Copy the full SHA
    f0cd3b4 View commit details
    Browse the repository at this point in the history
  2. Update app.go

    prepare release v2.52.1
    ReneWerner87 committed Feb 21, 2024
    Configuration menu
    Copy the full SHA
    f9fcb02 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    70f21d5 View commit details
    Browse the repository at this point in the history
  4. fix sync-docs workflow

    ReneWerner87 committed Feb 21, 2024
    Configuration menu
    Copy the full SHA
    0df0e08 View commit details
    Browse the repository at this point in the history
  5. fix sync-docs workflow

    ReneWerner87 committed Feb 21, 2024
    Configuration menu
    Copy the full SHA
    ddc6b23 View commit details
    Browse the repository at this point in the history

Commits on Mar 1, 2024

  1. fix(middleware/cors): Validation of multiple Origins (#2883)

    * fix: allow origins check
    
    Refactor CORS origin validation and normalization to trim leading or trailing whitespace in the cfg.AllowOrigins string [list]. URLs with whitespace inside the URL are invalid, so the normalizeOrigin will return false because url.Parse will fail, and the middleware will panic.
    
    fixes #2882
    
    * test: AllowOrigins with whitespace
    
    * test(middleware/cors): add benchmarks
    
    * chore: fix linter errors
    
    * test(middleware/cors): use h() instead of app.Test()
    
    * test(middleware/cors): add miltiple origins in Test_CORS_AllowOriginScheme
    
    * chore: refactor validate and normalize
    
    * test(cors/middleware): add more benchmarks
    sixcolors committed Mar 1, 2024
    Configuration menu
    Copy the full SHA
    d456e7d View commit details
    Browse the repository at this point in the history

Commits on Mar 2, 2024

  1. prepare release v2.52.2

    ReneWerner87 committed Mar 2, 2024
    Configuration menu
    Copy the full SHA
    109e91a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    68d90cd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d2b19e2 View commit details
    Browse the repository at this point in the history

Commits on Mar 17, 2024

  1. fix(middleware/cors): Handling and wildcard subdomain matching (#2915)

    * fix: allow origins check
    
    Refactor CORS origin validation and normalization to trim leading or trailing whitespace in the cfg.AllowOrigins string [list]. URLs with whitespace inside the URL are invalid, so the normalizeOrigin will return false because url.Parse will fail, and the middleware will panic.
    
    fixes #2882
    
    * test: AllowOrigins with whitespace
    
    * test(middleware/cors): add benchmarks
    
    * chore: fix linter errors
    
    * test(middleware/cors): use h() instead of app.Test()
    
    * test(middleware/cors): add miltiple origins in Test_CORS_AllowOriginScheme
    
    * chore: refactor validate and normalize
    
    * test(cors/middleware): add more benchmarks
    
    * fix(middleware/cors): handling and wildcard subdomain matching
    
    docs(middleware/cors): add How it works and Security Considerations
    
    * chore: grammar
    
    * Apply suggestions from code review
    
    Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
    
    * chore: fix misspelling
    
    * test(middleware/cors): combine Invalid_Origins tests
    
    * refactor(middleware/cors): headers handling
    
    * docs(middleware/cors): Update AllowOrigins description
    
    * chore: merge
    
    * perf(middleware/cors): optimize handler
    
    * perf(middleware/cors): optimize handler
    
    * chore(middleware/cors): ipdate origin handling logic
    
    * chore(middleware/cors): fix header capitalization
    
    * docs(middleware/cors): improve sercuity notes
    
    * docs(middleware/cors): Improve security notes
    
    * docs(middleware/cors): improve CORS overview
    
    * docs(middleware/cors): fix ordering of how it works
    
    * docs(middleware/cors): add additional info to How to works
    
    * docs(middleware/cors): rm space
    
    * docs(middleware/cors): add validation for AllowOrigins origins to overview
    
    * docs(middleware/cors): update ExposeHeaders and MaxAge descriptions
    
    * docs(middleware/cors): Add dynamic origin validation example
    
    * docs(middleware/cors): Improve security notes and fix header capitalization
    
    * docs(middleware/cors): configuration examples
    
    * docs(middleware/cors): `"*"`
    
    ---------
    
    Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
    sixcolors and coderabbitai[bot] committed Mar 17, 2024
    Configuration menu
    Copy the full SHA
    1aac6f6 View commit details
    Browse the repository at this point in the history

Commits on Mar 20, 2024

  1. fix(middleware/cors): Categorize requests correctly (#2921)

    * fix(middleware/cors): categorise requests correctly
    
    * test(middleware/cors): improve test coverage for request types
    
    * test(middleware/cors): Add subdomain matching tests
    
    * test(middleware/cors): parallel tests for CORS headers based on request type
    
    * test(middleware/cors): Add benchmark for CORS subdomain matching
    
    * test(middleware/cors): cover additiona test cases
    
    * refactor(middleware/cors): origin validation and normalization
    sixcolors committed Mar 20, 2024
    1 Configuration menu
    Copy the full SHA
    1607d87 View commit details
    Browse the repository at this point in the history

Commits on Mar 25, 2024

  1. test(middleware/csrf): Fix Benchmark Tests (#2932)

    * test(middleware/csrf): fix Benchmark_Middleware_CSRF_*
    
    * fix(middleware/csrf): update refererMatchesHost()
    sixcolors committed Mar 25, 2024
    Configuration menu
    Copy the full SHA
    ba10e68 View commit details
    Browse the repository at this point in the history
  2. Prepare release v2.52.3

    ReneWerner87 committed Mar 25, 2024
    Configuration menu
    Copy the full SHA
    43d5091 View commit details
    Browse the repository at this point in the history

Commits on Mar 26, 2024

  1. fix(middleware/cors): CORS handling (#2937)

    * fix(middleware/cors): CORS handling
    
    * fix(middleware/cors): Vary header handling
    
    * test(middleware/cors): Ensure Vary Headers checked
    sixcolors committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    e574c0d View commit details
    Browse the repository at this point in the history
  2. fix(middleware/cors): Vary header handling non-cors OPTIONS requests (#…

    …2939)
    
    * fix(middleware/cors): Vary header handling non-cors OPTIONS requests
    
    * chore(middleware/cors): Add Vary header for non-CORS OPTIONS requests comment
    sixcolors committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    a6f4c13 View commit details
    Browse the repository at this point in the history
  3. prepare release v2.52.4

    ReneWerner87 committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    fd811cf View commit details
    Browse the repository at this point in the history

Commits on Mar 28, 2024

  1. Merge remote-tracking branch 'origin/v2'

    # Conflicts:
    #	.github/ISSUE_TEMPLATE/maintenance-task.yaml
    #	.github/pull_request_template.md
    #	.github/release-drafter.yml
    #	app.go
    #	ctx.go
    #	ctx_test.go
    #	docs/api/middleware/basicauth.md
    #	docs/api/middleware/cors.md
    #	docs/api/middleware/csrf.md
    #	docs/api/middleware/encryptcookie.md
    #	docs/api/middleware/healthcheck.md
    #	docs/api/middleware/keyauth.md
    #	docs/api/middleware/logger.md
    #	docs/api/middleware/requestid.md
    #	go.mod
    #	go.sum
    #	middleware/adaptor/adaptor_test.go
    #	middleware/basicauth/config.go
    #	middleware/cors/cors.go
    #	middleware/cors/cors_test.go
    #	middleware/cors/utils.go
    #	middleware/cors/utils_test.go
    #	middleware/csrf/config.go
    #	middleware/csrf/csrf.go
    #	middleware/csrf/csrf_test.go
    #	middleware/healthcheck/config.go
    #	middleware/healthcheck/healthcheck.go
    #	middleware/healthcheck/healthcheck_test.go
    #	middleware/idempotency/idempotency.go
    #	middleware/keyauth/config.go
    #	middleware/logger/config.go
    #	middleware/logger/logger.go
    #	middleware/redirect/redirect.go
    #	middleware/requestid/config.go
    #	middleware/requestid/requestid_test.go
    ReneWerner87 committed Mar 28, 2024
    Configuration menu
    Copy the full SHA
    464d667 View commit details
    Browse the repository at this point in the history
  2. merge v2 in main(v3)

    ReneWerner87 committed Mar 28, 2024
    Configuration menu
    Copy the full SHA
    08db30e View commit details
    Browse the repository at this point in the history
  3. merge v2 in main(v3)

    ReneWerner87 committed Mar 28, 2024
    Configuration menu
    Copy the full SHA
    a910451 View commit details
    Browse the repository at this point in the history
  4. merge v2 in main(v3)

    ReneWerner87 committed Mar 28, 2024
    Configuration menu
    Copy the full SHA
    2f7d837 View commit details
    Browse the repository at this point in the history