Below is a list of all the NFRs that we have in the project. The list will be updated regularly. NFRs can be removed because they are implemented or will not be implemented.
If you see a NFR that you like and need, please react to it with the thumbs up or down if you do not like it.
Please do not comment on this issue - All replies will be deleted
Volt: Support for embedding blocks into other blocks #329
Forms: Embedded Forms #705
Tag: HTML OPTION attributes by Phalcon\Tag::select() #899
Volt: Volt with "Literal" tag #1253
Validation: Add an option to cancel other validators only for the same field when the validator fails #1540
Volt: Volt output filters #2349
Volt Compiler: Allow \Phalcon\Mvc\View\Engine\Volt to accept Phalcon\Mvc\View\Engine\Volt\Compiler in the constructor #2700
ORM: Many to Many behaviour - save related #2871
Router: generate URL for route with hostName #9913
Storage: Support Redis Cluster #10686
ODM: MongoDB Driver support #11156
Url: Url get() function enhancement request #11422
Url: UPDATE query with JOIN in PHQL #11637
Translate: Support 'context' in Gettext (msgctxt) #12201
Translate: SetLocale() not support multiple parameters #12202
Application: Add module name to module class name format in Application::registerModules #12252
Application: Use the same way to register modules Mvc/Cli/Micro
HTTP: Rework the Phalcon HTTP stack #12485
Router: Router enhancements and changes #12827
Volt: volt strings do not know about escape sequences #12888
DI: \Phalcon\Di add alias? #13042
Dispatcher: Can't get module name from cli dispatcher #13229
DI: Make shared instances removable. #13285
DI: add autowire to DI container #13378
Queue: Add redis queue adapter to replace beanstalkd #13385
Form Elements: Add proper support to \Phalcon\Form for Radio button #13461
Models: ReusableInterface #13474
Validation: PresenceOf and Regex validators #13541
Validation: Forms should transform "" to NULL unless explicitly told not to #13550
View: View active render path not return to prev path after partial render #13554
Validation: Why not to use ioc/factory style for validators like filters? #13567
ORM: ORM: add the ability to return a custom Phalcon\Mvc\Model\Row class instance #13587
Security: Implement Argon2 for password hashing #13596
Db: MySQL point field support missing #13670
Session: Need the lock for redis session #13738
Storage: Phalcon JSON Flat-File CRUDS Support #13783
Application: Phalcon Authentication #13790
Db: Different types of messages in virtual foreign keys #13801
ORM: Cascade update in ORM #13804
Dispatcher: setDefaultNamespace() Alias setNamespace() #13814
Queue: Queue Service #13851
Image: Add Gmagic adapter for Phalcon\Image #13884
ORM: Many-To-Many relation with composite PKs #13890
Router: Nested route group #13904
Translate: Proposal on adding a LocaleAwareInterface for Translate adapters (and interpolators) #13905
Forms: Forms: Multiple csrf #13922
Volt: Volt cache system #13926
Volt: Shorter Volt Filter Names or Optional Shorter Alias Names #13940
Volt: Remove Single Quotes From Volt Names #13942
Events: When no Event "data" is supplied, do not pass the parameter #13965
Application: Make Micro Collection create handler instance with DI #13967
Volt: Volt PHP 7 strict type support #13978
ORM: New chunk() method for Phalcon ORM #14005
CLI: Lock for cli component #14006
ORM: Map record to target model (Inheritance mapping) #14007
Helper: BCMath wrapper #14008
Pagination: Dynamic Loop Counters When Using Pagination #14046
ORM: Data Mapper Implementation #14126
ORM: When the model uses columns(), it should bind the original model instead of Phalcon\Mvc\Model\Row #14181
ORM: suggest adding the alias method to the model #14185
ORM: Query Builder duplicating JOIN clause #14214
Validator: regex for Validator/Files allowedTypes #14273
Validator: validation :field should use translation pattern %field% #14308
HTTP Response: add setStreamToSend for response class #14309
Validator: add aspect ratios validation for Validator/Files #14327
Model: set properties in Phalcon\Mvc::refresh() #14338
HTTP: Ability to handle the request via Psr ServerRequest #14390
Volt: Volt extends from virable or from absolute path #14411
General: Classes should not have application defaults #14412
Security: Don't change the CSRF token on every request #14413
Volt: Volt: Block functions #14436
Security: Security Improvement #14456
ORM: Prevent unnecessary database requests for relationships where key is NULL #14471
Translate: Gettext query domain #14527
Config: Review logic of "Load services from config" #14564
Db: Postgres Arrays and array operators support #14579
Forms: beforeBind and afterBind for Form #14598
Db - add support for Microsoft SQL Server #1184
Db - add multi array insertion #14620
Http - Firewall https://github.com/phalcon/cphalcon/issues/11389
Is 90% implemented. Docs needed and needs extended review.
Link to docs in changelog - https://github.com/phalcon/cphalcon/issues/14642
Db - Support MySQL 8 - #14719
Pagination: SQL Instrumental key pagination #14754 (using LIMIT instead of OFFSET)
DB: Add POINT column. Issue https://github.com/phalcon/cphalcon/issues/14769
ORM: Global option for reusable in relationships #14788
URL: Add a global suffix to URL #14806
VIEW: Add has method to View https://github.com/phalcon/cphalcon/issues/14815
Application Micro: removeExtraSlashes should be false by default #14920
Model: Add the merge mode for the Model::skipAttributes() #14934
Assets Reintroduce Cssmin/Jsmin #14903
Dispatcher: can we add controller filter like cakephp4 #14902
Model: Add method to Mvc/Model/CriteriaInterface #14818
Security: different UUID versions #14955
PHQL: Registering custom expressions in PHQL Dialects like PostgreSQL @@ Expression #14954
ROUTER: Initialize Router from Array https://github.com/phalcon/cphalcon/issues/15050
Most helpful comment
Storage: Support Redis Cluster #10686