Skip to content

Releases: LastDragon-ru/lara-asp

Release 1.0.3 🐛

20 Aug 06:32
1.0.3
428e253
Compare
Choose a tag to compare

Bug Fixes

  • graphql: @searchBy will correctly extends operators for aliases (ad3dd45)

Release 1.0.2 🐛

19 Aug 05:29
1.0.2
23f077a
Compare
Choose a tag to compare

Bug Fixes

  • graphql: @searchByOperatorRelation will correctly determine name of nested Relation ("Call to undefined method Model::relation().") (3b1c246)

Release 1.0.1 🐛

18 Aug 09:54
1.0.1
d6c8707
Compare
Choose a tag to compare

Bug Fixes

  • eloquent: ModelHelper::isRelation() will support unions (all type should be instance of Relation) and interceptions (any of) of types (665c73f)
  • graphql/SchemaPrinter: Directives in description will be wrapped by code block (b7378b1)
  • graphql: @graphql Logical operators will group conditions correctly (d79da46)
  • graphql: @searchByOperatorRelation will correctly determine name of Relation ("Property Model::() is not a relation.") (b28362e)

Release 1.0.0 🤪

06 Aug 13:02
1.0.0
d556155
Compare
Choose a tag to compare
Breaking changes

Features

  • grahpql: @searchBy updated to use operator-directives (#18, 5b153b3) ☣
  • grahpql: @sortBy updated to use operator-directives (#18, 744b313) ☣
  • graphql: @searchBy bitwise operators support: &, |, ^, >>, << (#25, fe65037)
  • graphql: @searchBy will extends list of operators for Int and Float types by operators for Number type (87037e0) ☣
  • queue: delay option support (32b7160)
  • testing: Removed deprecated SetUpTraits trait (2d2e71f) ☣
  • testing: Removed deprecated WithQueryLog trait (fdf4152) ☣
  • testing: Response constrains will show/return the diff (#33, fa2c637) ☣

Bug Fixes

  • formatter: Methods of Formatter class will throw FailedToFormatValue if error. The exception will also be used instead of FailedToFormatDate (d96a68a) ☣
  • testing: Return type of Override::override() (47ee2da)

Miscellaneous Chores

  • core: ProviderWithCommands marked as deprecated (f2e0357) ☣

Code Refactoring

  • graphql: All SchemaPrinter contract merged into one (#17, 7a641ff) ☣

Bugfixes and `SchemaPrinter` improvements.

24 May 11:15
0.15.0
4b54170
Compare
Choose a tag to compare
Breaking changes

Features

  • graphql/SchemaPrinter: SchemaPrinter contract extended with two new methods SchemaPrinter::getLevel() and SchemaPrinter::setLevel(). (98953bf) ☣
  • graphql/SchemaPrinter: Implemented SchemaTypePrinter (to print Type and all its used types/directives) and assertGraphQLSchemaTypeEquals() assertion. (cc581cf)
  • graphql/SchemaPrinter: Implemented TypePrinter (to print one single Type) and assertGraphQLTypeEquals() assertion. (1828e8c)

Bug Fixes

  • graphql/SchemaPrinter: Directives indent in description. (33c4505), closes #16
  • testing: CronableAssertions::assertCronableRegistered(): "TypeError: str_contains(Argument #1 ($haystack) must be of type string, null given". (cc878d2)

Code Refactoring

  • graphql/SchemaPrinter: Printer contract renamed to SchemaPrinter. (2ddad1b) ☣

Security

`@sortBy` *Many relations support 😏

02 Apr 09:21
0.14.0
b898d05
Compare
Choose a tag to compare
Breaking changes

Features

  • core: ProviderWithTranslations will use Application::langPath() instead of hard-coded resources/ and also expects that package's translations will be places in lang directory instead of resources/lang (the same as in Laravel v9). (bc5891d) ☣
  • eloquent: Iterator will support only Eloquent Builder (because is impossible to satisfy phpstan...) (a871876) ☣
  • graphql/@sortBy: BelongsToMany and MorphToMany support. (650daf7)
  • graphql/@sortBy: HasMany support. (30694ee)
  • graphql/@sortBy: HasManyThrough support. (745a76c)
  • graphql/@sortBy: MorphMany support. (5a10f3f)
  • graphql/@sortBy: Eloquent Builder will sort sub queries to be more consistent. (915335a) ☣
  • graphql/SchemaPrinter: Added Settings::isAlwaysMultilineArguments() that allow print arguments multi-line always. (30ffc5f) ☣
  • graphql: Removed code related to Resolver concept because it was never (and will not be) used in real life. (3564e4c) ☣

Bug Fixes

  • migrator: Commands will be compatible with Laravel ^9.6 (bf759bd)
  • queue: Return type of WithInitialization::initialized() will be static instead of self. (f0a952f) ☣

SchemaPrinter improvements/fixes

13 Mar 09:51
0.13.0
44cae2a
Compare
Choose a tag to compare
Breaking changes

Features

  • graphql/SchemaPrinter: DirectiveResolver::getDefinitions() will also return standard directives (to be consistent with types). (633571b) ☣
  • graphql/SchemaPrinter: GraphQLExpectedSchema can define own Settings. (d6bae80)
  • graphql/SchemaPrinter: IntrospectionPrinter will return only introspection types as unused. (0601bb8)
  • graphql/SchemaPrinter: PrintedSchema::getUnusedTypes() will also return standard types. (3402e22)
  • graphql/SchemaPrinter: SchemaPrinter will use DirectiveFilter for standard directives too. (e33f957) ☣
  • graphql/SchemaPrinter: Added PrintedSchema contract. (2604f35)
  • graphql/SchemaPrinter: Added PrintedSchema::getUnusedDirectives() that will return all unused directives. (d1a8130)
  • graphql/SchemaPrinter: Added Settings::getDirectiveDefinitionFilter() that allow exclude Directive Definitions. (6583742) ☣
  • graphql/SchemaPrinter: Added Settings::getTypeDefinitionFilter() that allows filter out type definitions. (504a252) ☣
  • graphql: GraphQLAssertions::assertGraphQLSchemaEquals() update to allow PrintedSchema and Schema as $expected. (bbff36b) ☣

Bug Fixes

  • graphql/@sortBy: _ will work with @paginate. (ca43d21), closes #12
  • graphql/SchemaPrinter: GraphQLAssertions::assertGraphQLSchemaEquals() will not interpret empty used/unused types/directives lists as "skip assert" (assertion will be skipped only if null). (b722c1c) ☣
  • graphql/SchemaPrinter: GraphQLAssertions::assertGraphQLSchemaEquals() will not print expected schema when not necessary. (1cffe6a)
  • testing: registration of StrictAssertEquals. (d6e7b50)

Performance Improvements

  • graphql/SchemaPrinter: DirectiveResolver will not load all lighthouse's directives (because they are not needed + it is very slow) and will cache definitions/instances. (b61a248) ☣

Code Refactoring

  • graphql: Minimal version of "nuwave/lighthouse" set to ^5.8.0. (25816cc) ☣

Laravel 9 Support 🤗

27 Feb 07:01
0.12.0
2806e93
Compare
Choose a tag to compare
Breaking changes

Features

  • Laravel 9 support. (#10; c12b021)
  • migrator: Removed DirectorySeeder and RootSeeder. (1be3a4e) ☣
  • queue, testing: CronableRegistrator will add disabled Cronable into Schedule it is needed to be able to test registration. (cf050e2) ☣
  • spa: Request::validated() updated to be compatible with Laravel 9 and support $key and $default. (3eb876f)

Bug Fixes

  • graphql: "LogicException : Override for Nuwave\Lighthouse\Schema\Source\SchemaSourceProvider already defined." while testing schemas. (0623c36)
  • graphql/SchemaPrinter: Fixed missing LF in directive locations when the definition is multiline. (e4d69bf)
  • graphql/SchemaPrinter: Printer will parse all definitions from Directive:definition() to avoid "DefinitionException : Lighthouse failed while trying to load a type XXX" error. (5c20332)
  • queue: ConsoleKernelWithSchedule will not use booted() because there are no reasons to use it here (also, in some cases the previous approach may lead to Cronable was registered twice). (64482a6)
  • queue: ProviderWithSchedule will use afterResolving() callback to register Cronable. (bf84e0d) ☣

Brand new/Awesome `SchemaPrinter` 😋

05 Feb 11:18
0.11.0
43b5740
Compare
Choose a tag to compare
Breaking changes
🔥 Something cool

Features

  • core: Added Subject::getObservers(). (eb59a63)
  • eloquent: Added ModelHelper::isSoftDeletable() helper. (b254288)
  • eloquent: Result of ModelHelper::isRelation() will be cached (cache can be reset by ModelHelper::resetCache()) (a63f272)
  • graphql: Added GraphQLExpectedSchema that can be used with assertGraphQLSchemaEquals() to check used/unused types and directives. (72fd9a9)
  • graphql: 🔥 Awesome SchemaPrinter with directives, filtering, advanced formatting, and more. The assertGraphQLSchemaEquals() also updated to use it. (f9e0b35) ☣
  • graphql: Minimal version of "nuwave/lighthouse" set to "^5.6.1" (required to print repeatable directives). (e694b7d) ☣

Bug Fixes

  • formatter: Formatter::forLocale()/Formatter::forTimezone() will not lose timezone/locale. (940ed7b)
  • testing: Override will check usages in assertPostConditions() instead of beforeApplicationDestroyed() ("Lock wait timeout exceeded" fix). (95649d9)

Code Refactoring

  • core: Subject methods will return self instead of void. (7d80539) ☣
  • core: Class Subject converted into interface, all methods moved into new class Dispatcher. (e7bef00) ☣

0.10.0

25 Dec 17:37
0.10.0
f89756d
Compare
Choose a tag to compare
Breaking changes

Features

  • core: Observer implementation. (9bf13f9)
  • eloquent: Added Iterator::$index that required to count items to continue iteration. (cd3be87)
  • eloquent: Added ModelHelper::isRelation(). (b621e97)
  • eloquent: Iterators will use Subject (so onBeforeChunk() and onAfterChunk() will not redefine existing callback). (60858d3) ☣
  • eloquent: Removed ChunkedIterator::safe(). (846de72) ☣
  • formatter: Formatter::app() renamed to Formatter::getApplication(). (6f50747) ☣
  • formatter: Added Formatter::forTimezone() to create formatter for specific timezone, also, default timezone set to null instead of UTC. (41bc6af) ☣
  • formatter: Better logic for settings locale: by default locale will be null and getDefaultLocale() will be used. (dd94a28)
  • graphql: New testing helper GraphQLAssertions::useGraphQLSchema(). (376425c)
  • testing: SetUpTraits deprecated, @before/afterApplicationCreated()/beforeApplicationDestroyed() can be used instead. (fee2f29) ☣
  • testing: New constraint MimeType that checks that response has a Content-Type header by given file extension. (9462814)

Bug Fixes

  • graphql: @sortBy will check FieldResolver only for _ (type). (3b4acc2)
  • graphql: Enums serialization. (2dd62a7) ☣
  • queue: "Cron\CronExpression::__construct(): Argument #1 ($expression) must be of type string, null given". (d936445)
  • testing: CronableAssertions::assertCronableRegistered() will work even if no cron defined for the job. (08a47dc)