v4.0.0
With a little bit of "French Delay", we announce that the new major version of SeAT - 4.0.0 - has been released.
It's containing more than a year of work, including large refactor - especially at database level, and account management - as well as new features.
We sincerely hope that this new version will receive a warm welcome.
I also personally thanks our daily Slack community, including contributors who participate to ship new features, tests and fixes in order to make this new version even better. (@Crypta-Eve, @ppfeufer, @autophob, @BenThompson0, @darkflamed, @JLCarveth, @wfjsw, @flyingferret, Fraternity, Get off My Lawn, Solyaris, and all others I may miss)
Features
Moons Reporter
Near almost corporation and alliance are managing moons scanning with giant (Google) sheets seeded by large amount of rows that take minutes to load.
This new version is coming with a fresh new vision of moons scanning management by providing you a tool to store, list and give you ways to search stuff regarding moons. For those were already use it, it's an extension of the Extraction mechanics.
Squads
It's been heared that people would have some automation system to help them to manage user and their access easier. With previsous version, this was something which could be sort using third party plugin called seat-groups
. With SeAT 4, there is now a built-in system, allowing you to design complex rules like : "having item X" or "having skill Y".
Furthermore, this system is event based. To be short, it mean rules will be applied to user as soon as status changed (ie: character X get a titan).
Squads have been designed with love to help you leverage your community management by providing tools and user friendly interface.
Enhancements
Access Control Layer (ACL)
The role/permission system has been completely revamp at both UI and business level in order to provide a more flexible and more user friendly module.
- New user interface including role logo, which can be used by third party integrator (ie: to be used in your forums)
- Affiliation mechanics has been replaced in favor of a
filters
system - New permissions for corporation divisions has been introduced (including both wallet and asset division)
- Redesign permission structure which has now
- a
name
: used in code only and which have to be unique - a
label
: displayed on the end user interface and that could be translated - an optional
description
: displayed on the end user interface as help block, and that could be translated - a
scope
system : which help to determine the way permission have to be check (global
,character
,corporation
, etc...)
- a
- Superuser role and permission has been redesigned and become an user flag - you'll now have to define administrator at user level
Assets
Assets are the most complex part of data to handle due to the way data are disclosed by ESI - including business rules in which I'll not fall. However, this part get some love too in order to make it faster to load, more searchable and provide more visibility regarding locations.
- There are now searchable by name, type, group, location and even inside containers
- Stuff inside containers are non longer visible at list level. Each container got an action button near to the line allowing you to show what's inside it
- You can now get access to fitted module directly from the ship line, the exact same way it's visible from "Fittings" section
Blueprints
The old regretted Blueprint section which were giving you access to all owned blueprint - either original or copies - is back.
As per assets, you get access to their direct location.
Of course, they are searchable by type, category and location - including filters to restrict list to either originals, copies, or both of them.
Contacts
In addition of standing level filter, you are now able to restrict a list by entity type (character, corporation and/or alliance).
Contracts
As other views, contracts can now be filtered by status and types. The detail view has been improved to get more information, including reward, partners and assets (in case of item exchanges).
Fittings
Fittings list and details have been revamp. You can now get insurances details and have the ability to export a fitting (using in-game format)
You'll also get estimated value of each fitting from hull, fitting and hull + fitting.
Industry
Like contacts and contracts list, the industry list have been improved to provide an advanced quick search system, allowing you to sort entries per status and activities.
Killmails
Killmails have been uniformized between character and corporation views - they not yet provide kill details from SeAT, but it's planned for next minor update.
Structures
Structures list has been revamp and receive same new features as fitting list. You can now get access to a structure fitting and it is exportable using in-game format.
Notifications
The notification module have been completely redesigned, providing more flexibility regarding new notification design and even including new notifications. As per squads, there are non longer commands to handle their dispatch - they are queued as soon as a data that trigger them changed.
Custom links
Instance owner are now able to customize entries from sidebar with their own links.
SSO and required scopes
SeAT is know supporting multiple scopes authentication profiles to allow you to manage both Alliance mates and bluebits.
Entities external from your organization will non longer need to provide you all stuff if you don't want to.
Refactor
General
SeAT 4 is shipped with Laravel 6 stack and the old bouncer system have been replaced by Gates.
Also, third party integrator should use the SeAT provider class (Seat\Services\AbstractSeatPlugin
) instead Laravel standard, to ensure full support and benefit of some helper regarding permissions and SDE management (you can now register custom SDE tables).
Database
As already estate, a large database refactor has been operate, resulting in less duplicated tables and increased relationship. SDE management has been improved to split the single map table into dedicated entities (region, constellations, systems, planets and moons). As non exhaustive list, here are area of changes :
- contacts
- contracts
- killmails
- users
- skills
- planetary interaction
Also, most surrogate keys have been drop.
Jobs
Jobs management has been revamp and now used dedicated queue, based on activity :
- characters
- corporations
- notifications
- public
- high
- default
Most of jobs are now operating single action (ie: update alliance X information). As a result, you may experience more jobs to be queued than before. However, they'll also be processed faster and consumed less resources. Last but not least, with new queue structure, you'll be able to assign workers according to queue size - if needed.
There are still some planed change regarding them, especially at throttling level - this changes should land in next minors update since they should be backward compatible.
SSO
We are now using the new SSO system (v2) - existing user tokens should be natively converted by CCP servers at first call.