Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
ea42660
Switching to Net 8.0
caetera Oct 18, 2024
df89589
Tests updated to the latest NUnit
caetera Oct 22, 2024
95c7e22
Fix logging and mzML
caetera Oct 22, 2024
3b497a9
feat: writer for mz_parquet v0.2 format
lazear Nov 15, 2024
6ee904c
Implement ion charges
caetera Jan 2, 2025
2009886
Convert AssemblyInfo to project properties
caetera Feb 25, 2025
14afbf6
Unified output path resolution
caetera Feb 25, 2025
a26a5ab
Precursor logic streamlined
caetera Feb 26, 2025
5d955be
Unified mass spectrometry data
caetera Feb 26, 2025
8d880ad
MS level filter and progress
caetera Feb 27, 2025
1e9b500
Move PrecursorTree to general SpectrumWriter
caetera Feb 28, 2025
5021515
Test for ParquetWriter
caetera Mar 3, 2025
1ef4d88
Precursor scan fix for MS level restricted files
caetera Mar 4, 2025
01cd3af
Merge pull request #192
caetera Mar 4, 2025
e23f499
Added build and test action
caetera Mar 11, 2025
4aa8111
Action to add artifacts on release
caetera Mar 18, 2025
bf2f02f
Update Readme
caetera Mar 20, 2025
adfc246
Tidying
caetera Mar 20, 2025
fcbc8db
Refine error messages
caetera Apr 9, 2025
27f438c
Zero-length mz data fix
caetera Jun 16, 2025
c9fa107
Precursor intensity in MGF
caetera Jun 17, 2025
0c4b354
Preserve file permissions when zipping artifacts
caetera Jun 18, 2025
a3880ff
Workaround for precursors mapped to missing scans
caetera Jun 19, 2025
9eb22bf
Refactoring - move reading mz data to a separate function
caetera Jun 20, 2025
1f1a837
Updating Tests
caetera Jul 18, 2025
8d7369c
Refactor scan interval parsing and add NumberIterator
caetera Jul 22, 2025
34eda0c
First implementation of precursor ion spectrum
caetera Aug 1, 2025
0017b9b
Refactoring
caetera Aug 7, 2025
a7d8816
Support of precursor-ion scans to all formats
caetera Aug 8, 2025
5bac912
Implementation of neutral loss/gain
caetera Sep 3, 2025
791bd0e
Update CV mappings for new instruments
caetera Oct 3, 2025
22cfd67
Convert to 2.0.0-dev
caetera Oct 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
46 changes: 46 additions & 0 deletions .github/workflows/buildandtest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: buildtest

on:
push:
paths:
- '**.cs'
- '.github/workflows/*.yml'
pull_request:
paths:
- '**.cs'
- '.github/workflows/*.yml'

jobs:
buildandtest:

runs-on: 'ubuntu-latest'

steps:
- uses: actions/checkout@v4
with:
path: 'main'

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x

- name: Get Thermo packages
uses: actions/checkout@v4
with:
repository: 'thermofisherlsms/RawFileReader'
path: 'ThermoPKG'
token: ${{ secrets.GITHUB_TOKEN }}
sparse-checkout: 'Libs/NetCore/Net8/*.nupkg'
sparse-checkout-cone-mode: 'false'

- name: Add Thermo packages as NuGet source
run: |
dotnet nuget add source -n ThermoPKG `pwd`/ThermoPKG/Libs/NetCore/Net8

- name: Build and test
run: |
cd main
dotnet build .
dotnet test .

78 changes: 78 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
name: publish

on:
release:
types: 'published'

jobs:
publish:

runs-on: 'ubuntu-latest'

steps:
- name: Checkout
uses: actions/checkout@v4
with:
path: 'main'

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x

- name: Get Thermo packages
uses: actions/checkout@v4
with:
repository: 'thermofisherlsms/RawFileReader'
path: 'ThermoPKG'
token: ${{ secrets.GITHUB_TOKEN }}
sparse-checkout: 'Libs/NetCore/Net8/*.nupkg'
sparse-checkout-cone-mode: 'false'

- name: Add Thermo packages as NuGet source
run: |
dotnet nuget add source -n ThermoPKG `pwd`/ThermoPKG/Libs/NetCore/Net8

- name: Publish all and zip artifacts
run: |
dotnet publish --configuration Release --runtime linux-x64 main/ThermoRawFileParser.csproj --sc -o publish/linux-x64
dotnet publish --configuration Release --runtime win-x64 main/ThermoRawFileParser.csproj --sc -o publish/win-x64
dotnet publish --configuration Release --runtime osx-x64 main/ThermoRawFileParser.csproj --sc -o publish/osx-x64
dotnet publish --configuration Release --framework net8.0 main/ThermoRawFileParser.csproj -o publish/net8
cd publish/linux-x64
zip -r -q ThermoRawFileParser-${{ github.ref_name }}-linux.zip *
cd ../win-x64
zip -r -q ThermoRawFileParser-${{ github.ref_name }}-win.zip *
cd ../osx-x64
zip -r -q ThermoRawFileParser-${{ github.ref_name }}-osx.zip *
cd ../net8
zip -r -q ThermoRawFileParser-${{ github.ref_name }}-net8.zip *

- name: Upload Linux to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: publish/linux-x64/ThermoRawFileParser-${{ github.ref_name }}-linux.zip
tag: ${{ github.ref }}

- name: Upload OSX to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: publish/osx-x64/ThermoRawFileParser-${{ github.ref_name }}-osx.zip
tag: ${{ github.ref }}

- name: Upload Windows to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: publish/win-x64/ThermoRawFileParser-${{ github.ref_name }}-win.zip
tag: ${{ github.ref }}

- name: Upload framework-based to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: publish/net8/ThermoRawFileParser-${{ github.ref_name }}-net8.zip
tag: ${{ github.ref }}

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,4 @@ obj/
.vs/
*.csproj.user
.vscode/
Properties/
4 changes: 0 additions & 4 deletions .travis.yml

This file was deleted.

Binary file removed .vs/ThermoRawFileParser/v15/.suo
Binary file not shown.
67 changes: 29 additions & 38 deletions App.config
Original file line number Diff line number Diff line change
@@ -1,44 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>

<configSections>
<section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
</configSections>

<log4net>
<root>
<level value="INFO" />
<appender-ref ref="console" />
<!-- <appender-ref ref="file" /> -->
</root>
<appender name="console" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{yyyy-MM-dd HH:mm:ss} %level %message%newline" />
</layout>
</appender>
<!--<appender name="file" type="log4net.Appender.RollingFileAppender">
<file value="ThermoRawFileParser.log" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="5" />
<maximumFileSize value="10MB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{yyyy-MM-dd HH:mm:ss} [%thread] %message%newline" />
</layout>
</appender>-->
</log4net>

<runtime>
<loadFromRemoteSources enabled="true" />
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="OpenMcdf" publicKeyToken="fdbb1629d7c00800" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.2.1.9" newVersion="2.2.1.9" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="ThermoFisher.CommonCore.Data" publicKeyToken="1aef06afb5abd953" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.0.0.88" newVersion="5.0.0.88" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.FileSystem.AccessControl" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="OpenMcdf.Extensions" publicKeyToken="fdbb1629d7c00800" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.3.0.0" newVersion="2.3.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Security.Principal.Windows" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Security.AccessControl" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
Loading