Updated Changelog, version upped to 5.1.11
Ellie might grumble about the ngrpc marmalade not being able to load but it should be fine
This commit is contained in:
parent
a321cdbe55
commit
4338df0b38
8 changed files with 35 additions and 30 deletions
20
CHANGELOG.md
20
CHANGELOG.md
|
@ -2,6 +2,26 @@
|
||||||
|
|
||||||
Mostly based on [keepachangelog](https://keepachangelog.com/en/1.1.0/) except date format. a-c-f-r-o
|
Mostly based on [keepachangelog](https://keepachangelog.com/en/1.1.0/) except date format. a-c-f-r-o
|
||||||
|
|
||||||
|
## [5.1.11] - 03.10.2024
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- Added `%user.displayname%` placeholder. It will show users nickname, if there is one, otherwise it will show the username.
|
||||||
|
- Nickname won't be shown in bye messages.
|
||||||
|
- Added initial version of grpc api. Beta
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- Fixed a bug which caused `.bye` and `.greet` messages to be randomly disabled
|
||||||
|
- Fixed `.lb -c` breaking sometimes, and fixed pagination
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- Youtube now always uses `yt-dlp`. Dropped support for `youtube-dl`
|
||||||
|
- If you've previously renamed your yt-dlp file to youtube-dl, please rename it back.
|
||||||
|
- ytProvider in data/searches.yml now also controls where you're getting your song streams from.
|
||||||
|
- (Invidious support added for .q)
|
||||||
|
|
||||||
## [5.1.10] - 24.09.2024
|
## [5.1.10] - 24.09.2024
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<ImplicitUsings>true</ImplicitUsings>
|
<ImplicitUsings>true</ImplicitUsings>
|
||||||
<SatelliteResourceLanguages>en</SatelliteResourceLanguages>
|
<SatelliteResourceLanguages>en</SatelliteResourceLanguages>
|
||||||
<Version>5.1.10</Version>
|
<Version>5.1.11</Version>
|
||||||
|
|
||||||
<!-- Output/build -->
|
<!-- Output/build -->
|
||||||
<RunWorkingDirectory>$(MSBuildProjectDirectory)</RunWorkingDirectory>
|
<RunWorkingDirectory>$(MSBuildProjectDirectory)</RunWorkingDirectory>
|
||||||
|
|
|
@ -128,7 +128,7 @@ public partial class Gambling : GamblingModule<GamblingService>
|
||||||
customId: "timely:remind_me"),
|
customId: "timely:remind_me"),
|
||||||
(smc) => RemindTimelyAction(smc, DateTime.UtcNow.Add(TimeSpan.FromHours(period)))
|
(smc) => RemindTimelyAction(smc, DateTime.UtcNow.Add(TimeSpan.FromHours(period)))
|
||||||
);
|
);
|
||||||
|
|
||||||
// Creates timely reminder button, parameter in milliseconds.
|
// Creates timely reminder button, parameter in milliseconds.
|
||||||
private EllieInteractionBase CreateRemindMeInteraction(double ms)
|
private EllieInteractionBase CreateRemindMeInteraction(double ms)
|
||||||
=> _inter
|
=> _inter
|
||||||
|
@ -167,7 +167,7 @@ public partial class Gambling : GamblingModule<GamblingService>
|
||||||
await Response().Pending(strs.timely_already_claimed(relativeTag)).Interaction(interaction).SendAsync();
|
await Response().Pending(strs.timely_already_claimed(relativeTag)).Interaction(interaction).SendAsync();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
var patron = await _ps.GetPatronAsync(ctx.User.Id);
|
var patron = await _ps.GetPatronAsync(ctx.User.Id);
|
||||||
|
|
||||||
|
@ -646,12 +646,11 @@ public partial class Gambling : GamblingModule<GamblingService>
|
||||||
var cleanRichest = await uow.GetTable<DiscordUser>()
|
var cleanRichest = await uow.GetTable<DiscordUser>()
|
||||||
.Where(x => x.UserId.In(users))
|
.Where(x => x.UserId.In(users))
|
||||||
.OrderByDescending(x => x.CurrencyAmount)
|
.OrderByDescending(x => x.CurrencyAmount)
|
||||||
.Skip(page * perPage)
|
.Skip(curPage * perPage)
|
||||||
.Take(perPage)
|
.Take(perPage)
|
||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
|
|
||||||
var sg = (SocketGuild)ctx.Guild!;
|
return cleanRichest;
|
||||||
return cleanRichest.Where(x => sg.GetUser(x.UserId) is not null).ToList();
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -660,9 +659,6 @@ public partial class Gambling : GamblingModule<GamblingService>
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var res = Response()
|
|
||||||
.Paginated();
|
|
||||||
|
|
||||||
await Response()
|
await Response()
|
||||||
.Paginated()
|
.Paginated()
|
||||||
.PageItems(GetTopRichest)
|
.PageItems(GetTopRichest)
|
||||||
|
|
|
@ -28,11 +28,9 @@ public partial class SearchesConfig : ICloneable<SearchesConfig>
|
||||||
[Comment("""
|
[Comment("""
|
||||||
Which search provider will be used for the `.youtube` and `.q` commands.
|
Which search provider will be used for the `.youtube` and `.q` commands.
|
||||||
|
|
||||||
- `ytDataApiv3` - uses google's official youtube data api. Requires `GoogleApiKey` set in creds and youtube data api enabled in developers console
|
- `ytDataApiv3` - uses google's official youtube data api. Requires `GoogleApiKey` set in creds and youtube data api enabled in developers console. `.q` is not supported for this setting. It will fallback to yt-dlp.
|
||||||
|
|
||||||
- `ytdl` - default, uses youtube-dl. Requires `youtube-dl` to be installed and it's path added to env variables. Slow.
|
- `ytdlp` - default, recommended easy, uses `yt-dlp`. Requires `yt-dlp` to be installed and it's path added to env variables
|
||||||
|
|
||||||
- `ytdlp` - recommended easy, uses `yt-dlp`. Requires `yt-dlp` to be installed and it's path added to env variables
|
|
||||||
|
|
||||||
- `invidious` - recommended advanced, uses invidious api. Requires at least one invidious instance specified in the `invidiousInstances` property
|
- `invidious` - recommended advanced, uses invidious api. Requires at least one invidious instance specified in the `invidiousInstances` property
|
||||||
""")]
|
""")]
|
||||||
|
|
|
@ -47,19 +47,11 @@ public class SearchesConfigService : ConfigServiceBase<SearchesConfig>
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (data.Version < 2)
|
if (data.Version < 4)
|
||||||
{
|
{
|
||||||
ModifyConfig(c =>
|
ModifyConfig(c =>
|
||||||
{
|
{
|
||||||
c.Version = 2;
|
c.Version = 4;
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
if (data.Version < 3)
|
|
||||||
{
|
|
||||||
ModifyConfig(c =>
|
|
||||||
{
|
|
||||||
c.Version = 3;
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -65,6 +65,7 @@ public sealed partial class ReplacementPatternStore
|
||||||
Register("%user.mention%", static (IUser user) => user.Mention);
|
Register("%user.mention%", static (IUser user) => user.Mention);
|
||||||
Register("%user.fullname%", static (IUser user) => user.ToString()!);
|
Register("%user.fullname%", static (IUser user) => user.ToString()!);
|
||||||
Register("%user.name%", static (IUser user) => user.Username);
|
Register("%user.name%", static (IUser user) => user.Username);
|
||||||
|
Register("%user.displayname%", static (IUser user) => user is IGuildUser gu ? gu.DisplayName : user.Username);
|
||||||
Register("%user.discrim%", static (IUser user) => user.Discriminator);
|
Register("%user.discrim%", static (IUser user) => user.Discriminator);
|
||||||
Register("%user.avatar%", static (IUser user) => user.RealAvatarUrl().ToString());
|
Register("%user.avatar%", static (IUser user) => user.RealAvatarUrl().ToString());
|
||||||
Register("%user.id%", static (IUser user) => user.Id.ToString());
|
Register("%user.id%", static (IUser user) => user.Id.ToString());
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# DO NOT CHANGE
|
# DO NOT CHANGE
|
||||||
version: 1
|
version: 1
|
||||||
# List of marmalades automatically loaded at startup
|
# List of marmalades automatically loaded at startup
|
||||||
loaded:
|
loaded:
|
||||||
- ngrpc
|
- ngrpc
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# DO NOT CHANGE
|
# DO NOT CHANGE
|
||||||
version: 3
|
version: 4
|
||||||
# Which engine should .search command
|
# Which engine should .search command
|
||||||
# 'google_scrape' - default. Scrapes the webpage for results. May break. Requires no api keys.
|
# 'google_scrape' - default. Scrapes the webpage for results. May break. Requires no api keys.
|
||||||
# 'google' - official google api. Requires googleApiKey and google.searchId set in creds.yml
|
# 'google' - official google api. Requires googleApiKey and google.searchId set in creds.yml
|
||||||
|
@ -11,14 +11,12 @@ webSearchEngine: Google_Scrape
|
||||||
imgSearchEngine: Google
|
imgSearchEngine: Google
|
||||||
# Which search provider will be used for the `.youtube` and `.q` commands.
|
# Which search provider will be used for the `.youtube` and `.q` commands.
|
||||||
#
|
#
|
||||||
# - `ytDataApiv3` - uses google's official youtube data api. Requires `GoogleApiKey` set in creds and youtube data api enabled in developers console
|
# - `ytDataApiv3` - uses google's official youtube data api. Requires `GoogleApiKey` set in creds and youtube data api enabled in developers console. `.q` is not supported for this setting. It will fallback to yt-dlp.
|
||||||
#
|
#
|
||||||
# - `ytdl` - default, uses youtube-dl. Requires `youtube-dl` to be installed and it's path added to env variables. Slow.
|
# - `ytdlp` - default, recommended easy, uses `yt-dlp`. Requires `yt-dlp` to be installed and it's path added to env variables
|
||||||
#
|
|
||||||
# - `ytdlp` - recommended easy, uses `yt-dlp`. Requires `yt-dlp` to be installed and it's path added to env variables
|
|
||||||
#
|
#
|
||||||
# - `invidious` - recommended advanced, uses invidious api. Requires at least one invidious instance specified in the `invidiousInstances` property
|
# - `invidious` - recommended advanced, uses invidious api. Requires at least one invidious instance specified in the `invidiousInstances` property
|
||||||
ytProvider: Ytdlp
|
ytProvider: Ytdl
|
||||||
# Set the searx instance urls in case you want to use 'searx' for either img or web search.
|
# Set the searx instance urls in case you want to use 'searx' for either img or web search.
|
||||||
# Ellie will use a random one for each request.
|
# Ellie will use a random one for each request.
|
||||||
# Use a fully qualified url. Example: `https://my-searx-instance.mydomain.com`
|
# Use a fully qualified url. Example: `https://my-searx-instance.mydomain.com`
|
||||||
|
|
Loading…
Reference in a new issue