Skip to content

Releases: tempestphp/tempest-framework

v1.0.0-alpha.6

24 Mar 08:42
Compare
Choose a tag to compare

🚨 Breaking changes

  • support: [breaking] improve architecture of support utilities (#940) (bb75e81)
  • vite: [breaking] automatically discover entrypoints (#1051) (ebe3ef4)

πŸš€ Features

  • console: add make:command command (#1048) (13bc731)
  • console: add make:discovery command (#1057) (2bd5814)
  • console: add make:generator-command command (#1056) (6992b70)
  • core: add kernel interface (#924) (2a2c454)
  • database: refactor DatabaseConfig interface (#902) (3d3a094)
  • database: add a Virtual attribute to exclude model properties from query builder (#966) (b6252dc)
  • database: add a findBy method to models (#965) (8d479bc)
  • http: empty request values are converted to null (#976) (dc5323b)
  • http: fix http header casing on retrieval (#1024) (be2fb43)
  • mapper: add two-way casters (#920) (0748aa9)
  • mapper: add MapFrom and MapTo attributes (#929) (b9a89de)
  • mapper: ObjectToArrayMapper use Caster::serialize to serialize the property value (#947) (269bfcb)
  • mapper: map()->with()->to() (#951) (e6f04ee)
  • mapper: allow multiple fields in #[MapFrom] (#944) (381c58d)
  • support: add enums support (#878) (964d55a)
  • support: add basename to string utils (#1039) (1d4f563)
  • support: add slug, ascii and isAscii to string utils (#1040) (3eb8b35)
  • support: add words and sentence methods to string utils (#1042) (b2dfd32)
  • support: add groupBy to array utils (#1047) (d696826)
  • support: add mapFirstTo and mapLastTo to array utils (#1038) (b188609)
  • validation: allow Stringable objects in IsString rule (#1029) (bd22988)
  • view: support dynamic $slots and x-template (#911) (1ba1629)
  • view: more lenient DOM parsing (#941) (0fe0df9)
  • view: remove empty slots in production (#950) (64b1ff0)
  • view: support relative view paths (#953) (2479148)
  • view: access view component attributes (#1008) (6c7dfae)
  • view: add view processors (#1011) (573d557)
  • view: view components by file name (#1013) (12b5503)
  • view: fallthrough attributes (#1014) (e1ce286)
  • view: add icon component (#1009) (46570eb)
  • view: support merging class attributes (#1020) (80ff7be)
  • view: cache Blade and Twig templates in internal storage (#1061) (1e33722)
  • vite: add Tailwind CSS option to the installer (#926) (cfe1564)
  • vite: add <x-vite-tags /> component (#945) (888f5b1)

πŸ› Bug fixes

  • database: make AlterTableStatement produce valid SQL (#979) (fd63ec0)
  • discovery: pass real paths to discovery classes (#1053) (97bfbf2)
  • linter: exclude cache directories (#1046) (0b27762)
  • mapper: nullable datetime caster (#974) (118eeb5)
  • mapper: validate before mapping (#980) (0688c97)
  • router: content-type json support when mapping psr request to tempest request (#956) (16345b6)
  • router: use correct input stream (#1005) (768c6fb)
  • validation: prevent type errors in rules using preg_match (#1043) (4a00657)
  • view: render doctype and html tags properly (#910) (dff3884)
  • view: fix for compiling HTML documents that contain PHP (#922) (f93fb3d)
  • view: comment out empty slots (#938) (1b3433d)
  • view: hardcoded boolean attributes shouldn't be parsed (#952) (dff166b)
  • view: regex timeout (#1015) (2e24641)
  • view: support <x-component> in auto-registered components (#1018) (371d9ea)
  • view: don't allow php expressions in attributes (#1019) (6931350)
  • view: do not duplicate <br /> tag (#995) (2279402)
  • view: prevent compiling parent elements of minified void tags (#1055) (0b25975)
  • vite: generate absolute asset urls (#1023) (3551008)
  • vite: don't discover template entrypoints (#1052) (3d7cbbd)

🚜 Refactor

v1.0.0-alpha.5

24 Feb 07:40
Compare
Choose a tag to compare

πŸš€ Features

  • console: add make:initializer command (#771) (cf354b7)
  • console: add backed enum support to ask (#808) (5e3d99e)
  • console: improve rescuing enum console parameters (#809) (7c64c7c)
  • console: allow calling console commands via fqcn (#824) (a6ba3b6)
  • console: provide command suggestions when using : shorthands (#814) (107f8b8)
  • console: add installer (#837) (90b6321)
  • console: add make:middleware command (#804) (467c664)
  • console: several QOL improvements (#847) (05dac5c)
  • console: add support for printing hyperlinks (#850) (6f457af)
  • console: add make:config command (#863) (d0f3f53)
  • console: add make:view command (#864) (a4ab813)
  • console: add task component (#857) (d4dac18)
  • container: add has and unregister (#840) (09ced7a)
  • core: allow defer callbacks to receive parameters from container (#798) (42262fa)
  • core: add TEMPEST_START constant (#791) (1cabe2d)
  • core: optionally run composer up after installers (#839) (6747d2c)
  • database: improved database indexing (#851) (82f1808)
  • database: alter table with only indices (#852) (61e7abb)
  • database: chunked results (#855) (e332bbd)
  • database: bindings in query methods (#859) (49f019c)
  • database: add raw to CreateTableStatement (#868) (60dcc28)
  • database: add explicit relation attributes (#874) (5e4df24)
  • database: add closable connection wrapper for PDO connection (#875) (15f8995)
  • debug: emit ItemsDebugged on debug (#796) (c1be5e6)
  • framework: extend http testing methods (#790) (dd01ef1)
  • framework: overhaul console interactions (#754) (e966ecb)
  • log: emit MessageLogged when logs are written (#795) (50b27c8)
  • log: configure log paths through env by default (#820) (52f200a)
  • support: improve types of HasConditions (#800) (00aa6ea)
  • support: add every to ArrayHelper (#813) (9d39e15)
  • support: add append and prepend to ArrayHelper (#833) (7daf3fc)
  • support: add HtmlString class (#842) (751f0d1)
  • view: add twig support (#841) (0f47a80)
  • vite: add Vite installer (#901) (f9f4167)
  • vite: add Vite support (#829) (4099b40)

πŸ› Bug fixes

  • core: do not redefine TEMPEST_START (#806) (2739f4f)
  • database: default strong comparison check (#858) (b6064a6)
  • database: loading database relations or other objects (#884) (0214ac3)
  • generation: ClassManipulator now make replacements before simplifies classnames (#876) (fe0f3b2)
  • http: remove empty directories when running static:clean (#784) (3f0d17b)
  • http: correct HTTP 418 description and coverage (#823) (dbad109)
  • support: support keys with dots in ArrayHelper#get (#832) (8372827)
  • tests: update IPv6 test to align with PHP 8.4.3 behavior (dec5c2f)
  • view: check the existing of the $tagName property (#803) (f34c2ba)
  • view: support doc comment elements (#816) (8b95679)
  • view: self-closing view component tags (#818) (420e5d8)
  • view: use bug when compiling view (#893) (6ce796c)
  • vite: fall back to global entrypoints if supplied ones are empty (#870) (08df98c)
  • vite: support new cors rules in Vite 6 (#890) (d991bfd)

🚜 Refactor

  • console: improve visual consistency (#888) (31213bc)
  • container: mark container exceptions with ContainerException (#831) (985be66)
  • core: call invokable classes with invoke (#799) (15dd7bd)
  • discovery: extract into a standalone module (#861) (58aadc9)
  • http: refactor http route attribute (#793) (1bd7a67)
  • router: convert route attributes to plain objects (#822) (88bd85d)
  • view: use PHP 8.4 DOM (#787) (d58d028)
  • http: move http router to separate package (b7f99a8)
  • php8.4: partial update to property hooks (#848) (5abb74b)
  • php8.4: general codebase upgrade to latest practices (#883) (f880072)

v1.0.0-alpha.4

25 Nov 12:45
2483e64
Compare
Choose a tag to compare

πŸš€ Features

  • commandbus: async commands (#685) (bfa1706)
  • console: support negative arguments (#660) (1cdf158)
  • console: support "no prompt" mode (#661) (687e333)
  • console: add name parameter to #[ConsoleArgument] (#617) (2a73033)
  • console: ensure tempest serve supports routes with file extension (#704) (6300617)
  • console: support dynamic style injections (#703) (6847a79)
  • console: accept BackedEnum as command arguments (#722) (c21f24e)
  • console: add make:controller and make:model commands (#647) (0bdee91)
  • console: add make:request command (#730) (987eabf)
  • console: infer binary path for scheduler (#758) (25e5d81)
  • console: add make:response command (#760) (e76c1f8)
  • container: support injecting properties using #[Inject] (#690) (ab0eecd)
  • core: install main namespace (#751) (3f9bdde)
  • core: partial discovery cache (#763) (2049f6e)
  • database: add json data type (#709) (d599d50)
  • database: add set data type (#725) (f0db5c8)
  • filesystem: add new Filesystem component (#441) (25d4a47)
  • framework: add config:show command (#732) (2124577)
  • http: map uploaded files into the request properties (#702) (a97014c)
  • http: add Delete attribute (#733) (613b884)
  • http: add Put and Patch attributes (#742) (3621006)
  • log: allow usage of multiple same log channels (#718) (68d7e54)
  • mapper: json file to object mapper (#748) (99933ff)
  • routing: add regex chunking to route regex (#714) (3eb0c59)
  • support: add sorting methods to ArrayHelper (#659) (8f52e4a)
  • support: add wrap and unwrap to StringHelper (#693) (a0fffe9)
  • support: support not specifying a value to ArrayHelper::pop and ArrayHelper::unshift (#692) (6a56d94)
  • support: add start to StringHelper (#713) (f719c20)
  • support: add methods reduce, chunk and findKey to ArrayHelper (#720) (c8a31db)
  • support: add more methods to ArrayHelper and StringHelper (#721) (bdf5efc)
  • validation: ArrayList rule (#745) (ddda992)
  • validation: enhance enum validation (#755) (ca7a226)
  • view: add boolean attributes (#700) (04000ac)
  • view: add raw html element (#738) (df6a418)
  • optimize routing (#626) (83f1dac)
  • multiple routes per controller method (#667) (166912d)
  • route enum binding support (#668) (f055fc1)
  • exception handler improvements (#670) (0f97964)
  • middleware callables (#672) (d2e8a4e)

πŸ› Bug fixes

  • commandbus: disallow having two #[CommandHandler] for the same command (#706) (f3054f9)
  • console: handle nested style tags (#726) (779973e)
  • core: discovery location loading order (#663) (6fc2d95)
  • core: discovery errors being silenced (#688) (f5b848c)
  • core: installers not updating docblock references (#696) (7b7e2ca)
  • generation: simplify traits and method parameter attributes (#753) (3cca6bc)
  • http: collision between route and query params for uri generator (#687) (e22492a)
  • http: use document root instead of env in tempest serve (#717) (ccc1ece)
  • http: use default log config only if no config is provided (#719) (fbaf866)
  • support: support calling first and last on empty ArrayHelper (#691) (9021c6e)
  • view: several bugfixes (#662) (5034d0a)
  • view: attributes for raw elements (#734) (f89eb5d)
  • view: extra null check for node attributes (#740) (5fa27bc)
  • query param name collision in uri function (#679) (59fe4fb)
  • rector (#680) (7fdff1d)

🚜 Refactor

  • console: exit codes as enum + int (#741) (b014f40)
  • console: update make:controller command parameters to be simpler (#761) (9835d2e)
  • routing: split route construction (#666) (32bf4d0)
  • support: convert PathHelper to immutable class (#743) (0dacd10)
  • update ModelQueryBuilder generics to support static analysis (cea122e)
  • replace ramsey/uuid with symfony/uid (#724) (8e6b650)

⚑ Performance

...

Read more

v1.0.0-alpha.3

31 Oct 09:06
d363a21
Compare
Choose a tag to compare

🚨 Breaking changes

  • [breaking] add support for specifying an optional port in serve command (b8b9167)
  • [breaking] add the ability to use custom regex for route params (871dda9)

πŸš€ Features

  • console: support string keys in MultipleChoiceComponent (#567) (78f2794)
  • container: add ability to invoke arbitrary closures (#535) (c1da5f1)
  • core: add root_path helper (#607) (ccfcf94)
  • event-bus: support closure-based listeners (#540) (0fa02bc)
  • generation: add ClassGenerator (#544) (f54a0e0)
  • support: improve helpers (#538) (6d60b9b)
  • support: improve array helper with additional methods (#557) (57e6cd8)
  • support: refactor dd() method to use logger in string helper and add the dump() method (#563) (3349cf1)
  • support: add implode()/explode() methods in string helper (#564) (5718796)
  • support: add methods to array helper (#590) (b16f797)
  • support: add inline documentation on helper classes (#611) (c5fdcad)
  • validation: support validating by closure (#570) (450bc58)
  • match all method for string helper class (#536) (0f33a44)
  • enhance matchAll method to support flags and offset (9da79f4)
  • add named hasOne relation (#549) (58906b7)
  • add initializer for builtin types (#541) (bd64f5a)
  • add boolean data type (#547) (#555) (6776fff)
  • add isList() and isAssoc() methods in ArrayHelper for array type checking (#566) (f465060)
  • event bus improvements (#623) (bf7ff15)
  • add defer helper (#624) (15cd46e)
  • install command (#625) (10f3388)
  • add inline documentation on all namespaced functions (#616) (bef5af7)
  • publish imports (#643) (52ca58d)

πŸ› Bug fixes

🚜 Refactor

  • http: resolve HttpApplication via the container (#606) (4680289)
  • reflection: replace eval call in TypeReflector (7ffe2d7)
  • support: move LanguageHelper#join to ArrayHelper and StringHelper (#612) (75d902b)
  • validation: improve readability of validateValue (#586) (fef15c0)

πŸ› οΈ Build

v1.0.0-alpha.2

04 Oct 07:10
19d001b
Compare
Choose a tag to compare

πŸš€ Features

πŸ› Bug fixes

πŸ§ͺ Tests

  • console: add test for install command (#432) (d0085f7)