Skip to content

Commit 63d2354

Browse files
authored
Merge pull request #350 from laravel-enso/release/v4.4.0
updated changelog
2 parents 60a0dbe + 2aebb9b commit 63d2354

File tree

2 files changed

+225
-1
lines changed

2 files changed

+225
-1
lines changed

CHANGELOG.md

Lines changed: 224 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,229 @@
11
# Laravel Enso's Changelog
22

3+
## 4.4.0
4+
5+
The release further decouples ui packages and introduces automatic asset
6+
discovery and registration, better files organization to help in the future with
7+
adding a new CSS framework as well as various other improvements.
8+
This also means breaking changes, so please read through the entire changelog.
9+
10+
### Front-end
11+
12+
All packages which depend on the `ui` package have had their dependency versions updated.
13+
14+
Also, the `icons.js` files have been moved from the `bulma` folder one level up, since icons are css framework agnostic.
15+
16+
The packages thus affected have been updated to their next respective major version.
17+
18+
#### auth (new)
19+
- extracted assets (components, pages, routes, store) from the ui package
20+
21+
#### bookmarks (new)
22+
- extracted assets (components) from the ui package
23+
24+
#### charts
25+
- improved chart update
26+
- fixed chart redraw on dataset changes
27+
- improves yAxis callback handling
28+
29+
#### data-import
30+
- fixed select params label
31+
32+
#### datepicker
33+
- added new 'value-updated' event on component value change
34+
- improved enso datepicker alt-format handling
35+
36+
#### filters
37+
- updated eslint config
38+
39+
#### forms
40+
- implemented field related methods that controls the field's meta.hidden attributes by showField and hideField
41+
- reused these methods inside the showTab/hideTab methods, while avoiding forceUpdate after each meta.hidden change
42+
- fields methods are independent of tabs/sections and target all form fields
43+
- adds ability to handle nested fields withing the form template
44+
- displays default field for a custom field if the slot is empty
45+
46+
#### io (new)
47+
- extracted assets (components) from the ui package
48+
49+
#### localisation
50+
- extracted assets (components) from the ui package
51+
52+
#### notifications (new)
53+
- extracted assets (components, pages, routes) from the ui package
54+
55+
#### tasks (new)
56+
- front-end for the new task management package
57+
58+
#### themes
59+
- added flags background color
60+
- made options having warning text more visible in vue-filter
61+
62+
#### tutorials
63+
- extracted assets (components) from the ui package
64+
65+
#### tree-view
66+
- small cleanup
67+
68+
69+
#### user-groups (new)
70+
- extracted assets (pages, routes) from the ui package
71+
72+
#### users (new)
73+
- extracted assets (components, pages, routes) from the ui package
74+
75+
#### ui
76+
- implemented automatic registration for package:
77+
- routes
78+
- icons
79+
- custom registration logic
80+
- store
81+
- extracted various assets to existing or new packages as required
82+
83+
### Back-end
84+
85+
#### activity-log
86+
- fixed test name
87+
88+
#### avatars
89+
- improved avatar generation during tests, to use a locally generated avatar vs doing
90+
a gravatar fetch, which speeds up tests
91+
- fixed gravatar warning message
92+
93+
#### charts
94+
- added `autoYMin()` helper
95+
- added support for gridlines
96+
- switched `xAxisConfig` parameter order and made dataset optional;
97+
- added `disableAutoRadius()` in bubble; added `datalabels` config setter
98+
- improved chart customization
99+
- added method return types and typed parameters
100+
101+
#### cli
102+
- the generated routes now use controller classes
103+
104+
#### departments
105+
- removes leftover namespace
106+
107+
#### discussions
108+
- refactored routes
109+
- added xss sanitizer
110+
111+
#### enums
112+
- added the option to have the key validated when getting a value (disabled by default)
113+
- added the option to have localisation on/off per enum as opposed to all enums,
114+
by adding a `$localisation` variable with the desired value in your enum;
115+
116+
#### forms
117+
- the Form service now uses the `when` trait so actions may be chained conditionally
118+
119+
#### io
120+
- fixed the variable name within the `BroadcastServiceProvider`
121+
122+
#### core
123+
- data-import is no longer required and becomes optional
124+
125+
#### currencies
126+
- fixed CurrencySeeder namespace
127+
128+
#### control-panel
129+
- switched to using Laravel's Http instead of Guzzle
130+
- refactored services & fixed invalid response edge case bug
131+
132+
#### helpers
133+
- small refactor in `FactoryResolver`
134+
135+
#### products
136+
- added data-import missing dependency
137+
138+
#### select
139+
- fixed bug for multiple select-filter where values were missing due to failed collection merging
140+
141+
#### tasks (new)
142+
- task management package
143+
144+
#### tables
145+
- refines export done notification
146+
147+
#### upgrade
148+
- added pre-migration option for the upgrade command; upgrades that run pre-migration
149+
are also visible in the status report
150+
- refactored the `MigratesStructure` contract
151+
- fixed missing `Priority` column in the status report
152+
153+
### Upgrade steps
154+
155+
As this new release cleaned up the `@enso-ui/ui` package and simplified icon and route
156+
registration, a bit of cleanup is also required in the local project.
157+
158+
Also, a new `php artisan enso:upgrade --before-migration` command is available that
159+
is meant be used to run upgrade commands **before** the `php artisan migrate` command,
160+
which should help with complex upgrade scenarios.
161+
162+
163+
To upgrade:
164+
- within `client/.env` the following entry must be added:
165+
- `VUE_APP_PROFILE=bulma`
166+
The `.env` file must also be available during the build stage,
167+
so take that into account if using CI flows.
168+
- the `@core` alias has been renamed to `@ui`, so update all usages, including
169+
- local resources (pages, components)
170+
- the `client/.eslintrc.js` file
171+
- bump at least the following dependencies within `client\package.json`:
172+
- `"@enso-ui/activity-log": "^3.0`
173+
- `"@enso-ui/bulma": "^4.0",`
174+
- `"@enso-ui/calendar": "^3.0",`
175+
- `"@enso-ui/data-import": "^3.0",`
176+
- `"@enso-ui/how-to": "^3.0",`
177+
- `"@enso-ui/tasks": "^2.0",`
178+
- `"@enso-ui/tutorials": "^3.0",`
179+
- `"@enso-ui/ui": "^4.0",`
180+
- `"eslint-config-airbnb-base": "14.2.0",`
181+
Depending on your project requirement, the following dependencies might also need bumping:
182+
- `"@enso-ui/categories": "^2.0",`
183+
- `"@enso-ui/commercial": "^4.0",`
184+
- `"@enso-ui/discounts": "^3.0",`
185+
- `"@enso-ui/emag": "^4.0",`
186+
- `"@enso-ui/financials": "^3.0",`
187+
- `"@enso-ui/inventory": "^3.0",`
188+
- `"@enso-ui/measurement-units": "^3.0",`
189+
- `"@enso-ui/products": "^3.0",`
190+
- `"@enso-ui/services": "^3.0",`
191+
- `"@enso-ui/themes": "^2.0",`
192+
- remove any package icon imports from `client/src/js/app.js`, as they're no longer required
193+
- if using the dashboard page/component & menu, import the menu icon in `client/src/js/app.js`:
194+
```
195+
import { library } from '@fortawesome/fontawesome-svg-core';
196+
import { faTachometerAlt } from '@fortawesome/free-solid-svg-icons';
197+
library.add(faTachometerAlt);
198+
```
199+
- unless using them in your local resources, you may remove package aliases from `client/vue.config.js`
200+
- the avatar (`Avatar.vue`) component has been moved from the `ui` package to the `users` package, if you're using it locally, update the imports.
201+
- within the `composer.json` `scripts/post-update-cmd` section add the command:
202+
- `"php artisan enso:upgrade:status"`
203+
- the `data-import` package has been made optional, if you still require it, add it to:
204+
- `composer.json` : `"laravel-enso/data-import": "^5.0",`
205+
- `package.json`: `"@enso-ui/data-import": "^3.0",`
206+
- the `tasks` package has been made optional, if you added it & still require it, add it to:
207+
- `composer.json` : `"laravel-enso/tasks": "^1.0",`
208+
- `package.json`: `"@enso-ui/tasks": "^2.0",`
209+
- remove the following files as they're no longer required:
210+
- `client/src/js/store.js`
211+
- `client/src/js/router.js`
212+
- look within this [PR](https://github.com/laravel-enso/enso/pull/344/files) and update:
213+
- `client/src/js/enso.js`
214+
- `client/src/js/localState.js`
215+
- run `composer update`
216+
- run `yarn`, `yarn upgrade && yarn` to ensure you have the latest package versions and patches are applied. If necessary, update your patch files
217+
- `php artisan migrate`
218+
- `composer dump-autoload`
219+
- `php artisan enso:upgrade`
220+
- publish the updated localisation assets with `php artisan vendor:publish --tag=enso-localisation`
221+
and copy the `ru.json` file from the above commit into the local `resources/lang/app` folder
222+
- in `Envoyer` and/or during your deployment process, add the new command:
223+
`php artisan enso:upgrade --before-migration`
224+
- update the Enso version to `4.4.0` in `config/enso/config.php`
225+
- as per every release, delete the old upgrades
226+
3227
## 4.3.0
4228
5229
This release aims to upgrade the Enso ecosystem to [Laravel 8](https://laravel.com/docs/8.x/releases#laravel-8).

client/src/js/localState.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
// eslint-disable-next-line
22
window.addEventListener('local-state-fetched', ({ detail }) => {
3-
console.log(detail); // disable in production
3+
// console.log(detail);
44
});

0 commit comments

Comments
 (0)