Hind Montassif
6618349cba
release libmamba 2.0.0alpha2, libmambapy 2.0.0alpha2, micromamba 2.0.0alpha2
2024-02-02 17:37:25 +01:00
Antoine Prouvost
551540ba0a
Improve Query API ( #3167 )
...
* Clean Query
* Bind Query alike to C++
2024-02-01 10:21:41 -05:00
Antoine Prouvost
a182b1d453
Bind solver::libsolv::UnSolvable ( #3166 )
2024-01-31 16:34:55 -05:00
Antoine Prouvost
9f1b5b7e06
Solver sort deps ( #3163 )
...
* Improve Solver::solve
* Add Solver request ordering
* Refactor context solver flags
* Add config option order_solver_request
* Fix config
* Change pin test expected solution
* Refactor custom variant comparison
* Add 2.0 order_solver_request doc
2024-01-31 16:21:29 -05:00
Antoine Prouvost
dedf072874
Split Solver and Unsolvable ( #3156 )
...
* No capture MPool in Solver
* Solution in MSolver
* Change MTransaction solver ctor
* Split UnSolvable from MSolver
* Implement MSolver Outcome
* Private SolverProblem
* Move UnSolvable to solve::libsolv
* Move sat* solver::problems_graph
* Clean test_problems_graph
* Move MSolver to solver::libsolv
* Rename MSolver > Solver
* Add minimal 2.0 doc
* Bind solver::Solution
* Move problems_graph bindings to libmambapy.solver
* Change Solver namespace
* Move Solver bindings to libmambapy.solver.libsolv
2024-01-30 22:20:36 +01:00
Antoine Prouvost
b270d9f6b3
Refactor solver flags ( #3153 )
...
* Rename Solver keep_specs > keep_user_specs
* Refactor hide libsolv solver flags
* Move Solver flags in Request
2024-01-25 17:07:54 +01:00
Antoine Prouvost
a190d9394c
Solver Request ( #3141 )
...
* Change type for MSolver::add_pin
* Add Solver Request 1
* Add Solver Request 2
* Add Solver Request 3
* Cleanup retry flags
* Remove constant parameter
* Add Solver Request 4
* Add Request::Freeze
* Add Request::Keep
* Add Request::UpdateAll
* Remove MSolver::add_global_job
* Use MSolver::add_request for remove
* Remove MSolver::add_jobs
* Remove MSolver::add_pins
* Add api/install pins in request
* Add api/update pins in request
* Remove MSolver::add_pin
* Remove dead MSovler neuter_specs & pinned_specs
* Move Request to solver::Request
* Bind solver::Request
* Apply review comments
2024-01-23 13:38:11 +01:00
Antoine Prouvost
e8793e59e6
Solver improvements ( #3140 )
...
* Change serializing of pin
* Change pin names
* Rename MSolverProblem > SolverProblem
* Move pool_add_matchspec to helpers
* Move transaction_to_solution to helpers
* Remove MSolver::add_constraints
* Move pool_add_pin to helpers
* Remove MSolver pointer convertion
* Remove MSolver macro flags
2024-01-19 10:04:45 +01:00
Antoine Prouvost
0324bd74b0
No M ( #3137 )
2024-01-18 08:44:23 +01:00
Antoine Prouvost
a29f500d17
Fix expected caster ( #3136 )
2024-01-17 16:54:59 +01:00
Antoine Prouvost
7d6856e9b5
MRepo refactor ( #3118 )
...
* Rename Enum members in MRepo
* use solv::Pool in MRepo
* Free MRepo add_pip_as_python_dependency
* Free MRepo repodata reading
* Free MRepo read_solv
* Free MRepo write_solv
* Remove MRepo constructor
* Remove MPool capture from MRepo
* Add missing pip dependency
* Refactor solv file serialization
* No lock on non-existant files
* Cleanup dead code
* write_solve create-directories
* Clean MRepo member functions
* Decouple MRepo and Pool
* Finetune Clang-format
* Add filename location to error
* Do not fail on solv file write
* Load new pool loader for repodata and .solv files
* Remove repo name in favor of URL
* Refactor MRepo index loading
* Fix SubDirData.writable_solv_cache
* Fix solv file loading
* Lock repodata.json while reading metadata
* Refactor expected in load_subdir_in_pool
* use expected in solver helpers
* Refactor helpers functions and error messages in Repo
* Add MPool::create_repo_from_packages
* Use load_installed_packages_in_pool
* Remove MRepo ctor
* Fix rebase
* Refactor MRepo::priority
* Update Taskfile realpath to work on MacOS
* Fix virtual packages being removed
* Move MRepo::priority to MPool
* Rename MRepo > solver::libsolv::RepoInfo
* Move RepoInfo parameters for its own library
* Move make_package_info to helpers
* Add libmambapy.solver.libsolv
* Add solver::libsolv::Priorities op
* Bind libsolv parameters
* Bind RepodataOrigin
* Merge libsolv/serialization and libsolv/parameters
* Bind new MPool methods
* Add RepoInfo op
* Add RepoInfo changes to log
* Rename attribute
* Remove RepoInfo::repo
2024-01-17 16:44:47 +01:00
Antoine Prouvost
cc95098a57
Add expected caster to Union ( #3135 )
2024-01-17 16:44:21 +01:00
Antoine Prouvost
8ab10efa07
Pool channel match ( #3122 )
...
* Add Match return type to Channel::contains_package
* Simplify channel specific matchspec in Pool
* (Dirty) fix force reinstall
2024-01-11 15:07:54 +01:00
Antoine Prouvost
43e24a864d
Add Channel::contains_package ( #3121 )
...
* Add CondaURL literals
* Add Channel::contains_package
* Fix test case name
* Bind Channel::contains_package
2024-01-11 10:10:36 +01:00
Antoine Prouvost
13d034147f
Rename ChannelSpec > UndefinedChannel ( #3117 )
...
* Rename ChannelSpec > UndefinedChannel
* Rename UndefinedChannel > UnresolvedChannel
2024-01-09 13:52:23 +01:00
Antoine Prouvost
328457276a
Add some PackageInfo tests" ( #3115 )
...
* Add PackageInfo::from_url
* Add PakcageInfo tests
* Bind PackageInfo::from_url
2024-01-09 09:38:01 +01:00
Antoine Prouvost
6bf43a6d4f
Change PackageInfo types ( #3113 )
...
Use NoArchType in PackageInfo
2024-01-08 17:52:17 +01:00
Antoine Prouvost
717456890a
Move PackageInfo in specs:: ( #3109 )
...
* Move PackageInfo in specs::
* Move PackageInfo in specs::
* Rename PackageInfo::url > PackageInfo::package_url
* Add changelog entry
* Add MatchSpec migration help
2024-01-08 16:06:22 +01:00
Antoine Prouvost
dae5e0e378
NoArchType as standalone enum ( #3108 )
...
* NoArch as standalone enum
* Bind NoArchType
2024-01-08 14:26:42 +01:00
Antoine Prouvost
53a5171360
Clean PackageInfo interface ( #3103 )
...
* Refactor PackageInfo operator==
* Remove unused headers
* Simplify PackageInfo interface
* Move PackageInfo signature order
* Change type for PackageInfo::defaulted_keys
* Use nlohman::from_json for PackageInfo
* Use nlohman::to_json for PackageInfo
* Fallback in PackageInfo::str
* Rename PackageInfo::fn > filename
2024-01-05 18:26:51 +01:00
Antoine Prouvost
18b77d62be
GlobSpec ( #3094 )
...
* Fix include guard
* Add GlobSpec
* Use GlobSpec for MatchSpec build_string
* Make MatchSpec::name a GlobSpec
2024-01-03 09:17:17 +01:00
Antoine Prouvost
b9706dce32
MatchSpec use VersionSpec ( #3089 )
...
* Don't use members as wip vars
* Make conda-build compatible VersionSpec str
* Add VersionSpec::is_explicitly_free
* Strenghten sat attrs ref
* Try pluging VersionSpec in MatchSpec
* Change type of MatchSpec::version
* Fix MatchSpec::conda_build_str
* Adjust MatchSpec tests
2024-01-02 12:55:42 +01:00
Antoine Prouvost
3f6484c23c
Fix VersionSpec free ranges ( #3088 )
2023-12-28 13:33:48 +01:00
Antoine Prouvost
15e8056029
Some future proofing MatchSpec ( #3082 )
...
* Private MatchSpec::name
* Private MatchSpec::filename
* Private MatchSpec::url
* Make MatchSpec::is_file a function
* Private MatchSpec::namespace
* Private MatchSpec::build_number
* Remove dead affectation
* Private MatchSpec::optional
* Remove dead code
* Clean MatchSpec dist parsing
* Fix MatchSpec dist parse
* Private MatchSpec::version
* Private MatchSpec::build_string
* Private MatchSpec::channel
* Add missing MatchSpec setters
* Put MatchSpec in specs::
2023-12-26 17:23:33 +01:00
Antoine Prouvost
152857f059
Add VersionSpec::str ( #3081 )
...
* Add flat_bool_expr_tree:infix_for_each
* Add level to Version repr
* Add VersionSpec::str
2023-12-22 14:19:33 +01:00
Antoine Prouvost
2d85759c13
More specs bindings ( #3080 )
...
* Bind archive
* Minor specs::Version improvements
* Bind specs::Version
* Bind VersionSpec
* Use alias
2023-12-22 08:54:02 +01:00
Johan Mabille
29a19e1ef5
release libmamba 2.0.0alpha1, libmambapy 2.0.0alpha1, micromamba 2.0.0alpha1
2023-12-18 11:50:36 +01:00
Antoine Prouvost
6ed8c23721
Fix 2.0 alpha ( #3067 )
2023-12-18 10:50:47 +01:00
Johan Mabille
c54c4b530e
release libmamba 2.0.0alpha0, libmambapy 2.0.0alpha0, micromamba 2.0.0alpha0
2023-12-14 16:42:44 +01:00
Daniel Holth
d12d77056c
restore use_default_signal_handler flag for libmambapy ( #3028 )
2023-12-07 23:33:23 +01:00
Antoine Prouvost
21675b6517
Enforce space between definitions ( #3049 )
2023-12-07 23:00:25 +01:00
Antoine Prouvost
f36c3f222e
Change MatchSpec::parse to named constructor ( #3048 )
2023-12-07 16:06:02 +01:00
Antoine Prouvost
d3b72c44fb
Plug ChannelSpec in MatchSpec ( #3046 )
...
* Plug ChannelSpec in MatchSpec
* Remove unused split_platform
* Fix channel specific error messages
* Fix MatchSpec tests
* Remove ChannelSpec Context and ChannelContext dep
2023-12-07 13:45:56 +01:00
Antoine Prouvost
dfcb8c249e
MatchSpec small improvements ( #3043 )
...
* Small CQA
* Add ChannelSpec::str
* Add ChannelContext::make_channel for ChannelSpec
* Split MatchSpec tests
2023-12-07 09:20:58 +01:00
Antoine Prouvost
c529199eef
Split validate.[ch]pp ( #3041 )
...
* Split validation errors
* Split validation keys
* Fix header include
* Split validation versioned namespaces
* Trailing return types
* Split update framework implementation
* Finish validation split
* Fix missing header
2023-12-06 19:34:19 +01:00
Antoine Prouvost
ecd6de037c
Bind ChannelContext ( #3034 )
...
* Bind ChannelContext
* Deprecate Context() in Python
* Remove ChannelContext singleton
2023-12-05 17:52:13 +01:00
Antoine Prouvost
5509ed3044
Bind Channel ( #3001 )
...
* Rename binding functions
* Minimal specs bindings
* Add ChannelSpec setters
* Fix flat_set caster
* Bind ChannelSpecs
* Bind Platform
* Rename CondaURL::base > CondaURL::generic
* Automatically convert enums from strings
* Fix CondaURL encoding bug
* Bind CondaURL
* Add comparison for AuthenticationInfo
* Bind AuthenticationInfo
* Rename libmambapy tests
* Bind AuthenticationDataBase
* Fix binding size
* Add weakening_map comparison
* Refactor AuthenticationDataBase bindings
* Bind ChannelResolveParams
* Separate binding utility functions
* Bind CondaURL / subpath
* Fix Channel
* Bind Channel
* Modify specs import
* Remove ChannelSpec setters
* Simplify channel tests
2023-11-28 20:50:51 +01:00
Antoine Prouvost
abd21ccc8c
Remove ChanelContext context capture ( #3015 )
...
* Remove some ChannelContext::context
* Explicit Context capture in SubdirData
* Explicit Context param in MatchSpec
* Move URL hardening to Transaction
* Remove Context capture in ChannelContext
2023-11-28 18:32:09 +01:00
Antoine Prouvost
1230b92094
Move to Ruff ( #3011 )
...
* Use Ruff LSP
* Remove unused imports
* More Ruff fixes
* Remove unused test vars
* Explicit import
* Explicit import
* Explicit import
* Explicit import
* Explicit import
* Warning fixes
* Import fixtures
* Add ruff pre-commit
* Remove pre-commits checks superceded by ruff
* Fix imports
* Fix ruff warning
* Fix test_linking fixtures
* Fix typo
* Fix test_update fixture import
* Python line-length to 100
* Reformat Python code line length
* Fix typo
2023-11-27 19:10:34 +01:00
Antoine Prouvost
acd357df95
Remove ChannelContext ctor ( #3002 )
2023-11-22 18:45:43 +01:00
Antoine Prouvost
1ee4893eeb
Move core/channel > specs/channel ( #3000 )
...
* Move core/channel > specs/channel
* Remove unnecessary [[nodiscard]]
* Minor specs::Channel improvements
* Add value based ChannelResolveParams
* Add specs::Channel tests
* Add more Channel tests
* ChannelContext::context const only
* Remove unnecessary ChannelContext functions
* Rename core/channel.hpp > core/channel_context.hpp
* Sort (some) CMake files
* Refactor ChannelContext constructor
* Review comments
* Const reference
* Use ChannelContext::make_conda_compatible
2023-11-22 15:29:34 +01:00
Antoine Prouvost
e874e7ea71
Migrate Channel::make_channel to resolve multi channels ( #2986 )
...
* Add one to many get_channels
* Refactor ChannelContext params
* ChannelContext::make_channel migration 1
* ChannelContext::make_channel migration 2
* ChannelContext::make_channel migration 3
* ChannelContext::make_channel migration 4
* ChannelContext::make_channel migration 5
* ChannelContext::make_channel migration 6
* ChannelContext::make_channel migration 7
* Remove Channel bindings
* Remove ChannelContext::make_channel
* ChannelContext::get_channels migration 1
* ChannelContext::get_channels migration 2
* ChannelContext::get_channels migration 3
* Remove get_channels bindings
* Remove ChannelContext::get_channels
* Channel::resolve return a list
* Resolve multi_channel in Channel::resolve
* Use weakening map for multi_channels
* Split Channel resolve_name
* Cleanup signatures
* Add Channel::clear_xxx
* Force removal of trailing '/' in Channel
* Add weak channel comparison
* Use better channel comparisons
* Remove Channel::base_url
* Rename Channel::make_chan > make_channel
* Add doc
* Resolve Channel paths from params
* Review from JohanMabille
* Fix absolute path
2023-11-21 12:07:19 +01:00
Antoine Prouvost
cd744e765c
Channel initialization ( #2953 )
...
* Set default_channels at config level
* Resolve default multi channel at the config level
* Fix Yaml source printers
* Resolve local multi channel at the config level
* Remove ChannelContext::make_simple_channel
* Remove Channel::name usage
* Factorize split_once functions
* Try looking for name match in URL path
* Refactor ending_splits_in
* Code improvement
* Replace get_common_parts with concat_dedup
* Remove Channel::name
* Remove Channel::location
* Use URL for priority in channel loader
* Make Channel value-based
* Add range hashing
* Add Channel comparison and hash
* Make channel map/list return by value
* Resolve 1
* Resolve 2
* Resolve 3
* Remove unknown channels
* Hide get_known_platforms
* Add unknown ChannelSpec
* Remove unused function
* Rename Channel::canonical_name > display_name
* Remove Channel friend class
* Add Channel::resolve
* Remove ChannelContext::from_value
2023-11-15 15:52:59 +01:00
Antoine Prouvost
0d42e81667
Modularize libmambapy ( #2960 )
...
* Modularize libmambapy
* Add test-libmambapy to Taskfile
* Fix libmamba installation
* Fix standalone libmambapy configuration
* Change libmambapy layout
* Add scikit-build
* Fix libmambapy extension name
* Add submodules shims
* Fix libmambaoy tests
* Fix stubgen
* Adapt libmambapy tests to scikit-build
* Read version from Python
* Replace confusing names
2023-11-10 18:29:16 +01:00
Antoine Prouvost
d116ff8917
Add cmake-format ( #2962 )
...
* Add cmake-format
* Apply cmake-format
2023-11-07 11:08:26 +01:00
Antoine Prouvost
fdf2b65a27
Refactor CI and libamambapy tests (on Unix) ( #2952 )
...
* Add simple libmambapy test
* Use CMakePresets in CI
* Share workspace between jobs
* Add Conda dependency
* Remove CMake STRIP
* Fix menuinst skipping
* Refactor CMakePresets
* Change ccache key
* Add pkg-config
2023-11-02 13:55:39 +01:00
Antoine Prouvost
80e3475e06
Explicit and smart CMake target ( #2935 )
...
* Explicit and smart CMake target
* Only expose explicit CMake targets
2023-10-31 12:07:03 +01:00
Julien Jerphanion
cab1bbfdbb
fix: Parse `remote_connect_timeout_secs` as a double ( #2949 )
...
* fix: Parse `remote_connect_timeout_secs` as a double
Signed-off-by: Julien Jerphanion <git@jjerphan.xyz>
* test: Test parsing of `.condarc`
Signed-off-by: Julien Jerphanion <git@jjerphan.xyz>
* fixup! test: Test parsing of `.condarc`
* lint: Format .condarc
Signed-off-by: Julien Jerphanion <git@jjerphan.xyz>
---------
Signed-off-by: Julien Jerphanion <git@jjerphan.xyz>
2023-10-30 13:46:35 +01:00
Antoine Prouvost
6592c84084
Combine dev environments ( #2937 )
2023-10-26 12:48:50 +02:00
Antoine Prouvost
c7aba975b5
Resolve ChannelSpec into a Channel ( #2899 )
...
* Change URL custom_channel matcher
* Cannot change location at once
* Simpler channel_alias_location
* Change URL channel_alias matcher
* Refactor ChannelContext::from_url
* Add Windows URL path encoding test
* Simplify URL::set_path
* Fix URL encoding parsing
* Refactor platforms urls
* Fix missing forward declaration
* Fix Win file URL encoding
* Split Channel url functions
* Remove no-URL ctor from ChannelContext::from_name
* Remove no-URL ctor from ChannelContext::make_simple_channel
* Remove old Channel ctor
* Remove channel_alias_location
* Refactor Channel::base_url
* Try not to use location mamba.py
* Remove Channel comparison
* Try Channel::platform_url
* Refactor Channel::platform_urls to use platform_url
* Remove build_url
* Remove concat_scheme_url
* Use spec in from_name
* Tuple equality for URL
* Add tuple_hash
* Add std::hash<mamba::util::URL>
* Make CondaURL hashable
* Refactor make_channel
* New algorithm for authetification map
* Add specs::AutheticationDataBase
* Fix typo authentification > authentication
* Use AuthenticationDataBase
* Fix AuthenticationDataBase
* use AuthenticationDataBase::find_compatible
* Use canonical_name
* Add Credential check to URL
* Simplify crendential check in channel
* Refactor AuthDB credential setters
* No Channel::location in tests
* Remove Channel user scheme password
* Document AuthenticationInfo
* Remove Channel token
* Remove Channel::auth
* Remove Channel::package_name
* More replacement name > canonical_name
* Remove unused function
* No credential from URLs
* Remove unneeded header
* Disable Channel::repo_checker
This is disbled as TUF implementation is not well defined and this
function is not used except in experimental conditions.
* Apply auth info as needed
* Simplify custom_channels instanciation
* Simplify custom_multi_channels instanciation
* Review improvements
2023-10-25 19:06:46 +02:00
Johan Mabille
00dd002fe6
Added PackageFetcher ( #2917 )
...
* Added PackageFetcher
* slight refactoring
* Additional cleanup and first pass according to review
* Last pass according to review
2023-10-19 15:26:57 +02:00
Antoine Prouvost
4e93b7967a
Add ChannelSpec ( #2870 )
...
* Make find_slash_and_platform private-lib
* Add ChannelSpec
* Add ChannelSpec::Type
* Add abs_path_or_url_to_url
* Add ChannelSpec path normalization and type detection
* Add ChannelSpec::location
* Allow any platform string in ChannelSpec
* Channel::platforms is a flat_set
* Move flat_set_caster to own file
* More flat_set in Channel
* Regenerate Python stubs
* Plug ChannelSpec into Channel
* Resolve path in ChannelSpec
* Fix env export channels
* No resolve symlink in ChannelSpec
* Fix tests on Windows
* Add ChannelSpec attribute extractors
* Add raw domain ChannelSpec test
* Use URL in read_channel_configuration
* Fix local channel name
* Improve path_to_url
* Construct from Channel from URL
* Properly parse channel alias
* Fix wrong move
* Channel alias is a CondaURL
* Add defaulted scheme to URL
* Add defaulted host to URL
* CondaURL tokens can only be at the begining
* Add CondaURL::path_without_token
* Add option to remove credentials in URLs
* Add empty cretendial URL tests
* Add str Credential options
* Add credential option to CondaURL::str
* Add split_prefix/suffix
* Add ChannelContext::from_package_path
* URL::pretty_path only on Windows
* Add ChannelContext::from_path
* Do not resolve paths in ChannelSpec
* Change mapping order in path resolving
* Compute URL canonical_name in read_channel_configurations
* Add URL::authority credentials
* Rename private URL::authentification > URL::authentifaction_elems
* Refactor URL::authority
* Refactor some read_channel_configurations
* Remove empty path URL case
* Add path_is_prefix
* Fix url_match
* Add flat_set doctest printer
* Add CondaURL doctest printer
* Alias dynamic_platform_set in ChannelSpec
* Use util:concat
* Restore subdir in matchspecs
* Make find_slash_and_platform private
2023-10-12 15:56:49 +02:00
Antoine Prouvost
5d515fa043
Add multiple queries to repoquery search ( #2897 )
...
* Remove kENUM
* Fix Hide URL confidential
* Refactor repoquery initialization
* Hide implementation headers
* Add enum_name(QueryType)
* Add QueryType_from_name
* Mulitple queries in repoquery search
* Stubgen
* No mathspec in Json query
* Remove unused ChannelContext
2023-10-09 21:40:50 +02:00
Antoine Prouvost
91b6c44a51
Read repodata.json using nl::json (rerun) ( #2753 )
...
* Add simdjson dependency
* Add experimental_repodata_parsing option
* Add simdjson repodata parser
* Add missing dependency
* Deactivate simdjson by default
2023-10-04 22:06:46 +02:00
Antoine Prouvost
0fbb0e4fab
Use CMake targets for reproc ( #2883 )
...
* Use CMake targets for reproc
* Use reproc-cpp-static on Windows
* Upper pin on Mamba
2023-10-02 18:01:14 +02:00
Johan Mabille
474be8b9b0
Download ( #2844 )
...
* Refactored Subdir Metadata
* Plugged downloader into subdirdata
* Simplified Donwloader APIs
* Added DownloadMonitor and plugged it into channel_loader
* Simplified subdir API
* Fixed python bindings
* Changes according to review (on going)
* Added json parsers to subdirmetadata
2023-09-29 16:19:14 +02:00
Antoine Prouvost
be30af600a
Build micromamba win with feedstock ( #2859 )
...
* Try CI
* Remove useless header
* Try mixing static windows build with Conda
* More packages from conda-forge
* Move to yaml-cpp>=0.8.0
* Ensure proper yaml-cpp target
* Use yaml-cpp-static on Windows
* Fix versions
* Use libsolv-static from Conda-Forge
2023-09-27 10:32:47 +02:00
Daniel Elsner
a2b0f9c3b8
Further improve `micromamba search` output ( #2823 )
2023-09-26 08:09:22 +02:00
Antoine Prouvost
9b757c24a8
No ugly kenum ( #2831 )
2023-09-14 10:56:29 +02:00
Antoine Prouvost
69a2cd30e2
fix stubs ( #2817 )
...
* Downpin pybind11-stubgen
* Fix stubgens
* Regenerate stubs
2023-09-07 10:12:09 +02:00
Klaim (Joël Lamotte)
bbac096a04
Context: not a singleton ( #2615 )
...
Context is not a singleton anymore.
---------
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
2023-09-05 10:55:43 +02:00
Johan Mabille
0a5ed8d71f
release libmamba 1.5.1, libmambapy 1.5.1, mamba 1.5.1, micromamba 1.5.1
2023-09-05 10:23:43 +02:00
Daniel Elsner
7dfbf2cf0d
Clearer output from `micromamba search` ( #2782 )
...
* [feat] Show other versions with --pretty printing
* [feat] Refine version/build table in search pretty print
* [feat] Change table view to contain further aligned build information
* [feat] Redirect non-wildcard search to single package view
* Fix repoquery test for empty single package view
* Cleanup + add string marker for alignment
* Fix string marker for libmambapy
* Add changes suggested by JH
* Move to unordered_map where it makes sense
* Move to string_view and switch-case constexpr alignment mapping
* Fail lookup for non-existing alignments
* Remove unnecessary reference in constructor
2023-08-31 16:10:03 +02:00
Johan Mabille
795734fb7f
release libmamba 1.5.0, libmambapy 1.5.0, mamba 1.5.0, micromamba 1.5.0
2023-08-24 09:24:26 +02:00
Johan Mabille
6e4d91e2ec
New apis for downloading ( #2695 )
...
* New apis for downloading
* Changes according to review
* Added minimal test and fixed issues
* Python backward compatibility
2023-08-23 09:07:20 +02:00
Hind-M
427771c4b4
Fix warnings ( #2760 )
2023-08-21 15:16:48 +02:00
Antoine Prouvost
03e34174dc
Move util_string to utility library ( #2739 )
2023-08-11 13:32:15 +02:00
Johan Mabille
6f6fdd7b98
release libmamba 1.4.9, libmambapy 1.4.9, mamba 1.4.9, micromamba 1.4.9
2023-07-13 16:07:23 +02:00
Johan Mabille
bc818db386
release libmamba 1.4.8, libmambapy 1.4.8, mamba 1.4.8, micromamba 1.4.8
2023-07-11 09:50:02 +02:00
Johan Mabille
c46647a880
Fixed zst check in MSubdirData ( #2661 )
2023-07-08 00:11:34 +02:00
Antoine Prouvost
3b6e10159f
Replace MTransaction::m_remove with Solution ( #2603 )
...
* Replace MTransaction m_to_remove with m_solution
* Add MSolver filters to Solution
* Add conversion test and accessor to flat_set
* Fix solution filtering in MTransaction
* Use Solution in MTransaction::print
* Ue m_solution in MTransaction::execute
* Fix Json logging
* MTransaction fix python search
* Fix transaction-to_solution topological order
* Fix MTransaction::execute reinstalls
* Remove MTransaction::m_transaction
* Remove MTransaction::filter
* Remove MTransaction::m_filter_name_id
* Add control flow in ObjTransaction loops
* Refactor find_python_versions
* Remove copies in iterations
* Review comments from @JohanMabille
2023-07-07 00:33:05 +02:00
Johan Mabille
2ed8bee1e1
release libmamba 1.4.7, libmambapy 1.4.7, mamba 1.4.7, micromamba 1.4.7
2023-07-06 09:00:00 +02:00
Johan Mabille
cd1119fc41
Call init_console in mamba to prevent UTF8 errors when extracting pac… ( #2657 )
...
Call init_console in mamba to prevent UTF8 errors when extracting packages
2023-07-05 22:26:40 +02:00
Antoine Prouvost
520872800d
Create Solver solution ( #2584 )
...
* Replace MTransaction to_remove with PackageInfo
* Add a solution class
* Fix Solution for_each
* Add Solution empty and size
* Make MTransaction::filter const
* Remove unused MTransaction::m_force_reinstall
* Rename MSolver::set_flags
* Refactor MSolver flags
* Call solver.flag() once in MTransaction
* Implement Solution as alias with free functions
* Remove as many MSolver flag setters as possible
* Make Soltion a struct to possibly add more members
* Remove useless function call
* Add Solution::Omit
* Rename template typenames and parameters in Solution
* Fix MSolver const parameter
2023-07-04 12:04:05 +02:00
John H. Ayad
c491f1c52c
Re-introduce ZST support to mamba and remove the feature flag ( #2642 )
...
* Re-introduce ZST support to mamba and remove the feature flag
* lint
* Ignore .state.json files for comparison
* lint
* One more
2023-07-02 21:28:37 +02:00
Johan Mabille
fa3f7a2f73
release libmamba 1.4.6, libmambapy 1.4.6, mamba 1.4.6, micromamba 1.4.6
2023-06-30 22:07:45 +02:00
Antoine Prouvost
168e55e245
Try fixing missing subdirs on mamba.py ( #2632 )
...
* Use install repo from libmamba in mamba.py
* Regenerate stubgens
2023-06-29 10:54:54 +02:00
Antoine Prouvost
50a627e002
Attempt to fix CI ( #2637 )
...
* Revert "Change brace space in clang-format (#2627 )"
This reverts commit 3dce990111
.
* Revert "Improvement: Support ZST in mamba and enable ZST by default (#2404 )"
This reverts commit 60cd358c39
.
2023-06-29 08:29:37 +02:00
Antoine Prouvost
3dce990111
Change brace space in clang-format ( #2627 )
...
Change braced init spaces
2023-06-28 11:38:33 +02:00
John H. Ayad
60cd358c39
Improvement: Support ZST in mamba and enable ZST by default ( #2404 )
2023-06-27 16:14:29 +02:00
Johan Mabille
9c46dbadd2
release libmamba 1.4.5, libmambapy 1.4.5, mamba 1.4.5, micromamba 1.4.5
2023-06-27 11:05:14 +02:00
Klaim (Joël Lamotte)
5bd15a1502
LockFile behavior on file-locking is now almost independent from Context ( #2608 )
...
LockFile behavior on file-locking is now almost independent from Context
---------
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
2023-06-22 15:40:56 +02:00
Jonas Haag
0a7490c940
Remove banner ( #2298 )
2023-06-20 16:53:19 +02:00
Klaim (Joël Lamotte)
ec95d18986
No Singleton: `Configuration` ( #2541 )
...
* Removed unused debugging macros.
* mamba::Configuration is not a singleton anymore.
* review fix
2023-06-15 11:41:21 +02:00
Antoine Prouvost
77bbec5b4a
Fix stubgens ( #2556 )
2023-06-01 10:05:18 +02:00
Antoine Prouvost
83706d5f9f
Move problem graph creation to MSolver ( #2515 )
...
Move problem graph creation to MSolver and remove JupyterLab SAT error case as no long unsolvable
2023-05-23 14:03:00 +02:00
Klaim (Joël Lamotte)
ea8249bc7e
No singleton: ChannelContext, ChannelBuilder and channel cache ( #2455 )
...
* Fusionned ChannelBuilder and ChannelContext and channel cache
* ChannelContext is not a singleton anymore.
* libmambapy now holds singletons for ChannelContext etc.
* formatting
* Simplified libmambapy singleton handling.
* formatting
2023-05-17 17:11:23 +02:00
Johan Mabille
7a92fa5f62
release libmamba 1.4.4, libmambapy 1.4.4, mamba 1.4.4, micromamba 1.4.4
2023-05-16 23:08:34 +02:00
Hind-M
32c64cdbfe
Support future deprecated API for `Context` ( #2494 )
...
Add deprecated API for context and updated stubs accordingly
2023-05-16 21:39:23 +02:00
Johan Mabille
46d3acd3c1
release libmamba 1.4.3, libmambapy 1.4.3, mamba 1.4.3, micromamba 1.4.3
2023-05-15 23:25:22 +02:00
Antoine Prouvost
15f6b6e606
Use libsolv wrappers in MPool and MRepo ( #2453 )
...
* Use ObjPool in MPool
* Straightforward wrapper call
* MPool debug callback wrapper
* Fix format
* Use m_real_repo_key
* MRepos need not be stored
* Change MRepo::set_urls call
* Rename real_repo_key
* Awlways set solvable URL
* Rename mrepo_key
* Leaf comment note on package Info
* Ensure proper channel format in query
* Fix set url everywhere
* Rename solvable:noarch
* Fix real_repo_url in pybind
* Bump mamba tool version
* fix: prevent (possible) dangling pointer in query
* Fix url in transaction
* fix: setting url or repo from mamba
* fix: UB string_view of deallocated string
* Use solv:: interface in channel specific dep
* Use new solv:: interface in make_package_info
* Use solv:: interface in add_package_info
* Small implementation changes in MRepo
* Use wrapped reading functions
* kill MRepo::m_url
* Mark MRepo C++ function for Python deprecated
* Add ObjRepo::legacy_read_conda_repodata
* Mark more MRepo functions private
* Remove filename attributes from MRepo
* Fix Mrepo add_extra_pkg_info
* Not ignoring MRepo name
* Split url outside MRepo
* Remove MRepo ctor overload
2023-05-05 11:07:21 +02:00
Hind-M
9831342dd1
Resume `Context` structuring ( #2460 )
...
Add ThreadsParams and PrefixParams in Context
2023-04-25 10:02:51 +02:00
Antoine Prouvost
c7f897febf
Store PackageInfo::track_features as a vector ( #2478 )
...
Store PackageInfo::track_features as a vector
2023-04-21 15:37:30 +02:00
Hind-M
40c220c4ce
Context structuring ( #2432 )
...
Context structuring
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
2023-04-12 21:08:29 +02:00
Antoine Prouvost
032e404fc8
Remove dead code / attribute ( #2454 )
...
Removed dead code in package info and PackageInfo::extra_metadata
2023-04-12 15:55:36 +02:00
Johan Mabille
30ca2e2d5d
release libmamba 1.4.2, libmambapy 1.4.2, mamba 1.4.2, micromamba 1.4.2
2023-04-06 14:58:37 +02:00
Antoine Prouvost
0345b9d7f8
Use custom function to properly parse matchspec ( #2433 )
...
Make MPool::matchspec2id properly process channels
2023-04-03 16:39:43 +02:00
Ivan Ogasawara
a3597e33ff
fix: Improve message after the env creating with micromamba ( #2425 )
2023-03-31 20:50:07 +02:00
Johan Mabille
6ed35f84ef
release libmamba 1.4.1, libmambapy 1.4.1, mamba 1.4.1, micromamba 1.4.1
2023-03-28 11:39:49 +02:00
Klaim (Joël Lamotte)
4e7bd605b0
Renamed `validate` namespace to `mamba::validation ( #2411 )
...
Renamed `validate` namespace to `mamba::validation
2023-03-27 11:38:06 +02:00
Johan Mabille
d212f4aeac
release libmamba 1.4.0, libmambapy 1.4.0, mamba 1.4.0, micromamba 1.4.0
2023-03-22 17:42:38 +01:00
Antoine Prouvost
07477a25fe
Some renaming in the utility library ( #2387 )
...
Rename vector_set > flat_set, move util_compare > util/compare, move util_cast > util/cast
2023-03-17 09:06:31 +01:00
Antoine Prouvost
8c5841cbfc
Isolate PackageInfo from libsolv ( #2340 )
...
* Isolate libsolv from PackageInfo
2023-03-08 09:15:46 +01:00
Antoine Prouvost
66c721c220
Improve Python conflicts ( #2318 )
...
Better handle the (almost) cyclic conflict due to the reversal of the dependencies bewteen python and python_abi.
2023-03-07 16:19:55 +01:00
Johan Mabille
0919fbd514
Fixed repoquery output of mamba when query format is JSON ( #2353 )
...
Fixed repoquery output of mamba when query format is JSON
2023-03-07 14:55:09 +01:00
Hind-M
e549d07b0c
Fix `repoquery` issues ( #2330 )
...
Fix `depends` and `whoneeds` repoquery sub-commands in micromamba
2023-03-06 12:13:19 +01:00
Antoine Prouvost
2811c25d75
Clean util_string ( #2339 )
...
clean up the util_string header and add util_string.cpp
2023-03-03 16:22:15 +01:00
Antoine Prouvost
8c4212f5d4
DependencyInfo is redundant ( #2314 )
...
Removed redundant DependencyInfo and renamed MatchSpec::build
2023-03-02 11:18:22 +01:00
Antoine Prouvost
018aac3dd7
Activate SAT error messages ( #2325 )
2023-02-28 11:24:47 +01:00
Antoine Prouvost
365342cc04
Fine tune clang-format proposal ( #2290 )
...
* Fine-tune .clang-format
* Fix missing header and right const
* Fix header order on Windows
* Apply pre-commit
2023-02-20 16:01:43 +01:00
Antoine Prouvost
0002794f3c
Aggressive compilation warnings ( #2304 )
2023-02-20 09:02:36 +01:00
timostrunk
2fc0624013
repoquery: Implemented recursive dependency printout. Closes : #1242 ( #2283 )
...
Co-authored-by: Timo Strunk <Timo.Strunk@nanomatch.com>
2023-02-13 22:40:21 +02:00
Wolf Vollprecht
baf3c48cc3
release libmamba 1.3.1, libmambapy 1.3.1, mamba 1.3.1, micromamba 1.3.1 ( #2280 )
2023-02-10 11:05:46 +01:00
Wolf
9de6782e02
release libmamba 1.3.0, libmambapy 1.3.0, mamba 1.3.0, micromamba 1.3.0
2023-02-03 13:03:49 +01:00
Johan Mabille
aab7768807
Added missing public dependency to libmambaConfig.cmake ( #2227 )
2023-02-02 16:08:32 +01:00
jaimergp
4e2fb8236e
add `use_lockfiles` to libmambapy bindings ( #2256 )
2023-01-30 13:56:58 +01:00
Wolf Vollprecht
3390da9ab9
release libmamba 1.2.0, libmambapy 1.2.0, mamba 1.2.0, micromamba 1.2.0
2023-01-16 10:20:39 +01:00
Wolf Vollprecht
3f2135ef9e
remove patches for feedstock ( #2216 )
2023-01-11 13:40:19 +01:00
Wolf Vollprecht
f6e717173c
make tarballs look more similar to conda-package-handling, add compression threads ( #2177 )
2023-01-03 17:56:12 +01:00
Antoine Prouvost
efc377e29d
Error messages improvements ( #2149 )
...
* Fix compression of split with different status
* Fix size issue in truncated strings
* Add versions_and_build_strings_trunc
* Use zipped versions and builds
* Better handling of virutal nodes
* Don't merge same name user requirements
* Fix NamedList tests
* Adjust NamedList bindings
* Regenerate stubgens
2022-12-05 15:40:52 +01:00
Claudia Rogoz
53f141a32e
Add Context binding for experimental_sat_error_message ( #2143 )
...
* Add experimental_sat_error_message setter
* fix order
* add experimental_sat_error_message to context
* initi_api_context
* pre-commit
* no conda context
2022-12-05 11:28:28 +01:00
Wolf Vollprecht
e0848e695e
release 1.1.0 ( #2130 )
2022-11-28 18:44:19 +01:00
Antoine Prouvost
0181538e54
Bind SAT error messages to python ( #2127 )
...
* Bind ProblemsGraph and CompressProblemGraph
* Rename summary error message
* Fix Python static property
* Add stubgens for problems bindings
* Give a little help to Windows
* Windows
* Hang in there MSVC
* Fix Pybind init
* Add graph all successors accessor
* Change graph bindings to raw data
* Add NamedList remove_duplicates py::arg
* Regenerate stubgens
2022-11-23 14:30:03 +01:00
Antoine Prouvost
f32b42e3f2
Move to fmt::terminal_color and other output IO improvements ( #2085 )
...
* Remove termcolor for fmt
* Reimplement termcolor::is_atty
* Switch to fmt::terminal_color
* Add missing header for to_utf8
* Add Context color palette
* Refactor progress bar to use palette
* Remove misleading flag-like enum
* Fix windows build
* Remove output::format
* Add visited colors for repoquery
* Use palette in SAT error messages
* Console::stream() clear line
2022-11-21 14:22:51 +01:00
Antoine Prouvost
ab22b63985
[MER] Add experimental flag for error messages ( #2080 )
...
* Add experimental flag for error messages
* Bind MSolver::explain_problems
* Use Solver.explain_problems in mamba
* Rename MSolver::solve > MSolver::try_solve
* Add MSolver::must_solve
* Add [[nodiscard]] to MSolver
* Change solve -> try_solve in tests
* Used shared_ptr for MPool
* Make MSolverProblem a flat data type
* Add deprecation warnings for Solver.solve
* Add tree error message to MSolver
2022-11-10 18:54:41 +01:00
Wolf Vollprecht
c5d73a204b
release 1.0.0
2022-11-01 21:01:36 +01:00
Wolf Vollprecht
c889fa6855
add micromamba self-update functionality ( #2023 )
2022-11-01 17:24:46 +01:00
Jonas Haag
eea9407d30
Test special characters in basic auth ( #2012 )
2022-10-29 17:55:37 +02:00
AntoinePrv
4e2a91bea7
Direct dependency on fmt
2022-10-26 10:49:50 +02:00
Joël Lamotte (Klaim)
2b7b230613
Changed LockFile to be a non-throwing checkable type, no pointers use.
...
This changes how we use LockFile. See documentation/comments in the
type's header `util.hpp`.
2022-10-21 16:29:18 +02:00
Wolf Vollprecht
d839af71d1
Test stubs ( #2025 )
...
test pybind11-stubgen generation
2022-10-14 15:21:26 +02:00
Daniel Holth
f055ff777c
add stubs with pybind11-stubgen ( #1983 )
...
* add stubs with pybind11-stubgen
* move stubs to libmambapy/__init__.pyi
2022-10-13 14:08:31 +02:00
Wolf Vollprecht
cb2342a009
release 0.27.0 ( #1990 )
2022-10-04 12:47:54 +02:00
Wolf Vollprecht
69cc8944ff
use external spdlog in libmambapy if desired
2022-10-04 09:20:20 +02:00
Wolf Vollprecht
25be29a831
update all release files
2022-09-30 16:11:26 +02:00
Daniel Farrell
3a5cd599d6
Add 'use_lockfiles' configuration to enable or disable locking globally ( #1830 )
...
Co-authored-by: Danny <dan@cyrusbio.com>
Co-authored-by: Jonas Haag <jonas@lophus.org>
Co-authored-by: Wolf Vollprecht <w.vollprecht@gmail.com>
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
2022-09-29 18:01:13 +02:00
Adrian Freund
02e4385d2f
Add support for configuring proxies in .condarc ( #1814 )
...
* Add support for proxy settings in .condarc
This commit is based on https://github.com/mamba-org/mamba/pull/161/
* Add test for proxy configuration
* Remove env variables from proxy servers configurable
They are already handled by curl
* Add tests for proxy_match
* Remove and improve debug messages
* Use EXPECT_STREQ for proxy match tests
* Use std:string instead of char*
* Add micromamba proxy tests
* Retrigger CI
* Try to fix proxy tests in CI
* Add missing file and fix executable name
* Try to fix windows build
* Use install xtensor package for proxy test
* Try to fix tests on windows
* Pass proxy settings between libmamba and mamba
* Use long form of `--script` parameter for mitmproxy
Co-authored-by: Jonas Haag <jonas@lophus.org>
* Clarify variable name
Co-authored-by: Jonas Haag <jonas@lophus.org>
* Add docstring to dump_proxy_connections.py
* Add explanation to micromamba proxy test
* Cleanup proxy_match function
* Redact passwords in proxy urls when logging
* Renamed redact_url to redact_url_password
* Revert "Renamed redact_url to redact_url_password"
This reverts commit ca39afda21
.
* Revert "Redact passwords in proxy urls when logging"
This reverts commit 270eb70420
.
* Use existing hide_secrets function to hide password in proxy url
* Rewrite proxy_match function to be in line with conda
Co-authored-by: Jonas Haag <jonas@lophus.org>
2022-09-08 17:48:27 +02:00
Joël Lamotte (Klaim)
5f2bd74d6f
Revert "try vs2022"
...
This reverts commit 4a4c65747ec8707951c0ddb7c0c0cd6fb7345610.
2022-08-12 17:25:10 +02:00
Wolf Vollprecht
0ff503c483
try vs2022
2022-08-12 14:37:50 +02:00
Joël Lamotte (Klaim)
a6a1251c10
Replaced `fs::u8path` long-path support on windows by enabling it explicitly.
2022-08-12 14:37:49 +02:00
Joël Lamotte (Klaim)
8b4010a56f
Use `fs::u8path` instead of `fs::path` to fix utf-8 paths issues on Windows
2022-08-12 14:37:49 +02:00
Joël Lamotte (Klaim)
231db2021a
Fixed missing explicit conversions from `fs::path` to `std::string`
2022-08-12 14:37:49 +02:00
Joël Lamotte (Klaim)
9790a87a5d
Use standard C++ filesystem API only
2022-08-12 14:37:49 +02:00
Antoine Prouvost
6d45c96ecc
Add missing SolverRuleinfo enum members to libmambapy ( #1833 )
2022-08-03 19:59:01 +02:00
Wolf Vollprecht
4074116dae
Release 0.25.0 ( #1824 )
2022-07-26 18:03:18 +02:00
crogoz
a825a08928
Add missing rule info
2022-07-26 16:08:37 +02:00
AntoinePrv
cabd3bf640
Safe id2pkginfo
2022-07-26 11:35:10 +02:00
AntoinePrv
13a6a4c086
Change mutability in libmambapy PackageInfo
2022-07-25 18:12:13 +02:00
AntoinePrv
649d7eb406
Add argument for PackageInfo ctor
2022-07-25 18:09:28 +02:00
Antoine Prouvost
5e76e2f644
Keep Pool alive for the lifetime of the Solver ( #1804 )
2022-07-19 16:53:40 +02:00