Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
Canary

Canary

A performance mod designed to optimize Minecraft's general performance and unofficial fork of Lithium mod for Minecraft Forge.

1.77M
381
Optimization
AboutChangelogVersions

Canary 0.2.3 for MC 1.19.4

by AbdElAziz on May 24, 2023
Download

Canary 0.2.3 for MC 1.19.3

by AbdElAziz on May 24, 2023
Download

Canary 0.2.3 for MC 1.19.2

by AbdElAziz on May 24, 2023
Download

Canary 0.2.0 for MC 1.18.2

by AbdElAziz on May 24, 2023
Download

This update fixes the latest crash + Highly recommended to update.

Canary 0.2.2 for MC 1.19.4

by AbdElAziz on May 24, 2023
Download
  • The almost big and safe update for now, highly recommended to update.
  • This update adds many new optimizations, changes and bug fixes.
  • for 1.19.3 press here.
  • for 1.19.2 press here.
  • for 1.18.2 press here.

News

  • New: mixin.calc.if_else: replace if-else with switch statement in many operations. (highly faster)
  • New: mixin.alloc.empty_chunk: avoid allocations.
  • New: mixin.alloc.empty_list: avoid allocations.
  • New: mixin.alloc.empty_iterator: avoid allocations.
  • New: mixin.block.flatten_states: use cached properties.

Changes

  • Change: Re-added hopper optimizations.
  • Change: Re-added block entity sleeping optimizations.
  • Change: disabled mixin.entity.collisions.movement && mixin.entity.collisions.intersection mixins by default until i found a fix.
  • Change: mixin.entity.fluid_submesion moved to mixin.collections.fluid_submersion.
  • Remove: mixin.block.flatten_states.BlockBehaviour$BlockStateBase as already implemented in vanilla.

Fixes

  • Fix: ServerLevel cannot be cast to class BlockEntityGetter when placing a hopper.
  • Fix: java.lang.RuntimeException: Attempted to load class com/mojang/blaze3d/vertex/PoseStack for invalid dist DEDICATED_SERVER
  • Fix: crash when moving a hopper with quark's piston moves block entity feature enabled.
  • Fix: block.hopper: hoppers not reacting when placing/breaking inventories without block updates.

Canary 0.2.2 for MC 1.19.3

by AbdElAziz on May 24, 2023
Download
  • The almost big and safe update for now, highly recommended to update.
  • This update adds many new optimizations, changes and bug fixes.
  • for 1.19.4 press here.
  • for 1.19.2 press here.
  • for 1.18.2 press here.

News

  • New: mixin.calc.if_else: replace if-else with switch statement in many operations. (highly faster)
  • New: mixin.alloc.empty_chunk: avoid allocations.
  • New: mixin.alloc.empty_list: avoid allocations.
  • New: mixin.alloc.empty_iterator: avoid allocations.
  • New: mixin.block.flatten_states: use cached properties.

Changes

  • Change: Re-added hopper optimizations.
  • Change: Re-added block entity sleeping optimizations.
  • Change: disabled mixin.entity.collisions.movement && mixin.entity.collisions.intersection mixins by default until i found a fix.
  • Change: mixin.entity.fluid_submesion moved to mixin.collections.fluid_submersion.

Fixes

  • Fix: ServerLevel cannot be cast to class BlockEntityGetter when placing a hopper.
  • Fix: java.lang.RuntimeException: Attempted to load class com/mojang/blaze3d/vertex/PoseStack for invalid dist DEDICATED_SERVER
  • Fix: crash when moving a hopper with quark's piston moves block entity feature enabled.
  • Fix: block.hopper: hoppers not reacting when placing/breaking inventories without block updates.

Canary 0.2.2 for MC 1.19.2

by AbdElAziz on May 24, 2023
Download
  • The almost big and safe update for now, highly recommended to update.
  • This update adds many new optimizations, changes and bug fixes.
  • for 1.19.4 press here.
  • for 1.19.3 press here.
  • for 1.18.2 press here.

News

  • New: mixin.calc.if_else: replace if-else with switch statement in many operations. (highly faster)
  • New: mixin.alloc.empty_chunk: avoid allocations.
  • New: mixin.alloc.empty_list: avoid allocations.
  • New: mixin.alloc.empty_iterator: avoid allocations.
  • New: mixin.block.flatten_states: use cached properties.

Changes

  • Change: Re-added hopper optimizations.
  • Change: Re-added block entity sleeping optimizations.
  • Change: disabled mixin.entity.collisions.movement && mixin.entity.collisions.intersection mixins by default until i found a fix.
  • Change: mixin.entity.fluid_submesion moved to mixin.collections.fluid_submersion.

Fixes

  • Fix: ServerLevel cannot be cast to class BlockEntityGetter when placing a hopper.
  • Fix: java.lang.RuntimeException: Attempted to load class com/mojang/blaze3d/vertex/PoseStack for invalid dist DEDICATED_SERVER
  • Fix: crash when moving a hopper with quark's piston moves block entity feature enabled.
  • Fix: block.hopper: hoppers not reacting when placing/breaking inventories without block updates.

Canary 0.1.10 for MC 1.18.2

by AbdElAziz on May 24, 2023
Download
  • The almost big and safe update for now, highly recommended to update.
  • This update adds many new optimizations, changes and bug fixes.
  • for 1.19.4 press here.
  • for 1.19.3 press here.
  • for 1.19.2 press here.

News

  • New: mixin.calc.if_else: replace if-else with switch statement in many operations. (highly faster)
  • New: mixin.alloc.empty_chunk: avoid allocations.
  • New: mixin.alloc.empty_list: avoid allocations.
  • New: mixin.alloc.empty_iterator: avoid allocations.
  • New: mixin.block.flatten_states: use cached properties.

Changes

  • Change: Re-added hopper optimizations.
  • Change: Re-added block entity sleeping optimizations.
  • Change: disabled mixin.entity.collisions.movement && mixin.entity.collisions.intersection mixins by default until i found a fix.
  • Change: mixin.entity.fluid_submesion moved to mixin.collections.fluid_submersion.
  • Remove: mixin.block.flatten_states.BlockBehaviour$BlockStateBase as already implemented in vanilla.

Fixes

  • Fix: ServerLevel cannot be cast to class BlockEntityGetter when placing a hopper.
  • Fix: crash when moving a hopper with quark's piston moves block entity feature enabled.
  • Fix: block.hopper: hoppers not reacting when placing/breaking inventories without block updates.

Canary 0.1.9 for MC 1.18.2

by AbdElAziz on May 24, 2023
Download
  • The almost big and safe update for now, highly recommended to update.
  • This update adds many new optimizations, changes and bug fixes
  • for 1.19.4 press here.
  • for 1.19.3 press here.
  • for 1.19.2 press here.

News

  • New: mixin.calc.if_else: replace if-else with switch statement in many operations. (highly faster)
  • New: mixin.calc.deduplicate.player_statistics: de-duplicate many calculations in player movement statistics.
  • New: mixin.alloc.empty_chunk: avoid allocations.
  • New: mixin.alloc.empty_list: avoid allocations.
  • New: mixin.alloc.empty_iterator: avoid allocations.
  • New: mixin.block.flatten_states: use cached properties.

Changes

  • Change: Re-added hopper optimizations.
  • Change: Re-added block entity sleeping optimizations.
  • Change: mixin.entity.fluid_submesion moved to mixin.collections.fluid_submersion.

Fixes

  • Fix: ServerLevel cannot be cast to class BlockEntityGetter when placing a hopper.
  • Fix: crash when moving a hopper with quark's piston moves block entity feature enabled.
  • Fix: block.hopper: hoppers not reacting when placing/breaking inventories without block updates.

Canary 0.2.1 for MC 1.19.2

by AbdElAziz on May 24, 2023
Download
  • The almost big and safe update for now, highly recommended to update.
  • This update adds many new optimizations, changes and bug fixes
  • for 1.19.4 press here.
  • for 1.19.3 press here.
  • for 1.18.2 press here.

News

  • New: mixin.calc.if_else: replace if-else with switch statement in many operations. (highly faster)
  • New: mixin.calc.deduplicate.player_statistics: de-duplicate many calculations in player movement statistics.
  • New: mixin.alloc.empty_chunk: avoid allocations.
  • New: mixin.alloc.empty_list: avoid allocations.
  • New: mixin.alloc.empty_iterator: avoid allocations.
  • New: mixin.block.flatten_states: use cached properties.

Changes

  • Change: Re-added hopper optimizations.
  • Change: Re-added block entity sleeping optimizations.
  • Change: disabled mixin.entity.collisions.movement && mixin.entity.collisions.intersection mixins by default until i found a fix.
  • Change: mixin.entity.fluid_submesion moved to mixin.collections.fluid_submersion.

Fixes

  • Fix: ServerLevel cannot be cast to class BlockEntityGetter when placing a hopper.
  • Fix: java.lang.RuntimeException: Attempted to load class com/mojang/blaze3d/vertex/PoseStack for invalid dist DEDICATED_SERVER
  • Fix: crash when moving a hopper with quark's piston moves block entity feature enabled.
  • Fix: block.hopper: hoppers not reacting when placing/breaking inventories without block updates.

Canary 0.2.1 for MC 1.19.3

by AbdElAziz on May 24, 2023
Download
  • The almost big and safe update for now, highly recommended to update.
  • This update adds many new optimizations, changes and bug fixes
  • for 1.19.4 press here.
  • for 1.19.2 press here.
  • for 1.18.2 press here.

News

  • New: mixin.calc.if_else: replace if-else with switch statement in many operations. (highly faster)
  • New: mixin.calc.deduplicate.player_statistics: de-duplicate many calculations in player movement statistics.
  • New: mixin.alloc.empty_chunk: avoid allocations.
  • New: mixin.alloc.empty_list: avoid allocations.
  • New: mixin.alloc.empty_iterator: avoid allocations.
  • New: mixin.block.flatten_states: use cached properties.

Changes

  • Change: Re-added hopper optimizations.
  • Change: Re-added block entity sleeping optimizations.
  • Change: disabled mixin.entity.collisions.movement && mixin.entity.collisions.intersection mixins by default until i found a fix.
  • Change: mixin.entity.fluid_submesion moved to mixin.collections.fluid_submersion.

Fixes

  • Fix: ServerLevel cannot be cast to class BlockEntityGetter when placing a hopper.
  • Fix: java.lang.RuntimeException: Attempted to load class com/mojang/blaze3d/vertex/PoseStack for invalid dist DEDICATED_SERVER
  • Fix: crash when moving a hopper with quark's piston moves block entity feature enabled.
  • Fix: block.hopper: hoppers not reacting when placing/breaking inventories without block updates.

Canary 0.2.1 for MC 1.19.4

by AbdElAziz on May 24, 2023
Download
  • The almost big and safe update for now, highly recommended to update.
  • This update adds many new optimizations, changes and bug fixes
  • for 1.19.3 press here.
  • for 1.19.2 press here.
  • for 1.18.2 press here.

News

  • New: mixin.calc.if_else: replace if-else with switch statement in many operations. (highly faster)
  • New: mixin.calc.deduplicate.player_statistics: de-duplicate many calculations in player movement statistics.
  • New: mixin.alloc.empty_chunk: avoid allocations.
  • New: mixin.alloc.empty_list: avoid allocations.
  • New: mixin.alloc.empty_iterator: avoid allocations.
  • New: mixin.block.flatten_states: use cached properties.

Changes

  • Change: Re-added hopper optimizations.
  • Change: Re-added block entity sleeping optimizations.
  • Change: disabled mixin.entity.collisions.movement && mixin.entity.collisions.intersection mixins by default until i found a fix.
  • Change: mixin.entity.fluid_submesion moved to mixin.collections.fluid_submersion.
  • Remove: mixin.block.flatten_states.BlockBehaviour$BlockStateBase as already implemented in vanilla.

Fixes

  • Fix: ServerLevel cannot be cast to class BlockEntityGetter when placing a hopper.
  • Fix: java.lang.RuntimeException: Attempted to load class com/mojang/blaze3d/vertex/PoseStack for invalid dist DEDICATED_SERVER
  • Fix: crash when moving a hopper with quark's piston moves block entity feature enabled.
  • Fix: block.hopper: hoppers not reacting when placing/breaking inventories without block updates.

Canary 0.2.0 for MC 1.19.4

by AbdElAziz on May 14, 2023
Download

Canary 0.2.0 for MC 1.19.3

by AbdElAziz on May 14, 2023
Download

Canary 0.2.0 for MC 1.19.2

by AbdElAziz on May 14, 2023
Download

Canary 0.1.8 for MC 1.18.2

by AbdElAziz on May 14, 2023
Download

Hi, this update removes the hopper block entity only and block entity sleeping optimizations as them unstable and create incompatibilities with other mods.

Canary 0.1.10 for MC 1.19.4

by AbdElAziz on Apr 20, 2023
Download

High-Quality Canary update. Recommended to update. Many new optimizations, bug fixes, hopper bug fixes, code compatibility changes, and more. for 1.19.3 press here. for 1.19.2 press here.

News :

  • collections.fluid_submersion: Use faster collection and avoid FluidTag equality tests.
  • util.chunk_access, and use it in several places.

Changes :

  • Avoid Stream API in fire/lava check in Entity movement code.
  • entity.collisions.movement: check block below entity before other collisions.
  • Replace @Redirect with @Inject to optimize hopper code.

Fixes :

  • Incompatibility with Create's ponder feature.

Canary 0.1.10 for MC 1.19.3

by AbdElAziz on Apr 20, 2023
Download

High-Quality Canary update. Recommended to update. Many new optimizations, bug fixes, hopper bug fixes, code compatibility changes, and more. for 1.19.4 press here. for 1.19.2 press here.

News :

  • collections.fluid_submersion: Use faster collection and avoid FluidTag equality tests.
  • util.chunk_access, and use it in several places.

Changes :

  • Avoid Stream API in fire/lava check in Entity movement code.
  • entity.collisions.movement: check block below entity before other collisions.
  • Replace @Redirect with @Inject to optimize hopper code.

Fixes :

  • Incompatibility with Create's ponder feature.

Canary 0.1.10 for MC 1.19.2

by AbdElAziz on Apr 20, 2023
Download

High-Quality Canary update. Recommended to update. Many new optimizations, bug fixes, hopper bug fixes, code compatibility changes, and more. for 1.19.4 press here. for 1.19.3 press here.

News :

  • collections.fluid_submersion: Use faster collection and avoid FluidTag equality tests.
  • util.chunk_access, and use it in several places.

Changes :

  • Avoid Stream API in fire/lava check in Entity movement code.
  • entity.collisions.movement: check block below entity before other collisions.
  • Replace @Redirect with @Inject to optimize hopper code.

Fixes :

  • Incompatibility with Create's ponder feature.

Canary 0.1.7 for MC 1.18.2

by AbdElAziz on Apr 20, 2023
Download

High-Quality Canary update. Recommended to update. Many new optimizations, bug fixes, hopper bug fixes, code compatibility changes, and more.

News :

  • collections.fluid_submersion: Use faster collection and avoid FluidTag equality tests.
  • util.chunk_access, and use it in several places.

Changes :

  • Avoid Stream API in fire/lava check in Entity movement code.
  • entity.collisions.movement: check block below entity before other collisions.
  • Replace @Redirect with @Inject to optimize hopper code.

Fixes :

  • Incompatibility with Create's ponder feature.
1
2
3
4
6

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+
Filter

Show all versions

Modrinth is open source.

main@656c5b6

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.