Skip to content

Release 3.0.0 #365

@DavidPetrasek

Description

@DavidPetrasek

Try the new version here: https://github.com/DavidPetrasek/ChatBundle

Core functions tested and work fine!

I haven't created a PR, because I believe this package should be renamed to friendsofsymfony/chat-bundle. So I renamed it and if you agree with this change then I propose creating a new Github repository and making this one obsolete/archived and adding a short explanation with a link to the new repository at the begging of the README of the current repository.

What's new (or see the commits in the provided repo)

Codebase upgrade:

  • Now supports PHP 8.2 (tested in 8.3) and Symfony 7.2
  • Modern Symfony bundle structure
  • Migrate XML config to PHP config
  • Rename AppBundle to App
  • Update access modifiers: change protected to private where applicable
  • Replace PHPDocs (@var, @param, @return) with PHP type declarations
  • Introduce PHP attributes
  • Switch DateTime to DateTimeImmutable

New features:

  • Participant's status
  • readAt
  • deletedAt
  • Added optimized version for getFirst(Last)Message methods, specifically getFirst(Last)MessageByThread and getFirst(Last)MessageByThreadQueryBuilder which doesn't load the entire collection
  • getNbUnreadMessageByParticipantAndThread
  • getNbSentMessageByParticipantAndThread
  • getMessageByThreadQueryBuilder
  • getThreadsCreatedByParticipantQueryBuilder
  • getParticipantThreadsQueryBuilder
  • getUnreadMessageByParticipantQueryBuilder
  • Sent message is now automatically marked as read for the sender
  • getThread method in the Provider class doesn't mark the thread as read anymore
  • allow method chaining where missing
  • removed method escapeTerm in QueryFactory class which doesn't do anything. It was also a insecure/overhead to escape search strings as we already use/should use prepared statements.
  • Mark messages as deleted (for a single participant / for all)
  • When a thread/message is marked as deleted, it's not marked as read anymore. There is no way to tell if the participant has really read the thread/message. Even webmail clients like Hotmail and Gmail don't do this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions