Expand description
§Module
:: willbe
Utility to publish multi-crate and multi-workspace environments and maintain their consistency.
§Purpose
-
Multi-Workspace Consistency: In a project setup involving multiple workspaces with shared dependencies,
willbe
maintains consistency. It ensures all workspaces are updated with compatible dependency versions. -
Publishing Multi-Crate Projects: If your project structure includes multiple crates that need simultaneous publishing,
willbe
manages the process seamlessly. It ensures the crates are published in the right order while staying in version sync. -
Dependency Analysis:
willbe
can perform a thorough analysis of your project’s dependencies, providing a detailed highlight of inconsistencies or areas that need attention. -
Test Execution With Varied Configurations:
willbe
can execute tests with varying configurations, such as different combinations of crate features. This assists in ensuring comprehensive coverage of test scenarios. -
Generate Health Table: Quickly visualize important project metrics like build status for each crate, creating a single, easy-to-read table.
-
Automating CI/CD Workflow Generation: Automatically generate a series of CI/CD operations suitable for the task at hand to enhance productivity and improve the development process.
§To install
cargo install willbe
will .
§Try out from the repository
git clone https://github.com/Wandalen/wTools
cd wTools/module/move/willbe
cargo install --path .
will .
Re-exports§
pub use ::error_tools::dependency::thiserror;
Modules§
- action
- Describes functions that can be called from an interface.
- anyhow
- github crates-io docs-rs
- cargo
- Interaction module with the
cargo
utilities. - channel
- Rust toolchain channel: stable/nightly.
- code
- Source code.
- collection
- Function and structures to work with collections. Module containing all collection macros
- command
- Describes CLI commands.
- dependency
- Dependency of a package.
- diff
- Compare two crate archives and create a difference report.
- entity
- Entities of which spaces consists of.
- error
- Error handling facade. Error handling module for willbe.
- exposed
- Exposed namespace of the module.
- features
- Operation with features
- files
- Paths and files.
- git
- Git.
- graph
- Tools for working with dependencies graph.
- http
- Http requests.
- iter
- Iterating things.
- kw
- Keywords
- macros
- Work with paths.
- manifest
- To manipulate manifest data.
- optimization
- Rust build optimization: debug/release
- orphan
- Orphan namespace of the module.
- own
- Own namespace of the module.
- package
- Offers capabilities for package management, facilitating the handling and organization of packages.
- package_
md_ extension - Md’s extension for workspace.
- packages
- Provides a set of functionalities for handling and manipulating packages.
- packed_
crate - Handles operations related to packed Rust crates
- path
- Work with paths.
- prelude
- Prelude to use essentials:
use my_module::prelude::*
. - proc_
macro2 - github crates-io docs-rs
- progress_
bar - Progress bar staff.
- publish
- Publish.
- query
- The parse function parses an input string into a
HashMap
where the keys areString
and the values are of typeValue
. - quote
- github crates-io docs-rs
- repository
- Repository tools.
- syn
- github crates-io docs-rs
- table
- Facade for
preatytable
crate. - template
- Traits and structs for templates.
- test
- Operations with tests
- thiserror
- github crates-io docs-rs
- tool
- Genera-purpose tools which might be moved out one day.
- tree
- Tools for printing a tree
- typed
- Typed error handling, a facade for
thiserror
. Typed error handling, a facade forthiserror
. - untyped
- Untyped error handling, a facade for
anyhow
. Untyped error handling, a facade foranyhow
. - url
- Tools for parsing and extracting information from url.
- version
- Provides an opportunity to work with versions.
- workspace
- It features the ability to interact with workspaces, manage their participants, and other functionalities.
- workspace_
graph - Workspace’ graph.
- workspace_
md_ extension - Md’s extension for workspace.
- workspace_
package - Packages of workspace.
Macros§
- bmap
- Function and structures to work with collections.
Creates a
BTreeMap
from a list of key-value pairs. - bset
- Function and structures to work with collections.
Creates a
BTreeSet
from a list of elements. - deque
- Function and structures to work with collections.
Creates a
VecDeque
from a list of elements. - dlist
- Function and structures to work with collections.
Creates a
Vec
from a list of elements. - hmap
- Function and structures to work with collections.
Creates a
HashMap
from a list of key-value pairs. - hset
- Function and structures to work with collections.
Creates a
HashSet
from a list of elements. - into_
bmap - Function and structures to work with collections.
Creates a
BTreeMap
from a list of key-value pairs. - into_
bset - Function and structures to work with collections.
Creates a
BTreeSet
from a list of elements. - into_
dlist - Function and structures to work with collections.
Creates a
Vec
from a list of elements. - into_
hmap - Function and structures to work with collections.
Creates a
HashMap
from a list of key-value pairs. - into_
hset - Function and structures to work with collections.
Creates a
HashSet
from a list of elements. - into_
llist - Function and structures to work with collections.
Creates a
LinkedList
from a llist of elements. - into_
vec - Function and structures to work with collections.
Creates a
Vec
from a list of elements. - into_
vecd - Function and structures to work with collections.
Creates a
VecDeque
from a list of elements. - llist
- Function and structures to work with collections.
Creates a
LinkedList
from a llist of elements. - quote
- The whole point.
Structs§
- Absolute
Path - A new type representing an absolute path.
- BTree
Map - Function and structures to work with collections. An ordered map based on a B-Tree.
- BTree
Set - Function and structures to work with collections. An ordered set based on a B-Tree.
- Binary
Heap - Function and structures to work with collections. A priority queue implemented with a binary heap.
- Bmap
- Function and structures to work with collections. An ordered map based on a B-Tree.
- Bset
- Function and structures to work with collections. An ordered set based on a B-Tree.
- Crate
Dir - Path to crate directory
- Current
Path - Symbolize current path.
- Dependency
Ref - A dependency of the main crate
- Deque
- Function and structures to work with collections. A double-ended queue implemented with a growable ring buffer.
- Dlist
- Function and structures to work with collections.
A contiguous growable array type, written as
Vec<T>
, short for ‘vector’. - Either
DirOr File - Wrapper over
data_type::Either< CrateDir, ManifestFile >
with util methods. - Error
- The
Error
type, a wrapper around a dynamic error type. - HashMap
- Function and structures to work with collections. A hash map implemented with quadratic probing and SIMD lookup.
- HashSet
- Function and structures to work with collections.
A hash set implemented as a
HashMap
where the value is()
. - Hmap
- Function and structures to work with collections. A hash map implemented with quadratic probing and SIMD lookup.
- Hset
- Function and structures to work with collections.
A hash set implemented as a
HashMap
where the value is()
. - Linked
List - Function and structures to work with collections. A doubly-linked list with owned nodes.
- Llist
- Function and structures to work with collections. A doubly-linked list with owned nodes.
- Manifest
- Hold manifest data.
- Manifest
File - Path to crate directory
- Map
- Function and structures to work with collections. A hash map implemented with quadratic probing and SIMD lookup.
- Path
- A slice of a path (akin to
str
). - PathBuf
- An owned, mutable path (akin to
String
). - Set
- Function and structures to work with collections.
A hash set implemented as a
HashMap
where the value is()
. - Source
File - Path to a source file
- Utf8
Path - A slice of a UTF-8 path (akin to
str
). - Utf8
Path Buf - An owned, mutable UTF-8 path (akin to
String
). - Vec
- Function and structures to work with collections.
A contiguous growable array type, written as
Vec<T>
, short for ‘vector’. - VecDeque
- Function and structures to work with collections. A double-ended queue implemented with a growable ring buffer.
- Version
- Version entity.
Version entity.
Wrapper for a
SemVer
structure - Workspace
- Stores information about the current workspace.
- Workspace
Package Ref - Facade for
cargo_metadata::Package
Enums§
- Dependency
Kind - Dependencies can come in three kinds
- Option
- The
Option
type. See the module level documentation for more. - Package
- Represents different types of packages in a Cargo workspace.
- Path
Error PathError
enum represents errors when creating aCrateDir
object.- Result
Result
is a type that represents either success (Ok
) or failure (Err
).- Workspace
Init Error - Represents errors related to workspace operations.
Traits§
- AsCode
- A trait for converting an object to its code representation.
- Assign
- Provides a generic interface for setting a component of a certain type on an object.
- Code
Items - A trait for retrieving an iterator over items of a source file.
- Entries
- A trait that defines a method for retrieving an iterator over entries.
- ErrWith
- Trait to add extra context or information to an error.
- Iter
Trait - Trait that encapsulates a clonable iterator with specific characteristics, tailored for use with the
syn
crate. - Itertools
- An
Iterator
blanket implementation that provides extra adaptors and methods. - Sources
- A trait that defines a method for retrieving an iterator over source files.
- Transitive
TryFrom - A trait to perform a transitive
try_from
conversion.
Functions§
- cicd_
renew - List packages. List packages.
- normalize
- Normalizes a given filesystem path by syntactically removing occurrences of
.
and properly handling..
components. - run
- Takes the command line arguments and perform associated function(s). If no arguments are provided, the function identifies this as an ambiguous state and prompts the user with a help message, suggesting possible commands they might want to execute. It then terminates the program with an exit code of 1 to indicate an error due to the lack of input.
- test
- run tests in specified crate run tests in specified crate run tests in specified crate
- unique_
folder_ name - Generates a unique folder name using the current system time, process ID, thread ID, and an internal thread-local counter.
- workspace_
renew - List packages. List packages.
Type Aliases§
- Result
With Report - A type alias for a
Result
that contains an error which is a tuple of a report and an original error.