Releases: LastDragon-ru/lara-asp
Releases · LastDragon-ru/lara-asp
Release 1.0.3 🐛
Bug Fixes
- graphql:
@searchBy
will correctly extends operators for aliases (ad3dd45)
Release 1.0.2 🐛
Bug Fixes
- graphql:
@searchByOperatorRelation
will correctly determine name of nested Relation ("Call to undefined method Model::relation().") (3b1c246)
Release 1.0.1 🐛
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 🤪
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.
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 😏
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
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 🤗
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` 😋
☣ |
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
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)