Skip to content

Latest commit

 

History

History
596 lines (466 loc) · 47.4 KB

CHANGELOG.md

File metadata and controls

596 lines (466 loc) · 47.4 KB

Changelog of Bileto

2024-08-26 - 0.10.0-beta

Migration notes

You can now change the default locale globally by setting the APP_DEFAULT_LOCALE in your env file.

New

Improvements

  • Allow to search for tickets with and without contracts (28a76cf)
  • Separate permissions to see real vs. accounted times spent (30387e6)
  • Allow to choose locale when creating/editing a user (1e5fcb5)
  • Allow to import teams (f722522)
  • Allow to import the organizations' domains (12ea090)
  • Improve the look of form fieldsets (1806b8b)

Bug fixes

  • Use the correct white logo (0e36766)
  • Fix the header on mobile when not connected (e35fa48)
  • Fix search with "NOT assignee" for unassigned tickets (5b78fd8)
  • Fix search with "NOT involves" not returning correct results (8f973a1)
  • Allow to list tickets not attached to a contract (3748d33)
  • Redirect to the user page after updating (30df1c0)
  • Fix spacing in the list of mailboxes (78b326d)

Documentation

  • Add an item to PR template about data import (0896d38)
  • Update the screenshot in the README (b4213ee)

Technical

  • Allow to pass locale when creating user with CLI (187add3)
  • Allow to change the default locale globally (0916174)
  • Add a scheduled message to clean data everyday (4fc1109)
  • Update dependencies (5aabff3, 3687da6)

Developers

  • Fix some PHPUnit Testdox warnings (59c8441)
  • Remove the symfony/phpunit-bridge dependency (c1ccb71)
  • Refactor the Ticket title form (c8abf72)
  • Refactor edit ticket actors with Symfony Form (8b35064)
  • Move Form\Type classes to Form\ (5470325)
  • Set radio/checkbox tick position with margin (cb14588)
  • Fix test in TicketSearcherTest failing randomly (8d7fa9c)

2024-07-05 - 0.9.0-beta

This is our first beta version! 🥳 Bileto is still not ready for production, but it's closer. I hope you like the new design :)

Security

  • Don't use the Reply-To header to get the requester (06af973)

New

  • Allow to associate organizations to email domains (7e14501)
  • Allow to define a default user role (86a2a40)
  • Add a page to list all the ongoing contracts (7f8f683)
  • Allow to assign tickets and unaccounted times on contract (re)newal (e7cc7a4)
  • Add the list of users in organizations (4fe3fc7)
  • Add a page to display information about users (949ba1c)

Improvements

Bug fixes

  • Fix deletion of organizations (63b3563)
  • Fix the days diff on the ticket page (96ba9cf)
  • Add a space before unit in the "hours consumed" label (39ff01e)
  • Activate TinyMCE with "gpl" license (763d15f)
  • Fix the button--icon height on Webkit (d8a3cfa)

Technical

Developers

  • Remind developers to check changes in Firefox and Chrome (06e9fc0)
  • Refactor the role form with Symfony Form (4ef39dc)
  • Make Doctrine entities mapping explicit (56f709c)
  • Make deprecation warnings more verbose in PHPUnit (6d02919)
  • Remove uid from the entities factories (4a35802)
  • Lint migrations with PHPCS (642a93b)
  • Fix deprecations for Foundry 2 (6aba189)
  • Provide phpstan-doctrine package (6d36ef7)
  • Refactor creation of users with a UserCreator service (37efa0e)
  • Improve the development seeds (b840e96)
  • Provide an Email class to extract domains (a2318f6)
  • Provide a Url class to sanitize domains (a5d7dcd)
  • Provide a DQL JSON_CONTAINS function (e8988c1)
  • Provide the input-texts component (7dfedcc)
  • Extract a button--discreet-alt button (b8ffd2b)
  • Fix Doctrine deprecation warning about ordering (2310c67)
  • Give all agent permissions to technicians in dev environment (2e50007)
  • Merge CSS tickets files in custom/tickets.css (9a29d19)
  • Rename .row classes in .cols (8e14a1b)
  • Set id on "UI select" of multiselect actors (d1cc409)
  • Provide the accordion component (6e4dd2f)
  • Introduce the CSS class widget--small (9077d7e)

2024-05-07 - 0.8.0-alpha

Migration notes

Sub-organizations are no longer supported (see the issue #516). Your existing sub-organizations will be converted to first-level organizations during this update. Important: make sure that all your organizations have different names before running the migrations.

New

Improvements

  • Allow to combine multiple authorizations on the same organization (cbd6ca0)
  • Add navigation to the organizations to the main menu (6677352)
  • Display spent times hours/minutes in a long format (b61636e)
  • Display the contract date alert as a number of days (bb055b4)
  • Display contract hours consumed as a percentage (73de316)
  • Add a unique constraint on organization names (eb0a6dc)
  • Rename "operational users" to "agents" (f98d663)
  • Display tickets views if user is an agent (1c83b30)

Bug fixes

  • Force requester and assignee to be part of the lists (15faa7e)
  • Fix searching tickets by contract if using a subquery (b30603e)
  • Assert TimeSpent times are required and > 0 (0bb8a0f)

Technical

  • Remove the concept of sub-organizations (86dd9ac)
  • Fix installation of dependencies in the Docker image (777ee4c)
  • Update the dependencies (af602f5, b1b90bf)

Developers

  • Upgrade to Turbo 8 (c72c313)
  • Upgrade to PHPUnit 11 (989b7f9)
  • Upgrade to Rector 1.0 (bb0dd46)
  • Upgrade to eslint 9 (4caf4ab)
  • Cache authorizations in the AppVoter (beccdd0)
  • Provide the class FSHelper (d412967)
  • Refactor repositories save, saveBatch and remove (e807452)
  • Set updatedBy only if there is an active user (96ca111)
  • Allow contract.createdBy and contract.updatedBy to be null (cf8b116, fb06f3e)
  • Extract common translations keys (59281b9)
  • Load only "orga" authorizations when checking for "any" (14e96b1)
  • Add a findOneOrBuildBy method (812ceb1)
  • Set default empty password on User initialization (9f0be2c)
  • Set FindOrCreateTrait with a generic class (2a65a93)
  • Add the orga:manage permission to the default Technician role (757e96b)
  • Provide a AuthorizationHelper::grantTeam method (d465d4b)
  • Provide an ArrayHelper class (3e1fffb)
  • Provide a is_agent Twig function (f8f477d)
  • Move getAuthorizations from AppVoter to AuthorizationRepository (fec907a)
  • Move TicketRepository methods related to TicketSearcher (93a2bb5)
  • Increase PHP memory in the dev environment (594b5fc)
  • Enable DAMA DoctrineTestBundle in tests (15eca8a)
  • Make sure database is initialized on the CI (f8036d9)
  • Output PHPUnit results with TestDox format (2890d74)
  • Refactor the clearing of entity manager in tests (568c3b7)
  • Remove the warning about docker-compose.yml version (c68c0cf)

2024-02-02 - 0.7.0-alpha

Migration notes

Bileto now requires PHP 8.2+.

You need to set the new environment variable APP_BASE_URL in your .env.local file (see env.sample). This variable is used to generate absolute URLs in non-HTTP contexts (i.e. from the command line).

The PHP imap module is now required. Bileto uses PHP-IMAP which should make the module optional. Unfortunately, the library doesn't decode email subjects and attachments correctly by itself. It works a lot better with the module installed.

PostgreSQL >= 12 is now required. If you’re still using PostgreSQL 11, you must upgrade to a newer version.

Its no longer possible to create sub-organizations. In next releases, your existing sub-organizations will be transformed into first-level organizations (see the issue #516).

The structure of the roles changed. “User” roles (as opposed to admin and operational roles) are now more restricted by default. You should review these roles and possibly change them to “operational” roles.

New

  • Allow to approve or refuse a solution (288a17a)
  • Allow to edit the contracts (0b72c7c)

Improvements

  • Disallow the creation of sub-organizations (ee2cc44)
  • Paginate the tickets lists (d263301)
  • Improve the lifecycle of the tickets (85fad0f)
  • Create "incident" tickets by default (4de596a)
  • Allow emails not to be deleted after collecting them (4acac03)
  • Make roles easier to understand (6d5e2b6)
  • Reword "admin" to "administrator" (272eec1)
  • Warn if user has no permission in their default organization (911afc4)
  • Select the default organization when setting an authorization after creating a user (8cf832e)
  • Change the label of the organization of authorization (ed42e09)
  • Change time spent wording from billed/charged to accounted time (ea707ae)
  • Redirect to the contract after its creation (73700f6)
  • Initialize default contract alerts on creation (0fe0a91)
  • Change the traduction of ticket's "Contract" to "Ongoing contract" (77ab61f)
  • Improve the look and behaviour of disabled checkboxes (8862664)
  • Improve the look of the progress bars (1ffbe9f)
  • Improve the CSRF error message (1595742)

Bug fixes

  • Display correctly the inline attachments in messages contents (417a76d)
  • Attach messageDocuments to notification emails (164e45a)
  • Ignore HTML errors when creating tickets from emails (f0dc217)
  • Remove incorrect UTF-8 chars from attachments names (8d59c95)
  • Handle emails with empty body (31fdc13)
  • Fix encoding of the email body (22ef430)
  • Track changes to the tickets' ongoing contracts (c4da224)
  • Trim name and notes when creating a contract (46723b4)
  • Disallow to set contracts maxHours below their consumedHours (32a5bbe)
  • Use strcmp in LocaleSorter if comparison failed with the Collator (db600db)
  • Wrap pre elements in messages contents (6b9cdc4)
  • Remove the orphan parenthesis from the "incident updated on" label (959ed9d)
  • Add a missing HTML closing tag in the header (3bfbb04)

Technical

Documentation

  • Improve the documentation about contributing to code (17f5be0)
  • Update the roadmap with links to GitHub (8379dfe)
  • Fix typos in the dependencies documentation (5dcdc05)

Developers

  • Provide a pagination component (7d424db)
  • Allow to check permissions of any user (bfc7a5d)
  • Install the Symfony Form component (e03b841)
  • Refactor the contract form with the Form component (184f273)
  • Refactor the monitoring of the activity of the entities (d86759e)
  • Add getEntityType to RecordableEntityInterface (86692d3)
  • Set the activeUser in CreateTicketsFromMailboxEmailsHandler (f2db100)
  • Make deprecations notices less verbose in tests (4c9ea03)
  • Configure Rector as a new linter (2c86af0)
  • Provide a make db-rollback command (ee4d7c2)
  • Clean all the Docker stuff on make docker-clean (aea07f5)
  • Move some docker files under docker/development (838e769)
  • Fix node bundler for uid != 1000 (50f3c95)
  • Restore validators files when extracting translations (985ed96)

2023-11-23 - 0.6.0-alpha

New

Improvements

  • Simplify the answer form (1e93d8e)
  • Put documents visually in the TinyMCE editor (2bb4837)
  • Improve accessibility of popups (c723bb3)
  • Rebalance the global font sizes and borders width (17e03df)
  • Round off the buttons (d140f2b)
  • Lighten the look of the "quick search" filters (5b7b737)
  • Improve breadcrumb to navigate in tickets (d8479a1)
  • Improve the look of discreet buttons with caret (2a71ef1)
  • Remove the underline of anchors rendered as buttons (06bd6ac)

Bug fixes

  • Handle email attachments correctly (c558ef3)
  • Adapt the editor background to color scheme (035a9b2)
  • Don't try to recreate roles in production (a3a6cf2)
  • Fix the strip list style for even items (bc52f30)
  • Fix the year format rendered by the Twig dateTrans filter (55ef233)
  • Don't track empty entity changes (256b79a)

Technical

Documentation

  • Explain how to contribute to the documentation (7ea774e)
  • Adapt the documentation for the "alpha" phase (56d9058)
  • Merge the deploy and update files for administrators (3664744)
  • Add a process before releasing a version (c4382d4)
  • Update the roadmap (e568670)
  • Update the screenshot (1abb8a2)

Developers

  • Upgrade to NodeJS 20 (fda833c)
  • Upgrade to Vite 5 (8e08be9)
  • Restore security files on make translations (9b1afa7)
  • Provide a JS Switch controller (3bea2cd)
  • Allow to limit the size of inputs (da36f4d)
  • Provide a HoursFormatter Twig extension (c35caec, f16f071)
  • Add buttons groups (3772fa8)
  • Refactor the transfer of events of the editor (a308460)
  • Remove the Changes section from the PR template (303262d)
  • Add a check for color scheme to the PR checklist (e7c0868)

2023-09-01 - 0.5.0-alpha

New

Improvements

  • Improve the readability of the ticket page (1c75799, 8a3e75c)
  • Customize the errors pages (276501e)
  • Redirect automatically if user can create ticket in its default organization (c590e40)
  • Redirect to the "new authorization" page after creating a user (35b1826)

Bug fixes

  • Allow empty name to be entered in the profile (7b549e7)

Techical

  • Update the Composer dependencies (328f655)
  • Update the NPM dependencies (29073ba)

Documentation

  • Update the roadmap and the readme (bec35c9)
  • Improve the doc to check requirements in production (8f5ce4a)
  • Reorganize the developers documentation (4fdd67f)
  • Improve the doc to generate the migrations for MariaDB (353fe63)
  • Document the dev: prefix in the release section (0bb57c4)

Developers

  • Rename the make i18n-extract command (3073863)
  • Configure the CSS autoprefixer NPM package (9502721)
  • Add isCreatedBy and isUpdatedBy to the MetaEntityInterface (e9801be)
  • Extract a ConstraintErrorsFormatter from BaseController (cc94181)
  • Use Docker Compose v2 (8d65095)
  • Improve starting a MariaDB database in development (bf01124)
  • Provide an "info" alert (f90870c)
  • Style the disabled inputs and textareas correctly (0a9ed91)
  • Improve signature of CommandTestsHelper::executeCommand (81816de)
  • Remove rollbacks test (aa6b0d5)
  • Rename JS forms controllers TicketEditor and NewAuthorizationForm (35ea05e)
  • Reorganize the env files (b76098d)
  • Remove the Stylelint rule about comments (abfac89)

2023-07-07 - 0.4.0-dev

Migration notes

Bileto now requires that you configure a mail server to be used. In consequence, two new MAILER_DSN and MAILER_FROM environment variables must be set in production. See the Symfony documentation to get help. It is already configured in development (see the GreenMail documentation).

The PHP sodium and xsl extensions are now required. You must make sure that they are installed on your server.

You must setup a Messenger worker. Read the administrator guide to learn how (nearly the end of the document).

Security

  • Fix an XSS when deleting an organization (718f757)

New

  • Send a notification when posting a new message (eebc2f6)
  • Allow to create and answer to tickets by emails
  • Allow to assign a user to an organization (f436203)
  • Allow to edit users (854cce6)
  • Allow to delete roles (d547f7a)

Improvements

  • Display only tech users in the lists of assignees (5360bf8)
  • Show a notification when profile/preferences are saved (f989d0b)
  • Improve the look of the notifications (f340549)
  • Show an icon on the messages sent by email (f3ed9e8)

Documentation

  • Update the roadmap (b2a7705)
  • Extract documentation indexes in dedicated files (b6ae39e)

Technical

2023-05-12 - 0.3.0-dev

New

  • Provide a search engine and a search syntax (d83d996, abf6054)
  • Allow to rename the organizations (8afbde7)
  • Allow to delete the organizations (0d85a97)
  • Allow to sort the lists of tickets (5a4df55)
  • Track and display the last activity of tickets (326fe08)
  • Add a “remember me” checkbox to the login form (2acd1de)

Improvements

  • Redesign the lists of organizations (da08569)
  • Allow to set a password when creating users (6e902ee)
  • Allow to (un)check all the roles at once (ae96f71)
  • Add a margin below the modal titles (ebbc1ac)

Bug fixes

  • Make the user name input really optional (db3ae5a)
  • Use the correct color scheme after login or logout (9b95c80)
  • Allow public access to the Web Manifest (3984d0d)

Documentation

  • Improve the production documentation about file permissions (61a2e91)
  • Fix the documentation to reset the database in production (ec44171)
  • Fix the documentation to retrieve the latest Git tag (a5bdf39)
  • Document "Documentation" and "Technical" sections of the changelog (ed4a960)

Technical

  • Add the support for PHP 8.2 (36c38e0)
  • Add the support for PostgreSQL 11+ and MariaDB 10.4+ (af667af)
  • Fix the seeds with MariaDB (1946bb9)
  • Provide a Stimulus controller to control the checkboxes (14828fb)
  • Provide a .row--wrap class (b370ad0)
  • Provide a CSS .indent class (4aa8a10)
  • Remove the UniqueEntity constraint from UID fields (b2d8be7)
  • Use the User UID instead of ID in actors forms (95a1bfa)
  • Disable XDebug when running PHPStan (8024cb8)
  • Update the dependencies (927e4df, 15ff366, b2680c3, 04563c5, 862a354)

2023-03-27 - 0.2.0-dev

New

Improvements

  • Add the new logo (5dbebde)
  • Change the primary color scale (b810532)
  • Setup Atkinson Hyperlegible font (36b7917)
  • Redesign the layout navigation (fbbf602)
  • Redesign the tickets navigation (6d7325f)
  • Redesign the lists of tickets (2402ffc)
  • Allow to show / hide passwords (530c3f0)
  • Allow to select assignee when clicking on "unassigned" (f8806f8)
  • List tickets requested by user in "Your tickets" (984244d)
  • Change the status field by a "is resolved" checkbox when opening a ticket (ab2183f)
  • Allow to choose the priority when opening a ticket (153a767)
  • Allow to choose the type when opening a ticket (8bc053f)
  • Display connected user in the users list (2133951)
  • Display the number of tickets above the list (c433d18)
  • Display the number of messages in tickets (cb055b8)
  • Improve rendering of dates in the ticket timeline (52af077)
  • Detect preferred language from browser (8ed7599)
  • Redirect to /organizations after the creation of an organization (3acfb63)
  • Notify when "update ticket type" fails (f01410d)
  • Add a "skip to main content" accessibility anchor (63c6d9d)
  • Allow to scroll to the top of the page (c16932b)
  • Allow to scroll to the bottom of tickets (4485332)
  • Hide avatars in tickets on small screen (ba22dd4)
  • Remove year from dates if it's the same as current year (84c98b5)
  • Remove the TinyMCE emoji plugin (b49cd73)
  • Improve sizes on mobile (411b4e4)
  • Always display the tickets organizations (2a589e9)
  • Increase contrast of ticket info titles (8ace6a3)
  • Set pointer cursor on <summary> elements (ab46915)
  • Improve the look of popups (4a1bf43)
  • Improve the look of the layout banners (300c41d)
  • Make box-shadow under cards more visible (2e645f7)
  • Change profile icon to id-card (0b8c417)
  • Decrease the font-size of form captions (3b9d325)

Documentation

  • Add a roadmap (57661e2)
  • Add documentation to update the production (32d2ca6)
  • Update the documentation to update dev environment (ed1f675)
  • Update the documentation to deploy Bileto in prod (9b0e52e)
  • Add documentation about translations (95375c9)
  • Add documentation about managing the dependencies (3af30d9)
  • Complete the documentation to release new versions (e1443d8)
  • Improve the content of the README (0a6df89)
  • Improve the PR template with comments (0ce7ccf)

Technical

Misc

2022-12-08 - 0.1.0-dev

New

  • Allow users to login (8924d27)
  • Allow to create and list the organizations (d141c61)
  • Open tickets via the interface (915520f)
  • Filter owned and unassigned tickets (aab4b73)
  • Allow to answer to a ticket (1bc64ee)
  • Change the status when answering to a ticket (feafea8)
  • Post confidential messages (403538b)
  • Post a solution (679f547)
  • Change requester and assignee of a ticket (d27c9d4)
  • Change the priority of the tickets (f1cc2ec)
  • Turn ticket into incident or request (f4d53a0)
  • Rename the tickets (4b00279)
  • Disallow changing status if ticket status is finished (385096e)
  • Allow to self-assign a ticket (fe28553)
  • Allow a user to choose its language (c37460b)
  • Add a dark mode (0e4fb2f)

Misc

  • Provide documentation to deploy in production (d398aea)
  • Add information on how to contribute (9b62c60)
  • Add a PR template (a0ce04f)
  • Add the AGPL license (a2430a8)
  • (cli) Allow to create users (04ff6ab)