steven-omaha
937efc3782
refact(rustup): make_dependency panic
...
calling this would be a programming error, therefore a panic is warranted
2024-04-03 17:42:57 +02:00
innocentzero
a5a0765928
fix(rustup): Fix individual component uninstall
...
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 17:36:00 +05:30
innocentzero
75709a7ed9
refact(rustup): Use match statements and bail
...
Use match statements for Option types and use bail! macro to utilize
recoverable errors.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:58:19 +05:30
innocentzero
fd47659959
refact(rustup): Use bail instead of panic
...
Use anyhow::bail to return an Err type instead of panicking and exiting
the program.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
6f92e66777
refact(rustup): Use RepoType instead of strings
...
Use RepoType enums instead of strings to match in various places.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
fc83c43997
refact(packaging): remove unused function
...
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
0c731fa54b
refact(rustup): Apply clippy suggestions
...
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
ff25f2f55d
refact(rustup): Refactor component installation
...
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
c03baf221f
refact(rustup): change methods to functions
...
Remove the methods that don't require access to the backend into
separate functions rather than have them as methods.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
a963d6a2db
refact(rustup): Remove clippy warnings
...
Clippy warnings were not enabled at the time of the previous commits.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
c7596f62b7
refact(rustup): Use anyhow::Error
...
Remove repeated instances of anyhow::Error and make the code sparser.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
4e2ef50df7
fix(rustup): remove standalone components
...
This patch targets the removal of standalone components that are not
removed as a part of a toolchain. This was previously ignored.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
97b4077b02
feat(rustup): Remove packages
...
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
f9528241e7
refact(rustup): Refector install_packages
...
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
fbedd6da49
feat(rustup): install packages
...
Rustup is now able to install toolchains and
components and works with multiple toolchains and
components for each toolchain.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
ea2c51620a
refact(rustup): fetch installed toolchains and components
...
Refactor the functions used for fetching installed
components and toolchains.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
d4551a6a2b
feat(rustup): add rustup as a module
2024-04-02 04:51:15 +05:30
innocentzero
1ad93cec96
refact(package.rs): Expose repo field publicly
...
Expose repo field publicly for install_packages in
rustup backend to utilize, otherwise very ugly
hacks need to be used to handle toolchains and
components.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
innocentzero
ccd108591f
feat(rustup): Add rustup as a backend
...
Adds rustup as a backend for pacdef. Only works on
components listed for now.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-04-02 04:51:15 +05:30
steven-omaha
3f8468c660
fix(debian): build against rust-apt-0.7.0
...
1bcb7f8 bumped rust-apt from 0.5 to 0.7. This change made
Cache::packages(&self, &sort) a fallible function. The required change in
the Debian backend was missed.
This commit propagates the error in get_all_installed_packages and
get_explicitly_installed_packages for the Debian backend.
Fixes #64 .
2024-03-26 14:22:00 +01:00
steven-omaha
4b7a497dda
fix(review): typo
2024-03-24 20:57:32 +01:00
Mike Lloyd
ad624bce70
Add 'apply' option to review
2024-03-23 23:34:36 -07:00
star-szr
e1354438bb
fix: minor typo in review text
2024-03-21 12:05:07 -04:00
steven-omaha
52f615324a
chore: Release
2024-03-20 11:32:29 +01:00
steven-omaha
1bcb7f80cd
chore(release): bump dependencies, update lockfile
2024-03-20 11:30:08 +01:00
steven-omaha
489074a897
chore: Release
2024-02-15 12:05:14 +01:00
innocentzero
e7a10cc0ec
fix(python): panic on empty pip_binary in config
...
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-02-15 12:58:50 +05:30
steven-omaha
82bf880849
chore: Release
2024-01-28 08:18:35 +01:00
innocentzero
34a428f280
refactor(minor code changes)
2024-01-28 03:11:41 +05:30
innocentzero
fb21691e64
fix(remove collection of dependencies)
...
https://github.com/steven-omaha/pacdef/pull/50#issuecomment-1912284202
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-01-27 23:52:48 +05:30
innocentzero
b8cfd9e24f
feat(pipx support): Fully supports pipx features
...
Now able to support packages installed via pipx with the exception of
packages that do not provide a binary themselves. Install those
explicitly via `pipx install --include-deps <package>`.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-01-27 23:35:37 +05:30
innocentzero
2a7c5d5288
FIX refactored switches and output parsing
...
Removed inlined switches to a separate function for both explicit
installs and all installs and added a match statement to parse the
outputs accordingly.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-01-25 11:52:16 +05:30
innocentzero
242af523b4
FIX iterate through json generated by pipx
...
While it is now able to iterate through JSON created by pipx, it is
unable to read the JSON with the error `EOF while parsing a value
at line 1 column 0`
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-01-24 20:21:05 +05:30
innocentzero
050a844bc2
feat(pipx support): Add support for pipx
...
This is a series of commits intended to add support for pipx in pacdef.
WIP.
Signed-off-by: innocentzero <isfarulhaque@proton.me >
2024-01-23 20:42:54 +05:30
steven-omaha
ec1aab4b43
refact(ui): infallible conversion for u8 to char
2024-01-16 13:19:37 +01:00
steven-omaha
b5cbcdce4b
chore: Release
2023-12-26 17:56:53 +01:00
steven-omaha
bcf43a8683
test(args): add negative test cases
2023-10-17 15:37:57 +02:00
steven-omaha
87a85b00dd
test: add rstest crate, argument parsing tests
2023-10-17 15:21:19 +02:00
steven-omaha
bfb2cb2bc6
chore: Release
2023-10-16 14:42:39 +02:00
steven-omaha
0fab8c11d4
feat(grouping): check duplicate packages in section
...
closes #47
2023-10-11 16:45:48 +02:00
steven-omaha
0381fc7525
fix(grouping): non-canonical ordering
...
The first attempt 02c44c92d0 caused
`Section.partial_cmp` and `Section.cmp` to call each other recursively.
That lead to a stack overflow when compiled without optimizations, and
an infinite loop when optimizations were enabled.
This commit now properly implements at first `Ord` for both `Section`
and `Group`, and from this derives `PartialEq` for each.
2023-10-10 16:34:25 +02:00
steven-omaha
bd96a9074a
Revert "fix(grouping): non-canonical ordering"
...
This reverts commit 02c44c92d0 .
2023-10-10 16:31:29 +02:00
steven-omaha
87e2eddf64
chore: bump dependencies
2023-10-10 15:38:19 +02:00
steven-omaha
becdb8f413
docs(core): add panics section
2023-10-10 15:32:14 +02:00
steven-omaha
02c44c92d0
fix(grouping): non-canonical ordering
...
clippy: incorrect_partial_ord_impl_on_ord_type
2023-10-10 15:28:28 +02:00
theo court
c59f22a427
Fix typo
2023-08-07 18:04:24 +02:00
steven-omaha
73c041922f
chore: bump dependencies
2023-07-06 12:55:58 +02:00
steven-omaha
3515d8bc0b
chore: Release
2023-06-06 16:53:50 +02:00
steven-omaha
d11467a318
docs(core): docstrings
2023-06-06 16:14:28 +02:00
steven-omaha
f394ea8938
refact(core): remove get_group_file_paths...
2023-06-06 16:11:54 +02:00