Skip to content

Conversation

rita-gwen
Copy link
Contributor

No description provided.

chambm and others added 30 commits December 12, 2024 11:41
…ike: https://devconnect.waters.com:48444/?sampleSetId=<sample set id>&injectionId=<injection id>

- added support for connecting to and browsing waters_connect servers in Skyline
- added folder hierarchy for remote accounts in the "Look in" dropdown for OpenDataSourceDialog (previously only worked for disk drives)
* redirected UNIFI to use ABI's protobuf-net.dll (I don't think it was ever actually using the unifi-protobuf-net.dll)
* refactored ParallelDownloadQueue into a separate class shared by UnifiData::Impl and WatersConnectImpl (a new implementation derived from UnifiData::Impl, but WatersConnect uses a separate queue for each channel)
* added optional performance timers in VendorReaderTestHarness
* disabled lockmass prompt for UNIFI in Skyline as it does not support it
* improved error handling in Skyline UNIFI browsing
* refactored and renamed existing UNIFI tests to work for both APIs
* added SRM SIC prefix to UNIFI SRM chromatograms
* added extraction of precursor and product m/z for SIM/SRM chromatograms from metadata if parsing from id fails
* added scan polarity to GetChromatogramMetadata
User can select a template on Waters Connect and selected entry is stored in ExportMethodDlg.

Select Template code STILL NEEDED:
Allow users to ONLY selected from Remote Connection
  and ONLY from Waters Connect connection

Next:
Select output folder ONLY in Waters Connect
Generate JSON to send to Waters Connect webservice to export the method to Waters Connect.
…ike: https://devconnect.waters.com:48444/?sampleSetId=<sample set id>&injectionId=<injection id>

- added support for connecting to and browsing waters_connect servers in Skyline
- added folder hierarchy for remote accounts in the "Look in" dropdown for OpenDataSourceDialog (previously only worked for disk drives)
* redirected UNIFI to use ABI's protobuf-net.dll (I don't think it was ever actually using the unifi-protobuf-net.dll)
* refactored ParallelDownloadQueue into a separate class shared by UnifiData::Impl and WatersConnectImpl (a new implementation derived from UnifiData::Impl, but WatersConnect uses a separate queue for each channel)
* added optional performance timers in VendorReaderTestHarness
* disabled lockmass prompt for UNIFI in Skyline as it does not support it
* improved error handling in Skyline UNIFI browsing
* refactored and renamed existing UNIFI tests to work for both APIs
* added SRM SIC prefix to UNIFI SRM chromatograms
* added extraction of precursor and product m/z for SIM/SRM chromatograms from metadata if parsing from id fails
* added scan polarity to GetChromatogramMetadata
…he same sample set don't need to repeatedly get that metadata

- fixed "Look In" browsing for waters_connect; "Up One Level" and selecting a folder higher up the hierarchy were not working
…new CommonMsData project

* moved Util dependencies of above classes to CommonUtil (e.g. TryTwice, NameValueParameters, Assume, FileEx)
* fixed TestRunner exception handler to recurse through all InnerExceptions, not just the first one
* added CommonMsData to Product-template.wxs and fixed its assembly name
…waters_connect connections (to avoid socket exhaustion when importing hundreds of small replicates)

* added dependencies of Microsoft.Extensions.Http to Shared/Lib (since they are also required by C++, can't just use NuGet)
* added Microsoft.Extensions.Http NuGet package to CommonMsData so dependencies are handled properly with the .NET executables
* set AutoGenerateBindingRedirects to true for Skyline, TestRunner, SeeMS, and MSConvertGUI (bindings redirects seem to be mandatory now because different dependencies depend on different versions of System.Runtime.CompilerServices.Unsafe)
* added BindingRedirectGenerator project to generate .exe.config files with binding redirects for C++ executables, as well as the msvc.jam machinery to call it and install the .exe.config files alongside the .exe
* added new .exe.config files to Product-template.wxs and Skyline.csproj
* fixed Skyline Jamfile to use install rule for msconvert and BiblioSpec so .exe.config files are copied with .exe
  Refactor to follow the common pattern for the exporters
  Make sure this is run in a separate thread and progress bar is shown.
  Implement multiple method file upload
  Multiple minor fixes.
 - read/write indicators for the folders
 - template text box tooltip
 - method name refactoring
 - leftovers from the merge.
 - JSON schema update
 - test fixes
- adduct removed from the compound/peptide name
- single quant transition per adduct
- RT, start time and end time made nullable
- info dialog added after successful upload
- audit reason JSON field removed
- fix for authentication exception in the account edit dialog
- fix for the exception handling in the mock HTTP handlers
@rita-gwen
Copy link
Contributor Author

These are mostly the changes requested by Stephen earlier this week:
Rita A Chupalov Thanks for that, we done some testing. Some initial findings...

  1. Remove adduct name from analyte name when passing on the API
  2. Ensure a single transition per adduct has a quan ion set
  3. Do not pass RT if it is unknown
  • we are changing this to be nullable on the API, the service will be updated asap
  1. Do not pass start and end time if scheduleType = FullGradientTime
  • we are changing these to be nullable on the API, the service will be updated asap
  1. Display a success dialog with method names and ID's - it may be useful for the user to be able to copy the ID's so they can search with them in w_c.
  2. Display a error dialog with the w_c error model info - it may be useful if the user can copy this info.
  3. Remove audit reason string - this is geting removed from the API.
  4. Sample Set import fails if Sample Set selected (rather than injections inside Sample Set)

re. #5, standard Skyline message dialog allows user to copy the message using Ctrl-C. The error dialog already shows the server response string as part of the exception message. It can be copied using Show More button.
It looks like the start and end times are still not nullable on the API, I am getting an exception with the standard method upload.
I need some clarification regarding the internal standard field since there are multiple standards possible in Skyline. Is this quantification, RTi or QC standard.
This commit does not include the fix on the #8. It is probably result of merging the sample set logic into this branch. Matt's input on this might be helpful.

@rita-gwen
Copy link
Contributor Author

This commit also includes a fix on the problem Eddie discovered earlier when incorrect credentials in the Account Edit dialog cause exception:

Failed authentication shows the "report / don't report" exception dialog.
Expected: an error message. Actual: a stack trace appears in exception reporting dialog
Repro: open Tools => Options => Remote Accounts. Enter invalid credentials. Click [Connect].

- run duration field is enabled for the standard method
- missing multiple method check fixed
- RT is added to the standard method if present
- library rank is added to the quant ion logic
- missing quant ion in the last adduct fixed
 - show results from all methods in multiple method upload
- fix for comma in the compound name
- fix for the space in the folder name
- w_c => Waters Connect
- Run Duration disappeared
}
}

public class ProgressableStreamContents
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't need this, remove

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants