Releases: baraverkstad/rapidcontext
Releases · baraverkstad/rapidcontext
Version 2023.12.2
This is bug fix release:
- Fixed session cookie to have a proper expiry date
The session cookies expired way too soon (on browser close) instead of on a fixed date (after 90 days).
Read the full changelog for additional details.
Version 2023.12.1
This is bug fix release:
- Check for expired session on permission denied errors
Whenever a permission denied error is encountered, the session is reloaded to detect session expiry. - Fixed modified timestamps in storage cache
Java objects in the storage cache now properly preserves the last modified timestamp from the source data. - Fixed JS serialization of floating-point numbers
Floating-point values should now properly serialize and unwrap to and from JavaScript. - Fixed table widget sorting issue
Sorting in the table widget now works again when data is reloaded.
Read the full changelog for additional details.
Version 2023.12
- Added
RapidContext.UI.Event
mixin to all widgets
This simplifies standard browser event handling, usingon()
,once()
andoff()
helper methods. - Added
RapidContext.Fn
andRapidContext.Data
modules
These modules provide helpers for processing and manipulating data efficiently. - Added
Makefile
to build plug-ins
The old Ant builds are still available, but using aMakefile
makes it simpler to integrate external tools from node, etc. - Added experimental connection and procedure usage metrics
These are currently only collected tolocal/.metrics/*.json
files and not show in the bundled apps. - Modified default CSS colors for focus and highlights
The standard CSS color variables for highlights and focus has been modified to a blue color scheme. Additional color changes to dialogs, tables, tab containers, etc. has also been made. - Added
RapidContext.Widget.Table.updateData()
method
This makes inline changes to a table more efficient and simpler. - Added optional
org.rapidcontext.util.LogFileHandler
log file handler
This allows outputtingjava.util.logging
records to filenames using a simple date pattern.
Read the full changelog for additional details.
Version 2023.06.1
This is bug fix release:
- Fixed admin app connection deletion
This incorrectly wrote an empty file instead of deleting the connection. - Increased max wait time to acquire a connection
Changed from 500 ms to 5 seconds. - Added Session.setDestroyTime(..) API
This API allows for simple changes to the session length.
Read the full changelog for additional details.
Version 2023.06
- Support for loading apps as ESM (beta)
It is now possible to load apps as ES modules (ESM) by using amodule
resource type. This is also the default type for any*.mjs
files found. - Updated
Cache-Control
andETag
response headers
The default caching of responses now permits 24 hour private caches, but uses new resource URLs to allow cache-busting to work properly. - Added new
RapidContext.UI.Msg
module
This module provides default message dialogs that can be used in a any app. - Improved
TableColumn
widget with acellStyle
attribute
This allows some simple formatting to be made in pure CSS, without a custom renderer. - New
warning
andsuccess
color schemes
The<Button>
and<Dialog>
widget both support these new styles, along withdanger
andinfo
. - Added automatic session check every hour
Each browser tab will now run a session check every hour and provide an error if the user is logged out. - Security: Removed default anonymous access to
start
andhelp
apps
The default permissions have been changed to require a login for all built-in apps. - HTTP: Optional connection validation
It is now possible to validate HTTP connections using an optional HTTP OPTIONS call. - Deprecation warnings
Any reference to a deprecated procedure type or procedure will now log a warning message. Same with several deprecated properties and similar elsewhere.
Read the full changelog for additional details.
Version 2023.02
- Procedure types are now storage types
All built-in procedure types are now normal storage types, so no special Java code is needed for registration or similar. A simpletype/procedure/***
file is needed. - New locations for all system procedures
All system procedures have been renamed, but will keep aliases for their old names for some time. - Default procedure arguments
It is now possible to defined default values for procedure arguments, effectively making them optional. This is preferably only used when migrating from a legacy call signature. - Improved storage APIs
All storage lookups are now case-insensitive. And storage lookup procedures have been updated to support a richer API with more filtering and control of the output. - Hidden and computed properties
Object properties can now be hidden from APIs, making them only visible for Java code. This is useful for protecting passwords or other secrets. Computed properties have existing previously but are now properly supported everywhere and used more frequently. - Warnings on data migration
Some built-in object types have been modified, but automatic migrations have been added to ensure that old data is converted on object initialization. Whenever such a migration is performed, a warning message will be printed to the system log. It disappears when the migrated object is stored. - Token authentication
It is now possible to authenticate to any RapidContext API with anAuthorization: Token ***
HTTP header. - Session security improvement
Sessions now always invalidate at most 90 days after creation. If a user changes a password, all existing sessions will also be invalidated.
Read the full changelog for additional details.
Version 2022.11
- Changed default font size
The default CSS font size has been updated from 10px to 13px for better readability. This affects how much information fits on the screen, so apps will have to adjust accordingly. - Changed responsive size calculations
Allw
andh
size calculations are now converted to CSScalc(...)
styles for improved speed and responsiveness on resize. - Changed form field CSS and more
The default styling for<input>
and<textarea>
now matches the corresponding widgets. And<select>
now has an updated style to match the others. There is now also autil.css
with lots of Bootstrap-inspired utility classes. - Changed all widgets to dispatch native events
All widgets will now dispatchCustomEvent
instances via browser APIs for events (instead of usingMochiKit.Signal
). - Changed form validation
Form validation is much improved and now checks the browser built-in Constraint validation API. This means that attributes asrequired
,pattern
and similar can be used on form inputs. - Added support for attributes in root node
Adding an additionalclass
to the root element is now trivial. - Bug Fixes and minor improvements
Loads of bug fixes and minor improvements.
Read the full changelog for additional details.
Version 2022.08
- Updated Browser Compatibility
Dropped support for Internet Explorer and the older versions of Chrome, Safari, etc. - Updated required Java version
Now JRE 11 or later is required. - Added
RapidContext.Browser
module
Provides bowser feature detection and shows a warning for unsupported browsers. - Added
RapidContext.Async
module
Provides aPromise
API to replace all uses ofMochiKit.Async.Deferred
. - Added storage query API
This provides efficient searches and is also available via theSystem.Storage.Query
procedure. - Added YAML serialization support
Storage data can now be both read and written from YAML files. - Added single-page app support
Web requests are now automatically routed to the nearestindex.html
or404.html
file (or app). - Removed WebDAV support
Support for WebDAV was incomple and wasn't working properly in some operating systems. - Bug Fixes and minor improvements
Loads of bug fixes and minor improvements.
Read the full changelog for additional details.
Version 0.17
- Updated Java and JavaScript versions
Both the Java and JavaScript runtimes have been updated to more recent versions.
The bundled JavaScript (Mozilla Rhino) still isn't fully ES6 compatible, but has lots
of minor syntax improvements. - HTTP plug-in improvements
Addition of SSL/TLS support, trace logging, URL-encoding of arguments, JSON decoding of responses, etc. - Bug Fixes
Loads of minor and major bug fixes and minor improvements.
Read the full changelog for additional details.
Version 0.16
- Anonymous Users & Login Dialogs
The built-in Start and Help apps can now be used by
anonymous users (non-logged-in users). Users can then login via the
top-right menu and any restricted app will automatically display the
new built-in login dialog if accessed without valid permissions.
- Refactored Access Control & Permissions
The role-based access controls have been refactored to support
different types of access (read, search, internal, etc) and to be
fully based on storage paths (instead of object types and names).
All hard-coded references to the built-inadmin
role
have also been removed, as the default configuration is now sufficient. - New Icons & Refined Widgets
FontAwesome icons are now available and used for many of the standard
icons. This means better rendering in all sizes and in all resolutions.
The Table, Progress and Popup widgets have also been restyled for a more
modern look.
- Improved Documentation & Help App
The built-in Help
app has been much improved, and the on-line
documentation is now much clearer and up-to-date. The built-in
test
plug-in now provides an Example app that
shows all widgets and icons available. - Bug Fixes & API Changes
Lots of minor API changes have also been made and several JavaScript
functions have been moved to the built-inlegacy
plug-in.
Also, a number of bugs have been fixed to improve storage handling,
session termination, connection management, etc.