amulet-core 1.9.19__tar.gz → 1.9.20__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of amulet-core might be problematic. Click here for more details.

Files changed (215) hide show
  1. {amulet-core-1.9.19 → amulet-core-1.9.20}/MANIFEST.in +1 -1
  2. {amulet-core-1.9.19 → amulet-core-1.9.20}/PKG-INFO +97 -86
  3. {amulet-core-1.9.19 → amulet-core-1.9.20}/README.md +71 -71
  4. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/__init__.py +27 -27
  5. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/__pyinstaller/__init__.py +2 -2
  6. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/__pyinstaller/hook-amulet.py +4 -4
  7. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/_version.py +21 -21
  8. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/__init__.py +2 -2
  9. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/abstract_base_entity.py +128 -128
  10. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/block.py +630 -630
  11. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/block_entity.py +71 -71
  12. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/cache.py +107 -107
  13. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/chunk/__init__.py +6 -6
  14. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/chunk/biomes.py +207 -207
  15. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/chunk/block_entity_dict.py +175 -175
  16. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/chunk/blocks.py +46 -46
  17. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/chunk/chunk.py +389 -389
  18. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/chunk/entity_list.py +75 -75
  19. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/chunk/status.py +167 -167
  20. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/data_types/__init__.py +4 -4
  21. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/data_types/generic_types.py +4 -4
  22. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/data_types/operation_types.py +16 -16
  23. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/data_types/world_types.py +49 -49
  24. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/data_types/wrapper_types.py +71 -71
  25. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/entity.py +74 -74
  26. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/errors.py +119 -119
  27. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/__init__.py +36 -36
  28. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/base/__init__.py +3 -3
  29. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/base/base_history.py +26 -26
  30. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/base/history_manager.py +63 -63
  31. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/base/revision_manager.py +73 -73
  32. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/changeable.py +15 -15
  33. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/data_types.py +7 -7
  34. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/history_manager/__init__.py +3 -3
  35. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/history_manager/container.py +102 -102
  36. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/history_manager/database.py +279 -279
  37. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/history_manager/meta.py +93 -93
  38. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/history_manager/object.py +116 -116
  39. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/revision_manager/__init__.py +2 -2
  40. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/revision_manager/disk.py +33 -33
  41. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/history/revision_manager/ram.py +12 -12
  42. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/item.py +75 -75
  43. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/level/__init__.py +4 -4
  44. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/level/base_level/__init__.py +1 -1
  45. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/level/base_level/base_level.py +1035 -1026
  46. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/level/base_level/chunk_manager.py +227 -227
  47. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/level/base_level/clone.py +389 -389
  48. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/level/base_level/player_manager.py +101 -101
  49. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/level/immutable_structure/__init__.py +1 -1
  50. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/level/immutable_structure/immutable_structure.py +94 -94
  51. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/level/immutable_structure/void_format_wrapper.py +117 -117
  52. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/level/structure.py +22 -22
  53. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/level/world.py +19 -19
  54. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/partial_3d_array/__init__.py +2 -2
  55. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/partial_3d_array/base_partial_3d_array.py +263 -263
  56. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/partial_3d_array/bounded_partial_3d_array.py +528 -528
  57. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/partial_3d_array/data_types.py +15 -15
  58. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/partial_3d_array/unbounded_partial_3d_array.py +229 -229
  59. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/partial_3d_array/util.py +152 -152
  60. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/player.py +65 -65
  61. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/registry/__init__.py +2 -2
  62. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/registry/base_registry.py +34 -34
  63. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/registry/biome_manager.py +153 -153
  64. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/registry/block_manager.py +156 -156
  65. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/selection/__init__.py +2 -2
  66. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/selection/abstract_selection.py +315 -315
  67. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/selection/box.py +805 -805
  68. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/selection/group.py +488 -488
  69. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/structure.py +37 -37
  70. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/wrapper/__init__.py +8 -8
  71. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/wrapper/chunk/interface.py +441 -441
  72. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/wrapper/chunk/translator.py +567 -567
  73. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/wrapper/format_wrapper.py +772 -772
  74. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/wrapper/structure_format_wrapper.py +116 -116
  75. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/wrapper/world_format_wrapper.py +63 -63
  76. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/__init__.py +1 -1
  77. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/anvil_forge_world.py +40 -40
  78. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/anvil_world/__init__.py +3 -3
  79. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/anvil_world/_sector_manager.py +291 -384
  80. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/anvil_world/data_pack/__init__.py +2 -2
  81. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/anvil_world/data_pack/data_pack.py +224 -224
  82. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/anvil_world/data_pack/data_pack_manager.py +77 -77
  83. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/anvil_world/dimension.py +177 -177
  84. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/anvil_world/format.py +769 -769
  85. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/anvil_world/region.py +384 -384
  86. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/construction/__init__.py +3 -3
  87. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/construction/format_wrapper.py +515 -515
  88. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/construction/interface.py +134 -134
  89. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/construction/section.py +60 -60
  90. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/construction/util.py +165 -165
  91. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/__init__.py +3 -3
  92. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/chunk.py +33 -33
  93. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/dimension.py +385 -419
  94. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/format.py +659 -641
  95. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/__init__.py +36 -36
  96. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/base_leveldb_interface.py +836 -836
  97. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/generate_interface.py +31 -31
  98. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_0.py +30 -30
  99. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_1.py +12 -12
  100. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_10.py +12 -12
  101. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_11.py +12 -12
  102. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_12.py +12 -12
  103. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_13.py +12 -12
  104. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_14.py +12 -12
  105. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_15.py +12 -12
  106. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_16.py +12 -12
  107. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_17.py +12 -12
  108. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_18.py +12 -12
  109. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_19.py +12 -12
  110. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_2.py +12 -12
  111. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_20.py +12 -12
  112. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_21.py +12 -12
  113. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_22.py +12 -12
  114. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_23.py +10 -10
  115. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_24.py +10 -10
  116. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_25.py +24 -24
  117. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_26.py +10 -10
  118. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_27.py +10 -10
  119. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_28.py +10 -10
  120. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_29.py +33 -33
  121. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_3.py +57 -57
  122. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_30.py +10 -10
  123. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_31.py +10 -10
  124. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_32.py +10 -10
  125. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_33.py +10 -10
  126. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_34.py +10 -10
  127. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_35.py +10 -10
  128. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_36.py +10 -10
  129. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_37.py +10 -10
  130. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_38.py +10 -10
  131. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_39.py +12 -12
  132. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_4.py +12 -12
  133. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_40.py +16 -16
  134. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_5.py +12 -12
  135. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_6.py +12 -12
  136. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_7.py +12 -12
  137. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_8.py +180 -180
  138. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_9.py +18 -18
  139. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/chunk/leveldb_chunk_versions.py +79 -79
  140. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/mcstructure/__init__.py +3 -3
  141. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/mcstructure/chunk.py +50 -50
  142. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/mcstructure/format_wrapper.py +408 -408
  143. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/mcstructure/interface.py +175 -175
  144. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/schematic/__init__.py +3 -3
  145. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/schematic/chunk.py +55 -55
  146. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/schematic/data_types.py +4 -4
  147. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/schematic/format_wrapper.py +373 -373
  148. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/schematic/interface.py +142 -142
  149. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/sponge_schem/__init__.py +4 -4
  150. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/sponge_schem/chunk.py +62 -62
  151. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/sponge_schem/format_wrapper.py +463 -463
  152. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/sponge_schem/interface.py +118 -118
  153. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/sponge_schem/varint/__init__.py +1 -1
  154. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/sponge_schem/varint/varint.py +87 -87
  155. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_0.py +72 -72
  156. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_1444.py +336 -336
  157. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_1466.py +94 -94
  158. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_1467.py +37 -37
  159. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_1484.py +20 -20
  160. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_1503.py +20 -20
  161. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_1519.py +34 -34
  162. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_1901.py +20 -20
  163. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_1908.py +20 -20
  164. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_1912.py +21 -21
  165. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_1934.py +20 -20
  166. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_2203.py +69 -69
  167. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_2529.py +19 -19
  168. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_2681.py +76 -76
  169. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_2709.py +19 -19
  170. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_2844.py +267 -267
  171. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_3463.py +19 -19
  172. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/anvil_na.py +607 -607
  173. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/base_anvil_interface.py +326 -326
  174. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/load.py +59 -59
  175. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/loader.py +95 -95
  176. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/translators/chunk/bedrock/__init__.py +267 -267
  177. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/translators/chunk/bedrock/bedrock_nbt_blockstate_translator.py +46 -46
  178. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/translators/chunk/bedrock/bedrock_numerical_translator.py +39 -39
  179. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/translators/chunk/bedrock/bedrock_psudo_numerical_translator.py +37 -37
  180. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/translators/chunk/java/java_1_18_translator.py +40 -40
  181. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/translators/chunk/java/java_blockstate_translator.py +94 -94
  182. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/translators/chunk/java/java_numerical_translator.py +62 -62
  183. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/libs/leveldb/__init__.py +7 -7
  184. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/operations/__init__.py +5 -5
  185. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/operations/clone.py +18 -18
  186. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/operations/delete_chunk.py +32 -32
  187. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/operations/fill.py +30 -30
  188. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/operations/paste.py +65 -65
  189. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/operations/replace.py +58 -58
  190. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/utils/__init__.py +14 -14
  191. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/utils/format_utils.py +41 -41
  192. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/utils/generator.py +15 -15
  193. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/utils/matrix.py +243 -243
  194. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/utils/numpy_helpers.py +46 -46
  195. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/utils/world_utils.py +349 -349
  196. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet_core.egg-info/PKG-INFO +97 -86
  197. {amulet-core-1.9.19 → amulet-core-1.9.20}/pyproject.toml +9 -9
  198. {amulet-core-1.9.19 → amulet-core-1.9.20}/setup.cfg +53 -53
  199. {amulet-core-1.9.19 → amulet-core-1.9.20}/setup.py +23 -23
  200. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/api/wrapper/chunk/__init__.py +0 -0
  201. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/img/missing_world_icon.png +0 -0
  202. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/__init__.py +0 -0
  203. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/formats/leveldb_world/interface/__init__.py +0 -0
  204. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/__init__.py +0 -0
  205. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/__init__.py +0 -0
  206. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/interfaces/chunk/anvil/__init__.py +0 -0
  207. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/translators/__init__.py +0 -0
  208. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/translators/chunk/__init__.py +0 -0
  209. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/level/translators/chunk/java/__init__.py +0 -0
  210. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet/libs/__init__.py +0 -0
  211. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet_core.egg-info/SOURCES.txt +0 -0
  212. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet_core.egg-info/dependency_links.txt +0 -0
  213. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet_core.egg-info/entry_points.txt +0 -0
  214. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet_core.egg-info/requires.txt +0 -0
  215. {amulet-core-1.9.19 → amulet-core-1.9.20}/amulet_core.egg-info/top_level.txt +0 -0
@@ -1 +1 @@
1
- recursive-include amulet *.py *.pyi *.pyx *.pxd *.jpg *.png
1
+ recursive-include amulet *.py *.pyi *.pyx *.pxd *.jpg *.png
@@ -1,86 +1,97 @@
1
- Metadata-Version: 2.1
2
- Name: amulet-core
3
- Version: 1.9.19
4
- Summary: A Python library for reading/writing Minecraft's various save formats.
5
- Home-page: https://www.amuletmc.com
6
- Author: James Clare, Ben Gothard et al.
7
- Author-email: amuleteditor@gmail.com
8
- Platform: any
9
- Classifier: Programming Language :: Python :: 3
10
- Classifier: Operating System :: OS Independent
11
- Requires-Python: >=3.6
12
- Description-Content-Type: text/markdown
13
- Provides-Extra: docs
14
- Provides-Extra: dev
15
-
16
- # Amulet Core
17
-
18
- ![Build](../../workflows/Build/badge.svg)
19
- ![Unittests](../../workflows/Unittests/badge.svg?event=push)
20
- ![Stylecheck](../../workflows/Stylecheck/badge.svg?event=push)
21
- [![Documentation](https://readthedocs.org/projects/amulet-core/badge)](https://amulet-core.readthedocs.io)
22
-
23
- A Python 3 library to read and write data from Minecraft's various save formats.
24
-
25
- This library provides the main world editing functionality for Amulet Map Editor
26
-
27
- #### If you are looking for the actual editor it can be found at [Amulet Map Editor](https://github.com/Amulet-Team/Amulet-Map-Editor)
28
-
29
-
30
- ## Documentation
31
-
32
- Our online documentation can be found here: https://amulet-core.readthedocs.io
33
-
34
- ## Installing
35
- 1) Install Python 3.7
36
- 2) We recommend setting up a [python virtual environment](https://docs.python.org/3/tutorial/venv.html) so you don't run into issues with dependency conflicts.
37
- 3) run `pip install amulet-core` to install the library and all its dependencies.
38
-
39
- ## Dependencies
40
-
41
- This library uses a number of other libraries. These will be automatically installed when running the command above.
42
- - Numpy
43
- - [Amulet_NBT](https://github.com/Amulet-Team/Amulet-NBT)
44
- - [PyMCTranslate](https://github.com/gentlegiantJGC/PyMCTranslate)
45
-
46
- ## Contributing
47
-
48
- ### For Development
49
- Download the code to your computer, install python and run the following command from the root directory.
50
- run `pip install -e .[dev]`
51
- This command will install the library in development mode with the libraries required for development.
52
- - [Black](https://github.com/ambv/black) (Required for formatting)
53
- - Must be run before pushing a Pull Request
54
-
55
- For information about contributing to this project, please see the contribution section [below](#contributing)
56
-
57
- ### Code Formatting
58
- For code formatting, we use the formatting utility [black](https://github.com/psf/black).
59
- To run it, run the following command from your favorite terminal after installing: `black amulet tests`
60
-
61
- In order for your pull request to be accepted, this command must be run to format every file.
62
-
63
- ### Building the Documentation
64
- To build the documentation locally, run the following command: `make html` and then navigate to the
65
- generated directory `docs_build/html` in your favorite web browser
66
-
67
- ### Branch Naming
68
- Branches should be created when a certain bug or feature may take multiple attempts to fix. Naming
69
- them should follow the following convention (even for forked repositories when a pull request is being made):
70
-
71
- * For features, use: `impl-<feature name>`
72
- * For bug fixes, use: `bug-<bug tracker ID>`
73
- * For improvements/rewrites, use: `improv-<feature name>`
74
- * For prototyping, use: `proto-<feature name>`
75
-
76
- ### Pull Requests
77
- We ask that submitted Pull Requests give moderately detailed notes about the changes and explain
78
- any changes that were made to the program outside of those directly related to the feature/bug-fix.
79
- Make sure to run all tests and formatting otherwise we cannot accept your pull request.
80
-
81
- _Note: We will also re-run all tests before reviewing, this is to mitigate additional changes/commits
82
- needed to pass all tests._
83
-
84
- Once a Pull Request is submitted, we will mark the request for review, once that is done, we will
85
- review the changes and provide any notes/things to change. Once all additional changes have been made,
86
- we will merge the request.
1
+ Metadata-Version: 2.1
2
+ Name: amulet-core
3
+ Version: 1.9.20
4
+ Summary: A Python library for reading/writing Minecraft's various save formats.
5
+ Home-page: https://www.amuletmc.com
6
+ Author: James Clare, Ben Gothard et al.
7
+ Author-email: amuleteditor@gmail.com
8
+ Platform: any
9
+ Classifier: Programming Language :: Python :: 3
10
+ Classifier: Operating System :: OS Independent
11
+ Requires-Python: >=3.9
12
+ Description-Content-Type: text/markdown
13
+ Requires-Dist: numpy~=1.17
14
+ Requires-Dist: amulet-nbt~=2.0
15
+ Requires-Dist: pymctranslate~=1.2
16
+ Requires-Dist: portalocker~=2.4
17
+ Requires-Dist: amulet-leveldb~=1.0b0
18
+ Requires-Dist: platformdirs~=3.1
19
+ Provides-Extra: docs
20
+ Requires-Dist: Sphinx>=1.7.4; extra == "docs"
21
+ Requires-Dist: sphinx-autodoc-typehints>=1.3.0; extra == "docs"
22
+ Requires-Dist: sphinx_rtd_theme>=0.3.1; extra == "docs"
23
+ Provides-Extra: dev
24
+ Requires-Dist: black>=22.3; extra == "dev"
25
+ Requires-Dist: pre_commit>=1.11.1; extra == "dev"
26
+
27
+ # Amulet Core
28
+
29
+ ![Build](../../workflows/Build/badge.svg)
30
+ ![Unittests](../../workflows/Unittests/badge.svg?event=push)
31
+ ![Stylecheck](../../workflows/Stylecheck/badge.svg?event=push)
32
+ [![Documentation](https://readthedocs.org/projects/amulet-core/badge)](https://amulet-core.readthedocs.io)
33
+
34
+ A Python 3 library to read and write data from Minecraft's various save formats.
35
+
36
+ This library provides the main world editing functionality for Amulet Map Editor
37
+
38
+ #### If you are looking for the actual editor it can be found at [Amulet Map Editor](https://github.com/Amulet-Team/Amulet-Map-Editor)
39
+
40
+
41
+ ## Documentation
42
+
43
+ Our online documentation can be found here: https://amulet-core.readthedocs.io
44
+
45
+ ## Installing
46
+ 1) Install Python 3.7
47
+ 2) We recommend setting up a [python virtual environment](https://docs.python.org/3/tutorial/venv.html) so you don't run into issues with dependency conflicts.
48
+ 3) run `pip install amulet-core` to install the library and all its dependencies.
49
+
50
+ ## Dependencies
51
+
52
+ This library uses a number of other libraries. These will be automatically installed when running the command above.
53
+ - Numpy
54
+ - [Amulet_NBT](https://github.com/Amulet-Team/Amulet-NBT)
55
+ - [PyMCTranslate](https://github.com/gentlegiantJGC/PyMCTranslate)
56
+
57
+ ## Contributing
58
+
59
+ ### For Development
60
+ Download the code to your computer, install python and run the following command from the root directory.
61
+ run `pip install -e .[dev]`
62
+ This command will install the library in development mode with the libraries required for development.
63
+ - [Black](https://github.com/ambv/black) (Required for formatting)
64
+ - Must be run before pushing a Pull Request
65
+
66
+ For information about contributing to this project, please see the contribution section [below](#contributing)
67
+
68
+ ### Code Formatting
69
+ For code formatting, we use the formatting utility [black](https://github.com/psf/black).
70
+ To run it, run the following command from your favorite terminal after installing: `black amulet tests`
71
+
72
+ In order for your pull request to be accepted, this command must be run to format every file.
73
+
74
+ ### Building the Documentation
75
+ To build the documentation locally, run the following command: `make html` and then navigate to the
76
+ generated directory `docs_build/html` in your favorite web browser
77
+
78
+ ### Branch Naming
79
+ Branches should be created when a certain bug or feature may take multiple attempts to fix. Naming
80
+ them should follow the following convention (even for forked repositories when a pull request is being made):
81
+
82
+ * For features, use: `impl-<feature name>`
83
+ * For bug fixes, use: `bug-<bug tracker ID>`
84
+ * For improvements/rewrites, use: `improv-<feature name>`
85
+ * For prototyping, use: `proto-<feature name>`
86
+
87
+ ### Pull Requests
88
+ We ask that submitted Pull Requests give moderately detailed notes about the changes and explain
89
+ any changes that were made to the program outside of those directly related to the feature/bug-fix.
90
+ Make sure to run all tests and formatting otherwise we cannot accept your pull request.
91
+
92
+ _Note: We will also re-run all tests before reviewing, this is to mitigate additional changes/commits
93
+ needed to pass all tests._
94
+
95
+ Once a Pull Request is submitted, we will mark the request for review, once that is done, we will
96
+ review the changes and provide any notes/things to change. Once all additional changes have been made,
97
+ we will merge the request.
@@ -1,71 +1,71 @@
1
- # Amulet Core
2
-
3
- ![Build](../../workflows/Build/badge.svg)
4
- ![Unittests](../../workflows/Unittests/badge.svg?event=push)
5
- ![Stylecheck](../../workflows/Stylecheck/badge.svg?event=push)
6
- [![Documentation](https://readthedocs.org/projects/amulet-core/badge)](https://amulet-core.readthedocs.io)
7
-
8
- A Python 3 library to read and write data from Minecraft's various save formats.
9
-
10
- This library provides the main world editing functionality for Amulet Map Editor
11
-
12
- #### If you are looking for the actual editor it can be found at [Amulet Map Editor](https://github.com/Amulet-Team/Amulet-Map-Editor)
13
-
14
-
15
- ## Documentation
16
-
17
- Our online documentation can be found here: https://amulet-core.readthedocs.io
18
-
19
- ## Installing
20
- 1) Install Python 3.7
21
- 2) We recommend setting up a [python virtual environment](https://docs.python.org/3/tutorial/venv.html) so you don't run into issues with dependency conflicts.
22
- 3) run `pip install amulet-core` to install the library and all its dependencies.
23
-
24
- ## Dependencies
25
-
26
- This library uses a number of other libraries. These will be automatically installed when running the command above.
27
- - Numpy
28
- - [Amulet_NBT](https://github.com/Amulet-Team/Amulet-NBT)
29
- - [PyMCTranslate](https://github.com/gentlegiantJGC/PyMCTranslate)
30
-
31
- ## Contributing
32
-
33
- ### For Development
34
- Download the code to your computer, install python and run the following command from the root directory.
35
- run `pip install -e .[dev]`
36
- This command will install the library in development mode with the libraries required for development.
37
- - [Black](https://github.com/ambv/black) (Required for formatting)
38
- - Must be run before pushing a Pull Request
39
-
40
- For information about contributing to this project, please see the contribution section [below](#contributing)
41
-
42
- ### Code Formatting
43
- For code formatting, we use the formatting utility [black](https://github.com/psf/black).
44
- To run it, run the following command from your favorite terminal after installing: `black amulet tests`
45
-
46
- In order for your pull request to be accepted, this command must be run to format every file.
47
-
48
- ### Building the Documentation
49
- To build the documentation locally, run the following command: `make html` and then navigate to the
50
- generated directory `docs_build/html` in your favorite web browser
51
-
52
- ### Branch Naming
53
- Branches should be created when a certain bug or feature may take multiple attempts to fix. Naming
54
- them should follow the following convention (even for forked repositories when a pull request is being made):
55
-
56
- * For features, use: `impl-<feature name>`
57
- * For bug fixes, use: `bug-<bug tracker ID>`
58
- * For improvements/rewrites, use: `improv-<feature name>`
59
- * For prototyping, use: `proto-<feature name>`
60
-
61
- ### Pull Requests
62
- We ask that submitted Pull Requests give moderately detailed notes about the changes and explain
63
- any changes that were made to the program outside of those directly related to the feature/bug-fix.
64
- Make sure to run all tests and formatting otherwise we cannot accept your pull request.
65
-
66
- _Note: We will also re-run all tests before reviewing, this is to mitigate additional changes/commits
67
- needed to pass all tests._
68
-
69
- Once a Pull Request is submitted, we will mark the request for review, once that is done, we will
70
- review the changes and provide any notes/things to change. Once all additional changes have been made,
71
- we will merge the request.
1
+ # Amulet Core
2
+
3
+ ![Build](../../workflows/Build/badge.svg)
4
+ ![Unittests](../../workflows/Unittests/badge.svg?event=push)
5
+ ![Stylecheck](../../workflows/Stylecheck/badge.svg?event=push)
6
+ [![Documentation](https://readthedocs.org/projects/amulet-core/badge)](https://amulet-core.readthedocs.io)
7
+
8
+ A Python 3 library to read and write data from Minecraft's various save formats.
9
+
10
+ This library provides the main world editing functionality for Amulet Map Editor
11
+
12
+ #### If you are looking for the actual editor it can be found at [Amulet Map Editor](https://github.com/Amulet-Team/Amulet-Map-Editor)
13
+
14
+
15
+ ## Documentation
16
+
17
+ Our online documentation can be found here: https://amulet-core.readthedocs.io
18
+
19
+ ## Installing
20
+ 1) Install Python 3.7
21
+ 2) We recommend setting up a [python virtual environment](https://docs.python.org/3/tutorial/venv.html) so you don't run into issues with dependency conflicts.
22
+ 3) run `pip install amulet-core` to install the library and all its dependencies.
23
+
24
+ ## Dependencies
25
+
26
+ This library uses a number of other libraries. These will be automatically installed when running the command above.
27
+ - Numpy
28
+ - [Amulet_NBT](https://github.com/Amulet-Team/Amulet-NBT)
29
+ - [PyMCTranslate](https://github.com/gentlegiantJGC/PyMCTranslate)
30
+
31
+ ## Contributing
32
+
33
+ ### For Development
34
+ Download the code to your computer, install python and run the following command from the root directory.
35
+ run `pip install -e .[dev]`
36
+ This command will install the library in development mode with the libraries required for development.
37
+ - [Black](https://github.com/ambv/black) (Required for formatting)
38
+ - Must be run before pushing a Pull Request
39
+
40
+ For information about contributing to this project, please see the contribution section [below](#contributing)
41
+
42
+ ### Code Formatting
43
+ For code formatting, we use the formatting utility [black](https://github.com/psf/black).
44
+ To run it, run the following command from your favorite terminal after installing: `black amulet tests`
45
+
46
+ In order for your pull request to be accepted, this command must be run to format every file.
47
+
48
+ ### Building the Documentation
49
+ To build the documentation locally, run the following command: `make html` and then navigate to the
50
+ generated directory `docs_build/html` in your favorite web browser
51
+
52
+ ### Branch Naming
53
+ Branches should be created when a certain bug or feature may take multiple attempts to fix. Naming
54
+ them should follow the following convention (even for forked repositories when a pull request is being made):
55
+
56
+ * For features, use: `impl-<feature name>`
57
+ * For bug fixes, use: `bug-<bug tracker ID>`
58
+ * For improvements/rewrites, use: `improv-<feature name>`
59
+ * For prototyping, use: `proto-<feature name>`
60
+
61
+ ### Pull Requests
62
+ We ask that submitted Pull Requests give moderately detailed notes about the changes and explain
63
+ any changes that were made to the program outside of those directly related to the feature/bug-fix.
64
+ Make sure to run all tests and formatting otherwise we cannot accept your pull request.
65
+
66
+ _Note: We will also re-run all tests before reviewing, this is to mitigate additional changes/commits
67
+ needed to pass all tests._
68
+
69
+ Once a Pull Request is submitted, we will mark the request for review, once that is done, we will
70
+ review the changes and provide any notes/things to change. Once all additional changes have been made,
71
+ we will merge the request.
@@ -1,27 +1,27 @@
1
- import os
2
- import logging
3
- import platformdirs
4
-
5
- from ._version import get_versions
6
-
7
- __version__ = get_versions()["version"]
8
- del get_versions
9
-
10
-
11
- entity_support = False
12
-
13
- IMG_DIRECTORY = os.path.join(os.path.dirname(__file__), "img")
14
-
15
- # Initialise default paths. Applications should override these environment variables.
16
- # os.environ.setdefault("DATA_DIR", platformdirs.user_data_dir("AmuletTeam", "AmuletTeam"))
17
- # os.environ.setdefault("CONFIG_DIR", platformdirs.user_config_dir("AmuletTeam", "AmuletTeam"))
18
- os.environ.setdefault(
19
- "CACHE_DIR", platformdirs.user_cache_dir("AmuletTeam", "AmuletTeam")
20
- )
21
- os.environ.setdefault("LOG_DIR", platformdirs.user_log_dir("AmuletTeam", "AmuletTeam"))
22
-
23
- from .api import *
24
- from amulet.level.load import load_level, load_format
25
-
26
- # init a default logger
27
- logging.basicConfig(level=logging.INFO, format="%(levelname)s - %(message)s")
1
+ import os
2
+ import logging
3
+ import platformdirs
4
+
5
+ from ._version import get_versions
6
+
7
+ __version__ = get_versions()["version"]
8
+ del get_versions
9
+
10
+
11
+ entity_support = False
12
+
13
+ IMG_DIRECTORY = os.path.join(os.path.dirname(__file__), "img")
14
+
15
+ # Initialise default paths. Applications should override these environment variables.
16
+ # os.environ.setdefault("DATA_DIR", platformdirs.user_data_dir("AmuletTeam", "AmuletTeam"))
17
+ # os.environ.setdefault("CONFIG_DIR", platformdirs.user_config_dir("AmuletTeam", "AmuletTeam"))
18
+ os.environ.setdefault(
19
+ "CACHE_DIR", platformdirs.user_cache_dir("AmuletTeam", "AmuletTeam")
20
+ )
21
+ os.environ.setdefault("LOG_DIR", platformdirs.user_log_dir("AmuletTeam", "AmuletTeam"))
22
+
23
+ from .api import *
24
+ from amulet.level.load import load_level, load_format
25
+
26
+ # init a default logger
27
+ logging.basicConfig(level=logging.INFO, format="%(levelname)s - %(message)s")
@@ -1,2 +1,2 @@
1
- def get_hook_dirs():
2
- return __path__
1
+ def get_hook_dirs():
2
+ return __path__
@@ -1,4 +1,4 @@
1
- from PyInstaller.utils.hooks import collect_data_files, collect_submodules
2
-
3
- hiddenimports = collect_submodules("amulet")
4
- datas = collect_data_files("amulet")
1
+ from PyInstaller.utils.hooks import collect_data_files, collect_submodules
2
+
3
+ hiddenimports = collect_submodules("amulet")
4
+ datas = collect_data_files("amulet")
@@ -1,21 +1,21 @@
1
-
2
- # This file was generated by 'versioneer.py' (0.19) from
3
- # revision-control system data, or from the parent directory name of an
4
- # unpacked source archive. Distribution tarballs contain a pre-generated copy
5
- # of this file.
6
-
7
- import json
8
-
9
- version_json = '''
10
- {
11
- "date": "2023-09-24T13:42:46+0100",
12
- "dirty": false,
13
- "error": null,
14
- "full-revisionid": "597b4ed704d8b2746fde988092cfa534528ca3b8",
15
- "version": "1.9.19"
16
- }
17
- ''' # END VERSION_JSON
18
-
19
-
20
- def get_versions():
21
- return json.loads(version_json)
1
+
2
+ # This file was generated by 'versioneer.py' (0.19) from
3
+ # revision-control system data, or from the parent directory name of an
4
+ # unpacked source archive. Distribution tarballs contain a pre-generated copy
5
+ # of this file.
6
+
7
+ import json
8
+
9
+ version_json = '''
10
+ {
11
+ "date": "2023-09-29T11:29:40+0100",
12
+ "dirty": false,
13
+ "error": null,
14
+ "full-revisionid": "b673f749bf1c348e31bf0594e71ffa30f6ea8519",
15
+ "version": "1.9.20"
16
+ }
17
+ ''' # END VERSION_JSON
18
+
19
+
20
+ def get_versions():
21
+ return json.loads(version_json)
@@ -1,2 +1,2 @@
1
- from .block import *
2
- from .selection import *
1
+ from .block import *
2
+ from .selection import *