In the past few months it was a bit more quiet in the whole AngleSharp ecosystem. There have been a couple of reasons for this, but most importantly: AngleSharp has reached maturity and is ready for going into 1.0.
Yesterday a small hotfix release for AngleSharp v0.12 was released. With AngleSharp v0.12.1 also all the major libraries have been updated to v0.12.1 as well:
Last week the latest version of AngleSharp v0.12 has been released. Not only the core library was updated to v0.12, but we also started updating some related libraries. So far we released:
Today version v0.12 of AngleSharp has been published. Like v0.11 this is only an intermediate release before becoming officially stable with v1.0. Obviously, I could now write a bit on the bugfixes, enhancements, and additions that come with this release. However, there is a bigger organizational change that has finally happend with the release of v0.12 …
Yesterday the latest version of AngleSharp has been released. This version corrects some smaller issues of the big 0.10 release published a month ago. It also brings some further advancements such as improved fragment parsing, some internal bugfixes, or the removal of AngleSharp.Xml from the core library.
After more than 2 years AngleSharp v0.10 has finally become a reality. Jointly with AngleSharp.Io and AngleSharp.Css we now enter the v0.10 release cycle - an important milestone before hitting v1. The next step is an intermediate v0.11 (potentially of all of these libraries) to include feedback, suggestions, fixes, and other features before becoming stable.
In the recent two months some advancements have been made to ensure that AngleSharp will see active development also in the future. Today I am happy to announce that plans for joining the .NET Foundation are becoming more solid.
For over a year the development of AngleSharp was stale. But the project is not dead! Today I am proud to release a hotfix to the very successful version v0.9.9, called v0.9.9.1. This hotfix contains some critical fixes and improvements. It also paves the way for the v0.10 release, which is stuck with an observer problem (namely how to attach dynamic listeners to attribute changes for - from the perspective of AngleSharp.Core - unknown attributes), which is solved in this hotfix. In the long term this also enables users to disable the dynamic DOM, resulting in even better performance for static analysis when a fully dynamic DOM is not needed.
Yesterday version 0.9.8 of AngleSharp has been released. There are not too many API changes - and barely any breaking change so one should not notice anything.
Too much time has past since the last update. The current release v0.9.7 marks the beginning of a dramatic change in the AngleSharp philosophy. For all related projects the target will change with the upcoming version. AngleSharp will be fully targeting .NET core. This change is an investment in the future of .NET core. Furthermore, it should simplify the development process in the long run - as the target platform is clearly defined.
More than two months after the release of AngleSharp v0.9.5 the new version v0.9.6 has been published. Besides some bug fixes the version focused on starting some changes regarding the final API touches and modifications.
It has been quite a while until the last release, but better late than never: AngleSharp v0.9.5 is now available. There have been some bug fixes and improvements. Most importantly (and thanks to Jeremy Meng from Microsoft after discussions with the core Nancy developers) we now support the CoreCLR (dotnet) target via NuGet.
Finally, after weeks of delays and many discussions, AngleSharp v0.9.4 is available. There have been some bug fixes and improvements. Most importantly, these are encoding and insertion pointer fixes.
AngleSharp v0.9.3 is another round of minor updates. Besides a few bug fixes the
CompareDocumentPosition method has been improved. It now passes all tests and works reliably.
In the last days one of the remaining projects was officially launched:
AngleSharp.Io. This library will provide many essential IO classes, helper methods, and DOM interfaces. Most importantly it will bring new / improved requesters, such as a much better HTTP/HTTPS requester build on top of the
HttpClient class. As a consequence this library will unfortunately not be released as a PCL. In the long run more requesters will be integrated.
This week’s minor update was only a small patch that fixed a bug in the tokenizer and improved the XML parser’s performance. It also features the brandnew
application/json encoding type for form submission. The form submission process internals have been redesigned to be much easier to extend and use. The
FormDataSetEntry classes are now public. This forms the basis for sending forms without requiring a webpage or valid
<form> element at all.
A week ago the the first patch for AngleSharp v0.9.1 has been released. Besides fixing some issues the event loop model has been reworked. This will not be the last update to this mechanism. The next update v0.9.2 will focus on closing some existing issues, such as the proposed
An important aspect that is still missing (on the new homepage) is documentation. There should be two directly linked pages: “Get Started” and “Documentation”. Right now the documentation can only be found in the Wiki, with a little code being displayed in the AngleSharp/AngleSharp repository. My plan is to keep both, but to update / sync them from a larger (more dedicated) source.
Yesterday the latest version of Anglesharp has been released. This release marks the v0.9 milestone. Besides providing skeleton implementations for, e.g., the recent shadow DOM API draft, the
picture element, etc., this version fixes some bugs that may appear in conjunction with using scripts.