embedio

A tiny, cross-platform, module based web server for .NET

OTHER License

Stars
1.5K
Committers
42

Bot releases are hidden (Show)

embedio - v3.5.2 Latest Release

Published by rdeago almost 2 years ago

This version backports some fixes that were already in master. See #565 for more details.

Versions 3.5.0 and 3.5.1 were retired because of a problem with NuGet package dependencies. See #569 for details.

embedio - Fix EndpointListener

Published by geoperez over 4 years ago

Issue #421

embedio - Fix Internal server error when response is compressed

Published by geoperez over 4 years ago

Fix issue #452 - Internal server error when response is compressed

embedio - Backport non-breaking changes to version 3

Published by geoperez over 4 years ago

PR #450

Version 3.4.0 contains breaking changes. Oops!

This PR is a backport of non-breaking changes since version 3.3.3.

From @rdeago PR #448 :

In preparation for version 4.0, I made some changes to internal classes.

No breaking changes here; this PR could probably be backported to version 3 if desired.

EDIT: I also added back component collections, so they can be safely removed from SWAN 3.0.

EDIT: Added JSON request deserializer with specified property name casing.

embedio - Fix issue FileSystemWatcher with OSX

Published by geoperez almost 5 years ago

Issue #423

embedio - Improvements to IPBanningModule

Published by geoperez almost 5 years ago

The module was rewritten to use pluggable criterions and add the ability to ban by max requests per second.

Happy New Year

embedio - New Security Module

Published by geoperez almost 5 years ago

EmbedIO brings a new security module named IPBanningModule. This module is an out-of-box feature similar to Fail2ban.

This module integrates one watcher for possible service abuse:

1 - Direct logger inspection - Add Regular Expressions to validate brute-force attacks.

In the next release we will include:

2 - Open connections inspection - Set up max connections per time to validate service abuse attacks.

Check the following example where the module is activated to the webserver with a whitelist of valid clients and a rule to detect massive 404 responses.

var server = new WebServer(o => o
                    .WithUrlPrefix("http://localhost:1010")
                    .WithMode(HttpListenerMode.EmbedIO))
                .WithIPBanning(o => o
                    .WithWhitelist(
                        "",
                        "172.16.16.124",
                        "172.16.17.1/24",
                        "192.168.1-2.2-5")
                    .WithRules("(404 Not Found)+"), 5,5);

Let's know if you like this new feature or not.

embedio - Default behavior change

Published by geoperez almost 5 years ago

BREAKING CHANGE
Change Two behavior settings to default value true (Only EmbedIO HttpListener):

  • EndPointManager.UseIpv6 - By default wildcard will bind to IPAddress.IPv6Any.
  • HttpListener.IgnoreWriteExceptions - By default will ignore the exceptions on Response Output Write (this was the default behavior in v2).
embedio - Fixed issue with JSON response using UTF-8 with BOM

Published by geoperez almost 5 years ago

Issue #400

embedio - Resolve issue with Request ContentLength casing

Published by geoperez about 5 years ago

Issue #389

embedio - Port to C# 8

Published by geoperez about 5 years ago

Upgraded codebase to C# 8.0. We are not using .NET Standard 2.1 yet.

Also, fixed issue #351

embedio - Add Strong-name to EmbedIO Assembly

Published by geoperez about 5 years ago

Add Strong-name to EmbedIO Assembly (Issue #363)

embedio - Update to SWAN 2.2.0

Published by geoperez about 5 years ago

Important update to SWAN JSON Serializer/Deserializer v2.2.0

embedio - Fix Response Content Length issue

Published by geoperez about 5 years ago

  • Issue #355
  • Update to SWAN 2.1.0
embedio - Fixed issue with FileSystemProvider paths

Published by geoperez about 5 years ago

Fixed issue #352

embedio - Resolve issue with RouteMatcher cache

Published by geoperez about 5 years ago

Issue #347
PR #348

embedio - Changes to logger

Published by geoperez about 5 years ago

Change some Info level logs to Debug

embedio - Major version 3.0.0

Published by geoperez about 5 years ago

Breaking changes

  • New Assembly name EmbedIO.dll.
  • New Assembly with unit Testing support classes and TestWebServer: EmbedIO.Testing.dll.
  • Remove Routing Strategy: everything is using Regex resolution of routes.
  • Remove return bool for WebModule, a new pipeline is available
  • Remove return bool or return Task for WebAPI Methods, you can return anything and the serializer will take control.

We will update the following wiki page for upgrade notes:

https://github.com/unosquare/embedio/wiki/Upgrade-from-v2

embedio - Last version before v3.0

Published by geoperez over 5 years ago

This version hides some internal classes and methods like WebSocket and mark with Obsolete attribute classes, methods and properties that will be dropped or replaced in the new major version.