-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor!: big rewrite #118
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
beeb
changed the title
refactor: big rewrite of dependencies parsing and more
refactor: big rewrite
Aug 3, 2024
If the home directory cannot be found, we use the current directory instead Also fixed reading from environment at runtime
12 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Big refactor to adopt idiomatic Rust patterns and improve the existing public API.
Breaking Changes
Config file
The config file (whichever has a
[dependencies]
table betweenfoundry.toml
andsoldeer.toml
) now has a[soldeer]
section with the following format and defaults:Remappings
Remappings are now properly managed by Soldeer if desired. They can be updated inside the
foundry.toml
file if that file is also used for[dependencies]
.Remappings in the
[profile.default]
are always managed ifremappings_generated = true
. Other profiles only get managed if they already contain aremappings
array.If
remappings_regenerate = false
, then existing remappings are not modified by Soldeer, unless a dependency is removed. This allows for remappings customization.Auth
AuthError
Commands
VersionDryRun
renamed toVersion
clean
for subcommandInit
is now abool
dry_run
for subcommandPush
is now abool
skip_warnings
for subcommandPush
is now abool
Config
ConfigError
Dependency
is now an enum with variantsHttp
andGit
read_config
renamed toread_config_deps
and takes aAsRef<Path>
parameterdefine_config_file
renamed toget_config_path
add_to_config
: removed paramscustom_url
andvia_git
, paramconfig_file
now namedconfig_path
of typeAsRef<Path>
remappings
replaced byremappings_txt
andremappings_foundry
get_foundry_setup
replaced withread_soldeer_config
which returns aSoldeerConfig
structdelete_config
now takes aAsRef<Path>
second paramDependency Downloader
DownloadError
download_dependencies
returns aVec<DownloadResult>
download_dependency
has a second argumentskip_folder_check
of typebool
and returns aDownloadResult
unzip_dependency
now takes a single&HttpDependency
parameterdownload_via_git
now takes a&GitDependency
download_via_http
now takes aIntoUrl
first param, and&HttpDependency
second paramJanitor
JanitorError
cleanup_dependency
now takes afull: bool
as second parameter which removes the entiredependencies
folder and lockfile when trueSoldeer (lib)
run
returns aSoldeerError
in case of issueserrors::SoldeerError
commands::Subcommands
Lock
LockError
Remote
DownloadError
get_dependency_url_remote
now takes a single&Dependency
parameterget_project_id
now accepts&str
as inputUtils
define_security_file_location
now returns aResult<PathBuf, std::io::Error>
check_dotfiles
now acceptsAsRef<Path>
as inputcheck_dotfiles_recursive
now acceptsAsRef<Path>
as inputget_download_tunnel
replaced withget_url_type
sha256_digest
now takes a single&HttpDependency
as inputVersioning
PublishError
push_version
takes&str
as first and second parametersCloses #106
Closes #107
Closes #117
Closes #119
Closes #121