Feature Requests
Feature, docs and use-case samples requests for ServiceStack. If you can, focus on the end-user benefit / use-case, rather than the technical details so we can focus on the end-goal and free us to work on how best to achieve it. Features can also include supporting content, e.g. a starter project on how to use ServiceStack with another product (e.g. SS + SharePoint).
-
Expand Generic Type when documenting responses
We have an application that always return an AppContentResponse<T>. AppContentResponse contains some properties that are present in every response of every method we have, while the T is the actually Type of the response.
When we look at the metadata documentation, ServiceStack generates the documentation for AppContentResponse<T> without also documenting T. The strange thing is that if I create a class that actually implements AppContentResponse<TypeOfThatResponse>, both types get automatically documented.
I filed an issue at https://forums.servicestack.net/t/expand-generic-type-when-documenting-responses/5676 if you are looking for more details.
4 votes -
Silence code analysis for "Add ServiceStack reference..." generated code.
The generated code does not conform to company rules so I get a bunch of useless warnings when I run code analysis on my solution.
Just adding a
// <auto-generated>
// This code was generated by ServiceStack.
// </auto-generated>block above or below the / Options: / block would be enough to exclude the generated file from code analysis.
1 vote -
Support change MaxLimit of query feature for specific dto
Support change MaxLimit of query feature for specific dto
1 vote -
Support sharding in sentinels mode.
I didn't find support of client side sharding with sentinels in your Redis API. It will be a nice to have feature. I asked this question on stackoverflow, if you have some solution for the problem, it would be great to hear: https://stackoverflow.com/questions/50107173/servicestack-redis-is-sharding-supported-in-sentinel-mode
1 vote -
Stripe Events
The ServiceStack Stripe library currently doesn't support retrieving of Stripe Events. It would be nice to have this feature especially when working with webhooks.
As it currently stands, I either have to install both the Stripe.net and ServiceStack.Stripe packages in my project, or switch to using just the Stripe.net package.
3 votes -
ADOMD.net Orm provider addition and would work with AutoQuery
ADOMD.net Cubes as a source of data. I think this would be huge in adding a provider to the mix and utilize Analysis Service cubes to return faster data/query's for warehouse service use.
6 votes -
MiniProfiler async support
Some older release notes https://github.com/ServiceStack/ServiceStack/blob/net40/docs/2015/release-notes.md states that Mini Profiler async support is there, but unless I am missing something, using v5.0, I cannot get it to work. Looking at ProfiledCommand, it does not actually overload the async overloads and call IDbProfiler methods.
MiniProfiler integrated this last februari: https://github.com/MiniProfiler/dotnet/commit/8973afb7bd418a37ce38e0805dc3636942ea7788
1 vote -
Update Kotlin docs to reflect the fact that it is now supported in Android Studio by default
http://docs.servicestack.net/kotlin-add-servicestack-reference should be updated to reflect the fact that Google now provides first class support for Kotlin in the IDE
1 vote -
Update Java ServiceClient to use Route's when possible
Look at adopting approach for custom impl at:
https://github.com/ServiceStack/ServiceStack.Java/issues/205 votes -
RediSearch Client forthcoming from ServiceStack?
I was just reading about the Redis Labs new RediSearch product for use in implementing a search engine in Redis. I saw in the RediSearch product page that StackExchange has a C# client for this product. Do you plan to implement RediSearch client in ServiceStack.Redis? I prefer ServiceStack modules to StackExchange.
If this is your roadmap, can you project delivery of such a client?
Keep up the good work! Thanks!
2 votes -
Create a ss-utils.js like library that shares ServiceStack backend Validation Feature rules with AngularJs 4 Reactive Forms
Validation Rules should live in one place.
AN Angular4 component should be able to call myservice/validation and get the validation rules for front-end inline form validation. This has to be the number one most overlooked feature of any framework or stack I have ever seen.
Using the Validation Feature/Fluent Validation rules expressed on the back-end, a standard JSON response could be serialized, using reflection of the back-end POCO models and than sent to AngularJs 4 front-end, that Reactive Forms could ingest.
This front-end library should not have any dependency on jQuery and the focus should be on AngularJs Reactive Forms…
1 vote -
Group operations on metadata page by the service they are in
By default the metadata page could group the operations by the service they are in.
All user operations under UserService.
Order operations under OrderService.
etc.3 votes -
Implement Brotli compression support
Please implement Brotli compression support for request and response payloads. (-:
There exists a few C# libraries, like this one: https://github.com/XieJJ99/brotli.net
6 votes -
Allow field level control in the Request Logger
The API request logger logs all fields and there is now way to disable any of them. Specifically, logging the users cookie each time takes up a huge amount of space and also makes the display difficult to use. Please add a config option to allow control over which fields get logged.
3 votes -
Support AWS S3 Versioning with VirtualFiles.WriteFile
I believe we can retrieve specific versions of a file via the versionId querystring using VirtualFiles.... however VirtualFiles.WriteFile returns null so we cannot retrieve the x-amz-version-id header. It would be nice if the headers were in the response of VirtualFiles.WriteFile so we could retrieve that.
3 votes -
Add the ability to select the serialization mode(Array,Map) in plugin "MsgPack Format".
To MsgPack was really comfortable as JSON, you must add the possibility of setting "Map" mode. This will give more compatibility when migrating from one version to another, when service is updated, but clients have not yet had time.
9 votes -
Allow Abstract Validators where generic is an Interface to run as part of request cycle.
When creating a validator class that extends AbstractValidator<T>, the generic must be a concrete class for the validation to actually run once that validator is registered. It would be nice if I could define several interfaces for my messages that I want specific shared validation run against, and then just register a validator for that interface, and have the validation run against any message that comes in that implements that interface.
I know there are ways to do this through request filters, as well as through attributes on the messages, but the attributes requires having to pull more dependencies into…
4 votes -
Localize Login redirect
our site has the following route format: /[Locale]/RestOfPath
The problem is that the redirect url always redirects to /Login instead of /[Locale]/Login. Could you turn AuthenticateAttribute.DoHtmlRedirectIfConfigured into a static Func instead of a static method so it is overridable?
1 vote -
pagination
Add support for pagination in queries with dynamodb.
Actually, when you set "limit" in Query or Scan methods, the first elements are obtained. This could be the first page. but there is no method that enables you obtain the second or third page.
Maybe, you can add a GetPage method, that returns a collection wrapper, inherited from Collection<T>. This wrapper could have the last evaluated key.
Then, GetPage method, could accept a query or scan expression, a page size and the last evaluated key
This could be very usefull for applications that needs paginate some results but don't need retrieve…
31 votes -
auto update http://github.servicestack.net/
http://github.servicestack.net/ss_admin/autoquery/QueryRepoCommits
seems not to be updated since 2015-09-26. Maybe put an auto pull on the git repos behind it?
1 vote
- Don't see your idea?