Skip to content

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

  1. 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 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  2. 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 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  3. 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
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    declined  ·  1 comment  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  4. Move all extension methods into separate namespace(s)

    When writing code that uses ServiceStack, its fairly common to import the ServiceStack namespace (or others) via a using statement. Doing so will make all the extension methods within that namespace available.

    I have experienced several cases where I have my own custom extension methods with a conflicting signature that I would like to use instead of the ServiceStack method. However there is no ideal way to disambiguate them currently. My only choices are:

    1) Move code around into separate files so that I only import either the ServiceStack namespace or my namespace.

    2) Refer to the proper method by…

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    That’s the opposite of how ServiceStack is designed, hurts discoverability, increases the friction and support burden due to broken references and would result in unacceptable breaking changes. The only extension methods we plan on removing are those duplicated by newer versions of the .NET Framework.

  5. Implement BCrypt or SCrypt for IHashProvider

    ServiceStack/Auth/SaltedHash.cs appears to implement one round of a HashAlgorithm. This constrains the user to KeyedHashAlgorithm, MD5, RIPEMD160, SHA1, SHA256, SHA384, and SHA512, none of which are suitable for hashing passwords.

    Would the ServiceStack project consider one of the existing BCrypt or SCrypt implementations in the GitHub community (for example viniciuschiele/Scrypt) or does it require that the library be professionally audited by penetration testers?

    Would it accept a contribution given a valid CLA?

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    No we can’t force any additional dependencies to the core ServiceStack.dll but you can use your own custom HashProvider by registering it in the IOC, e.g:

    container.Register(c =>
    new MyCustomHash());

  6. Add documentation for the PublishMessage in the IRedisClient

    In the IRedisClient version 4.0.0, there is a method with signature:
    long PublishMessage(string toChannel, string message);

    There is no documentation in the code indicating what the return type of "long" indicates. Having to go online to look this up is rather tedious, and seems to be a common problem with the documentation.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  7. 1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  8. Plugins inside multitenant environment

    Hi!

    We are building an asp.net mvc app with servicestack api. We have a plugin system which allows us dynamically load/unload plugins (Plugin is a custom servicestack plugin) as long as it is not multitenant solution there is no problems, if we wanted another version of plugin we install it during runtime and restart appdomain works like a charm. Now the question is is there a way to do this on multitenant situations where plugins must be loaded/unloaded on each request. To unload them maybe it is not that big of a problem, but how to deal when we have…

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    declined  ·  1 comment  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  9. Support EnumAsInt attribute in ServiceStack.Text JSON serializer

    EnumAsInt was added as an alternative to Flags in OrmLite. This would be nice to have in Text too.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    It’s a feature that it lets you control OrmLite independently of the serializers, otherwise it’s just a duplicate/redundant version of [Flags] which you should use instead if you want it on both.

  10. 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 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  11. Release separate nuget packages for netcore.

    Hello. I cannot to use ServiceStack.Api.Swagger in VS2017 because it automagically selects net461 version of the library. This can be a quite generic problem for packages containing dll for several platforms. VS2017 project format disallows me to use hint path (it uses target framework attribute) to explicitly select library. Thus, if your net461 exe app refers to netstandard project that uses Servicestack.Core you cannot refer any "mixed" nuget from exe. Please fix it for swagger. Thank you for consideration.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    All the available .NET Core only NuGet packages are listed on: http://docs.servicestack.net/templates-corefx#reference-core-packages

    Swagger is not included because it implements the older and deprecated Swagger 1.2 spec. Reference ServiceStack.Api.OpenApi.Core NuGet package instead to reference the newer Swagger 2.0 version.

    If for some reason you need to use the older version you can build it from https://github.com/ServiceStack/ServiceStack/tree/master/src/ServiceStack.Api.Swagger

  12. app.UseAuthorization() on .NET Core WebApi 2.1 built on .NET Framework.

    I was referencing your topic: https://docs.servicestack.net/templates-corefx and I am trying to get the [Authroize] tag working on .NET Core 2.1 Web API project built on .NET Framework. There is no IAppBuilder.UseAuthorization(). I wrote my own JWT custom auth handler and tried the following in the Startup:

    services.AddAuthentication("Basic")
    .AddScheme<BasicAuthenticationOptions, EdcAuthenticationHandler>("Basic", null);

            services.AddAuthorization();
    

    I also have
    app.UseAuthentication();

    but, again, there is no app.UseAuthorization()

    I want to be able to add [Authorize] attributes (with roles as well) and be able to access the User object inside my controller methods.

    Any insight would be appreciated.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    It sounds like you want to use create a Web API project using ASP.NET Core Identity Auth.

    ServiceStack is its own entirely different software stack that has its own Auth Provider implementation & [Authenticate] attribute:

    https://docs.servicestack.net/authentication-and-authorization

    and its own JWT Provider:

    https://docs.servicestack.net/jwt-authprovider

    We don’t support integration with ASP.NET Identity Auth in .NET Framework projects only in .NET Core projects:
    https://docs.servicestack.net/authentication-identity-aspnet

  13. 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 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
2 Next →
  • Don't see your idea?

Feature Requests

Categories

Feedback and Knowledge Base