Jesse Plamondon-Willard
2e918823ba
Merge pull request #870 from atravita-mods/arraypooling
...
Use array pooling and various optimizations to reduce allocations
2022-10-08 18:03:14 -04:00
Jesse Plamondon-Willard
2e0bc5ddfe
tweak new code
2022-10-08 17:45:50 -04:00
Jesse Plamondon-Willard
40d5cd7c05
use try..finally to make sure rented arrays are returned
2022-10-08 17:42:32 -04:00
atravita-mods
48d0f70ffd
fix indexing math again.
2022-10-08 13:27:08 -04:00
atravita-mods
798a56bd2e
Avoid copying memory for contingous buffers.
2022-10-08 13:27:07 -04:00
atravita-mods
496c438be2
fix indexing again, because apparently I'm bad at math now?
2022-10-08 13:27:07 -04:00
atravita-mods
a3b8546ec8
cleanup and comments
2022-10-08 13:27:07 -04:00
atravita-mods
09fd12ddfe
use startindex/endindex since I've already calculated those...
2022-10-08 13:27:07 -04:00
atravita-mods
c1d5d19e43
Skip transparent rows at the start and end when doing a patch overlay.
2022-10-08 13:27:06 -04:00
atravita-mods
ce63efa2f4
Avoid making copy if the source image is just taller than the sourceArea.
2022-10-08 13:27:06 -04:00
atravita-mods
ff523c619a
fix fast-track array copying
2022-10-08 13:27:06 -04:00
atravita-mods
d29c01b815
Partially revert "Favor record structs when there are four or fewer elements."
...
This reverts commit f5d49515c4eddfb415903a89d70654cf9b6de299.
2022-10-08 13:27:06 -04:00
atravita-mods
627100509c
hide throwhelper from stack trace in dotnet 6
2022-10-08 13:27:06 -04:00
atravita-mods
0a2a1a08de
Favor record structs when there are four or fewer elements.
2022-10-08 13:27:05 -04:00
atravita-mods
581763c363
Skip math if above is fully opaque.
2022-10-08 13:27:05 -04:00
atravita-mods
4a1055e573
arraypool in the modcontentmanager, a bit of fussing
2022-10-08 13:27:05 -04:00
atravita-mods
78643710ce
Use array pools in editing images.
2022-10-08 13:27:05 -04:00
atravita-mods
7c90385d8d
Pre-calculate the strings for log levels.
2022-10-08 13:27:04 -04:00
Jesse Plamondon-Willard
a7f03abe25
change square brackets to round ones in manifest name
2022-10-08 13:16:38 -04:00
Jesse Plamondon-Willard
5a0d337fcf
update FluentHttpClient
2022-10-07 00:21:09 -04:00
Jesse Plamondon-Willard
2c25426578
fix issues with BundleExtraAssemblies
2022-10-07 00:16:00 -04:00
pizzaoverhead
c6b3446e9c
Added checking for alternative Steam library install locations when looking for the Stardew Valley install.
2022-09-29 13:33:45 +01:00
Jesse Plamondon-Willard
c0e31d17a6
fix handling of GitHub prerelease versions marked as non-prerelease
2022-09-28 23:21:12 -04:00
Khloe Leclair
e8da8fff51
Initial work on a way for mods to return specific API instances to specific mods.
2022-09-26 15:18:36 -04:00
atravita-mods
715b9b09ba
Update ModScanner.cs
...
Add a few more files to the ignored files like .7z
2022-09-18 12:05:46 -04:00
Tyler
f0e52061e3
fix ComparableListWatcher not removing items in zero case
2022-09-05 13:11:36 -05:00
Jesse Plamondon-Willard
41e95642f0
prepare for release
2022-08-31 17:15:58 -04:00
Jesse Plamondon-Willard
5af87fc3be
remove compatibility section in the new app manifest
...
This apparently leads to NoSuitableGraphicsDeviceException errors when launching SMAPI for some players.
2022-08-31 17:08:30 -04:00
Jesse Plamondon-Willard
8b6c732d71
prepare for release
2022-08-29 18:18:21 -04:00
Jesse Plamondon-Willard
47a68fbb7b
deprecate PyTK compatibility mode
2022-08-29 18:17:53 -04:00
Jesse Plamondon-Willard
2bb8e8353b
update compatibility workaround for the recent PyTK update
2022-08-29 18:00:41 -04:00
Jesse Plamondon-Willard
c2f474bf88
distinguish empty/XNB folders from invalid manifest for error-tracking
2022-08-24 17:49:17 -04:00
Jesse Plamondon-Willard
1d5017f119
fix broken mods with no ID listed as duplicate
2022-08-24 17:49:12 -04:00
Jesse Plamondon-Willard
f3a79219e8
prepare for release
2022-08-20 17:01:07 -04:00
Jesse Plamondon-Willard
f780d140f0
fix early mod load errors incorrectly suppressed
2022-08-20 16:36:15 -04:00
Jesse Plamondon-Willard
263130bafc
fix deprecation notices split into two messages unnecessarily
2022-08-20 16:15:29 -04:00
Jesse Plamondon-Willard
b2103bbfa6
update schema for Content Patcher 1.28.0
2022-08-18 22:39:37 -04:00
Jesse Plamondon-Willard
c51a593e93
fix log parser error if a mod logged a null character
2022-08-16 22:03:22 -04:00
Jesse Plamondon-Willard
5ab87efaa0
log error if mod files are detected directly under Mods folder
2022-08-16 22:03:21 -04:00
Jesse Plamondon-Willard
d813c4e2c8
fix log parsing for invalid content packs ( #860 )
2022-08-08 22:27:07 -04:00
Jesse Plamondon-Willard
e376386d25
set error code on exit ( #868 )
2022-08-08 21:43:46 -04:00
Jesse Plamondon-Willard
352fa4759e
fix error when a mod is both duplicated and missing the DLL
2022-08-08 19:54:07 -04:00
Jesse Plamondon-Willard
f3ff334c08
Merge pull request #869 from atravita-mods/patch-1
...
Add error message for invalid PNG
2022-08-08 19:46:30 -04:00
Jesse Plamondon-Willard
e7b93e2ec2
Merge pull request #867 from lanturnalis/develop
...
Add condition to DebugType to allow for overriding
2022-08-08 19:46:01 -04:00
Jesse Plamondon-Willard
08eafe7d89
tweak new error text
2022-08-08 19:42:40 -04:00
Jesse Plamondon-Willard
8c58bdae6f
remove DebugType build property
...
The 'portable' format is preferred in newer .NET versions, but it's set by default now so we don't need to override it anymore.
2022-08-08 19:32:58 -04:00
atravita-mods
7a3b0e180f
Adds an error message for an invaild png
2022-08-05 17:21:53 -04:00
Jesse Plamondon-Willard
ab34b6142d
undo $@ to $* change per discussion
2022-07-28 21:47:21 -04:00
Jesse Plamondon-Willard
5371dc3fce
Merge pull request #865 from ishanjalan/unix-launcher-changes
...
Apply suggested fixes from Rider in Unix launcher
* [error] Argument mixes string and array. Use * or separate argument.
* [warn] Declare and assign separately to avoid masking return values.
* [warn] Quote to prevent word splitting.
* [hint] echo may not expand escape sequences. Use printf.
* [hint] read without -r will mangle backslashes.
* [hint] Double quote to prevent globbing and word splitting.
2022-07-28 21:28:41 -04:00
Jesse Plamondon-Willard
1095ce6682
Merge pull request #864 from KediDili/develop
...
Fix Turkish translation
2022-07-28 21:09:49 -04:00
Jesse Plamondon-Willard
7c1388a843
Merge pull request #863 from Pathoschild/dependabot/nuget/src/SMAPI.Web/Azure.Storage.Blobs-12.13.0
...
Bump Azure.Storage.Blobs from 12.12.0 to 12.13.0
2022-07-28 21:07:43 -04:00
lanturnalis
edf2c5dbea
Add condition to DebugType to allow for overriding
2022-07-25 21:31:09 -05:00
Ishan Jalan
dd2e3e9d93
Jetbrains Rider suggestions
...
I ran the file on Rider and it had a few suggestions
<img width="506" alt="image" src="https://user-images.githubusercontent.com/44338423/180635394-cb45defa-47f4-444c-ad10-e0fc89522fe7.png ">
2022-07-24 12:07:38 +05:30
Ishan Jalan
a50a730886
unix-launcher.sh optimisations
...
I ran the file through Rider which used Intellisense(?) to suggest changes in addition to moving from .sh to .command
2022-07-24 12:01:34 +05:30
KediDili
fd3850add9
Fix for mistranslation in tr.json
...
Somebody accidentally translated tr.json to Russian. This PR fixes that.
2022-07-22 21:24:15 +03:00
dependabot[bot]
ea4664856d
Bump Azure.Storage.Blobs from 12.12.0 to 12.13.0 in /src/SMAPI.Web
...
Bumps [Azure.Storage.Blobs](https://github.com/Azure/azure-sdk-for-net ) from 12.12.0 to 12.13.0.
- [Release notes](https://github.com/Azure/azure-sdk-for-net/releases )
- [Commits](https://github.com/Azure/azure-sdk-for-net/compare/Azure.Storage.Blobs_12.12.0...Azure.Storage.Blobs_12.13.0 )
---
updated-dependencies:
- dependency-name: Azure.Storage.Blobs
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-07-21 22:46:05 +00:00
Ishan Jalan
ea4307a282
Update unix-launcher.sh
...
This will open the default shell. Works for me after testing.
2022-07-20 22:30:09 +05:30
Jesse Plamondon-Willard
3da5917eed
update Pintail
2022-07-17 11:29:50 -04:00
Jesse Plamondon-Willard
88517715a3
update image reference
2022-07-17 11:04:45 -04:00
Ishan Jalan
da1eca3696
Moving Sidebar GIF to SVG
2022-07-17 09:53:52 +05:30
Jesse Plamondon-Willard
830d2c57cc
update log parser for new update alert format
2022-07-09 01:06:32 -04:00
Ishan Jalan
6d9dcdc2f8
Update pufferchick-cool.svg
2022-07-09 00:58:26 -04:00
Jesse Plamondon-Willard
521129ad21
raise deprecation levels
2022-07-09 00:53:11 -04:00
Jesse Plamondon-Willard
477ecbab6e
bypass browser cache & delete unused images
2022-07-08 19:36:32 -04:00
Ishan Jalan
5da690cbef
Update pufferchick-cool.svg
2022-07-08 19:31:44 -04:00
Ishan Jalan
a52f24307b
pufferchick-cool updated [2]
2022-07-08 19:31:41 -04:00
Ishan Jalan
173bc4f517
Updated pufferchick cool
2022-07-08 19:31:37 -04:00
Ishan Jalan
8eeda8b4c4
SVGs for pufferchick and pufferchick-cool
...
SVG > PNG
2022-07-08 19:31:28 -04:00
Jesse Plamondon-Willard
4850e80e56
Merge pull request #855 from spacechase0/appmanifest
...
Add app.manifest, fixing DPI awareness
2022-07-08 19:15:33 -04:00
Jesse Plamondon-Willard
0c787de2df
match settings used by the game
2022-07-08 19:13:45 -04:00
Jesse Plamondon-Willard
bc71665c1c
apply editorconfig
2022-07-08 19:11:40 -04:00
Jesse Plamondon-Willard
795e808063
Merge pull request #852 from TehPers/TehPers/search-local-deps
...
Search assembly directory for dependencies
2022-07-08 19:03:59 -04:00
Jesse Plamondon-Willard
1b3a1a48d0
refactor assembly resolver to avoid repeatedly copying search directory list
2022-07-08 19:02:33 -04:00
Jesse Plamondon-Willard
1b25710cf2
fix installer partly applying color theme before it's selected
2022-07-08 17:48:01 -04:00
Jesse Plamondon-Willard
dcb3a97727
add log parser warning for PyTK compatibility mode
2022-07-08 17:44:27 -04:00
Jesse Plamondon-Willard
bcb9e25d86
prepare for release
2022-07-06 22:25:45 -04:00
Jesse Plamondon-Willard
9c9552531f
fix build warnings
2022-07-06 19:25:15 -04:00
Jesse Plamondon-Willard
4d9fd63d9e
update code annotations
2022-07-06 19:24:49 -04:00
Jesse Plamondon-Willard
2347644a1f
update compatibility list for broken CFAutomate unofficial update
2022-07-06 18:36:29 -04:00
Jesse Plamondon-Willard
ed1705d4d7
Merge pull request #854 from ishanjalan/develop
...
Current version in mod check
2022-07-05 23:23:26 -04:00
Jesse Plamondon-Willard
543e45f9bd
remove artifacts, tweak text
2022-07-05 23:21:51 -04:00
Jesse Plamondon-Willard
454f3a45ba
fix trace logs not tracking reloaded map tilesheets as asset propagation
2022-07-05 23:19:53 -04:00
Jesse Plamondon-Willard
42099f24ee
improve log parser's 'suggested fixes' styles
2022-07-05 22:36:02 -04:00
Jesse Plamondon-Willard
0ba4fd1785
detect missing/outdated Error Handler for 'suggested fixes' section
2022-07-05 22:09:46 -04:00
Jesse Plamondon-Willard
f3a4b316b7
fix PyTK compatibility mode not handling some edge cases
2022-07-05 19:01:28 -04:00
Chase Warrington
f44a2fbfcf
Add app.manifest, fixing DPI awareness
2022-07-04 20:42:27 -04:00
Ishan Jalan
d717e246b6
Current version in mod check
...
Added "(You have x.x.x)" to the mod update check.
2022-07-02 08:42:35 +05:30
Jesse Plamondon-Willard
bd88727948
remove obsolete override
...
SMAPI no longer raises UsesDynamic warnings.
2022-06-28 20:48:58 -04:00
Jesse Plamondon-Willard
6b411d1dee
fix deprecation check
2022-06-28 20:48:28 -04:00
TehPers
0c0f7898f4
Search assembly directory for dependencies
2022-06-28 16:37:58 -07:00
Jesse Plamondon-Willard
6d11c41fac
migrate update checks to FluentHttpClient
...
WebClient isn't needed for compatibility with macOS after the .NET 5 update in Stardew Valley 1.5.5, and causes noticeable lag for some players even when running on a background thread.
2022-06-28 18:17:27 -04:00
Jesse Plamondon-Willard
5e1212e99a
update schema for Content Patcher 1.27.0
2022-06-28 01:13:11 -04:00
Jesse Plamondon-Willard
bbc476a2cf
split local deploy into its own targets file
2022-06-26 14:41:35 -04:00
Jesse Plamondon-Willard
ca9efad7a7
avoid cancellation token for tracking exit state
...
This apparently causes noticeable lag for a minority of players.
2022-06-24 17:00:39 -04:00
Jesse Plamondon-Willard
525ca7c9c9
fix config.user.json overrides no longer applied
2022-06-24 02:06:25 -04:00
Jesse Plamondon-Willard
1021c32910
update fluent HTTP client
2022-06-22 20:15:25 -04:00
Jesse Plamondon-Willard
be086cf005
avoid unneeded overhead of ConcurrentQueue
2022-06-22 01:53:37 -04:00
Jesse Plamondon-Willard
c91fbc82f8
deprecate support for updating ancient versions of SMAPI
2022-06-20 18:02:41 -04:00
Jesse Plamondon-Willard
dab1ef6acc
add flag to disable deprecated code
2022-06-20 18:01:48 -04:00
Jesse Plamondon-Willard
e0ef8a20a5
fix mod count in log parser metadata
2022-06-19 17:21:53 -04:00
Jesse Plamondon-Willard
011aa4c9d0
prepare for release
2022-06-16 22:14:09 -04:00
Jesse Plamondon-Willard
525351e905
fix case-sensitive mod ID check
2022-06-16 19:21:38 -04:00
Jesse Plamondon-Willard
e8bcbf7e5a
update compatibility list
2022-06-12 20:29:56 -04:00
Jesse Plamondon-Willard
15f829e48c
patch PyTK temporarily to fix scale-up compatibility in SMAPI 3.15
2022-06-12 12:26:51 -04:00
Jesse Plamondon-Willard
0189b282f4
add image compatibility mode for PyTK
2022-06-10 22:14:28 -04:00
Jesse Plamondon-Willard
11a497c1f6
update Pintail
2022-06-10 00:05:23 -04:00
Jesse Plamondon-Willard
0bb9fc4293
update Newtonsoft.Json
2022-06-10 00:05:22 -04:00
Jesse Plamondon-Willard
b6d15ec57f
update unit test & web dependencies
2022-06-10 00:04:27 -04:00
Jesse Plamondon-Willard
62328e4384
tweak new code, update release notes
2022-06-10 00:04:26 -04:00
Ameisen
03897776e0
Cleaning up and optimizing `ContentCache.cs`
2022-06-10 00:04:26 -04:00
Jesse Plamondon-Willard
43e9e2cfe2
fix accidental case-sensitivity change
2022-06-10 00:04:26 -04:00
Jesse Plamondon-Willard
565677c18c
use IRawTextureData instead of intermediate tuple
2022-06-10 00:04:26 -04:00
Jesse Plamondon-Willard
ba7f5701de
simplify asset type validaiton
2022-06-10 00:04:25 -04:00
Jesse Plamondon-Willard
87c7095e8d
apply style conventions
2022-06-10 00:04:25 -04:00
Ameisen
5585f5e876
Refactored ModContentManager.cs so it actually fit on my 1440p screens.
...
Changed LocalTilesheetExtensions into an array.
Marked 'CreateTemporary' as 'Obsolete' which is conventional for methods that only throw.
Moved the type validation logic into its own method as it's largely shared for each loader.
Changed allocators to use `GC.AllocateUninitializedArray`, as the data does not need to be initialized.
Changed `LoadRawImageData` to use a `ValueTuple` return instead of returning with multiple `out`s, which is bad practice.
Preferred rethrowing handlers rather than exception filters (which generate bizarre and _very difficult to patch_ code).
Marked GetLoadError as debugger step through and hidden, as it's just an exception generator.
Marked PremultiplyTransparency, GetContentKeyForTilesheetImageSource, and LoadRawImageData as static as they have no dependency on instance data (nor should they).
Fixed `.xnb` extension search to properly use OrdinalIgnoreCase.
2022-06-10 00:04:25 -04:00
Jesse Plamondon-Willard
9d21e0bbec
simplify pixel conversion loop
2022-06-10 00:04:25 -04:00
Jesse Plamondon-Willard
4f6965eef3
encapsulate loading the raw image data for mod patching
2022-06-10 00:04:24 -04:00
Jesse Plamondon-Willard
5ffa260e02
add validation error when loading XNB file as IRawTextureData
2022-06-10 00:04:24 -04:00
Jesse Plamondon-Willard
b6a8dcdd46
update to Harmony 2.2.1
2022-06-10 00:04:24 -04:00
Jesse Plamondon-Willard
db578c389e
drop support for pre-Pintail proxying
2022-06-10 00:04:23 -04:00
Jesse Plamondon-Willard
769475166a
enable raw image loading by default, rename setting
2022-06-10 00:04:23 -04:00
Jesse Plamondon-Willard
4708385f69
add IRawTextureData asset type
2022-06-10 00:04:23 -04:00
Jesse Plamondon-Willard
a546fd113f
add experimental image load rewrite
2022-06-10 00:04:22 -04:00
Jesse Plamondon-Willard
cb6fcb0450
rework VerboseLogging option to allow enabling for specific mods
2022-06-10 00:04:22 -04:00
Jesse Plamondon-Willard
8713914a1a
avoid NPC pathfinding rebuild if reachable locations didn't change
2022-06-08 23:33:09 -04:00
Jesse Plamondon-Willard
fdb74df8a4
simplify repeated hash set creation
2022-06-06 21:28:57 -04:00
Jesse Plamondon-Willard
1cded44f7a
prepare for release
2022-06-01 19:58:35 -04:00
Jesse Plamondon-Willard
bf960ce283
add backwards compatibility for mods using now-unused dependencies
2022-05-31 21:23:44 -04:00
Jesse Plamondon-Willard
9992915f56
replace MemoryCache with custom cache
...
This was causing significant frame stutters for some players since the migration to .NET 5 in Stardew Valley 1.5.5.
2022-05-31 18:32:23 -04:00
Jesse Plamondon-Willard
9ef3f7edb1
remove `System.Reflection.Metadata.MetadataUpdater.IsSupported: false` in runtime config
...
This doesn't seem to be needed, and was probably added as part of the early experimenting with self-contained .NET.
2022-05-31 18:25:12 -04:00
Jesse Plamondon-Willard
e4cd7c8eb0
prepare for release
2022-05-27 18:08:30 -04:00
Jesse Plamondon-Willard
e8c6221d96
fix typo
2022-05-27 18:04:39 -04:00
Jesse Plamondon-Willard
064346594d
fix split-screen error when a mod provides a localized asset in one screen but not another
2022-05-24 18:12:06 -04:00
Jesse Plamondon-Willard
5675f9fceb
add watcher names to simplify troubleshooting
2022-05-23 12:57:33 -04:00
Jesse Plamondon-Willard
87ac7fc403
fix nullable annotations in NetListWatcher
2022-05-23 12:57:33 -04:00
Jesse Plamondon-Willard
9933acad35
use <inheritdoc/> in watchers
2022-05-23 12:57:33 -04:00
Jesse Plamondon-Willard
62665649bd
shortcut common cases in hot code paths
2022-05-23 12:19:06 -04:00
Jesse Plamondon-Willard
336cc1cc0f
prepare for release
2022-05-22 14:38:33 -04:00
Jesse Plamondon-Willard
7e7ac459a5
fix error when mod localizes an unlocalizable asset and then stops doing so
2022-05-21 18:06:23 -04:00
Jesse Plamondon-Willard
e6ef71bae1
add tick cache to asset propagation
2022-05-20 17:39:05 -04:00
Jesse Plamondon-Willard
7332879351
defer asset reload during propagation when possible
2022-05-19 21:04:32 -04:00
Jesse Plamondon-Willard
0a050622f6
tweak asset propagator to avoid assumption that assets must be reloaded
2022-05-19 21:04:32 -04:00
Jesse Plamondon-Willard
1ddf70697e
simplify asset propagation a bit to prepare for the upcoming SDV 1.6
2022-05-18 20:13:09 -04:00
Jesse Plamondon-Willard
f8b62e271e
fix asset type when checking if a mod asset exists
2022-05-18 20:04:51 -04:00
Jesse Plamondon-Willard
cb11f1e2ca
re-add internal content manager for asset propagation
...
This will be used by the new asset propagation in SMAPI 4.0 & Stardew Valley 1.6.
2022-05-18 20:02:12 -04:00
Jesse Plamondon-Willard
3a161a30a7
update for the new CurseForge API
2022-05-18 19:23:26 -04:00
Jesse Plamondon-Willard
cd843dc10b
prepare for release
2022-05-15 19:14:28 -04:00
Jesse Plamondon-Willard
3253797cba
fix wiki client not being disposed
2022-05-15 19:13:32 -04:00
Jesse Plamondon-Willard
8505f4ae4d
fix typo
2022-05-15 15:07:52 -04:00
Jesse Plamondon-Willard
048f41244f
reduce performance impact of deprecation warnings
...
Creating a stack is *very* slow, so it should be avoided if possible until after the duplicate-warning check.
2022-05-15 01:54:01 -04:00