 1e322d9f76
			
		
	
	
		1e322d9f76
		
	
	
	
	
		
			
			# Objective The pointer types introduced in #3001 are useful not just in `bevy_ecs`, but also in crates like `bevy_reflect` (#4475) or even outside of bevy. ## Solution Extract `Ptr<'a>`, `PtrMut<'a>`, `OwnedPtr<'a>`, `ThinSlicePtr<'a, T>` and `UnsafeCellDeref` from `bevy_ecs::ptr` into `bevy_ptr`. **Note:** `bevy_ecs` still reexports the `bevy_ptr` as `bevy_ecs::ptr` so that crates like `bevy_transform` can use the `Bundle` derive without needing to depend on `bevy_ptr` themselves.
		
			
				
	
	
		
			51 lines
		
	
	
		
			852 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			852 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
| # if crate A depends on crate B, B must come before A in this list
 | |
| crates=(
 | |
|     bevy_utils
 | |
|     bevy_ptr
 | |
|     bevy_macro_utils
 | |
|     bevy_derive
 | |
|     bevy_math
 | |
|     bevy_tasks
 | |
|     bevy_reflect/bevy_reflect_derive
 | |
|     bevy_reflect
 | |
|     bevy_ecs/macros
 | |
|     bevy_ecs
 | |
|     bevy_app
 | |
|     bevy_log
 | |
|     bevy_dynamic_plugin
 | |
|     bevy_asset
 | |
|     bevy_audio
 | |
|     bevy_core
 | |
|     bevy_diagnostic
 | |
|     bevy_hierarchy
 | |
|     bevy_transform
 | |
|     bevy_window
 | |
|     bevy_crevice/bevy-crevice-derive
 | |
|     bevy_crevice
 | |
|     bevy_render
 | |
|     bevy_core_pipeline
 | |
|     bevy_input
 | |
|     bevy_gilrs
 | |
|     bevy_animation
 | |
|     bevy_pbr
 | |
|     bevy_gltf
 | |
|     bevy_scene
 | |
|     bevy_sprite
 | |
|     bevy_text
 | |
|     bevy_ui
 | |
|     bevy_winit
 | |
|     bevy_internal
 | |
|     bevy_dylib
 | |
| )
 | |
| 
 | |
| cd crates
 | |
| for crate in "${crates[@]}"
 | |
| do
 | |
|   echo "Publishing ${crate}"
 | |
|   (cd "$crate"; cargo publish --no-verify)
 | |
|   sleep 20
 | |
| done
 | |
| 
 | |
| cd ..
 | |
| cargo publish
 |