Paweł Lidwin
ea580df3ff
release: 0.21.0 Lowlife ( #765 )
2026-07-09 17:15:29 +02:00
CommandMC
0142626be9
Add Ruff ( #743 )
...
* Add Ruff
* Fix all the easily fixable errors
* Add Ruff lint workflow
2026-07-09 17:12:59 +02:00
dependabot[bot]
ded302c3b4
Bump idna from 3.11 to 3.15 ( #755 )
...
Bumps [idna](https://github.com/kjd/idna ) from 3.11 to 3.15.
- [Release notes](https://github.com/kjd/idna/releases )
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.md )
- [Commits](https://github.com/kjd/idna/compare/v3.11...v3.15 )
---
updated-dependencies:
- dependency-name: idna
dependency-version: '3.15'
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-09 16:57:12 +02:00
Paweł Lidwin
39b0d76e64
ci: automate pypi and releases drafting ( #761 )
2026-07-09 16:49:25 +02:00
Paweł Lidwin
66314599f7
fix: unset old_manifest for all types of repair ( #697 )
2026-05-30 13:36:18 +02:00
Paweł Lidwin
fd5c783fef
cli: remove redundant if statement ( #762 )
2026-05-30 13:29:53 +02:00
hawkeye116477
490b577240
Display UAC prompt for games which requires admin rights ( #668 )
...
* Display UAC prompt for games which requires admin rights
* Execute through the shell only at Windows
2026-05-30 12:54:05 +02:00
Stelios Tsampas
10d8d70d56
Add achievement handling ( #729 )
...
* [egs] add methods to fetch game and user achievements from graphql api
* [lfs] add methods to store and load user achievements
* [core] fetch game achievements when updating assets and user achievements when requested
* [cli] add CLI interface for achievements
* [cli] Fix achievement classification filters
* [cli,core] Move achievement classification into LegendaryCore
There's no need for iterating twice
* [core] Check if achievements exists
some games have achievements_sets but no achievements
* [core] Associate user achievements with the namespace instead of app_name
* [core] sort achievements
2026-05-30 12:25:38 +02:00
Stelios Tsampas
48eb5f6bd3
[cli/core]: report grant date information with info ( #748 )
...
* [cli/core]: report grant date information with `info`
Entitlements are updated only when there is an asset update. If no matching
entitlement is found, the creation date from the game's metadata is returned
instead.
* [cli] replace missed use of entitlements with cached/on-disk data
* [core] update entitlements only when there are new assets.
* [cli] correctly pass `get_assets` platform argument
2026-05-30 12:24:44 +02:00
Paweł Lidwin
fdfb7123ef
fix: support non-encrypted variants of v5 manifests ( #756 )
2026-05-22 23:19:20 +02:00
dependabot[bot]
366777bc06
Bump urllib3 from 2.6.3 to 2.7.0 ( #754 )
...
Bumps [urllib3](https://github.com/urllib3/urllib3 ) from 2.6.3 to 2.7.0.
- [Release notes](https://github.com/urllib3/urllib3/releases )
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst )
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.3...2.7.0 )
---
updated-dependencies:
- dependency-name: urllib3
dependency-version: 2.7.0
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-14 13:31:33 +02:00
Paweł Lidwin
e747bbb34e
tech: ensure boolean types are always returned ( #752 )
2026-04-30 15:03:20 +02:00
Paweł Lidwin
46f8445a06
feat: support launching games with uplay protocol ( #750 )
2026-04-28 11:55:18 +02:00
Paweł Lidwin
aeb61d4eea
fix: save-sync chunk read crash ( #747 )
2026-04-15 14:15:28 +02:00
Paweł Lidwin
41e3cfab82
fix: add 3rd param to setexchangecode callback ( #745 )
...
* fix: add 3rd param to setexchangecode callback
I'm unsure what that param is, it could be an error indicator of some sorts, for now I'll just assume a happy path
* chore: add logging for the param
2026-04-13 13:26:15 +02:00
Paweł Lidwin
ce12e3fb63
tech: make python 3.10 a minimum required version ( #746 )
2026-04-13 13:23:39 +02:00
Stelios Tsampas
e155486902
[core] check for STEAM_COMPAT_DATA_PATH in global settings too when resolving save paths ( #714 )
2026-04-09 15:35:16 +02:00
CommandMC
546bb7416f
Handle file tasks case-insensitively ( #690 )
...
* Handle file tasks case-insensitively
* Also make verification and uninstallation case-insensitive if necessary
This also only enables case-insensitive file tasks if installing a
Windows game
* Fastpath for existing path case
"Fastpath", heh, get it, because it's working with paths...
2026-04-09 15:34:26 +02:00
CommandMC
5de8addf8f
Move to pyproject.toml and the uv build system ( #741 )
...
* Move to pyproject.toml and the uv build system
* A few tweaks that should make it even faster
* Add pyinstaller to optional dependencies and install it as part of the workflow
* Use --no-editable to avoid building and installing Legendary manually
* Drop deprecated license classifier
* Update README.md to mention uv
2026-04-09 15:33:14 +02:00
Paweł Lidwin
bc5d12c914
feat: support encrypted manifests and chunks ( #738 )
...
* feat: support encrypted manifests and chunks
fix: ensure manifest_secrets is always defined in info
fix: update all usage of DLManager with manifest secrets
* chore: remove unused is_preloaded var
2026-04-08 18:41:44 +02:00
Paweł Lidwin
cdf6645d5c
ci: update actions ( #739 )
...
* update action steps versions
* added support for multiple architectures
* switch to zipapp building on Linux
* drop support for deb package CI
2026-04-08 18:41:05 +02:00
badboybeyer
9942cd987f
fix: prevent .netrc credentials from being injected into api calls ( #736 )
2026-04-08 12:49:43 +02:00
Stelios Tsampas
b23d351678
[utils/cli] Accept empty string as a falsey value in strtobool ( #701 )
...
Some UE asset manifests seem to have `"OwnershipToken": ""` instead
of something `strtobool` could understand. When trying to import these
through `egl-sync` an exception is being raised, which blocks importing
other titles too.
The other use of `strtobool` is in `LGDRY_NO_WINE` environment variable,
which also causes an exception if set as `LGDRY_NO_WINE=`
2026-04-02 11:31:25 +02:00
Paweł Lidwin
42af7b5db7
[api] update graphql host ( #713 )
2025-10-03 04:29:35 +02:00
derrod
3963382b3f
Update CI runners
...
Keeping macos-13 for now to stay on x86 runners.
2024-08-24 12:21:49 +02:00
derrod
49dcdf1a59
Bump Version
2024-08-23 16:02:05 +02:00
derrod
56a2314e40
[core/models] Implement Sidecar config and epicdeploymentid parameter
2024-08-23 16:01:55 +02:00
derrod
4d63dcc188
[core] Warn if app does not have metadata
...
I forgot why I did this, but I think it works around a crash?
2024-08-23 15:18:59 +02:00
Paweł Lidwin
f1f5cc07f6
[core] Normalise OwnershipToken value to lowercase
...
Apparently this can be uppercase or lowercase, thanks Epic!
2024-08-23 15:16:47 +02:00
Shashank Prasanna
08c64ebca1
[cli] Update Ubisoft game instructions ( #591 )
...
Added that Ubisoft Connect is required for the game to be launched.
2024-08-23 15:13:25 +02:00
kloon15
09d280f476
[lfs] Workaround bug in FileLock >=3.15.3 ( #656 )
2024-08-23 15:12:31 +02:00
Mathis Dröge
9395eb94ab
[core] Skip library items with no appName ( #649 )
2024-08-23 15:11:18 +02:00
Mathis Dröge
90e5f75af0
[cli/models] Support both origin and EA App names ( #632 )
...
Note that the actual title has different case for different games (e.g.
it's "the EA app" for one game, but "The EA App" for another)
2024-08-23 15:10:42 +02:00
derrod
7fefdc4973
[cli/core] Fix fetching more than 1000 entitlements
2024-01-01 04:24:46 +01:00
derrod
96e07ff453
[cli] Fix launchable add-ons that are also installable
2023-12-24 13:35:08 +01:00
derrod
ac6290627c
[cli/core] Support launchable DLC/Addons
2023-12-14 15:05:23 +01:00
derrod
691048d481
[models] Add is_launchable_addon property to Game objects
2023-12-14 14:54:25 +01:00
derrod
837c166187
[cli] Show metadata command line in "info" command
2023-12-13 23:18:12 +01:00
derrod
1841da51f0
[core/models] Support additional command line parameters from metadata
...
This should fix things like the fake Fortnite "games" (Lego Fortnite etc.)
2023-12-13 23:15:08 +01:00
derrod
56d439ed2d
Bump version
2023-12-08 14:37:58 +01:00
derrod
2fdacb75d3
[cli/core/utils] Fix webview login now requiring EGL UA
...
Why are you like this Epic?
2023-12-08 14:37:42 +01:00
derrod
d2963db5b2
[core] Ignore private apps in library items
...
Fixes #618
2023-11-22 19:33:40 +01:00
derrod
f1d815797f
[cli] Fix --token not working
2023-11-16 01:41:31 +01:00
Witold Baryluk
591039eaf3
[cli] Use python3 shebang ( #622 )
...
Rational in PEP-394 fine print and reality of various distros
Details in https://github.com/derrod/legendary/issues/572
Closes: https://github.com/derrod/legendary/issues/572
2023-11-16 01:41:02 +01:00
Witold Baryluk
9131f32c22
[downloader] Avoid buffer copies in worker ( #621 )
...
This increases peek download speed from about 850MB/s to 960MB/s on my computer.
https://github.com/derrod/legendary/issues/620
2023-11-16 01:40:44 +01:00
derrod
450784283d
[cli/core/downloader] Add option to bind to IP(s)
2023-10-14 14:20:17 +02:00
Etaash Mathamsetty
c56a81ab64
[lfs] Allow setting config dir via LEGENDARY_CONFIG_PATH env var ( #590 )
2023-10-14 12:51:14 +02:00
derrod
488d14c6e0
[cli] Fix list-files not working with empty install tag
2023-09-30 03:38:26 +02:00
derrod
4c765325af
[core] Ignore problematic app name
...
This is a test app that isn't used for anything,
but it will mess up Heroic if you also have the
GOG title with id "1" (Fallout Classic).
2023-09-30 03:32:34 +02:00
derrod
c6e622f3ae
[cli] Fix setting "disable_sdl" config option
...
These have to be strings, whoops.
2023-09-30 03:31:52 +02:00