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).
33 results found
-
Upload Symbols for v4.0.48 To SymbolSource
It looks like the symbols for the 4.0.48 didn't get uploaded to symbolsource.
1 voteSymbolSource has been broken for months, we’re publishing nuget + symbol packages on GitHub until its fixed:
-
Enable FluentAPI to add dynamically response type
It's possible to add an overload in Fluent API to register also the response type together with the routing path?
For example: Routes.Add(requestType,restPath,verbs,responseType).
This can be useful when you can't use the IReturn Interface on DTO objects (for example inside UniversalApp PCL).
3 votesThis defeats the primary purpose of the `IReturn` marker for enabling a terse strong-typed generic API on Service Clients which is only possible if the generic type information is statically defined.
You can use one of the other fallback options for specifying the ResponseType:
https://github.com/ServiceStack/ServiceStack/wiki/Metadata-page#matching-requests-with-their-response-dtos -
Allow customization of authentication route verbs
It is currently possible to override the default authentication routes, but only the path can be set. It would be useful to be able to override the allowed verbs. I'd like to be able to prevent GET /auth/credentials, by limiting the endpoint to POSTs only. I've not been able to find any other ways of doing this.
3 votesCan use existing API’s.
-
9 votes
WP is dead and all ServiceStack libraries support .NET Standard 2.0 which is available for most active .NET platforms.
-
TechEmpower.com Benchmarks
ServiceStack does not look so good here, some are slow, others are failing entirely. I would be particularly interested in nginx and smart thread pool results being updated
2 votes -
Possible performance problem in MarkdownFormat plugin
The MarkdownFormat plugin recursively searches all directories for *.md files during Registration (in the Register() method).
We have some web applications, where we have thousands of (sub-)directories, e.g. in a data folder. This means, that the Register() method may take up to 60 seconds to scan for *.md files, thus slowing down the application startup.
We have one customer who reported a startup-delay of several minutes.As far as I have seen (using ServiceStack 3.9.71), there is no way to restrict the folders being searched by the MarkdownFormat plugin.
In our case, the workaround was to simply disable the Markdown-Feature…
3 votesThis site is only for feature requests, please use StackOverflow for all v3 support questions. You can use MarkdownFormat.SkipPaths to skip scanning paths.
-
Seperate Funq into it's own package
I like using the funq ioc container. The original container doesn't have the auto resolve stuff, and seems to be abandoned (or finished*).
It would be cool to use just the servicestack.ioc container in projects without bringing in the whole of servicestack.
1 voteExtracting built-in functionality creates un-necessary friction and increases the number dependencies and moving parts, which we’re actively against.
-
Implement ideas and techniques from Jil for Json speed
Jil currently holds the crown for the fastet .NET Json serializer. There are some incredible tips/tricks/techniques that Kevin uses to achieve these speeds. Maybe it's possible to backport some of these into Servicestack.Text to increase serialization speed?
Latest benchmarks:
http://t.co/oQzvtR9FmT7 votesThis is not an actionable feature request and JIL uses an architecturally incompatible approach. But in the latest v5.2 release ServiceStack.Text internals has been rewritten to use .NET’s new Span memory types and has exhausted available perf wins for now.
http://docs.servicestack.net/releases/v5.2#spanified-servicestack -
OWIN compatible ServiceStack
With the OWIN specification being final, it seems like support is bound to happen sooner rather than later.
I believe some effort was made a couple of year https://github.com/ServiceStack/ServiceStack.Owin).
163 votesWhilst this feature requested OWIN support, it really wanted better integration with the external ecosystem outside of ASP.NET Handlers.
This is now resolved with .NET Core which has become the future Web Platform for .NET which as part of its design supports the integrations that OWIN was created to enable.
We’re happy to announce that ServiceStack now supports running on .NET Core where it now can happily co-exist with external frameworks, e.g. you can host ServiceStack + MVC together in the same default route space without being forced to mount ServiceStack at a custom `/api` route.
For more details on ServiceStack’s support and integration with .NET Core please checkout the full release notes: http://docs.servicestack.net/releases/v4.5.2.html
As this feature request was quite contentious I want to leave my closing thoughts on our hesitance to support OWIN:
With .NET Core it’s clear OWIN was the…
-
Create Xamarin Components
Create ServiceStack components for the Xamarin Component store.
16 votesDeciding against creating separate Xamarin components at this time – NuGet packages are more re-usable and easier to manage.
You can add the NuGet Package Manager to Xamarin Studio to make it easier to install NuGet packages, see:
http://barambani.wordpress.com/2013/10/07/add-nuget-package-manager-and-servicestack-to-xamarin-studio-projects-2/Whilst the PCL ServiceStack clients that support iOS and Android are being maintained on: https://github.com/ServiceStack/Hello
-
Add fast TCP endpoint
Add the most efficient remote endpoint for consuming ServiceStack services.
Ideas: use https://github.com/nanomsg/nanomsg (by author and successor to ZeroMQ in C).
Advantages: Abstracts IPC/TPC/InMemory for picking the most efficient transport. Can easily interoperate with other NanoMsg clients on other platforms. C is nice to embed than C++.
Disadvantages: Still in Alpha, unclear when it will be stable/safe to use. Still native, requires effort to use 32/64 bit architectures and cross-platform on Mono.Alternative: Build endpoint on raw TCP sockets in C# using something like Redis wire protocol for efficient transfer of message payloads. Could imitate operation on redis-server for interoperability…
105 votesgRPC offers a number of efficient communication channels over a persistent multi-plexed HTTP/2 connection using compact/efficient protocol buffers which would superseed most of the value a custom TCP channel would offer now that ServiceStack gRPC has been released:
https://docs.servicestack.net/grpcC# / F# / VB.NET Apps can also take advantage of our smart generic service clients to offer the simplest and richest development UX:
https://docs.servicestack.net/grpc-generic -
Add Integration with node.js
Improve integration with ServiceStack + node.js and add examples showing how to use ServiceStack as an efficient API back-end for a node.js-powered web application (as an alternative to MVC + ServiceStack).
Node Proxy example already at:
https://github.com/ServiceStack/ServiceStack.UseCases/tree/master/NodeStackProxy
If it's more efficient and gets Linux/Mono support ServiceStack could integrate with: https://github.com/tjanczuk/edge20 votesWe believe the best solution is to instead integrate with Webpack/parcel instead of proxying directly with a node.exe process.
Most of the SPA templates have great integration with Webpack and JS CLI tools:
http://docs.servicestack.net/releases/v5.2#net-core-templates -
Add ServiceStack + Dart + WebComponents / Polymer.js example
Add a starter template to make use of the next generation web framework by Google with Dart + WebComponents/Polymer.js https://www.dartlang.org/polymer-dart/
7 votesWe don’t see Dart + Web Components having a strong future, our efforts will be focused around React and AngularJS going forward.
- Don't see your idea?