Commit graph

28 commits

Author SHA1 Message Date
Vilsol
98b7c99e74
fix: various edge cases (#45)
* fix: various edge cases
test: add tea unit test

* chore: lint

* chore: 🤷

* test: fail after 1 minute

* test: print buffer

* test: fuck windows
2023-12-07 23:31:37 +02:00
Vilsol
5f2e60a9e2
feat: multi targets (#44)
* feat: use mod version targets

* chore: lint

* chore: remove unused

* chore: target dev on ci

* fix: rename WindowsNoEditor target to Windows
fix: close file reader

* fix: ensure closure of downloaded mod

* fix: ensure all important events are sent

* fix: lock adding files to cache

---------

Co-authored-by: mircearoata <mircearoatapalade@gmail.com>
2023-12-07 18:57:31 +02:00
mircearoata
6088d1e8eb
feat: parallel downloads (#43)
* feat: parallel downloads

* feat: mod extract progress using file size

* feat: pass mod version in install progress updates

* fix: only close update channels after finished sending

* chore: verbose ci tests

* fix: store mod in cache
chore: add progress logging to tests

* chore: lint

* test: add concurrent download limit

* fix: prevent concurrent map access

* chore: bump pubgrub
fix: fix race conditions

---------

Co-authored-by: Vilsol <me@vil.so>
2023-12-07 01:39:34 +02:00
mircearoata
a192a63c82
feat: add mod updating (#42)
* feat: add mod updating

* fix: refactor for previous changes

* test: add mod update tests

---------

Co-authored-by: Vilsol <me@vil.so>
2023-12-06 21:37:33 +02:00
mircearoata
e4b02a792d
feat: offline mode (#14)
* chore: move mod downloading to cli/cache

* feat: data providers, ficsit and local

* feat: keep cache in memory, load on init

* feat: log invalid cache files instead of returning error

* chore: make linter happy

* feat: fill cached mod Authors field from CreatedBy

* chore: make linter happy again

* feat: add icon and size to cached mods

* feat: cache the cached file hashes

* fix: change to new provider access style

---------

Co-authored-by: Vilsol <me@vil.so>
2023-12-06 06:47:41 +02:00
mircearoata
ea983cf851
feat: vanilla toggle per install (#13)
* feat: vanilla toggle per install

* fix: update set-vanilla cmd description

* fix: use viper for the set-vanilla off flag

* fix: writing lockfile when the directory didn't exist

* fix: check for nil selected install in header vanilla message

---------

Co-authored-by: Vilsol <me@vil.so>
2023-12-06 06:02:06 +02:00
Vilsol
4e1993fe25
fix: update platform version paths (#41) 2023-12-06 05:51:23 +02:00
mircearoata
024b11b1e8
feat: use the pubgrub algorithm for solving versions (#40)
* refactor: separate resolving tests

* feat: use pubgrub to resolve dependencies

* feat: show friendly mod name in error message

* feat: show single version in error message when only one matches

* ci: update go version to match go.mod

* feat: format FactoryGame incompatibility and term

* chore: fetch all necessary data of the version at once

* chore: upgrade pubgrub

* chore: upgrade pubgrub

* ci: update golangci-lint version for go 1.21

* chore: lint

* chore: update go version in readme
2023-12-06 05:01:49 +02:00
mircearoata
7f3e6382c1 fix: deterministic resolving order 2023-06-12 11:47:04 +02:00
Vilsol
815c8a3c57 chore: make tests pass 2022-10-14 20:43:17 +03:00
Vilsol
d0a807b6a4 feat: add mod upload command 2022-10-14 19:11:16 +03:00
Vilsol
5ac338f2b5 fix: check schema in base path 2022-06-23 02:05:35 +03:00
Vilsol
47615c3325 fix: explicitly check schemas 2022-06-23 01:37:36 +03:00
Vilsol
ef7f8cc8e8 feat: add support for ftp 2022-06-23 01:24:35 +03:00
Vilsol
6d5b929ef9 fix: always close update channel and wait for goroutine exit
fix: copy label style to not affect it everywhere
2022-06-18 19:09:09 +03:00
Vilsol
e01db90b0b add cli commands, docs, readme 2022-06-08 23:56:32 +03:00
Vilsol
1daf6e9610 only delete owned mods, mod enable/disable, do not re-extract 2022-06-08 02:36:28 +03:00
Vilsol
ac1dfb6148 path -> filepath 2022-06-05 04:56:46 +03:00
Vilsol
015414c5b0 highlight installed mods, fancy new installation page, more sort options 2022-06-04 21:47:10 +03:00
Vilsol
fb1d33cc17 catch test error, more logging 2022-06-04 01:33:42 +03:00
Vilsol
bdcbb0b677 technically "functional", but you be the judge 2022-06-04 01:17:02 +03:00
Vilsol
3c4837069d do not fail fast, update test message 2022-05-02 23:31:23 +03:00
Vilsol
0647db1620 Resolution, downloads, lockfiles 2022-05-02 23:07:15 +03:00
Vilsol
bcfc88da55 Run tests in CI, split apart workflows 2022-04-14 04:33:24 +03:00
Vilsol
a4f77e407c Dependency resolution, installations 2022-04-14 04:27:39 +03:00
Vilsol
30c8dcf3cd Add profile management 2021-12-04 20:02:05 +02:00
Vilsol
e329e48e9b Tooling, Mod Browser, Cleanup, CI 2021-12-02 06:00:33 +02:00
Vilsol
4fadd21214 Initial commit 2021-11-05 23:42:49 +02:00