laravel-api-response-builder

Builds nice, normalized and easy to consume REST JSON responses for Laravel powered APIs.

MIT License

Downloads
308.1K
Stars
721
Committers
9

Bot releases are hidden (Show)

laravel-api-response-builder - v11.0.0 Latest Release

Published by MarcinOrlowski 6 months ago

  • Added support for Laravel v11.
  • Corrected documentation (thanks to Ehsan Soleimanian)
laravel-api-response-builder -

Published by MarcinOrlowski over 1 year ago

  • Added support for Laravel v10.
laravel-api-response-builder -

Published by MarcinOrlowski over 1 year ago

  • BACKWARD INCOMPATIBLE CHANGES (more info).
  • Removed redundant PHPDocs entries for type-hinted elements.
  • Fixed exception handler helper not properly handling iterating over mismatched configuration
    items.
  • Fixed missing dependency entry in composer.json (development tools).
  • Reworked tests to use strict object representation of API response stricture to reduce overall
    LoC.
  • Removed assertValidResponse() test helper method due to introduction of ApiResponse class.
laravel-api-response-builder -

Published by MarcinOrlowski over 2 years ago

  • Laravel 9.x is now included in test matrices.
  • PHP 8.1 is now included in test matrices.
  • Simplified some logic by removing redundant checks.
laravel-api-response-builder -

Published by MarcinOrlowski almost 3 years ago

  • Default composer.json also includes development packages now.
  • Updated examples in docs (thanks to @jcmcclorey).
  • Small code cleanup.
laravel-api-response-builder -

Published by MarcinOrlowski over 3 years ago

  • Added data_always_object config option that, when enabled enforces response data node to always be JSON object (for NULL it will return empty object {}).
  • Updated project logo
  • Improved code quality (fully pass on PHPStan's strict mode)
  • Updated code style to match standard ruleset.
  • Fixed floats being rejected as direct primitive payload.
  • Fixed Converter unit tests for primitives-as-payload.
  • Fixed ResponseBuilderProvider throwing incorrect Exception in case of invalid config file.
  • Added Validator::assertIsObjectOrExistingClass() method.
  • Validator::assertIsInt() throws now NotIntegerException as expected.
  • Corrected Validator class tests to check agains specific exceptions thrown, not base class.
  • Improved error handling in JsonSerializableConverter
  • Switched Composer's autoload to follow psr-4 instead of plain classmap (thanks to Viktor Szépe).
  • Added TestingHelpers::getResponseContent(), TestingHelpers::langGet() to satisfy static analyzers.
  • Updated and corrected PHPDocs (incl. some type hints).
  • Added missing type hint to success().
  • Added strict type header to classes.
  • Removed dev block from default composer.json. See .config/README.md for details.
  • Updated documentation.
laravel-api-response-builder -

Published by MarcinOrlowski over 3 years ago

  • [RB-194] Changed signature of ExceptionHandlers' handle() method to expectc Throwable instead of Exception (reported by @genesiscz).
laravel-api-response-builder -

Published by MarcinOrlowski over 3 years ago

  • [RB-190] Fixed converting resource and resource collection (reported by @achinkumar121).
laravel-api-response-builder -

Published by MarcinOrlowski over 3 years ago

  • ExceptionHandler now expects \Throwable instead of \Exception.
laravel-api-response-builder -

Published by MarcinOrlowski almost 4 years ago

  • Updated Travis config to run tests on PHP 8 too.
  • Added Arabic translation (thanks to @mustafa-online)
  • Added Turkish translation (thanks to @victorioustr)
laravel-api-response-builder -

Published by MarcinOrlowski almost 4 years ago

Please see CHANGELOG for detailed information.

laravel-api-response-builder -

Published by MarcinOrlowski almost 4 years ago

  • [RB-175] Paginator and LengthAwarePaginator support is now included in default converter configuration (reported by @kcaj-burr)
  • Fixed testConfigClassesMappingEntriesUnwantedConfigKeys() testing trait not supporting null keys in converter config.
laravel-api-response-builder -

Published by MarcinOrlowski almost 4 years ago

  • Validator type related exceptions must now implement InvalidTypeExceptionContract.
  • converter config key element now accepts null to indicate you want no key to be used.
laravel-api-response-builder -

Published by MarcinOrlowski almost 4 years ago

  • Corrected tests to use regular ServiceProvider.
  • Corrected primitive converter tests.
  • Presence of configuration "converter/classes" array is now mandatory (reported by Raja)
  • Extensive documentation overhaul
laravel-api-response-builder -

Published by MarcinOrlowski almost 4 years ago

  • Fixed auto-discovery failing due to broken ServiceProvider (reported by Efriandika Pratama).
  • Corrected documentation and usage examples.
laravel-api-response-builder -

Published by MarcinOrlowski about 4 years ago

  • BACKWARD INCOMPATIBLE CHANGES (more info)
  • [RB-156] Added logic to deal with directly returned objects or arrays.
  • [RB-158] Passing primitives as direct payload (i.e. success(12.50); is now supported for array, boolean,
    double, integer and string types, configurable via new converter/primitives.
  • Removed hadrcoded val key used by JsonSerializable converter.
  • Introduced own exceptions for better error reporting. See src/Exceptions for more info.
laravel-api-response-builder -

Published by MarcinOrlowski about 4 years ago

  • [#155] Fixed ResponseBuilder internals preventing exdending class code from being invoked, thus making response object structure manipulation ineffective (reported by krek95)
laravel-api-response-builder -

Published by MarcinOrlowski about 4 years ago

  • Added logging (.env controllable) for payload Converter to help debugging inproper data conversion.
laravel-api-response-builder -

Published by MarcinOrlowski about 4 years ago

  • Updated Travis config to make tests run against Laravel 8.0.
  • Removed Util::printArray() helper.
laravel-api-response-builder -

Published by MarcinOrlowski over 4 years ago

  • BACKWARD INCOMPATIBLE CHANGES (more info)
  • Improved performance by using calls qualified references.
  • [RB-132] Reworked exception handler helper to support delegated handlers for better flexibility.
  • Reverted depreciation of BaseApiCodes reserved range codes.
  • Sealed built-in data converter classes.
  • Removed ResponseBuilderLegacy class from the package.
  • Added German localization.