CHANGELOG.md in eco-helpers-2.0.25 vs CHANGELOG.md in eco-helpers-2.0.26

- old
+ new

@@ -1,13 +1,64 @@ # Change Log All notable changes to this project will be documented in this file. -## [2.0.25] - 2021-06-xx +## [2.0.26] - 2021-06-xx ### Added + - `Eco::API::MicroCases#set_supervisor`, tries to keep in sync the `#subordinates` **count** of previous and new supervisor + - new **option** `-run-postlaunch` to run post launch cases, even when we run in `dry-run` mode + * when in `dry-run` it will **not** reload the people base of the session + - new **option** to append **new** entries to the `People` object + * **invokable** on **cli** via `-append-starters` (`{people: {append_created: true}}`) + * the following use cases include this option: + * `Eco::API::UseCases::DefaultCases::UpsertCase` + * `Eco::API::UseCases::DefaultCases::HrisCase` + * `Eco::API::UseCases::DefaultCases::CreateDetailsWithSupervisorCase` + * `Eco::API::UseCases::DefaultCases::CreateDetailsCase` + * `Eco::API::UseCases::DefaultCases::CreateCase` + * the option involves a new keyed argument `:append_created` in a couple of `MicroCases` + * `Eco::API::MicroCases#with_each`: where internally the search is performed against a copy of the `People` object. + * `Eco::API::MicroCases#with_each_starter` + * when `--help` is invoked option to filter the shown `-options`, `-usecases` and `filters` by a word contained in the option. + - **added** `csv` **header checks** for feed files, which entailed some changes: + * `Eco::API::Common::Loaders::Parser` + - new **subclass** `RequiredAttrs`, creatred when calling `.active_when_all` and `.active_when_any` + - **dependency** injection via `.dependencies` as `{required_attrs: RequiredAttrs}` + * **added** `Eco::API::Common::People::PersonParser#required_attrs` to offer all the `RequiredAttrs`, where defined + - the **new method** `#required_attrs` to expose the injected `RequiredAttrs` + * **new** keyed argument `check_headers:` in `Eco::API::Common::People::EntryFactory#entries` + - subsequent changes to accommodate the new param in `Eco::API::Session#csv_entries` + - `eco/cli/config/default/input` calls using this param to `true` + * `Eco::API::Common::People::DefaultParsers::CSVParser` + - added option `check_headers` via `dependencies` that enables the headers check + - it will now offer detailed warning messages on what can happen with the **missing headers** + * it will also list the **unknown header** names + +### Changed + - `Eco::API::MicroCases#set_supervisor`, the order of the 2 first parameters + - `Eco::API::Organization::People`: internally `@by_id` cache Hash included `nil` values => **not** any more. + - removed **unused** methods on **patches** for `Ecoportal::API::V1::Person` and `Ecoportal::API::Internal::Person` + * specifically `#reset_account!` and `#consolidate_account!` as well as `#reset_details!` and `#consolidate_details!` + - internal changes in `Eco::API::Common::People::Entries#entry` + * **added** option to trigger `MultipleSearchResults` StandardError when multiple candiates are found. + * **removed** `nil` values from the `caches` (the Hashes to optimize the search) + - slight structure refactor of `Eco::API::Common::Loaders` + * moved base class to subfolder/namespace + * decoupled pure `Loader` logics to `Loaders::Base` and use case inheriance chain loader to `Loaders::CaseBase` + - `Eco::API::Session::BatchJob` the `post_launch`: + * sets the `id` to the `person` if it was **created** successfully + * when in `dry-run` it fakes the `id` with a counter + - `Eco::API::Common::People::PersonFactory` gets `subordinates` initialized to `0` (when **creating** a `new` person) + +### Fixed + + +## [2.0.25] - 2021-06-23 + +### Added - `Eco::API::UseCases::DefaultCases::HrisCase` validation error to require `-schema-id` command line when there are people in schemas other than the active one - + ### Changed - `Eco::API::Session::Batch::Job` * for backwards compatibility `-include-only-excluded` should bring an options structure compatible with `-include-excluded` ### Fixed @@ -17,11 +68,10 @@ ### Added - `Eco::API::Session::Batch::Job` made **native** `-include-excluded` * also added new option `-include-only-excluded` to be able to only target people HRIS excluded - ## [2.0.23] - 2021-06-22 ### Added - `Eco::API::Session::Batch::Job` **new** option (`-save-requests`) to save requests even if in `dry-run` (`-simulate`) ### Changed @@ -49,21 +99,18 @@ - dry out `BaseLoader` (only session is set as instance variable) - removed `creek` **dependency** (it was not used anywhere in the gem) * we just kept `roo` and `roo-xls` - custom `Error` classes now all inherit from `StandardError` (rather than `Exception`) - - ## [2.0.21] - 2021-06-04 ### Added - `Eco::CSV::Table`, support to create the table out of an `Array<Hash>` - This opens new methods to transform input Excel file to this data structure and unify input data structures. - **new** use case `Eco::API::UseCases::DefaultCases::CleanUnknownTags` invokable via `clean-unknown-tags` ### Changed - `Eco::API::Common::People::EntryFactory` slight **refactor** to boost better support for multiple input formats - ## [2.0.20] - 2021-05-31 ### Added - **dependencies** to `creek`, `roo` and `roo-xls`