Update to edition 2021 on master (#3028)

Objective
During work on #3009 I've found that not all jobs use actions-rs, and therefore, an previous version of Rust is used for them. So while compilation and other stuff can pass, checking markup and Android build may fail with compilation errors.

Solution
This PR adds `action-rs` for any job running cargo, and updates the edition to 2021.
This commit is contained in:
Yoh Deadfall 2021-10-27 00:12:14 +00:00
parent 6a8a8c9d21
commit ffde86efa0
45 changed files with 71 additions and 55 deletions

View file

@ -125,6 +125,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
- uses: actions/cache@v2
with:
path: |
@ -255,6 +258,9 @@ jobs:
if: always()
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: Install alsa and udev
run: sudo apt-get update; sudo apt-get install --no-install-recommends libasound2-dev libudev-dev
if: runner.os == 'linux'

View file

@ -23,6 +23,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: Install cargo-deny
run: cargo install cargo-deny
- name: Check for security advisories and unmaintained crates
@ -32,6 +36,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: Install cargo-deny
run: cargo install cargo-deny
- name: Check for banned and duplicated dependencies
@ -41,6 +49,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: Install cargo-deny
run: cargo install cargo-deny
- name: Check for unauthorized licenses
@ -50,6 +62,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: Install cargo-deny
run: cargo install cargo-deny
- name: Checked for unauthorized crate sources

View file

@ -1,7 +1,7 @@
[package]
name = "bevy"
version = "0.5.0"
edition = "2018"
edition = "2021"
categories = ["game-engines", "graphics", "gui", "rendering"]
description = "A refreshingly simple data-driven game engine and app framework"
exclude = ["assets/**/*", "tools/**/*", ".github/**/*", "crates/**/*"]

View file

@ -1,7 +1,7 @@
[package]
name = "benches"
version = "0.1.0"
edition = "2018"
edition = "2021"
[dev-dependencies]
criterion = "0.3"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_app"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides core App functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_asset"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides asset functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_audio"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides audio functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_core"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides core functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_derive"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides derive implementations for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -21,7 +21,7 @@ pub fn derive_enum_variant_meta(input: TokenStream) -> TokenStream {
let indices = 0..names.len();
TokenStream::from(quote! {
impl #impl_generics #bevy_util_path::EnumVariantMeta for #struct_name#ty_generics #where_clause {
impl #impl_generics #bevy_util_path::EnumVariantMeta for #struct_name #ty_generics #where_clause {
fn enum_variant_index(&self) -> usize {
match self {
#(#struct_name::#idents {..} => #indices,)*

View file

@ -40,7 +40,7 @@ pub fn derive_shader_defs(input: TokenStream) -> TokenStream {
let (impl_generics, ty_generics, _where_clause) = generics.split_for_impl();
TokenStream::from(quote! {
impl #impl_generics #bevy_render_path::shader::ShaderDefs for #struct_name#ty_generics {
impl #impl_generics #bevy_render_path::shader::ShaderDefs for #struct_name #ty_generics {
fn shader_defs_len(&self) -> usize {
#shader_defs_len
}

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_diagnostic"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides diagnostic functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_dylib"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Force the Bevy Engine to be dynamically linked for faster linking"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_dynamic_plugin"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides dynamic plugin loading capabilities for non-wasm platforms"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_ecs"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Bevy Engine's entity component system"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -2,7 +2,7 @@
name = "bevy_ecs_macros"
version = "0.5.0"
description = "Bevy ECS Macros"
edition = "2018"
edition = "2021"
license = "MIT OR Apache-2.0"
[lib]

View file

@ -148,7 +148,7 @@ pub fn derive_bundle(input: TokenStream) -> TokenStream {
TokenStream::from(quote! {
/// SAFE: ComponentId is returned in field-definition-order. [from_components] and [get_components] use field-definition-order
unsafe impl #impl_generics #ecs_path::bundle::Bundle for #struct_name#ty_generics #where_clause {
unsafe impl #impl_generics #ecs_path::bundle::Bundle for #struct_name #ty_generics #where_clause {
fn component_ids(
components: &mut #ecs_path::component::Components,
storages: &mut #ecs_path::storage::Storages,
@ -377,7 +377,7 @@ pub fn derive_system_param(input: TokenStream) -> TokenStream {
let fetch_struct_visibility = &ast.vis;
TokenStream::from(quote! {
impl #impl_generics #path::system::SystemParam for #struct_name#ty_generics #where_clause {
impl #impl_generics #path::system::SystemParam for #struct_name #ty_generics #where_clause {
type Fetch = #fetch_struct_name <(#(<#field_types as #path::system::SystemParam>::Fetch,)*), #punctuated_generic_idents>;
}
@ -410,7 +410,7 @@ pub fn derive_system_param(input: TokenStream) -> TokenStream {
}
impl #impl_generics #path::system::SystemParamFetch<'w, 's> for #fetch_struct_name <(#(<#field_types as #path::system::SystemParam>::Fetch,)*), #punctuated_generic_idents> {
type Item = #struct_name#ty_generics;
type Item = #struct_name #ty_generics;
unsafe fn get_param(
state: &'s mut Self,
system_meta: &#path::system::SystemMeta,

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_gilrs"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Gamepad system made using Gilrs for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_gltf"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Bevy Engine GLTF loading"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_input"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides input functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_internal"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "An internal Bevy crate used to facilitate optional dynamic linking via the 'dynamic' feature"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_log"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides logging for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_macro_utils"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "A collection of utils for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_math"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides math functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_pbr"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Adds PBR rendering to Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_reflect"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Dynamically interact with rust types"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_reflect_derive"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Derive implementations for bevy_reflect"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -206,7 +206,7 @@ fn impl_struct(
TokenStream::from(quote! {
#get_type_registration_impl
impl #impl_generics #bevy_reflect_path::Struct for #struct_name#ty_generics #where_clause {
impl #impl_generics #bevy_reflect_path::Struct for #struct_name #ty_generics #where_clause {
fn field(&self, name: &str) -> Option<&dyn #bevy_reflect_path::Reflect> {
match name {
#(#field_names => Some(&self.#field_idents),)*
@ -259,7 +259,7 @@ fn impl_struct(
}
// SAFE: any and any_mut both return self
unsafe impl #impl_generics #bevy_reflect_path::Reflect for #struct_name#ty_generics #where_clause {
unsafe impl #impl_generics #bevy_reflect_path::Reflect for #struct_name #ty_generics #where_clause {
#[inline]
fn type_name(&self) -> &str {
std::any::type_name::<Self>()
@ -349,7 +349,7 @@ fn impl_tuple_struct(
TokenStream::from(quote! {
#get_type_registration_impl
impl #impl_generics #bevy_reflect_path::TupleStruct for #struct_name#ty_generics {
impl #impl_generics #bevy_reflect_path::TupleStruct for #struct_name #ty_generics {
fn field(&self, index: usize) -> Option<&dyn #bevy_reflect_path::Reflect> {
match index {
#(#field_indices => Some(&self.#field_idents),)*
@ -381,7 +381,7 @@ fn impl_tuple_struct(
}
// SAFE: any and any_mut both return self
unsafe impl #impl_generics #bevy_reflect_path::Reflect for #struct_name#ty_generics {
unsafe impl #impl_generics #bevy_reflect_path::Reflect for #struct_name #ty_generics {
#[inline]
fn type_name(&self) -> &str {
std::any::type_name::<Self>()
@ -457,7 +457,7 @@ fn impl_value(
#get_type_registration_impl
// SAFE: any and any_mut both return self
unsafe impl #impl_generics #bevy_reflect_path::Reflect for #type_name#ty_generics #where_clause {
unsafe impl #impl_generics #bevy_reflect_path::Reflect for #type_name #ty_generics #where_clause {
#[inline]
fn type_name(&self) -> &str {
std::any::type_name::<Self>()
@ -715,10 +715,10 @@ fn impl_get_type_registration(
let (impl_generics, ty_generics, where_clause) = generics.split_for_impl();
quote! {
#[allow(unused_mut)]
impl #impl_generics #bevy_reflect_path::GetTypeRegistration for #type_name#ty_generics #where_clause {
impl #impl_generics #bevy_reflect_path::GetTypeRegistration for #type_name #ty_generics #where_clause {
fn get_type_registration() -> #bevy_reflect_path::TypeRegistration {
let mut registration = #bevy_reflect_path::TypeRegistration::of::<#type_name#ty_generics>();
#(registration.insert::<#registration_data>(#bevy_reflect_path::FromType::<#type_name#ty_generics>::from_type());)*
let mut registration = #bevy_reflect_path::TypeRegistration::of::<#type_name #ty_generics>();
#(registration.insert::<#registration_data>(#bevy_reflect_path::FromType::<#type_name #ty_generics>::from_type());)*
registration
}
}

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_render"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides rendering functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -5,7 +5,6 @@
//!
//! ```rust
//! use bevy_render::mesh::VertexAttributeValues;
//! use std::convert::{ TryInto, TryFrom };
//!
//! // creating std::vec::Vec
//! let buffer = vec![[0_u32; 4]; 10];
@ -27,7 +26,6 @@
use crate::mesh::VertexAttributeValues;
use bevy_utils::EnumVariantMeta;
use std::convert::TryFrom;
use thiserror::Error;
#[derive(Debug, Clone, Error)]
@ -357,7 +355,6 @@ impl TryFrom<VertexAttributeValues> for Vec<f32> {
#[cfg(test)]
mod tests {
use super::VertexAttributeValues;
use std::convert::{TryFrom, TryInto};
#[test]
fn f32() {
let buffer = vec![0.0; 10];

View file

@ -308,7 +308,6 @@ mod tests {
};
use bevy_ecs::world::World;
use bevy_utils::HashSet;
use std::iter::FromIterator;
#[derive(Debug)]
struct TestNode {

View file

@ -1,5 +1,3 @@
use std::convert::TryInto;
use super::{Extent3d, SamplerDescriptor, TextureDescriptor, TextureDimension, TextureFormat};
use crate::renderer::{
RenderResource, RenderResourceContext, RenderResourceId, RenderResourceType,

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_scene"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides scene functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_sprite"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides sprite functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_tasks"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "A task executor for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_text"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides text functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_transform"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides hierarchy and transform functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_ui"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "A custom ECS-driven UI framework built specifically for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_utils"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "A collection of utils for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_wgpu"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "A wgpu render backend for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_window"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "Provides windowing functionality for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -55,7 +55,7 @@ impl Plugin for WindowPlugin {
.world
.get_resource::<WindowDescriptor>()
.map(|descriptor| (*descriptor).clone())
.unwrap_or_else(WindowDescriptor::default);
.unwrap_or_default();
let mut create_window_event = app
.world
.get_resource_mut::<Events<CreateWindow>>()

View file

@ -1,7 +1,7 @@
[package]
name = "bevy_winit"
version = "0.5.0"
edition = "2018"
edition = "2021"
description = "A winit window and input backend for Bevy Engine"
homepage = "https://bevyengine.org"
repository = "https://github.com/bevyengine/bevy"

View file

@ -1,7 +1,7 @@
[package]
name = "bevy-ios-example"
version = "0.1.0"
edition = "2018"
edition = "2021"
[lib]
name = "bevy_ios_example"

View file

@ -1,7 +1,7 @@
[package]
name = "ci"
version = "0.1.0"
edition = "2018"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html