diff --git a/CHANGELOG.md b/CHANGELOG.md index 0c8c0e852..8e9d2c428 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,52 @@ -### Changes in 1.0.0 +### Changes in 1.1.0 + +- Fixed: generated docs on `match` macro. [#1790](https://github.com/luckyframework/lucky/pull/1790) +- Fixed: memoized memthods that use an external arg name. [#1817](https://github.com/luckyframework/lucky/pull/1817) +- Added: configurable timeout for browser reload in development. [#1822](https://github.com/luckyframework/lucky/pull/1822) +- Added: config option to silence stacktraces from logs. [#1821](https://github.com/luckyframework/lucky/pull/1821) +- Added: new `--with-page` flag for `lucky gen.action.browser` task. [#1819](https://github.com/luckyframework/lucky/pull/1819) +- Refactor: `RequestBodyReader` with a performance boost in actions. [#1826](https://github.com/luckyframework/lucky/pull/1826) +- Refactor: action route generation with a performance boost. [#1829](https://github.com/luckyframework/lucky/pull/1829) +- Refactor: `html` macro for actions with simpler code. [#1836](https://github.com/luckyframework/lucky/pull/1836) +- Added: config option to configure default redirect statuses. [#1838](https://github.com/luckyframework/lucky/pull/1838) +- Refactor: The `lucky` CLI no longer compiles when running `-h`. [#771 in LuckyCLI](https://github.com/luckyframework/lucky_cli/pull/771) +- Added: A new `lucky tasks` CLI command added to display available tasks. +- Fixed: The `lucky dev` command now shows in the CLI help menu. +- Updated: generated apps `docker-compose.yml`. [#799 in LuckyCLI](https://github.com/luckyframework/lucky_cli/pull/799) +- Refactor: LuckyCLI app generation no longer ueses the `crystal init app` command. [#800 in LuckyCLI](https://github.com/luckyframework/lucky_cli/pull/800) +- Added: initial work on getting the LuckyCLI to work on Windows. [#804 in LuckyCLI](https://github.com/luckyframework/lucky_cli/pull/804) +- Refactor: pg client tools are no longer a requirement for Avram. [#942 in Avram](https://github.com/luckyframework/avram/pull/942) +- Fixed: queries not logging when turning up logger level. [#945 in Avram](https://github.com/luckyframework/avram/pull/945) +- Fixed: error message when using `validate_numeric` and passing a float. [#948 in Avram](https://github.com/luckyframework/avram/pull/948) +- Added: JSON serialized Array columns. [#949 in Avram](https://github.com/luckyframework/avram/pull/949) +- Updated: to PG v0.27.0. [#951 in Avram](https://github.com/luckyframework/avram/pull/951) +- Fixed: saving `nil` values when using Upsert operations. [#957 in Avram](https://github.com/luckyframework/avram/pull/957) +- Refactor: escape hatch to allow storing empty strings from param values. [#956 in Avram](https://github.com/luckyframework/avram/pull/956) +- Updated: the `validate_size_of` validation can now validate arrays. [#960 in Avram](https://github.com/luckyframework/avram/pull/960) +- Added: PG extension `PG::NumericFloatConverter` for converting `Float64` values from custom SQL. [#958 in Avram](https://github.com/luckyframework/avram/pull/958) +- Refactor: SaveOperation `insert` and `update` with small performance boost. [#962 in Avram](https://github.com/luckyframework/avram/pull/962) +- Added: new `X_preloaded?` methods to check if an association has already been preloaded. [#961 in Avram](https://github.com/luckyframework/avram/pull/961) +- **Breaking change** Removed: Avram's initialized logging and subscribing to Pulsar events by default. Each app will add this in to control when/if it happens. [#967 in Avram](https://github.com/luckyframework/avram/pull/967) +- Fixed: handing bytes outside of ASCII range for `bytea` columns. [#975 in Avram](https://github.com/luckyframework/avram/pull/975) +- Added: support for other postgres index types other than btree. [#971 in Avram](https://github.com/luckyframework/avram/pull/971) +- Updated: SecTester to v1.6 with new Crystal repeater. [#30 in LuckySecTester](https://github.com/luckyframework/lucky_sec_tester/pull/30) +- Updated: Carbon is now supported on Windows. [#82 in Carbon](https://github.com/luckyframework/carbon/pull/82) +- Updated: LuckyFlow is now supported on Windows. [#156 in LuckyFlow](https://github.com/luckyframework/lucky_flow/pull/156) +- Fixed: support for Chrome v115+ with chromedriver in LuckyFlow. [#159 in LuckyFlow](https://github.com/luckyframework/lucky_flow/pull/159) +- Added: Brand new `LuckyHXML` shard for generating [Hyperview](https://hyperview.org/) apps from Lucky. [View Shard](https://github.com/luckyframework/lucky_hxml) +- Added: Brand new `LuckyTemplate` shard for better template generation across platforms. [View Shard](https://github.com/luckyframework/lucky_template) +- Updated: LuckyTask is now supported on Windows. [#14 in LuckyTask](https://github.com/luckyframework/lucky_task/pull/14) +- **Breaking change** Refacor: LuckyTask API to avoid conflicts with common names used for CLI args. [#25 in LuckyTask](https://github.com/luckyframework/lucky_task/pull/25) +- Updated: Habitat is now supported on Windows. [#80 in Habitat](https://github.com/luckyframework/habitat/pull/80) +- Updated: LuckyEnv is now supported on Windows. [#28 in LuckyEnv](https://github.com/luckyframework/lucky_env/pull/28) +- Added: ability to reference previous ENV vars as variables in the `.env` file. [#31 in LuckyEnv](https://github.com/luckyframework/lucky_env/pull/31) +- Updated: LuckyRouter is now supported on Windows. [#63 in LuckyRouter](https://github.com/luckyframework/lucky_router/pull/63) +- Updated: LuckyCache is now supported on Windows. [#13 in LuckyCache](https://github.com/luckyframework/lucky_cache/pull/13) +- Updated: Pulsar is now supported on Windows. [#22 in Pulsar](https://github.com/luckyframework/pulsar/pull/22) +- Updated: Wordsmith is now supported on Windows. [#25 in Wordsmith](https://github.com/luckyframework/wordsmith/pull/25) + + +### Changes in 1.0.0 (2023-03-12) - Added: Inline SVG files. [#1761](https://github.com/luckyframework/lucky/pull/1761) - Added: `attrs` option to `sumbit` tag helper. [#1759](https://github.com/luckyframework/lucky/pull/1759) diff --git a/UPGRADE_NOTES.md b/UPGRADE_NOTES.md index 9c18572c1..5a9adb040 100644 --- a/UPGRADE_NOTES.md +++ b/UPGRADE_NOTES.md @@ -1,3 +1,70 @@ +## Upgrading from 1.0.0 to 1.1.0 + +For a full diff of necessary changes, please see [LuckyDiff](https://luckydiff.com?from=1.0.0&to1.1.0). + +- Upgrade Lucky CLI (homebrew) + +``` +brew update +brew upgrade lucky +``` + +- Upgrade Lucky CLI (Linux) + +> Remove the existing Lucky binary and follow the Linux +> instructions in this section +> https://luckyframework.org/guides/getting-started/installing#on-linux + +- Update versions in `shard.yml` + - Lucky should be `~> 1.1.0` + - Avram should be `~> 1.1.0` + - Authentic should be `~> 1.1.0` + - Carbon should be `~> 0.4.0` + - LuckyTask should be `~> 0.3.0` + - LuckyFlow should be `~> 0.9.2` + - LuckySecTester should be `~> 0.3.2` + + +- Run `shards update` + +### General updates + +- Add: `Avram.initialize_logging` to your `config/log.cr` file near the bottom. [See PR](https://github.com/luckyframework/avram/pull/967) +- Update: all LuckyTask tasks. [See PR](https://github.com/luckyframework/lucky_task/pull/25) +```crystal +# All help_message instance methods are macro calls +def help_message + "my help message" +end + +# is now +help_message "my help message" + +# Calls to `name`, `summary`, or `help_message` from your task `call` method are now classes. +def call + # `name` is now + self.class.task_name + # `summary` is now + self.class.task_summary + # `help_message` is now + self.class.task_help_message +end +``` + +### Optional update + +- Add: `allow_blank: true` on String columns you want to allow empty strings to be saved. [See PR](https://github.com/luckyframework/avram/pull/956) +```crystal +class Post < BaseModel + table do + column title : String + + # Field is required, but storing "" is ok + column sub_title : String, allow_blank: true + end +end +``` + ## Upgrading from 1.0.0-rc1 to 1.0.0 For a full diff of necessary changes, please see [LuckyDiff](https://luckydiff.com?from=1.0.0-rc1&to1.0.0).