Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

.NET Core based parser - 2x speedup #114

Merged
merged 57 commits into from
Sep 8, 2020
Merged
Changes from 1 commit
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
b3d674e
adds c# parser
philipmat Aug 25, 2020
0950d08
creates menu entries
philipmat Aug 25, 2020
571cda3
sample label to test deserialization
philipmat Aug 25, 2020
77e632f
deserializes everything but sublabels
philipmat Aug 25, 2020
3a42aca
deserializing sub-labels
philipmat Aug 25, 2020
c07a1e2
adds a helper class for csv writing
philipmat Aug 26, 2020
3752e39
expands paths to absolute paths
philipmat Aug 26, 2020
3cbc22b
exports labels
philipmat Aug 26, 2020
a99f89f
reads releases; isolates namespace
philipmat Aug 27, 2020
ea2e274
removes serialize-release
philipmat Aug 27, 2020
91917e6
adds common interface for export types
philipmat Aug 27, 2020
d3a33c5
sub_track example
philipmat Aug 27, 2020
44516f9
CSV export implementation for releases
philipmat Aug 27, 2020
5290a89
adds progress bars and some counts to drive the bar
philipmat Aug 28, 2020
2efb8d4
adds extra artists
philipmat Aug 29, 2020
1fae50a
parses tracks, subtracks, and track artists
philipmat Aug 29, 2020
c7f46ed
parses the "tracks" tag info for artists
philipmat Aug 29, 2020
ed93352
better guard for missing elements
philipmat Aug 29, 2020
96ef24e
parses artists
philipmat Aug 29, 2020
afd28af
fixes name variation export scheme
philipmat Aug 29, 2020
19d3cf9
employs a reading method that accounts for tags not being separated b…
philipmat Aug 29, 2020
fc92218
parses masters
philipmat Aug 29, 2020
8b080dc
moves parsing code into parser class
philipmat Aug 29, 2020
8e5b1bb
separates exporter into own class
philipmat Aug 29, 2020
e8189ce
adds test project
philipmat Aug 30, 2020
0304ed3
allows for stream parsing
philipmat Aug 30, 2020
c29e34b
moves single files under tests
philipmat Aug 30, 2020
c95861f
artist deserialization tests
philipmat Aug 30, 2020
46f62fe
uses deserialization method from parser
philipmat Aug 30, 2020
4af5b77
ensures event is not null on initialization
philipmat Aug 30, 2020
b174cdb
parses sample 1k artists xml
philipmat Aug 30, 2020
ed8b2c2
adds counts tests for all parser types
philipmat Aug 30, 2020
2d980e7
makes throttle a top-level constant
philipmat Aug 30, 2020
148e91a
adds dotnet workflow action
philipmat Aug 31, 2020
24db0df
sets working directory
philipmat Aug 31, 2020
9fe78a6
published .net app build artifacts
philipmat Aug 31, 2020
c00686c
names app for uploading build artifacts
philipmat Aug 31, 2020
728b1b9
fixes path to artifacts folder
philipmat Aug 31, 2020
b06bfb7
adds artifacts folder to ignore
philipmat Aug 31, 2020
cca21b2
adds builds for platforms
philipmat Aug 31, 2020
c53d1dd
adds visual studio/net ignore patterns
philipmat Aug 31, 2020
bdc3a99
generated invariant culture assemblies
philipmat Aug 31, 2020
3f9588c
changes track_id to text instead of int
philipmat Aug 31, 2020
d18c881
uses a 1mb buffer size when writing csv
philipmat Sep 2, 2020
d9a8cde
sets some security options on xml reader
philipmat Sep 2, 2020
c107738
sets a 1mb read buffer
philipmat Sep 2, 2020
7b9e581
avoids creating a new serializer for every node
philipmat Sep 2, 2020
8e52a19
Merge branch 'dotnet_parser' of github.com:philipmat/discogs-xml2db i…
philipmat Sep 2, 2020
9ceb7d3
adds parameters; they do nothing, yet
philipmat Sep 4, 2020
9798b30
repoints same files to test folder
philipmat Sep 4, 2020
fec651c
implements --dry-run support
philipmat Sep 4, 2020
9dd18c7
introduces RunOptions class to capture ... run options
philipmat Sep 4, 2020
a470a88
supports compress output via --gz
philipmat Sep 4, 2020
dfc1559
formatting
philipmat Sep 4, 2020
dbeefb7
mentions the .NET alternative and provides a readme file for this alt…
philipmat Sep 4, 2020
cb9e825
adds .net build badge
philipmat Sep 4, 2020
2632f89
Merge branch 'develop' into dotnet_parser
philipmat Sep 8, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
ensures event is not null on initialization
philipmat committed Aug 30, 2020

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
commit 4af5b779d1a5aff768829438c05002c3251658bd
2 changes: 1 addition & 1 deletion alternatives/dotnet/discogs/Parser.cs
Original file line number Diff line number Diff line change
@@ -22,7 +22,7 @@ public Parser(IExporter<T> exporter, int throttle = 1)
_typeName = typeof(T).Name.Split('.')[^1];
}

public event EventHandler<ParseEventArgs> OnSucessfulParse;
public event EventHandler<ParseEventArgs> OnSucessfulParse = delegate {};

public async Task ParseFileAsync(string fileName) {
using FileStream fileStream = new FileStream(fileName, FileMode.Open);