Releases: LastDragon-ru/lara-asp
Releases · LastDragon-ru/lara-asp
New Assertion 🧪
Mark |
Type |
Count |
Packages |
|
Features |
2 |
core , testing |
|
Bug Fixes |
4 |
core , documentator , testing |
Package core
Features
\LastDragon_ru\LaraASP\Core\Path\DirectoryPath::isInside()
added (d6e2800)
Bug Fixes
\LastDragon_ru\LaraASP\Core\Path\FilePath::getExtension()
cannot return empty string (c1c74b0)
Package documentator
Bug Fixes
\LastDragon_ru\LaraASP\Documentator\Processor\Executor
will not catch \Throwable
(1750df3)
Package testing
Features
- New assertion
\LastDragon_ru\LaraASP\Testing\Assertions\FileSystemAssertions\assertDirectoryEquals()
(9250007)
Bug Fixes
\LastDragon_ru\LaraASP\Testing\Concerns\Override::override()
will correctly work when $factory
it callable instance of $class
(510d448)
laravel/scout
v10.13.0 compatibility (20f5e3f)
Maintenance ⚒️
Mark |
Type |
Count |
Packages |
|
Features |
1 |
documentator |
Package documentator
Features
- Min version of
league/commonmark
set to ^2.6.0
(because of Delimiter Stack changes) (37cba0d)
Bugfixes 🐛
Mark |
Type |
Count |
Packages |
|
Bug Fixes |
3 |
documentator , testing |
Package documentator
Bug Fixes
null
output in generated help of lara-asp-documentator:preprocess
command (8a017bf)
- Parsing
{@see}
inline tags while help generation for lara-asp-documentator:preprocess
command (ebc708f)
Package testing
Bug Fixes
\LastDragon_ru\LaraASP\Testing\Utils\TestData
relative paths (./
, ../
) handling (3d81688)
Autumn Evolution 🍂
Mark |
Type |
Count |
Packages |
☣ |
Breaking changes |
31 |
* , core , documentator , formatter , graphql , migrator , serializer , spa |
|
Features |
34 |
core , dev , documentator , serializer |
|
Performance Improvements |
4 |
documentator |
|
Bug Fixes |
19 |
core , documentator , graphql , serializer |
💀 |
Deprecations |
8 |
core , documentator , migrator , serializer |
|
Miscellaneous |
5 |
* , dev |
|
Code Refactoring |
18 |
* , core , documentator , formatter , graphql , migrator , serializer , spa |
This version is the deep refactoring of how the Application/Config and other global Laravel things are injected into classes (no implicit dependencies, see #151), how the package configs looks (no more untyped arrays, see #152), how the Formatter
works internally (simplification and more extendabilities). And, probably the most interesting part, is improvements of the Documentator
- the Processor
is used for all tasks, the links will be correctly updated when one document is included into another; code links support, etc.
Please follow Upgrade Guide to migrate 🤗. You can ask a question and/or discuss in release disscussion.
All packages
Miscellaneous
- Migrate to
.gitattributes
instead of exclude-from-classmap
(8d91470)
- Minimal version of
nikic/php-parser
set to ^5.0
(8311940)
- Minimal version of
symfony/serializer
set to ^6.4.0
(related to 67389ca) (23ed588)
- Relative links validation in Markdown documents (#171, ae5403d)
Code Refactoring
Package core
Features
\LastDragon_ru\LaraASP\Core\Helpers\Translator
will not change keys with namespace (::
) (df4e159)
\LastDragon_ru\LaraASP\Core\Path\FilePath
and \LastDragon_ru\LaraASP\Core\Path\FilePath\DirectoryPath
(replacement of \LastDragon_ru\LaraASP\Core\Utils\Path
util) (8323a04)
- Added
\LastDragon_ru\LaraASP\Core\Utils\Cast::toObject()
and \LastDragon_ru\LaraASP\Core\Utils\Cast::toObjectNullable()
(d477a5c)
- Added
Cast::toNullable()
(e65d0ff)
- Added
File::isFile()
and File::isDirectory()
(6862a0a)
Path::isNormalized()
(d6ded7f)
Bug Fixes
Path::getRelativePath()
will return correct path when $root
is file (9478b44)
Deprecations 💀
\LastDragon_ru\LaraASP\Core\Provider\WithConfig::bootConfig()
. Please use \LastDragon_ru\LaraASP\Core\Provider\WithConfig::registerConfig()
instead (a94b1d8)
\LastDragon_ru\LaraASP\Core\Utils\ConfigMerger
(there is no replacement) (1215419)
- The
\LastDragon_ru\LaraASP\Core\Utils\Path
is deprecated. Please use \LastDragon_ru\LaraASP\Core\Path\FilePath
/\LastDragon_ru\LaraASP\Core\Path\DirectoryPath
instead (a192b7f)
Code Refactoring
Package dev
Features
Container::call()
return type detection (1a924a3)
Miscellaneous
- Removed
dev:example
command (the Runner
contract will be used to run examples) (75b2703)
Package documentator
Features
--exclude
option for lara-asp-documentator:preprocess
(58b80de)
\LastDragon_ru\LaraASP\Documentator\Markdown\Location\Append
can be used to append text to the Document
(1f603be)
\LastDragon_ru\LaraASP\Documentator\Processor\Tasks\CodeLinks\Links\ClassConstantLink
also support enum
cases (0ec6c16)
- Added
Text::getPathTitle()
(converts filename into document title) (cbb7458)
- Better block id for
Preprocess
task (#189, f0164fd)
- Command
lara-asp-documentator:commands
will update relative links inside generated documents (76fd9b9)
- Composer
Package
helper (ddadefa)
Editor:mutate()
can add new lines (eaf3b34)
include:artisan
instruction (#166, 59f4acb)
include:document-list
/include:package-list
instruction can sort documents/packages (#192, 7b04d49) ☣
- Markdown
Document
mutations (#179, #180, 0e2b70d) ☣
Markdown
helper to easy document modification (#179, 1512b81)
- New
include:example
runner (#165, 3b74c52) ☣
- New helper
Text
(0f1db84)
- New markdown mutation
\LastDragon_ru\LaraASP\Documentator\Markdown\Mutations\HeadingsLevel
(ceefd12)
Preprocess
instructions priority (#194, 4336f6c) ☣
Preprocess
task will use Markdown
parser instead of regexps (#186, 7b0c766) ☣
Preprocessor
tasks will properly re-link relative links (926ecb9) ☣
- Processor
Task
can postpone processing until all other files (#172, 9028c23) ☣
Processor
"Code Links" task (#187, dbcab1a) ☣
Processor
File
metadata (#181, 4d6c019) ☣
Processor
Optional
dependency (a25feab)
Processor
wildcard tasks support (124891b)
- The
lara-asp-documentator:preprocess
command will use \LastDragon_ru\LaraASP\Documentator\Processor\Contracts\Factory
to obtain instance of \LastDragon_ru\LaraASP\Documentator\Processor\Processor
(6c544c1)
- The Processor (#162, 2fdac35)
Performance Improvements
Document::mutate()
will clone document only once (73897b7)
- Lazy
Document
parsing (edcbd0b)
- Minor
Markdown
mutations improvements (#184, 460883e) ☣
Processor
Lazy tasks & (weak) FileSystem cache (#185, b2d206c)
Bug Fixes
@link
/@see
in php docblock will be replaced to FQN (prefixed by \
) (5864fdc)
\LastDragon_ru\LaraASP\Documentator\Processor\Exceptions\FileTaskFailed
message (2d18aa5)
\LastDragon_ru\LaraASP\Documentator\Processor\Tasks\CodeLinks\Links\Factory::create()
will trim whitespaces (8fc2bec)
\LastDragon_ru\LaraASP\Documentator\Processor\Tasks\CodeLinks\Task
source file path resolution (42b2adf)
Document::toSplittable()
will remove self links (+ added SelfLinksRemove
mutation) (7842200)
include:artisan
output when verbosity
is not normal
(024f9c5)
- Location detection/update for links with inline nodes inside label (#182, a137201) ☣
- Markdown
Document
EOF after parse/mutate (9c0fafd)
- Markdown
Editor:mutate()
will rtrim all changed lines to avoid whitespaces at the end of the line (571c1a1)
- Markdown
Editor
overlaps calculation (b76ee17)
- Markdown
Move
mutation will not update self links/references (953c327)
- More accurate
CodeLinks
similarity check (#193, b5497d6) ☣
Preprocessor
regexp to find instruction when <target "value">
(32e0d3b)
Preprocessor
will store original target
in Context
(75d30bd)
Reference
will include next empty line (the same as all other blocks) (0a20267)
- Variables names for
include:artisan
(no wrapping by ""
) (3da6fea)
Deprecations 💀
Markdown
helper. Please use MarkdownDocument
/Text
helpers instead (caeff9e)
- The
LastDragon_ru\LaraASP\Documentator\Processor\Metadata\PhpDocBlock
, please use LastDragon_ru\LaraASP\Documentator\Processor\Metadata\PhpClassMarkdown
instead (a72fefc) ☣
Code Refactoring
\LastDragon_ru\LaraASP\Documentator\Processor\Metadata\Composer
metadata will return \LastDragon_ru\LaraASP\Documentator\Composer\Package
instead of \LastDragon_ru\LaraASP\Documentator\Composer\ComposerJson
(a79801b) ☣
- Dependencies classes rename (3268d70) ☣
Preprocessor
Instruction
contract simplification (no Resolver
) (#174, 8c3d7f9) ☣
Preprocessor
moved to Processor
namespace (#176, f953237) ☣
Preprocessor
swit...
Read more
Bugfixes 🐛
Mark |
Type |
Count |
Packages |
|
Bug Fixes |
2 |
documentator , graphql |
Package documentator
Bug Fixes
\LastDragon_ru\LaraASP\Documentator\Processor\Exceptions\FileTaskFailed
message (995d2db)
Package graphql
Bug Fixes
SchemaBuilderWrapper
fix for "nuwave/lighthouse:6.45.0" (5b80fa0)
Bugfixes 🐛
Mark |
Type |
Count |
Packages |
|
Bug Fixes |
2 |
documentator , graphql |
Package documentator
Bug Fixes
Preprocessor
regexp to find instruction when <target "value">
(16686b9)
Package graphql
Bug Fixes
HasOneThrough
sorting fix (Laravel v11.15.0 compatibility) (bbecb7c)
The Processor 👨🦰
Mark |
Type |
Count |
Packages |
|
Features |
3 |
core , documentator , serializer |
|
Bug Fixes |
1 |
core |
💀 |
Deprecations |
1 |
serializer |
Package core
Features
Bug Fixes
Path::getRelativePath()
will return correct path when $root
is file (cf82d55)
Package documentator
Features
Package serializer
Features
- New
Serialized
attribute/accessors/mutator (5bb6e1c)
Deprecations 💀
\LastDragon_ru\LaraASP\Serializer\Casts\AsSerializable
, please use \LastDragon_ru\LaraASP\Serializer\Casts\Serialized
attribute instead (db030b9)
May Day 🛠
Mark |
Type |
Count |
Packages |
|
Features |
4 |
core , documentator , graphql , testing |
|
Performance Improvements |
1 |
graphql |
|
Bug Fixes |
5 |
graphql-printer , migrator , testing |
💀 |
Deprecations |
1 |
graphql |
|
Miscellaneous |
1 |
dev |
Package core
Features
- Octane compatible resolvers for
Application
, Container
and Config
(e12355a)
Package dev
Miscellaneous
- Removed
dev:directive
command (f113cb2)
Package documentator
Features
- New instruction
include:graphql-directive
(#158, b054625)
Package graphql
Features
Performance Improvements
Printer
registered as a scopedIf
(1e6a623)
Deprecations 💀
- Passing
Type
into AstManipulator::addTypeDefinition()
and returning it from TypeDefinition::getTypeDefinition()
, the TypeReference
should be used instead (the main reason is to avoid possible losing of Type
properties) (9e5f219)
Package graphql-printer
Bug Fixes
- Directive filters independent from
Settings::isPrintDirectiveDefinitions()
(90194c4)
substr()
=> mb_substr()
(c64a81f)
Package migrator
Bug Fixes
- Registration of
RawMigrationCreator
(5552218)
SmartMigrator::getMigrationFiles()
path normalization (c7bbaf0)
Package testing
Features
Bug Fixes
WithTestObject
will correctly remove table after test (5f3b1ab)
Laravel v11 Support 🧐
Mark |
Type |
Count |
Packages |
|
Features |
4 |
* , dev , documentator |
|
Bug Fixes |
1 |
spa |
💀 |
Deprecations |
6 |
documentator , spa , testing |
|
Miscellaneous |
6 |
* |
All packages
Features
Miscellaneous
composer dependency analyser
tool (#140, 5192462)
composer.json
normalization (#145, 3e30a97)
- Deprecated class/methods marked by
trigger_deprecation()
(#148, 4979a4e)
- Minimal version of
laravel/framework
set to ^10.34.0
(66e86e9)
- Removed
doctrine/dbal
dependency (27da03c)
- Switch to individual
illuminate/*
packages instead of laravel/framework
(#117, #141, ce80ae2)
Package dev
Features
Package documentator
Features
- Fetching instruction parameters via Reflection API/PhpDoc (#149, 639792b)
requirements
command will support package merging (07adf1d)
Deprecations 💀
LastDragon_ru\LaraASP\Documentator\Utils\Path
(please use LastDragon_ru\LaraASP\Core\Utils\Path
instead) (#146, d2c7592)
ParameterizableInstruction::getParametersDescription()
(phpdoc should be used instead) (b66d8e4)
Package spa
Bug Fixes
- Support
Illuminate\Validation\InvokableValidationRule
in WithValueProvider
(594e043)
Deprecations 💀
LastDragon_ru\LaraASP\Spa\Http\Request
(use custom class and WithValueProvider
trait instead) (db17969)
- Validation rules will not implement deprecated
Illuminate\Contracts\Validation\Rule
in the next major version (4c05b89)
Package testing
Deprecations 💀
LastDragon_ru\LaraASP\Testing\Database\RefreshDatabaseIfEmpty
(use own trait instead) (dd6a34e)
LastDragon_ru\LaraASP\Testing\TestCase
(69a1227)
More assertions 🥩
Mark |
Type |
Count |
Packages |
|
Features |
7 |
documentator , graphql , graphql-printer , testing |
|
Bug Fixes |
5 |
documentator , graphql , graphql-printer , testing |
💀 |
Deprecations |
2 |
graphql , testing |
The release introduces more testing assertions and much better docs for them.
Package documentator
Features
IncludeDocBlock
(include:docblock
) will replace inline @see
/@link
to FQCN if possible (71aa7b6)
Bug Fixes
IncludeDocBlock
(include:docblock
) will include whole docblock by default (00ace46)
Preprocessor
regexp mode (added u
flag) (ea497bb)
Package graphql
Features
- Added
assertGraphQLIntrospectionEquals()
assertion (539ba11)
- Added
assertGraphQLSchemaNoBreakingChanges()
assertion (ed9bfc1)
- Added
assertGraphQLSchemaNoDangerousChanges()
assertion (ee41b8c)
- Added
assertGraphQLSchemaValid()
assertion (49941c5)
Bug Fixes
- The current schema will be pass to
assertGraphQLPrintableEquals()
/assertGraphQLExportableEquals()
when not specified (9c930b2)
Deprecations 💀
*:getDirectiveLocations()
/*:getLocations()
, please use *::locations()
instead (224a69a)
Package graphql-printer
Features
GraphQLExpected
can hold the Schema
(that required for export) (a6a316e)
Bug Fixes
Printer::process()
will not throw DirectiveDefinitionNotFound
(same as for a type) (3246647)
Package testing
Features
- Added
ResponseAssertions::assertPsrResponse()
assertion (6d42dda)
Bug Fixes
ScheduleAssertions::assertScheduled()
command class detection (018d177)
Deprecations 💀
ResponseAssertions::assertThatResponse()
, please use ResponseAssertions::assertPsrResponse()
instead (81125e9)