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
Bela Stoyan
7f325df6ad
fix config precedence for base env ( #3009 )
...
Co-authored-by: Daniel Elsner <daniel.elsner@quantco.com>
2023-11-27 14:40:47 +02:00
Antoine Prouvost
1340d712eb
Improve ChannelContext and Channel ( #3003 )
2023-11-23 19:14:35 +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
Jonas Haag
0177c44383
Extend issue template ( #2996 )
...
* Extend issue template
* Update bug.yml
2023-11-21 09:17:04 +01:00
Antoine Prouvost
139b7ef020
Refactor env::which ( #2997 )
...
* Clenup env::which
* RAII C calls
* Refactor which functions
* Remove second param from which
* Change which namespace
* Fix which extension
* Add missing OSX headers
* Add util::which tests
2023-11-20 15:13:22 +01:00
Antoine Prouvost
7c5f0562c4
Migrate expand/shrink_home ( #2990 )
2023-11-17 19:45:30 +01:00
Antoine Prouvost
2c8ec3c10f
Add Python-like set operations to flat_set ( #2557 )
...
* Add flat-set doctest printer
* Add Python-like set operations to flat_set
* Fix merge error
* Remove Self
* Refactor operator and member fuctions
2023-11-17 15:36:01 +01:00
Casper van Elteren
1fda52928a
Nu 0.87.0 ( #2984 )
...
Update to nu shell 0.87
2023-11-17 15:33:25 +01:00
Isuru Fernando
49e03b2948
Allow overriding archspec ( #2966 )
...
* Allow overriding archspec
* Fix lint
2023-11-17 10:06:36 +01:00
Antoine Prouvost
be3d531750
Enable new repodata parser by default ( #2989 )
2023-11-17 04:49:51 +01:00
Antoine Prouvost
a0f81393dd
Refactor env directories ( #2983 )
...
* Refactor env directories
* util::split char sep
* Refactor pathsep
* Add path_concat
* user_home_dir as string
* get_windows_known_user_folder return as string
* xdg location as string
2023-11-16 18:26:03 +01:00
Antoine Prouvost
1d038d1577
Fail fast except on debug runs ( #2985 )
2023-11-16 16:21:58 +01:00
Antoine Prouvost
2210f7db06
Add weakening_map ( #2981 )
...
* Add weakening_map
* Use weakening_map in Channel
2023-11-16 11:27:37 +01:00
artificial-agent
eedd70d159
update readme install link ( #2980 )
2023-11-15 17:47:13 +02: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
ddea95e16c
Add install from source instructions ( #2977 )
...
* Update static environment files
* Refactor installation pages
* Add install from source instructions
2023-11-15 08:47:53 +01:00
Antoine Prouvost
09cbb34e54
Simplify and correct development documention ( #2975 )
...
* Use a single file for contributing guidelines
* Add doc builds to taskfile
* Fix sphinx warnings
* Simplify development doc
* Document Taskfile
* Update dev_environment.rst
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
* Update dev_environment.rst
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
* Update dev_environment.rst
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
* Update dev_environment.rst
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
* Update dev_environment.rst
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
* Update dev_environment.rst
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
* Update dev_environment.rst
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
* Add test-docs task
---------
Co-authored-by: Johan Mabille <johan.mabille@gmail.com>
2023-11-14 11:59:44 +01:00
Antoine Prouvost
e6967058a9
Update dependencies on OSX ( #2976 )
...
Upadte dependencies on OSX
2023-11-14 08:51:15 +01:00
Antoine Prouvost
4fe976d871
Add envrionment cleaner test fixtures ( #2973 )
2023-11-14 08:50:28 +01:00
Antoine Prouvost
b7b87f7513
Environment map ( #2967 )
...
* Move env::copy yo utility and fix encoding
* Add set_env_map / update_env_map
* Fixup: `environ` is a define in msvc's stdlib.h
* Remove get_env_map use of to_upper
---------
Co-authored-by: Joël Lamotte (Klaim) <mjklaim@gmail.com>
2023-11-13 09:11:24 +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
Johan Mabille
ed27c7112c
Fixed move semantics of DownloadAttempt ( #2963 )
2023-11-09 17:26:27 +01:00
Johan Mabille
21c6d73680
removed dependency on conda-index ( #2964 )
2023-11-08 22:15:05 +01:00
Antoine Prouvost
d116ff8917
Add cmake-format ( #2962 )
...
* Add cmake-format
* Apply cmake-format
2023-11-07 11:08:26 +01:00
Hind-M
2b948ce1cc
Add mirrors ( #2795 )
...
* Add mirrors
* Add test for split_path_tag
* Return string instead of vector when getting auth header
* Simplify data callback
* Update comment
2023-11-07 05:29:36 +01:00
Antoine Prouvost
8683078464
Refactor CI and libamambapy tests (on Win) ( #2955 )
...
* TMP disable Unix tests
* Try refactor win CI
* Add libmambapy tests
* Run Windows libamamba tests via CMake
* Add Windows menuinst dependency
* Fix typo
* Debug libmambapy tests Win
* Add micromamba tests windows
* Call test_libmamba from different paths
* Merge workflow launchers
* Fix libmamba tests win
* Fxi
* Fix workspace key
* DEbug win
* Implement local channel tests as part of the intergration tests
* Try Win libmamba tests bash
* Cleanup
* Restore Unix tests
* Make test local channel noarch
* Fix workspace action number
* No error on test cleanup in CI
* Reduce number of threads to conda-index
* Disable local channel tests on Windows
2023-11-03 14:07:54 +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
5564887b97
Rename env functions ( #2954 )
2023-10-31 16:08:49 +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
Antoine Prouvost
33649d1005
Add refactor getenv setenv unsetenv ( #2944 )
...
* Add refactor getenv setenv unsetenv
* Move to refactored env functions
2023-10-31 10:56:33 +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
c33df03cba
Dev workflow ( #2948 )
...
* Add dev-extra tools
* Refactor CMake Presets
* Add taskfile
* Rename Taskfile
* Add .gitignore entry
2023-10-30 12:21:25 +01:00
Antoine Prouvost
c32da691c1
Remove mamba ( #2942 )
2023-10-30 10:42:39 +01:00
Roman Inflianskas
eb56046c18
Fix micromamba test dependency conda-package-handling ( #2945 )
2023-10-29 13:46:38 +02:00
Johan Mabille
fc898b8c43
Fixed RTD build
2023-10-29 05:40:34 +01:00
Antoine Prouvost
a38196e284
Move reposerver tests to micromamba ( #2941 )
...
* Move reposerver tests to micromamba
* Add micromamba channel data
* Remove mamba test
* Fix mamba path
* Restore mamba files
* Fix mamba code
2023-10-26 22:17:48 +02:00
Antoine Prouvost
bca398a5dc
Refactor win encoding conversion ( #2939 )
2023-10-26 19:00:17 +02:00
Antoine Prouvost
6592c84084
Combine dev environments ( #2937 )
2023-10-26 12:48:50 +02:00
Antoine Prouvost
08cbcb70c9
Factorize Win user folder function between files ( #2925 )
...
* Cleanup headers in environment.hpp
* Add os_win.hpp
* Use factorized win_os.hpp
* Fix WindowsKnownUSerFolder enum mapping
2023-10-26 11:18:29 +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
Isuru Fernando
f23e078f2c
Fix channels with slashes regression ( #2926 )
...
* Fix channels with slashes regression
* fix formatting
* make the test isolated
Co-authored-by: Antoine Prouvost <AntoinePrv@users.noreply.github.com>
* Add more tests
* Use pytest utilities for negative testing
* Add extra test doc
---------
Co-authored-by: Antoine Prouvost <AntoinePrv@users.noreply.github.com>
2023-10-24 18:35:31 +02:00
bruchim-cisco
9e3e1c4cdd
Fix broken tcsh aliases ( #2929 )
...
Fix broken csh and tcsh multiline aliases
2023-10-24 09:41:22 +02:00
Isuru Fernando
99278ffe17
return architecture levels for micromamba ( #2921 )
...
* return architecture levels for micromamba
* fix formatting
* use function multiversioning only on x86
* fix formatting
* update test
* use __builtin_cpu_supports and check for more features
Co-authored-by: Marcel Bargull <mbargull@users.noreply.github.com>
---------
Co-authored-by: Marcel Bargull <mbargull@users.noreply.github.com>
2023-10-23 21:37:59 +02:00
Isuru Fernando
24f26a0175
Allow defaults::* spec ( #2927 )
2023-10-23 20:03:58 +03:00
Olivier Grisel
411cd4a456
Fix test_remove_virtual_package on Windows ( #2924 )
2023-10-20 11:44:22 +02:00
Olivier Grisel
d0b3ea00a5
Fix support for the PackageType.VIRTUAL_SYSTEM enum ( #2923 )
2023-10-20 09:12:16 +03: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