Skip to content

Bump nostrum from 0.6.1 to 0.8.0#30

Open
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/hex/nostrum-0.8.0
Open

Bump nostrum from 0.6.1 to 0.8.0#30
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/hex/nostrum-0.8.0

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot bot commented on behalf of github Jun 1, 2023

Bumps nostrum from 0.6.1 to 0.8.0.

Release notes

Sourced from nostrum's releases.

0.8.0

Welcome to nostrum 0.8.0, codenamed "ignition on".

0_8_0_release

This release introduces full support for distributed caching and state, and simplifies the existing cache behaviours by using a single shared interface for reading the cache using Erlang's QLC module. Simply put, instead of having to implement callbacks for every combination of functions that nostrum exposes (and will expose) to the cache, a pluggable cache only needs to implement the c:query_handle/0 callback. To fulfill this move, a few smaller breaking changes have been performed. It is expected that these will be the last bigger breaking changes done before the proper 1.0 release (at which point we will follow semantic versioning).

Note that cache distribution was not the only missing piece to allow distributing nostrum across multiple nodes (albeit the largest one). Gateway event handling must be updated to prevent duplicate gateway connections, proper distribution of shards over nodes must be implemented, and some other improvements in regards to gateway connections with many shards must be implemented, including support for persistent resume seq tokens.

Breaking changes

  • The current family of functions to read from the MemberCache have been replaced.
    • Functions affected:
      • MemberCache.get/1 -> MemberCache.fold/3-4
      • MemberCache.get_with_users/1 -> MemberCache.fold_with_users/3-4
      • MemberCache.by_user/1 -> MemberCache.fold_by_user/3-4
    • These changes were performed to support caches that need to perform some form of resource acquisition and release: ETS needs to call safe_fixtable for safe traversal and Mnesia needs to wrap calls in :mnesia.activity.
  • The following error returns have been renamed to a more generic version:
    • :channel_not_found -> :not_found
    • :presence_not_found -> :not_found
    • :id_not_found -> :not_found
    • :id_not_found_on_guild_lookup -> :not_found
    • :channel_not_found -> :not_found
  • The ChannelCache will no longer look up channels in the GuildCache if they were not found in the channel cache itself. A convenience function to fetch a channel from a guild (they are stored together) can be introduced to GuildCache if needed.
  • PresenceCache.get(user_id, guild_id) is now PresenceCache.get(guild_id, user_id), the same for PresenceCache.get!/2.
    • The reason behind this is that all "nested" caches use this form already, and having the arguments reversed may be confusing.

... (truncated)

Commits
  • b6a91ff Prepare for 0.8 release
  • 5e8dd37 Join ConsumerGroup synchronously
  • 5ec6ec5 Define "Nutrition facts" for use Nostrum.Consumer
  • 6299046 Merge pull request #502 from bcksl/feat/consumer-use-behaviour-default-handle...
  • 88ea20b feat: Nostrum.Consumer: add @before_compile hook for default handle_event
  • 81bd76c feat: Nostrum.Consumer: add @behaviour declaration to __using__
  • 665db8f feat: Nostrum.Consumer: use new defoverridable syntax and add @impl dec...
  • b200970 Merge pull request #500 from Th3-M4jor/add-channel-field-interactions
  • daf2b71 add new channel field
  • 7a9c858 Prepare 0.8.0-beta1
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [nostrum](https://github.com/Kraigie/nostrum) from 0.6.1 to 0.8.0.
- [Release notes](https://github.com/Kraigie/nostrum/releases)
- [Commits](Kraigie/nostrum@v0.6.1...v0.8.0)

---
updated-dependencies:
- dependency-name: nostrum
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Jun 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants