Skip to content

Commit a590361

Browse files
authored
Merge pull request #18 from AngleSharp/devel
Release of v0.10
2 parents ffa8e92 + 0f229dc commit a590361

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+2152
-1972
lines changed

.editorconfig

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
# http://editorconfig.org
2-
root = true
3-
4-
[*]
5-
indent_style = space
6-
indent_size = 4
7-
end_of_line = lf
8-
charset = utf-8
9-
trim_trailing_whitespace = true
10-
11-
[*.csproj]
12-
indent_style = space
13-
indent_size = 2
1+
# http://editorconfig.org
2+
root = true
3+
4+
[*]
5+
indent_style = space
6+
indent_size = 4
7+
end_of_line = lf
8+
charset = utf-8
9+
trim_trailing_whitespace = true
10+
11+
[*.csproj]
12+
indent_style = space
13+
indent_size = 2

.gitignore

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,17 @@ local.properties
2727
# PDT-specific
2828
.buildpath
2929

30+
################
31+
## Rider
32+
################
33+
34+
.idea/
35+
36+
################
37+
## VS Code
38+
################
39+
40+
.vscode/
3041

3142
#################
3243
## Visual Studio
@@ -38,22 +49,34 @@ local.properties
3849
# User-specific files
3950
*.suo
4051
*.user
52+
*.userosscache
4153
*.sln.docstates
4254

55+
# User-specific files (MonoDevelop/Xamarin Studio)
56+
*.userprefs
57+
4358
# Build results
4459
[Dd]ebug/
4560
[Rr]elease/
4661
[Bb]in/
4762
[Bb]uild/
4863
[Oo]bj/
64+
65+
# Visual Studio 2015 cache/options directory
66+
.vs/
67+
68+
# DNX
69+
*.lock.json
70+
artifacts/
71+
4972
[Dd]ebug/
5073
[Rr]elease/
5174
[Pp]ackages/
5275
[Tt]ools/
5376
![Tt]ools/packages.config
54-
AngleSharp.sln.ide/
55-
AngleSharp.Core.sln.ide/
5677
TestResults/
78+
*.nuget.targets
79+
*.nuget.props
5780
*.nupkg
5881
*_i.c
5982
*_p.c

CHANGELOG.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,40 @@
1+
# 0.10.0
2+
3+
Released on Friday, January 4 2019.
4+
5+
- Updated to fit the latest version of AngleSharp
6+
17
# 0.3.2
28

9+
Released on Saturday, September 3 2016.
10+
311
- Updated to latest version
412
- Dispose WebSocket on unload
513
- Added `about:` handler
614

715
# 0.3.1
816

17+
Released on Sunday, July 17 2016.
18+
919
- Adjusted to service changes
1020

1121
# 0.3.0
1222

23+
Released on Friday, May 6 2016.
24+
1325
- Added a File requester (#11)
1426
- Added a FTP requester (#10)
1527

1628
# 0.2.0
1729

30+
Released on Tuesday, January 5 2016.
31+
1832
- Fixed compatibility bug (#7)
1933
- Added WebSocket interface (#5)
2034
- `IRequester` flexibility (#1)
2135

2236
# 0.1.0
2337

24-
- Initial release (#4, #3)
38+
Released on Sunday, October 18 2015.
39+
40+
- Initial release (#4, #3)

CONTRIBUTORS.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# AngleSharp.Io Contributors
2+
3+
Thanks :heart: to all who contributed to AngleSharp.Css via issues, pull requests, suggestions, and questions.
4+
5+
AngleSharp.Io contains code written by (in order of first pull request / commit):
6+
7+
* [Florian Rappl](https://github.com/FlorianRappl)
8+
* [Joel Verhagen](https://github.com/joelverhagen)
9+
10+
Without these awesome people AngleSharp.Io could not exist. Thanks to everyone for your contributions! :beers:
11+
12+
Missing you? Please contact us! Potentially, the simplest way is to file a PR with your name / GitHub profile link added to this file.

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The MIT License (MIT)
22

3-
Copyright (c) 2015 AngleSharp
3+
Copyright (c) 2015 - 2019 AngleSharp
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

README.md

Lines changed: 37 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,50 @@
11
![logo](https://raw.githubusercontent.com/AngleSharp/AngleSharp.Io/master/header.png)
22

3-
AngleSharp.Io
4-
=============
3+
# AngleSharp.Io
54

6-
AngleSharp.Io extends AngleSharp with powerful requesters, caching mechanisms, and storage systems. It is coupled more strongly to the underlying operating system than AngleSharp itself. Therefore it has stronger dependencies and demands and cannot be released as a PCL.
5+
[![Build Status](https://img.shields.io/appveyor/ci/FlorianRappl/AngleSharp-Io.svg?style=flat-square)](https://ci.appveyor.com/project/FlorianRappl/AngleSharp-Io)
6+
[![GitHub Tag](https://img.shields.io/github/tag/AngleSharp/AngleSharp.Io.svg?style=flat-square)](https://github.com/AngleSharp/AngleSharp.Io/releases)
7+
[![NuGet Count](https://img.shields.io/nuget/dt/AngleSharp.Io.svg?style=flat-square)](https://www.nuget.org/packages/AngleSharp.Io/)
8+
[![Issues Open](https://img.shields.io/github/issues/AngleSharp/AngleSharp.Io.svg?style=flat-square)](https://github.com/AngleSharp/AngleSharp.Io/issues)
9+
[![StackOverflow Questions](https://img.shields.io/stackexchange/stackoverflow/t/anglesharp.svg?style=flat-square)](https://stackoverflow.com/tags/anglesharp)
10+
[![CLA Assistant](https://cla-assistant.io/readme/badge/AngleSharp/AngleSharp.Io?style=flat-square)](https://cla-assistant.io/AngleSharp/AngleSharp.Io)
711

8-
Current status of this repository:
12+
AngleSharp.Io extends AngleSharp with powerful requesters, caching mechanisms, and storage systems. It is coupled more strongly to the underlying operating system than AngleSharp itself. Therefore it has stronger dependencies and demands and cannot be released for the standard framework (4.6). Nevertheless, it is released as a .NET Standard 2.0 library.
913

10-
[![Build status](https://img.shields.io/appveyor/ci/FlorianRappl/AngleSharp-Io.svg?style=flat-square)](https://ci.appveyor.com/project/FlorianRappl/AngleSharp-Io)
11-
[![Issues open](https://img.shields.io/github/issues/AngleSharp/AngleSharp.Io.svg?style=flat-square)](https://github.com/AngleSharp/AngleSharp.Io/issues)
12-
[![Nuget count](https://img.shields.io/nuget/v/AngleSharp.Io.svg?style=flat-square)](https://www.nuget.org/packages/AngleSharp.Io/)
14+
## Basic Configuration
1315

14-
**Status** Currently in experimental stage.
16+
If you just want to use *all* available requesters provided by AngleSharp.Io you can do the following:
1517

16-
Some legal stuff
17-
----------------
18+
```cs
19+
var config = Configuration.Default
20+
.WithRequesters() // from AngleSharp.Io
21+
.WithDefaultLoader(); // from AngleSharp
22+
```
23+
24+
This will register all requesters. Alternatively, the requesters can be provided explicitly. They are located in the `AngleSharp.Io.Network` namespace and have names such as `DataRequester`.
25+
26+
## Features
27+
28+
- New requesters
29+
- HTTP (using `HttpClient`)
30+
- FTP
31+
- Supporting data URLs
32+
- Supporting file URLs
33+
- Enhanced support for about: URLs
34+
- WebSockets (mostly interesting for scripting engines, e.g., JS)
35+
- Storage support by providing the `IStorage` interface
36+
37+
## Participating
38+
39+
Participation in the project is highly welcome. For this project the same rules as for the AngleSharp core project may be applied.
40+
41+
If you have any question, concern, or spot an issue then please report it before opening a pull request. An initial discussion is appreciated regardless of the nature of the problem.
42+
43+
## License
1844

1945
The MIT License (MIT)
2046

21-
Copyright (c) 2015 - 2016 AngleSharp
47+
Copyright (c) 2015 - 2019 AngleSharp
2248

2349
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
2450

build.cake

Lines changed: 37 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ var nugetRoot = buildResultDir + Directory("nuget");
3131
// Initialization
3232
// ----------------------------------------
3333

34-
Setup(() =>
34+
Setup(_ =>
3535
{
3636
Information("Building version {0} of AngleSharp.Io.", version);
3737
Information("For the publish target the following environment variables need to be set:");
@@ -51,57 +51,55 @@ Task("Restore-Packages")
5151
.IsDependentOn("Clean")
5252
.Does(() =>
5353
{
54-
NuGetRestore("./src/AngleSharp.Io.sln");
54+
NuGetRestore("./src/AngleSharp.Io.sln", new NuGetRestoreSettings {
55+
ToolPath = "tools/nuget.exe"
56+
});
5557
});
5658

5759
Task("Build")
5860
.IsDependentOn("Restore-Packages")
5961
.Does(() =>
6062
{
61-
if (isRunningOnWindows)
62-
{
63-
MSBuild("./src/AngleSharp.Io.sln", new MSBuildSettings()
64-
.SetConfiguration(configuration)
65-
.SetVerbosity(Verbosity.Minimal)
66-
);
67-
}
68-
else
69-
{
70-
XBuild("./src/AngleSharp.Io.sln", new XBuildSettings()
71-
.SetConfiguration(configuration)
72-
.SetVerbosity(Verbosity.Minimal)
73-
);
74-
}
63+
DotNetCoreBuild("./src/AngleSharp.Io.sln", new DotNetCoreBuildSettings() {
64+
Configuration = configuration
65+
});
7566
});
7667

7768
Task("Run-Unit-Tests")
7869
.IsDependentOn("Build")
7970
.Does(() =>
8071
{
81-
var settings = new NUnit3Settings
72+
var settings = new DotNetCoreTestSettings
8273
{
83-
Work = buildResultDir.Path.FullPath
74+
Configuration = configuration
8475
};
8576

8677
if (isRunningOnAppVeyor)
8778
{
88-
settings.Where = "cat != ExcludeFromAppVeyor";
79+
settings.TestAdapterPath = Directory(".");
80+
settings.Logger = "Appveyor";
81+
// TODO Finds a way to exclude tests not allowed to run on appveyor
82+
// Not used in current code
83+
//settings.Where = "cat != ExcludeFromAppVeyor";
8984
}
9085

91-
NUnit3("./src/**/bin/" + configuration + "/*.Tests.dll", settings);
86+
DotNetCoreTest("./src/AngleSharp.Io.Tests/", settings);
9287
});
9388

9489
Task("Copy-Files")
9590
.IsDependentOn("Build")
9691
.Does(() =>
9792
{
98-
var target = nugetRoot + Directory("lib") + Directory("net45");
93+
var framework = "netstandard2.0";
94+
var target = nugetRoot + Directory("lib") + Directory(framework);
95+
9996
CreateDirectory(target);
10097
CopyFiles(new FilePath[]
101-
{
102-
buildDir + File("AngleSharp.Io.dll"),
103-
buildDir + File("AngleSharp.Io.xml")
98+
{
99+
buildDir + Directory(framework) + File("AngleSharp.Io.dll"),
100+
buildDir + Directory(framework) + File("AngleSharp.Io.xml")
104101
}, target);
102+
105103
CopyFiles(new FilePath[] { "src/AngleSharp.Io.nuspec" }, nugetRoot);
106104
});
107105

@@ -113,12 +111,12 @@ Task("Create-Package")
113111
?? (isRunningOnAppVeyor ? GetFiles("C:\\Tools\\NuGet3\\nuget.exe").FirstOrDefault() : null);
114112

115113
if (nugetExe == null)
116-
{
114+
{
117115
throw new InvalidOperationException("Could not find nuget.exe.");
118116
}
119-
117+
120118
var nuspec = nugetRoot + File("AngleSharp.Io.nuspec");
121-
119+
122120
NuGetPack(nuspec, new NuGetPackSettings
123121
{
124122
Version = version,
@@ -127,7 +125,7 @@ Task("Create-Package")
127125
Properties = new Dictionary<String, String> { { "Configuration", configuration } }
128126
});
129127
});
130-
128+
131129
Task("Publish-Package")
132130
.IsDependentOn("Create-Package")
133131
.WithCriteria(() => isLocal)
@@ -142,14 +140,14 @@ Task("Publish-Package")
142140

143141
foreach (var nupkg in GetFiles(nugetRoot.Path.FullPath + "/*.nupkg"))
144142
{
145-
NuGetPush(nupkg, new NuGetPushSettings
146-
{
143+
NuGetPush(nupkg, new NuGetPushSettings
144+
{
147145
Source = "https://nuget.org/api/v2/package",
148-
ApiKey = apiKey
146+
ApiKey = apiKey
149147
});
150148
}
151149
});
152-
150+
153151
Task("Publish-Release")
154152
.IsDependentOn("Publish-Package")
155153
.WithCriteria(() => isLocal)
@@ -176,28 +174,29 @@ Task("Publish-Release")
176174
TargetCommitish = "master"
177175
}).Wait();
178176
});
179-
177+
180178
Task("Update-AppVeyor-Build-Number")
181179
.WithCriteria(() => isRunningOnAppVeyor)
182180
.Does(() =>
183181
{
184-
AppVeyor.UpdateBuildVersion(version);
182+
var num = AppVeyor.Environment.Build.Number;
183+
AppVeyor.UpdateBuildVersion($"{version}-{num}");
185184
});
186-
185+
187186
// Targets
188187
// ----------------------------------------
189-
188+
190189
Task("Package")
191190
.IsDependentOn("Run-Unit-Tests")
192191
.IsDependentOn("Create-Package");
193192

194193
Task("Default")
195-
.IsDependentOn("Package");
194+
.IsDependentOn("Package");
196195

197196
Task("Publish")
198197
.IsDependentOn("Publish-Package")
199198
.IsDependentOn("Publish-Release");
200-
199+
201200
Task("AppVeyor")
202201
.IsDependentOn("Run-Unit-Tests")
203202
.IsDependentOn("Update-AppVeyor-Build-Number");

0 commit comments

Comments
 (0)