DiscoverModernize or Die ® Podcast - CFML News EditionModernize or Die® - CFML News Podcast for August 6th, 2024 - Episode 217
Modernize or Die® - CFML News Podcast for August 6th, 2024 - Episode 217

Modernize or Die® - CFML News Podcast for August 6th, 2024 - Episode 217

Update: 2024-08-06
Share

Description

2024-08-06 Weekly News — Episode 217

Watch the video version on YouTube at https://youtube.com/live/Z3m5Nd7HoJc?feature=share

Hosts: 

  • Eric Peterson - Senior Developer at Ortus Solutions
  • Dan Card - Senior Developer at Ortus Solutions


Thanks to our Sponsor - Ortus Solutions

The makers of ColdBox, CommandBox, ForgeBox, TestBox and all your favorite box-es out there. 
A few ways to say thanks back to Ortus Solutions:

Patreon Support (Stupendous)

We have 57 patreons:
https://www.patreon.com/ortussolutions.


News and Announcements

BoxLang — Dynamic : Modular : Productive

https://boxlang.io/
https://boxlang.ortusbooks.com/


New Releases and Updates

CFConfig v2.0.6
Now supports BoxLang servers

Spreadsheet-CFML v4.1.0 – v4.2.0

  • Add moveSheet()
  • Add sheet position to sheetInfo() properties
  • Upgrade POI to 5.3.0, commons-csv to 1.11.0 and excel-streaming-reader to 4.4.0
  • Allow datatype to be specified with addColumn()


Sentry v2
Updated to match Sentry’s current event structure design

cbq v3.0.8 – v3.0.9
SyncProvider bug fixes


BoxLang Betas — Beta 2 through 8
Beta 2

New Features

  • Encryption module — bx-password-encrypt
  • New event: onRequestFlushBuffer
  • Ability to coerce BoxLang functions, lambdas, and UDFs, to well-known functional interfaces for Java interop
  • Add parallel streams from BoxLang arrays
  • Truthy / Falsey completion for boolean caster
  • New Fluent Attempt BIF and class
  • Add the ability to add member methods to BoxLang classes — built-in class serialization to JSON
  • New static helper on Array class: fromString( list, delimiter ) to create quick BoxLang arrays from strings
  • New BIFs for registered interceptors into the request pool and the global pool: BoxRegisterRequestInterceptor, BoxRegisterInterceptor
  • writeDump abort support
  • writeOutput on complex BoxLang types should call the toString() on it
  • Native encrypt, decrypt and generateSecretKey() BIFs

Bug Fixes

  • writeDump expanded collapsed support
  • writeDump top support
  • listDeleteAt returns a list with multiple delimiters as a list with whole delimiters
  • structNew with localeSensitive flag throws error
  • structKeyTranslate returns void
  • structGet does not create struct when missing
  • structFindValue returning null owner
  • No named applications not auto creating name
  • Application listener requests interception points not registered
  • Ambiguous if statements when not using curly braces
  • this.javasettings not expanding to correct pathing
  • this.javasettings ignores paths to actual jars and classes
  • cfdirectory fails on centOS, converting datetime
  • dateAdd() modifies its argument
  • toString not formatting doubles correctly
  • Attempt to cast instead of expecting strings inside isValid
  • Regression on JSON serialization of box classes with JSON exclude annotations


https://www.ortussolutions.com/blog/boxlang-100-beta-2-launched

Beta 3

New Features

  • Implement query cache ability
  • Coerce java SAMs (Single Abstract Method interface) from BoxLang function interfaces
  • AsyncService support for Virtual Thread Executors (create/manage)
  • Bifs for module info: getModuleList() and getModuleInfo( module )
  • Dumping of Java Classes now includes a dump of the toString() value to visualize values better
  • New dump template for BoxLang Functions
  • Allow the createDynamicProxy BIF to support the request class loader so it can load classes from loaded libraries in the application.bx, runtime, and more.
  • New Script Binaries for bxCFTranspiler, bxCompiler, bxFeatureAudit tools in the distribution bin folder


Improvements

  • Refactor JDBC connection retrieval out of the QueryOptions class
  • Dynamic method matching discovery algorithms updated to do 2 pass algorithm: exact then loose coercion matching
  • Improvement of cache service and cache provider methods for easier BoxLang interactions
  • Refactored the dump css to resources/dump/html/Dump.css
  • Migrate dynamic proxies to native java implementation from the JDK
  • Passing the session id to the onSessionStart listener
  • Give better warnings if the sessionStorage is not a valid string


Bug Fixes

  • attributecollection not handled properly on cfthrow
  • Left in system out calls that need to be removed
  • JSR ScriptEngine starting runtime without debug flag if passed
  • Creating a default cache was not setting the right name and a "default" already registered exception was being thrown
  • Default argument values not always checked for type
  • Implements missing from Box Class metadata
  • Static Scope missing from metadata


https://www.ortussolutions.com/blog/boxlang-100-beta-3-launched

Beta 4

Improvements

  • Query caching improvements and compatibility updates
  • Ensure request attributes are available to the web runtime scope
  • bx-compat CFML compatibility module updates to ensure null query column values are returned as empty strings


Bug Fixes

  • Fixes compilation issue with variables name cfcatch
  • CFML compatibility for CGI.QUERY_STRING when not provided
  • Fix null queryparam functionality


https://www.ortussolutions.com/blog/boxlang-100-beta-4-launched

Beta 5

New Features

  • Data Navigators
  • Original Configuration
  • StringBind BIF and member function
  • At...
Comments 
In Channel
loading
00:00
00:00
x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

Modernize or Die® - CFML News Podcast for August 6th, 2024 - Episode 217

Modernize or Die® - CFML News Podcast for August 6th, 2024 - Episode 217

Ortus Solutions