lucky v0.28.0 Release Notes

Release Date: 2021-07-22 // almost 3 years ago
    • ⚡️ Updated: The exception page to use new backtrace shard. #1465
    • ⚡️ Updated: some Lucky internals with "Spring Cleaning". #1478, #1481, #1483, #1489, #1496, #1511, #1513, #1514, #1521, #1522, #1529, #1532, #1535, #1540, #1542, #1544, #1543
    • ⚡️ Updated: components so they no longer require context to be passed in. #1488
    • Added: new time_from_now_in_words text helper. #1493
    • ➕ Added: new multipart? action request helper. #1495
    • ⚡️ Updated: the generated delete action resource to use DeleteOperation. #1497
    • ➕ Added: new raw_json Action response method. #1492
    • ⚡️ Updated: form_for to allow passing boolean attributes. #1506
    • ➕ Added: new module to disable FLoC. #1508
    • 🗄 Deprecated: route and nested_route from actions. #1510
    • 🐎 Updated: performance with params. It's now attached to context. #1509
    • ⚡️ Updated: api actions generated will always be in the api/ namespace. #1512
    • ⚡️ Updated: Lucky::Serializer with abstract render method. #1516
    • Added: new html_with_status method to render HTML pages with non-200 status. #1507
    • 💥 Breaking change: HTML fields that require an Operation Array attribute will now generate a param name appended with []. #1523
    • Added: new multi_select_input. #1518
    • ➕ Added: the ability to define Array query params in actions. #1527
    • ➕ Added: standardized route style checked. #1536
    • ➕ Added: native subdomain support for actions. #1537
    • ➕ Added: new unique route enforcer. #1538
    • ⚡️ Updated: Carbon sendgrid is now a separate adapter. #624 in Lucky CLI
    • ⚡️ Updated: default components no longer need context. #641 in Lucky CLI
    • ⚡️ Updated: some LuckyCli internals with "Spring Cleaning". #646, #647, #648, #651, #649, #666 (in Lucky CLI)
    • ⚡️ Updated: generated apps will use LuckyEnv now. #650 in Lucky CLI
    • ✂ Removed: deprecated normalize-css package and replaced with modern-normalize. #652 in Lucky CLI
    • ➕ Added: new generated apps will enforce route styles by default. #653 in Lucky CLI
    • ⚡️ Updated: new generated apps will use case-insensitive email columns for the User model. #657 in Lucky CLI
    • 🛠 Fixed: support for Crystal 1.1.0 when generating a new app. #644 in Lucky CLI
    • ✂ Removed: the Lucky::Env module and replaced with the LuckyEnv shard. #655 in Lucky CLI
    • 🛠 Fixed: passing special args to precompiled tasks. #656 in Lucky CLI
    • ⚡️ Updated: some Avram internals with "Spring Cleaning". #669, #681, #683, #704, #705, #708 (in Avram)
    • Updated: validate_numeric and validate_size_of methods to allow for a custom error message. #670 in Avram
    • ⚡️ Updated: db.drop and db.reset tasks with a "quiet" option. #675 in Avram
    • Fixed: edge case with migrations using fill_existing_with: false. #676 in Avram
    • ➕ Added: new Appdatabase.listen method to listen for pg_notify() calls to any number of channels. #677 in Avram
    • 💾 Added: before_save and after_save callbacks to Avram::Factory. #678 in Avram
    • Fixed: add_belongs_to to support namespaced types. #685 in Avram
    • Updated: how select_count works to allow counting with distinct_on. #687 in Avram
    • 🛠 Fixed: datetime parsing from form inputs. #693 in Avram
    • 🛠 Fixed: compile-time error when you have a typo in your constant name (i.e. Boolean instead of Bool). #700 in Avram
    • Updated: the validate_uniqueness_of method to take a full query object. #701 in Avram
    • ➕ Added: new any? and none? query methods to return a Bool value based on records existing. #703 in Avram
    • 💥 Breaking change: removed avram_enum. You can now just use the native Crystal enum type. #698 in Avram
    • ➕ Added: ability to use CASCADE when calling truncate. #702 in Avram
    • ➕ Added: new SaveOperation.upsert methods. #334 in Avram
    • 💥 Breaking change: renamed DeleteOperation.destroy to DeleteOperation.delete. #707 in Avram
    • 🛠 Fixed: compile-time error when no columns are defined in a model. #706 in Avram
    • ➕ Added: new JSON serializable object columns. #695 in Avram
    • 🐎 Updated: the current_user? method to be memoized for performance. #64 in Authentic
    • ⚡️ Updated: Authentic to catch potential development issues when setting the secret_key. #65 in Authentic
    • 🛠 Fixed: minor performance issue when setting a slug in AvramSlugify. #10 in AvramSlugify
    • ⚡️ Updated: irregular inflects with human -> humans. #14 in Wordsmith
    • 🛠 Fixed: customizing inflections with Wordsmith. #18 in Wordsmith
    • 🛠 Fixed: URI decoding path parts in the Lucky Router, also a small performance gain. #51 in Lucky Router
    • ➕ Added: the environment predicate methods from Lucky::Env in to LuckyEnv. #13 in LuckyEnv
    • ⚡️ Updated: Email Previews in Breeze are easier to add in. #41 in Breeze
    • 🛠 Fixed: using file uploads with Breeze requests. #43 in Breeze
    • ➕ Added: storing before/after pipes in Breeze. #36 in Breeze
    • 🛠 Fixed: issue when running specs on an app using Breeze. #42 in Breeze