Skip to content

Releases: ODM2/WOFpy

v2.3.0

15 Nov 07:28
b3e5a66
Compare
Choose a tag to compare

Note: Testing largely focused on WOF/WaterML 1.1 only.

Enhancements

  • Allow custom urlpath to be specified; url path made independent of network name (#205)
  • Completely overhauled entry point HTML pages. More user friendly and now fully leveraging user information in config file (#167, #210, #214)

Bug fixes

  • Improved unicode support; fixed failures when unicode characters were encountered, including in Units strings (#148, #188, #197, #204)
  • Update Connection_String of config.cfg to address SQLite problems (@JuliaBong, #190)
  • Handle None Contact Info that causes error (#198)

WaterML 1.1 response content fixes and enhancements

  • Added missing unitCode element in GetValues (#202, #207)
  • Align code id/code in value elements (#209, #211)
  • Added GetSiteInfo TimeScale element content (#212)
  • Update default service wsdl url pattern (#192)

Others

  • Updated installation and setup documentation, and removed old, now-useless documents (#216; also #199 from @miguelcleon)
  • Enhanced tests, testing framework, and CI, including databases in CI; and now using the WaterML 1.1 xsd schema file for validation testing (#186, #193, #194, #196, #203; thanks also to @miguelcleon and @benjamincrary -- the latter using WaterML R package)
  • Diverse improvements resulting from @miguelcleon's efforts to register WOFpy endpoint with HIS central (#196)
  • Code cleanups

v2.2.0

31 Aug 15:42
Compare
Choose a tag to compare

Substantial set of bug fixes, reducing the number of fatal errors and failed requests, and greatly improving response content.

Failing errors fixed

  • Generalized handling of errors in database interactions, to address failures requiring WOFpy service restart (#170, #172, #173).
  • In GetSiteInfo 1.1 response, fixed mixed, incorrect use of note element (instead of siteProperty) and added exemption handling for cases where ODM2 SamplingFeatures.SamplingFeatureDescription and other relevant attributes are empty (#168, #171).
  • Improved unicode support; fixed failures when unicode characters were encountered (#148, #155, #158)
  • MS SQL testing and fixes for ODM2 timeseries DAO (#157, #174).

WaterML 1.1 response content problems

  • Addressed malformed, missing or sub-optimal content.
  • Overhauled handling of CV's, specially ones related to variables (including datatype, samplemedium, unitstype, generalcategory, valuetype, censorcode) (#160, #152, #153, #159, #175, #177, #178, #181, #182).
    • New functionality to cache relevant WaterML 1.1 CV's from the CUAHSI CV service, for term validation.
    • Focus -- but not exclusively -- on ODM2 timeseries DAO issues. Includes new mappings from ODM2 to WaterML 1.1 when feasible (censorcode, datatype, samplemedium).
  • Issues with GetSiteInfo response
    • Added missing Source and other elements from ODM2 timeseries DAO (#163).
    • Added missing, agencyName and agencyCode for government organizations (#162, #164).
  • Added missing SourceCode attribute in GetValues (#163).

Others

  • Added GetVariables sample request to sample REST web page (#169)
  • Updated documentation (but an overhaul and simplification is still needed)

Note: most testing focused on WOF/WaterML 1.1 only.

v2.1.0.b0 (beta)

14 Jun 19:09
Compare
Choose a tag to compare
v2.1.0.b0 (beta) Pre-release
Pre-release
  • greatly improved installation and setup, to make it easier and clearer to users
  • new, interim installation and setup documentation
  • removed pinned dependence to old sqlalchemy version (resulted in problems with odm2 timeseries dao handling SQLite); and to odm2api in setup.py
  • added a CLI interface to deploy wofpy: wofpy_config.py
  • added sample "production_configs" files
  • Travis-ci and Appveyor are back online, with a subset of priority target tests
  • performed extensive ODM2 timeseries DAO use case testing (SQLite LBR, MySQL LBR, PostgreSQL EnviroDIY)
    • many bug fixes to ensure DAO works across those 3 RDBMS
    • bug fixes: "Sources" now being properly read and exposed in WaterML 1.1 GetValues response
    • end date time now read from either action or timeseriesvalues, as appropriate
  • code cleanups
    • py3k & pep8 code cleanup (though not supporting py3k yet)
    • added some docstrings
    • removed code duplication: "templates", see #122
  • Note: most testing focused on WOF/WaterML 1.1 only. Double-checked that WOF/WaterML 1.0 and WaterML 2 works, but did not go further than that.

Version 2, WOF/WaterML 1.0 and 1.1 compliant

07 Feb 17:55
Compare
Choose a tag to compare
  • updated to latest ODM2API. Only required for ODM2 based services
  • Added ODM2 examples
  • Added WOF 1.1 and WaterML 1.1 services
  • Prototype WaterML2 output validated to spec.
  • Simplified the implementation of services
  • Changes to better support HIS Central and Hydrodesktop
    • server paths are lower CaSe for Hydrodesktop
    • soap paths have cuahsi_1_0 and cuahsi_1_1 in name for HIS Central.
  • better command line:
    • Configuration passed on the command line.
    • Connections with passwords are in text file, with file name passed on command line
  • Ability to run multiple services simplified.
  • changed to use spyne.io framework
  • Ability to add other transports.
  • aka less dependent on Flask
  • WSDL's now internal to the services
  • little more fragile since jinja2 template location may need to be specified
  • removed Debug=True from all the run_server_xxx.py code

Version 2, WOF/WaterML 1.0 and 1.1 compliant

07 Feb 18:28
Compare
Choose a tag to compare

There were changes to the underlying ODM2API, and ODM model.
These effect the deployment of ODM2 datasources, and not other datasources.

Version 2, WOF/WaterML 1.0 and 1.1 compliant

07 Dec 23:12
Compare
Choose a tag to compare
  • Added ODM2 examples
  • Added WOF 1.1 and WaterML 1.1 services
  • Prototype WaterML2 output validated to spec.
  • Simplified the implementation of services
  • Changes to better support HIS Central and Hydrodesktop
    • server paths are lower CaSe for Hydrodesktop
    • soap paths have cuahsi_1_0 and cuahsi_1_1 in name for HIS Central.
  • better command line:
    • Configuration passed on the command line.
    • Connections with passwords are in text file, with file name passed on command line
  • Ability to run multiple services simplified.
  • changed to use spyne.io framework
  • Ability to add other transports.
  • aka less dependent on Flask
  • WSDL's now internal to the services
    • little more fragile since jinja2 template location may need to be specified
  • removed Debug=True from all the run_server_xxx.py code

Version 2, WOF/WaterML 1.0 and 1.1 compliant

04 Dec 00:02
Compare
Choose a tag to compare
  • Added ODM2 examples
  • Added WOF 1.1 and WaterML 1.1 services
  • Prototype WaterML2 output validated to spec.
  • Simplified the implementation of services
  • Changes to better support HIS Central and Hydrodesktop
    • server paths are lower CaSe for Hydrodesktop
    • soap paths have cuahsi_1_0 and cuahsi_1_1 in name for HIS Central.
  • better command line:
    • Configuration passed on the command line.
    • Connections with passwords are in text file, with file name passed on command line
  • Ability to run multiple services simplified.
  • changed to use spyne.io framework
  • Ability to add other transports.
  • aka less dependent on Flask
  • WSDL's now internal to the services
    • little more fragile since jinja2 template location may need to be specified

Version 2, WOF/WaterML 1.0 and 1.1 compliant

25 Nov 17:58
Compare
Choose a tag to compare
  • Added ODM2 examples
  • Added WOF 1.1 and WaterML 1.1 services
  • Prototype WaterML2 output validated to spec.
  • Simplified the implementation of services
  • Changes to better support HIS Central and Hydrodesktop
    • server paths are lower CaSe for Hydrodesktop
    • soap paths have cuahsi_1_0 and cuahsi_1_1 in name for HIS Central.
  • better command line:
    • Configuration passed on the command line.
    • Connections with passwords are in text file, with file name passed on command line
  • Ability to run multiple services simplified.
  • changed to use spyne.io framework
  • Ability to add other transports.
  • aka less dependent on Flask
  • WSDL's now internal to the services
    • little more fragile since jinja2 template location may need to be specified

2.0.0004-alpha

19 Nov 22:20
Compare
Choose a tag to compare
2.0.0004-alpha Pre-release
Pre-release

server paths are lower CaSe for Hydrodesktop.
--port will work for run scripts that include it.

WOFPy 2.0.0003-alpha

19 Nov 19:47
Compare
Choose a tag to compare
WOFPy 2.0.0003-alpha Pre-release
Pre-release

add version to pages