Skip to content

Releases: rtcoder/ShiftPHP

ShiftPHP v0.22.1

17 Jun 18:35
2153045

Choose a tag to compare

Changes

Changes

  • Add OpenAPI documentation attributes: Summary, Description, Tag, Response, Deprecated, Security, and Schema.
  • Extend OpenAPI generation with summaries, descriptions, custom tags, custom responses, security metadata, deprecation metadata, formats, enums, nullable fields, and required fields.
  • Add ./shift openapi --validate and use it from ./shift qa.
  • Add an OpenAPI validator for required document fields, unique operation ids, responses, and path parameters.
  • Improve the live OpenAPI viewer with endpoint search, tag filtering, dark mode, operation counts, security display, and JSON download.
  • Document OpenAPI attributes and validation in README, docs/index.html, and REFACTORING.md.
  • Add tests for OpenAPI attributes, validator behavior, live page controls, and validate help output.

Verification

  • composer test
  • ./shift lint
  • ./shift qa
  • ./shift openapi
  • ./shift openapi --validate
  • ./shift openapi --live --port=8099 with HTTP checks for / and /openapi.json
  • ./shift help openapi
  • Documentation anchor check for all in-page navigation links

Release

  • Version label: v0.22.1

Pull request

#31: #31

ShiftPHP v0.22.0

17 Jun 17:47
29f113e

Choose a tag to compare

Changes

Changes

  • Add ./shift openapi to generate an OpenAPI 3.0 JSON document from registered module routes.
  • Support ./shift openapi --output=docs/openapi.json for writing the generated document to a file.
  • Add ./shift openapi --live to start a local Swagger-like documentation server backed by generated openapi.json.
  • Support live server binding options with --host= and --port=, defaulting to http://127.0.0.1:8088.
  • Generate paths, methods, operation ids, tags, path parameters, query parameters, request bodies, DTO schemas, response statuses, and response headers from routing/controller attributes.
  • Add api:docs as an alias for the OpenAPI command.
  • Include OpenAPI generation in ./shift qa.
  • Document the command in README, docs/index.html, and REFACTORING.md.
  • Add tests for command discovery, route attribute generation, DTO schemas, output files, module route generation, live page rendering, and live option help.

Verification

  • composer test
  • ./shift lint
  • ./shift qa
  • ./shift openapi
  • ./shift openapi --output=
  • ./shift openapi --live --port=8099 with HTTP checks for / and /openapi.json
  • ./shift help openapi
  • Documentation anchor check for all in-page navigation links

Release

  • Version label: v0.22.0

Pull request

#30: #30

ShiftPHP v0.21.0

17 Jun 17:22
5c9f8fb

Choose a tag to compare

Changes

Changes

  • Add +--------------+--------+---------------------+
    | Check | Status | Details |
    +--------------+--------+---------------------+
    | PHP syntax | ok | 132 file(s) checked |
    | File hygiene | ok | 143 file(s) checked |
    +--------------+--------+---------------------+
    �[0;32mLint checks passed.�[0m for PHP syntax and file hygiene checks.
  • Add +-----------------+--------+---------------------------+
    | Check | Status | Details |
    +-----------------+--------+---------------------------+
    | Composer config | ok | composer.json valid |
    | PHP syntax | ok | 132 file(s) checked |
    | File hygiene | ok | 143 file(s) checked |
    | Test suite | ok | composer test passed |
    | Route list | ok | ./shift route:list passed |
    +-----------------+--------+---------------------------+
    �[0;32mQuality checks passed.�[0m for Composer validation, lint checks, test suite execution, and route listing.
  • Introduce reusable quality check classes for CLI commands and diagnostics.
  • Reuse the shared PHP syntax and test checks in .
  • Clean existing trailing whitespace so file hygiene checks pass.
  • Add tests for quality command discovery, PHP syntax checks, file hygiene failures, and lint output.
  • Document quality commands in README, docs/index.html, and REFACTORING.md.

Verification

  • composer test
  • ./shift lint
  • ./shift qa
  • Documentation anchor check for all in-page navigation links
  • ./shift help lint
  • ./shift help qa

Release

  • Version label: v0.21.0

Pull request

#29: #29

ShiftPHP v0.20.0

17 Jun 16:58
9460ada

Choose a tag to compare

Changes

Changes

  • Rebuild docs/index.html into a Laravel-like developer guide with persistent navigation and grouped sections.
  • Document installation, configuration, directory structure, request lifecycle, routing, controllers, requests, responses, validation, middleware, modules, service container, commands, database, query builder, models, migrations, logging, cache, doctor, testing, and releases.
  • Add responsive documentation layout handling for code blocks, tables, and narrow screens.
  • Mark the developer documentation milestone as completed in REFACTORING.md.

Verification

  • composer validate --no-check-publish
  • composer test
  • Documentation anchor check for all in-page navigation links
  • Browser check at /docs/index.html on desktop and mobile viewport

Release

  • Version label: v0.20.0

Pull request

#27: #27

ShiftPHP v0.19.0

17 Jun 16:47
c496900

Choose a tag to compare

Changes

  • add #[Command] attributes for CLI command names, aliases, and help groups
  • extend CommandRegistry with command definitions and alias resolution
  • group ./shift help output and show aliases in command-specific help
  • add ./shift doctor project diagnostics for PHP version, extensions, composer config, lint, tests, environment, database config, and module cache
  • add request id lifecycle with generated or preserved X-Request-Id response headers
  • include request id in structured exception log context
  • update module command stubs, README, developer docs, and refactoring notes

Pull request

#26: #26

ShiftPHP v0.18.0

17 Jun 16:30
68656e7

Choose a tag to compare

Changes

  • add a zero-dependency logging layer with LoggerInterface, NullLogger, JsonFileLogger, and LoggerFactory
  • log framework exceptions from App and the global ErrorHandler with structured context
  • include request method, path, IP, user agent, request id, status, file, and line in exception log context
  • support LOG_ENABLED and LOG_PATH environment configuration
  • allow replacing the logger through the service container
  • document logging in README, developer docs, .env.example, and refactoring notes

Pull request

#25: #25

ShiftPHP v0.17.0

17 Jun 16:05
903bf2d

Choose a tag to compare

Changes

  • add module discovery cache support in ModuleLoader
  • add cache:modules, cache:status, and cache:clear CLI commands
  • store generated module cache under storage/cache/modules.php and ignore runtime cache files
  • document production cache usage in README, developer docs, and refactoring notes

Pull request

#24: #24

ShiftPHP v0.16.1

17 Jun 15:44
1185176

Choose a tag to compare

Changes

  • add a shared CLI command registry for framework, application, and module commands
  • use the registry in the main CLI dispatcher and help command
  • normalize command names across colon, dash, underscore, and class-like forms
  • document command discovery in README, developer docs, and refactoring notes

Pull request

#23: #23

ShiftPHP v0.16.0

17 Jun 15:16
b1f2261

Choose a tag to compare

Changes

  • add database migration base class, runner, repository tracking, and migrate/status/rollback commands
  • add create:migration generator with a file-based stub
  • make help list registered commands and show command-specific usage
  • document migrations and CLI help in README, developer docs, and refactoring notes

Pull request

#22: #22

ShiftPHP v0.15.0

17 Jun 13:53
26318dd

Choose a tag to compare

Changes

  • add ./shift test for running the project test suite through the framework CLI
  • add ./shift about with framework, PHP, environment, and path information
  • add ./shift env:check for validating required environment variables
  • add ./shift db:check for checking configured PDO database connectivity
  • add ./shift module:list for listing discovered modules, config status, and command mappings
  • document the new commands in README and developer docs

Pull request

#21: #21