Releases: ColdBox/coldbox-platform
Releases · ColdBox/coldbox-platform
7.3.0
New Feature
- Prettier SQL printing in
StringUtil.prettySQL()
- COLDBOX-1270 Abililty to restart schedulers with a `restart()` method
Improvement
- COLDBOX-1268 WireBox Singleton auto reload now only affects app singletons and not core singletons
- COLDBOX-1269 Do not add double headers if `event.setHTTPHeader()` is called more than once
- COLDBOX-1273 Removal of deprecated CFML functions in core
- COLDBOX-1275 Improved engine detection by the CFMLEngine feature class
- COLDBOX-1278 Remove unsafe evaluate function usage
Bug
- COLDBOX-1266 Logger for MS SQL using date not datetime.
- COLDBOX-1267 Lucee only isEmpty function call
- COLDBOX-1279 Render encapsulator bleed of this scope by engines
6.10.0
Bug
- COLDBOX-1274 javacasting to long for new Java LocalDateTime instead of int, Adobe not doing type promotion
- COLDBOX-1279 Render encapsulator bleed of this scope by engines
Improvement
- COLDBOX-1273 Removal of deprecated CFML functions in core
- COLDBOX-1275 Improved engine detection by the CFMLEngine feature class
- COLDBOX-1278 Remove unsafe evaluate function usage
7.2.1
ColdBox HMVC
Bug Fixes
- COLDBOX-1264 - standalone libs issue with agressive excludes on build process and wirebox standalone not building correctly
CacheBox
Bug Fixes
- CACHEBOX-85 - Improve Lock and Double
get
from getOrSet
7.2.0
ColdBox HMVC
New Feature
- COLDBOX-1248 Scheduled tasks now get a `group` property so you can use it for grouping purposes
- COLDBOX-1252 New `now()` method in the DateTmeHelper with optional TimeZone
- COLDBOX-1253 New datetimehelper method: getSystemTimezoneAsString()
- COLDBOX-1256 New ScheduledTask helper: getLastResult() to get the latest result
- COLDBOX-1257 LastResult is now a cbproxies Optional to denote a value or not (COMPAT)
- COLDBOX-1258 new scheduledTask method: isEnabled() to verify if the task is enabled
- COLDBOX-1259 Complete rewrite of Scheduled Task setNextRuntime() calculations to account for start end running scenarios
- COLDBOX-1260 new ScheduledTask period : everySecond()
- COLDBOX-1262 New SchemaInfo helper to help interrogate databases for metadata
- COLDBOX-1263 Add an errorHandler to the allApply method so you can attach your own error handler to each future computation
Improvement
- COLDBOX-1246 casting to long instead of int when using LocalDateTime and plus methods to avoid casting issues.
- COLDBOX-1247 Do not expose restful handler exception data unless you are in debug mode
- COLDBOX-1250 RestHandler.cfc should catch NotAuthorized exception
- COLDBOX-1254 getFirstBusinessDayOfTheMonth(), getLastBusinessDayOfTheMonth() now refactored to the dateTimeHelper
- COLDBOX-1255 validateTime() is now a helper method in the DateTimeHelper
- COLDBOX-1261 Migration of old tasks to new task syntax of task()
Bug
- COLDBOX-1241 Scheduled Task Stats "NextRun", "Created", "LastRun" Using Wrong Timezones
- COLDBOX-1244 onSessionEnd Error when using Coldbox_App_Key
- COLDBOX-1245 Scheduled task isConstrainted() on day of the month was calculating the days in month backwards
- COLDBOX-1251 set next run time when using first or last business day was not accounting times
CacheBox
Improvement
- CACHEBOX-70 Support ad-hoc struct literal of CacheBox DSL to configure CacheBox
LogBox
New Feature
- LOGBOX-75 New listeners for all appenders: preProcessQueue() postProcessQueue()
- LOGBOX-76 Add the queue as an argument to the processQueueElement() method
- LOGBOX-79 new rolling appender property archiveLayout which is a closure that returns the pattern of the archive layout
Bug
- LOGBOX-73 Unhandled race conditions in FileRotator lead to errors and potential log data loss
- LOGBOX-77 log rotator was not checking for file existence and 1000s of errors could be produced
Improvement
- LOGBOX-62 Support ad-hoc struct literal of LogBox DSL to configure LogBox
- LOGBOX-70 Add `Exclude` key to Logbox Categories to Easily Exclude Appenders
- LOGBOX-74 shutdown the appenders first instead of the executors to avoid chicken and egg issues
- LOGBOX-78 Change fileMaxArchives default from 2 to 10
Task
- LOGBOX-72 Removal of instance approach in preferences to accessors for the LogBoxConfig
WireBox
New Features
- WIREBOX-61 Make wirebox.system.aop.Mixer listener load automatically if any aspects are defined/mapped
7.1.0
ColdBox HMVC
Bug
- COLDBOX-1233 Exception bean can't cast `"i"` to a number value
New Feature
- COLDBOX-1229 Added debug argument to ScheduleExecutor and Scheduler when creating tasks for consistency
- COLDBOX-1230 Reorganized ScheduledTasks functions within the CFC into code groups and comments
- COLDBOX-1235 New StringUtil.prettySQL method for usage in debugging and whoops reports
- COLDBOX-1238 New testing matcher: toRedirectTo for easier testing against relocations
- COLDBOX-1239 New REST convention for custom error handlers: `on{errorType}Exception()`
Improvements
- COLDBOX-1041 Logging category in ColdBox scheduler is generic
- COLDBOX-1231 Improve RestHandler Exception handler with on#ExceptionType#Exception() convention
- COLDBOX-1234 Account for null or empty incoming json to prettyjson output
- COLDBOX-1236 Incorporate appName into the appHash to give more uniqueness to locks internally
Tasks
- COLDBOX-1237 Removal of Lucee RC tests - no longer needed
WireBox
Bug
- WIREBOX-148 Several AOP and Internal WireBox methods not excluded from delegations
- WIREBOX-150 Wirebox standalone is missing delegates
- WIREBOX-151 Injections are null, sometimes
- WIREBOX-152 getEnv errors in Binder context
- WIREBOX-154 populateFromQuery delegate defaulting composeRelationships to true
Improvement
- WIREBOX-147 Improve debug logging to not send the full memento on several debug operations
Task
- WIREBOX-149 `toWebservice()` is now deprecated
6.9.0
Added
- COLDBOX-1229 Added debug argument to ScheduleExecutor and Scheduler when creating tasks for consistency
- COLDBOX-1230 Reorganized ScheduledTasks functions within the CFC into code groups and comments
Improvements
- COLDBOX-1226 Scheduled Tasks Updates
Fixed
- COLDBOX-1145 RestHandler OnError() Exception not checking for empty `exception` blocks which would cause another exception on development ONLY
7.0.0
ColdBox HMVC
Bugs
- COLDBOX-1133 `getFullURL` encodes the query string when it should not.
- COLDBOX-1136 Scoping lookup bug in Lucee affects route()
- COLDBOX-1138 Event Cache Response Has Status Code of 0 (or Null)
- COLDBOX-1139 make event caching cache keys lower cased to avoid case issues when clearing keys
- COLDBOX-1143 render inline PDF (CB 6.8.1) throws a 500 error
- COLDBOX-1145 RestHandler OnError() Exception not checking for empty `exception` blocks which would cause another exception on development ONLY
- COLDBOX-1146 BiConsumer proxy was making both arguments required, when they can be null so execution fails
- COLDBOX-1149 Woops and Adobe CF needs a double check if session/client is defined even if sessionManagement/clientManagement is defined
- COLDBOX-1150 virtual app controller scoping is missing on ocassion due to this.load|unload flags
- COLDBOX-1151 Integration Tests do not support NoRender()
- COLDBOX-1153 RestHandler.cfc missing exception information on InvalidCredentials & TokenInvalidException
- COLDBOX-1154 Invalid DateFormat Mask in Whoops.cfm
- COLDBOX-1173 Update the Router.cfc to look at not only the cgi host but the forwarded hosts
- COLDBOX-1175 calling function "view" from within function which has an argument named "view" causes error.
- COLDBOX-1176 viewLocations struct does not exist in function renderer.layout() on line 684 if nolayout = true
- COLDBOX-1191 Attempts to use `getHTMLBaseURL()` inside of Async Task Fail on ACF
- COLDBOX-1193 Missing java casting on arrayRange() method ont the asyncmanager
- COLDBOX-1194 Ensure modules are applied to routing action structs when necessary #243
- COLDBOX-1196 Render collections items and counter variables are not thread safe since we migrated to a singleton renderer
- COLDBOX-1202 urlMatches in the request context does not account for the path to be larger than the requested uri
- COLDBOX-1204 Overridden events in preProcess interceptions assume event cache configuration of original request
- COLDBOX-1211 Base Model and Interceptor Tests where overriding application.wirebox in integration tests
- COLDBOX-1213 Var scoping issue on `includeUDF` in the super type
Improvements
- COLDBOX-1029 ModuleAwareness : Wirebox Injector Lookup Should Check Current Module First
- COLDBOX-1155 Implement abort logic onAuthenticationFailure on RESTHandler
- COLDBOX-1157 Reuse existing controller in getMockRequestContext()
- COLDBOX-1159 JSON Serialization in `forAttribute` Does Not Support ACF Prefixing
- COLDBOX-1171 Do not allow injection of the same applicatio helper on the same target
- COLDBOX-1177 Please add more debugging info to REST handler
- COLDBOX-1184 When whoops error template defaults to public for non-dev, the messaging is very confusing
- COLDBOX-1185 ColdBox DebugMode with inDebugMode() helper
- COLDBOX-1190 Reworking of several rest handler exception methods so they log the issues instead of announcing `onException` events and announce their appropriate events , onAuthenticationFailure, onAuthorizationFailure, onValidationException, onEntityNotFoundException
- COLDBOX-1195 ColdBox Proxy should ignore the routing service captures to avoid redirects or returns
- COLDBOX-1210 encapsulate route finding by name to the actual router itself
- COLDBOX-1214 Compatibility layer for env methods in the Util object: getSystemSetting(), getSystemProperty(), getEnv()
New Features
- COLDBOX-1022 Allow for Flash RAM to use a third party provided tracking variable via the new setting identifierProvider
- COLDBOX-1039 Allow unregistering closure listeners
- COLDBOX-1077 Provide ability for handlers/interceptors/etc. to have inherent self-knowledge of the module they live in for modulesettings/moduleConfig injections
- COLDBOX-1137 Allow passing interception point first in interceptor listen() method
- COLDBOX-1140 Whoops updates galore! SQL Syntax highlighting, json formatting and highlighting, and more
- COLDBOX-1141 New Flow delegate helpers for functional usage everywhere in ColdBox land
- COLDBOX-1142 New convention for module setting overrides: config/{moduleName}.cfc
- COLDBOX-1147 PostLayoutRender and PostViewRender now pass which view/layout path was used to render
- COLDBOX-1148 postEvent now get's new interceptData: ehBean, handler and data results
- COLDBOX-1152 this.unloadColdBox is false now as the default thanks to the virtual test app
- COLDBOX-1158 New `back()` function in super type that you can use to redirect back to your referer or a fallback
- COLDBOX-1161 new toJson() helper in the Util class which is delegated in many locations around the framework to add struct based query serialization and no dubm security prefixes
- COLDBOX-1162 Add in functionality to exclude patterns via router's findRoute()
- COLDBOX-1165 New convention for modules for storing and using coldfusion tags: `/tags`
- COLDBOX-1166 Lazy loading and persistence of engine helper to assist in continued performance and initial load speed
- COLDBOX-1167 New core delegates for smaller building blocks, which leverages the `@coreDelegates` namespace
- COLDBOX-1168 New coldbox based delegates mapped with `@cbDelegates`
- COLDBOX-1172 core json utils now include a prettyJson() and a toPrettyJson() utilities
- COLDBOX-1174 New getEnv() method on the base test class to get access to the env delegate for inquiring for env and java properties
- COLDBOX-1178 ChronoUnit becomes the official cb Date Time Helper to assist with date/time conversions and formatting
- COLDBOX-1179 New super type methods: getDateTimeHelper() getIsoTime() to assist with recurrent iso time conversions in modern APIs and responses
- COLDBOX-1186 Add three environment location helpers in the controller and supertype: isProduction(), isDevelopment(), isTesting()
- COLDBOX-1188 Request Context setRequestTimeout() method encapsulation, so you can control the time limit of a request
- COLDBOX-1189 setRequestTimeout() mock in testing Request Context so handlers cannot override testing timeouts
- COLDBOX-1192 Module Inception Isolation - every module has it's own injector that matches the module hierarchy
- COLDBOX-1197 All rendering methods now accept a `viewVariables` argument that allows you to add variables into the view's `variables` scope
- [COLDBOX-1199](ht...
6.8.2
Added
- Github actions for LTS Releases
- LTS Updates
Bugs
- COLDBOX-1219 CFProvider ACF versions are Hard-Coded
- WIREBOX-132 WireBox caches Singletons even if their autowired dependencies throw exceptions.
v6.8.1
ColdBox HMVC Core
Bug
- COLDBOX-1139 make event caching cache keys lower cased to avoid case issues when clearing keys
- COLDBOX-1138 Event Cache Response Has Status Code of 0 or
null
v6.8.0
ColdBox HMVC Core
Bug
- COLDBOX-1134 Router closure responses not marshalling complex content to json
- COLDBOX-1132 New virtual app was always starting up the virtual coldbox app instead of checking if it was running already
Improvement
- COLDBOX-1131 Updated Missing Action Response Code to 404 instead of 405
- COLDBOX-1127 All core async proxies should send exceptions to the error log
New Feature
- COLDBOX-1130 New config/ColdBox.cfc global injections: webMapping, coldboxVersion
- COLDBOX-1126 Funnel all out and err logging on a ColdBox Scheduled Task to LogBox
Task
- COLDBOX-1135 Remove HandlerTestCase as it is no longer in usage.