Browse Source
			
			
			Update Rust to 1.86.0 (#5744)
			
				- also raise MSRV to 1.84.0
- fix `Dockerfile` template
- remove no longed needed `-vvv` argument for `cargo build`
			
			
				pull/5749/head
			
			
		 
		
			
				
					
						
						Daniel
					
					7 months ago
					
						
							committed by
							
								
								GitHub
							
						 
					
				 
				
			 
		 
		
			
				
					
					No known key found for this signature in database
					
						
							GPG Key ID: B5690EEEBB952194
						
					
				
			
		
		
		
	
		
			
				 6 changed files with 
16 additions and 
9 deletions
			 
			
		 
		
			
				- 
					
					
					 
					Cargo.toml
				
 
			
				- 
					
					
					 
					docker/DockerSettings.yaml
				
 
			
				- 
					
					
					 
					docker/Dockerfile.alpine
				
 
			
				- 
					
					
					 
					docker/Dockerfile.debian
				
 
			
				- 
					
					
					 
					docker/Dockerfile.j2
				
 
			
				- 
					
					
					 
					rust-toolchain.toml
				
 
			
		
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
		
			
				
					| 
						
						
							
								
							
						
						
					 | 
					@ -5,7 +5,7 @@ name = "vaultwarden" | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					version = "1.0.0" | 
					 | 
					 | 
					version = "1.0.0" | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					authors = ["Daniel García <dani-garcia@users.noreply.github.com>"] | 
					 | 
					 | 
					authors = ["Daniel García <dani-garcia@users.noreply.github.com>"] | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					edition = "2021" | 
					 | 
					 | 
					edition = "2021" | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					rust-version = "1.83.0" | 
					 | 
					 | 
					rust-version = "1.84.0" | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					resolver = "2" | 
					 | 
					 | 
					resolver = "2" | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					repository = "https://github.com/dani-garcia/vaultwarden" | 
					 | 
					 | 
					repository = "https://github.com/dani-garcia/vaultwarden" | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  | 
				
			
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
		
			
				
					| 
						
						
							
								
							
						
						
					 | 
					@ -5,7 +5,7 @@ vault_image_digest: "sha256:5b11739052c26dc3c2135b28dc5b072bc607f870a3e81fbbcc72 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					# We use the linux/amd64 platform shell scripts since there is no difference between the different platform scripts | 
					 | 
					 | 
					# We use the linux/amd64 platform shell scripts since there is no difference between the different platform scripts | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					# https://github.com/tonistiigi/xx | https://hub.docker.com/r/tonistiigi/xx/tags | 
					 | 
					 | 
					# https://github.com/tonistiigi/xx | https://hub.docker.com/r/tonistiigi/xx/tags | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					xx_image_digest: "sha256:9c207bead753dda9430bdd15425c6518fc7a03d866103c516a2c6889188f5894" | 
					 | 
					 | 
					xx_image_digest: "sha256:9c207bead753dda9430bdd15425c6518fc7a03d866103c516a2c6889188f5894" | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					rust_version: 1.85.1 # Rust version to be used | 
					 | 
					 | 
					rust_version: 1.86.0 # Rust version to be used | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					debian_version: bookworm # Debian release name to be used | 
					 | 
					 | 
					debian_version: bookworm # Debian release name to be used | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					alpine_version: "3.21" # Alpine version to be used | 
					 | 
					 | 
					alpine_version: "3.21" # Alpine version to be used | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					# For which platforms/architectures will we try to build images | 
					 | 
					 | 
					# For which platforms/architectures will we try to build images | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  | 
				
			
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
		
			
				
					| 
						
						
							
								
							
						
						
					 | 
					@ -32,10 +32,10 @@ FROM --platform=linux/amd64 docker.io/vaultwarden/web-vault@sha256:5b11739052c26 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					########################## ALPINE BUILD IMAGES ########################## | 
					 | 
					 | 
					########################## ALPINE BUILD IMAGES ########################## | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					## NOTE: The Alpine Base Images do not support other platforms then linux/amd64 | 
					 | 
					 | 
					## NOTE: The Alpine Base Images do not support other platforms then linux/amd64 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					## And for Alpine we define all build images here, they will only be loaded when actually used | 
					 | 
					 | 
					## And for Alpine we define all build images here, they will only be loaded when actually used | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					FROM --platform=linux/amd64 ghcr.io/blackdex/rust-musl:x86_64-musl-stable-1.85.1 AS build_amd64 | 
					 | 
					 | 
					FROM --platform=linux/amd64 ghcr.io/blackdex/rust-musl:x86_64-musl-stable-1.86.0 AS build_amd64 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					FROM --platform=linux/amd64 ghcr.io/blackdex/rust-musl:aarch64-musl-stable-1.85.1 AS build_arm64 | 
					 | 
					 | 
					FROM --platform=linux/amd64 ghcr.io/blackdex/rust-musl:aarch64-musl-stable-1.86.0 AS build_arm64 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					FROM --platform=linux/amd64 ghcr.io/blackdex/rust-musl:armv7-musleabihf-stable-1.85.1 AS build_armv7 | 
					 | 
					 | 
					FROM --platform=linux/amd64 ghcr.io/blackdex/rust-musl:armv7-musleabihf-stable-1.86.0 AS build_armv7 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					FROM --platform=linux/amd64 ghcr.io/blackdex/rust-musl:arm-musleabi-stable-1.85.1 AS build_armv6 | 
					 | 
					 | 
					FROM --platform=linux/amd64 ghcr.io/blackdex/rust-musl:arm-musleabi-stable-1.86.0 AS build_armv6 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					########################## BUILD IMAGE ########################## | 
					 | 
					 | 
					########################## BUILD IMAGE ########################## | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					# hadolint ignore=DL3006 | 
					 | 
					 | 
					# hadolint ignore=DL3006 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  | 
				
			
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
		
			
				
					| 
						
						
							
								
							
						
						
					 | 
					@ -36,7 +36,7 @@ FROM --platform=linux/amd64 docker.io/tonistiigi/xx@sha256:9c207bead753dda9430bd | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					########################## BUILD IMAGE ########################## | 
					 | 
					 | 
					########################## BUILD IMAGE ########################## | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					# hadolint ignore=DL3006 | 
					 | 
					 | 
					# hadolint ignore=DL3006 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					FROM --platform=$BUILDPLATFORM docker.io/library/rust:1.85.1-slim-bookworm AS build | 
					 | 
					 | 
					FROM --platform=$BUILDPLATFORM docker.io/library/rust:1.86.0-slim-bookworm AS build | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					COPY --from=xx / / | 
					 | 
					 | 
					COPY --from=xx / / | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					ARG TARGETARCH | 
					 | 
					 | 
					ARG TARGETARCH | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					ARG TARGETVARIANT | 
					 | 
					 | 
					ARG TARGETVARIANT | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					@ -134,7 +134,7 @@ ARG DB=sqlite,mysql,postgresql | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					# dummy project, except the target folder | 
					 | 
					 | 
					# dummy project, except the target folder | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					# This folder contains the compiled dependencies | 
					 | 
					 | 
					# This folder contains the compiled dependencies | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					RUN source /env-cargo && \ | 
					 | 
					 | 
					RUN source /env-cargo && \ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					    cargo build --features ${DB} --profile "${CARGO_PROFILE}" --target="${CARGO_TARGET}" -vvv && \ | 
					 | 
					 | 
					    cargo build --features ${DB} --profile "${CARGO_PROFILE}" --target="${CARGO_TARGET}" && \ | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					    find . -not -path "./target*" -delete | 
					 | 
					 | 
					    find . -not -path "./target*" -delete | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					# Copies the complete project | 
					 | 
					 | 
					# Copies the complete project | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  | 
				
			
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
		
			
				
					| 
						
						
							
								
							
						
						
					 | 
					@ -125,8 +125,15 @@ RUN source /env-cargo && \ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        echo "export CARGO_TARGET_$(echo "${CARGO_TARGET}" | tr '[:lower:]' '[:upper:]' | tr - _)_LINKER=/usr/bin/$(xx-info)-gcc" >> /env-cargo && \ | 
					 | 
					 | 
					        echo "export CARGO_TARGET_$(echo "${CARGO_TARGET}" | tr '[:lower:]' '[:upper:]' | tr - _)_LINKER=/usr/bin/$(xx-info)-gcc" >> /env-cargo && \ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        echo "export PKG_CONFIG=/usr/bin/$(xx-info)-pkg-config" >> /env-cargo && \ | 
					 | 
					 | 
					        echo "export PKG_CONFIG=/usr/bin/$(xx-info)-pkg-config" >> /env-cargo && \ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        echo "export CROSS_COMPILE=1" >> /env-cargo && \ | 
					 | 
					 | 
					        echo "export CROSS_COMPILE=1" >> /env-cargo && \ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					        # Export build env's for OpenSSL | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        echo "export OPENSSL_INCLUDE_DIR=/usr/include/$(xx-info)" >> /env-cargo && \ | 
					 | 
					 | 
					        echo "export OPENSSL_INCLUDE_DIR=/usr/include/$(xx-info)" >> /env-cargo && \ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        echo "export OPENSSL_LIB_DIR=/usr/lib/$(xx-info)" >> /env-cargo ; \ | 
					 | 
					 | 
					        echo "export OPENSSL_LIB_DIR=/usr/lib/$(xx-info)" >> /env-cargo ; \ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					        # Export build env's for mysqlclient-sys (mariadb) | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					        # The version is linked to the mariadb-connector-c a.k.a libmariadb-dev version | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					        # See: https://mariadb.com/kb/en/about-mariadb-connector-c/ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					        echo "export MYSQLCLIENT_VERSION=3.3.14" >> /env-cargo ; \ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					        echo "export MYSQLCLIENT_INCLUDE_DIR=/usr/include/mariadb" >> /env-cargo && \ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					        echo "export MYSQLCLIENT_LIB_DIR=/usr/lib/$(xx-info)" >> /env-cargo ; \ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    fi && \ | 
					 | 
					 | 
					    fi && \ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    # Output the current contents of the file | 
					 | 
					 | 
					    # Output the current contents of the file | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    cat /env-cargo | 
					 | 
					 | 
					    cat /env-cargo | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  | 
				
			
			
		
	
								
							
						
					 
					
				 
			 
		
			
			
			
			
			
			
				
				
					
						
							
								
									
	
		
		
			
				
					| 
						
						
						
					 | 
					@ -1,4 +1,4 @@ | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					[toolchain] | 
					 | 
					 | 
					[toolchain] | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					channel = "1.85.1" | 
					 | 
					 | 
					channel = "1.86.0" | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					components = [ "rustfmt", "clippy" ] | 
					 | 
					 | 
					components = [ "rustfmt", "clippy" ] | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					profile = "minimal" | 
					 | 
					 | 
					profile = "minimal" | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
					 | 
					
  |