September 23, 2026
collection_query, searchable, sortable will need to have their signature changed (from eg lambda { |query, term| } to lambda { |query:, term:| }).uchi_user method has been removed. If you happened to use it, use Uchi::Context#user instead.Uchi::Context with useful details about what's currently happening.collection_query, searchable, sortable procs now receive a context argument with the current Uchi::Context.Uchi::View::INDEX etc. See the Views documentation for details./admin/uchi or similar.Uchi::ApplicationController has been moved to Uchi::Controller. This provides a clean Uchi::ApplicationController for consumer applications to reopen and modify.Uchi::Actions::ExecutionsController now inherits from Uchi::ApplicationController as expected._ scope to avoid naming conflicts with your repository controllers.rails generate uchi:install no longer adds an unnecessary namespace :uchi block to routes.rb.Uchi::View instead of a Symbol as before.Repository#title now prefers the return value from the title method before checking for name or to_s, because, well, that's what the method is named.id.August 31, 2026
NoMethodError (undefined method 'has_many_associated_records_path' for an instance of ActionDispatch::Routing::RoutesProxy). This release adds them back in.August 29, 2026
Field::HasMany#nested_fields for inline editing of has_many associations using Rails nested attributes. Switches the field from selecting existing records to creating, editing, and deleting associated records directly within the parent form. Accepts Field instances (like Repository#fields), supporting String, Text, Number, Boolean, Date, and DateTime fields.has_many associations directly from the record show page.Uchi::Repository.all.August 29, 2026
Uchi::SortOrder#name has been renamed to Uchi::SortOrder#column.visible configuration option to fields. This gives finer control over which fields are displayed for a given record, allowing for more dynamic and context-sensitive UIs.Field::Select for fixed lists of options.May 12, 2026
:new from the fields on() configuration as needed.at: argument: Uchi.routes.mount(self, at: :admin).January 05, 2026
Uchi.routes.mount(self) to config/routes.rb. The old explicit mount syntax still works, you won't reap some of the future benefits by doing so.