{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":228677190,"defaultBranch":"master","name":"MHKiT-Python","ownerLogin":"MHKiT-Software","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2019-12-17T18:24:24.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/58954145?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1723635408.0","currentOid":""},"activityList":{"items":[{"before":"e2b4d1a33afbcdfa34645a4a652e72077696c889","after":"d364d565db9313df88cc97095d8259e3956615d4","ref":"refs/heads/develop","pushedAt":"2024-09-11T12:43:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"MHKiT Python 3.12 support (#351)\n\nAdds Python 3.12 as a supported version.","shortMessageHtmlLink":"MHKiT Python 3.12 support (#351)"}},{"before":"789cc06a66b8fdf3fe272c1ebad4fab8c4bdc488","after":"e2b4d1a33afbcdfa34645a4a652e72077696c889","ref":"refs/heads/develop","pushedAt":"2024-09-10T19:36:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"Numpy 2.0 (#333)\n\nMake MHKiT compatible with Numpy 2.0","shortMessageHtmlLink":"Numpy 2.0 (#333)"}},{"before":"efcda0a3916479946095942d9a9f62eda8cc644a","after":"789cc06a66b8fdf3fe272c1ebad4fab8c4bdc488","ref":"refs/heads/develop","pushedAt":"2024-08-28T13:14:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"Improve type handling and resolve #339 (#348)\n\n* fix issue 339 - bug in wave performance MAEP matrix\r\n\r\n* type_handling - special dataset to dataarray case and tests\r\n\r\n---------\r\n\r\nCo-authored-by: ssolson ","shortMessageHtmlLink":"Improve type handling and resolve #339 (#348)"}},{"before":"e0d59c78c9872d7e858b6dd7941825f4c2a470e1","after":"efcda0a3916479946095942d9a9f62eda8cc644a","ref":"refs/heads/develop","pushedAt":"2024-08-19T16:03:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"Add optional parameter frequency_dimension across wave.resource (#336)\n\n* add frequency_dimension parameter across all necessary wave.resource functions\r\n\r\n* specify frequency_dimension in surface_elevation summation","shortMessageHtmlLink":"Add optional parameter frequency_dimension across wave.resource (#336)"}},{"before":"09b9d7f3b75eb64f49722752711cb1b1d42fc804","after":"e0d59c78c9872d7e858b6dd7941825f4c2a470e1","ref":"refs/heads/develop","pushedAt":"2024-08-14T11:46:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"Fix: Handle unnamed index/dimension in wave.resource.surface_elevation (#341)\n\n* Fix: If unnamed, set spectrum dim_0 name to \"Frequency\"\r\n\r\n* Test: input spectrum without index name defined\r\n\r\n* Fix: Use found frequency dimension name\r\n\r\n* Test: input wave spectrum with unnamed index","shortMessageHtmlLink":"Fix: Handle unnamed index/dimension in wave.resource.surface_elevation ("}},{"before":"24674f19ac006445f01d4e0408aac2c699c25a51","after":"948c6b91ac1b8c3f784f8a242c1c9e5f3f535c2b","ref":"refs/heads/master","pushedAt":"2024-08-13T16:15:00.000Z","pushType":"pr_merge","commitsCount":7,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"MHKiT version increase for new release (#346)\n\n*MHKiT v0.8.2","shortMessageHtmlLink":"MHKiT version increase for new release (#346)"}},{"before":"62b85fb9355ab3dd914d649ac0cd635ce3ecf8d7","after":"09b9d7f3b75eb64f49722752711cb1b1d42fc804","ref":"refs/heads/develop","pushedAt":"2024-08-10T14:04:51.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"MHKiT version increase for new release (#346)\n\n*MHKiT v0.8.2","shortMessageHtmlLink":"MHKiT version increase for new release (#346)"}},{"before":"fec6c2e060e9fe090bd1f633c1f1afa3d2a809da","after":"62b85fb9355ab3dd914d649ac0cd635ce3ecf8d7","ref":"refs/heads/develop","pushedAt":"2024-08-09T13:41:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"matplotlib >=3.8 (#345)\n\nBug fix by removing matplotlib version check needed for < 3.8.0","shortMessageHtmlLink":"matplotlib >=3.8 (#345)"}},{"before":"b2b903d879a160dba2daeccf929e1d8050f1e360","after":"fec6c2e060e9fe090bd1f633c1f1afa3d2a809da","ref":"refs/heads/develop","pushedAt":"2024-08-08T12:56:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"Speed up Wind Toolkit tests (#338)\n\nThis PR addresses #315 by:\r\n- Changes the data called by the Wind Toolkit tests so that they run faster\r\n- Updates the .csv files that the tests compare against\r\n- Updates a few descriptions in the metocean example, fixes a sorting issue, reduces the data downloaded there\r\n- Tests in hindcast match the notebooks and use the same cache.","shortMessageHtmlLink":"Speed up Wind Toolkit tests (#338)"}},{"before":"2c49815de0e31e0ebd8e140a4c0ef88bbb6a2605","after":"b2b903d879a160dba2daeccf929e1d8050f1e360","ref":"refs/heads/develop","pushedAt":"2024-07-15T16:10:52.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"Update NOAA Request function (#332)\n\nFixes #223","shortMessageHtmlLink":"Update NOAA Request function (#332)"}},{"before":"cf877b621b9a395d0aa8c2be4b7b793d66df5407","after":"2c49815de0e31e0ebd8e140a4c0ef88bbb6a2605","ref":"refs/heads/develop","pushedAt":"2024-07-13T04:54:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"ipython notebook test (#330)\n\nThis PR adds a Github action to test the example notebooks as part of or CD pipeline. Additionally a timeout is added to which notebooks will fail if they exceed the given time.","shortMessageHtmlLink":"ipython notebook test (#330)"}},{"before":"da22c8e4029d7508b127be4d485128e5b92cbd82","after":"cf877b621b9a395d0aa8c2be4b7b793d66df5407","ref":"refs/heads/develop","pushedAt":"2024-07-10T21:08:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"akeeste","name":"Adam Keester","path":"/akeeste","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/72414466?s=80&v=4"},"commit":{"message":"Improve `surface_elevation` internal method selection (#340)\n\n* Test: Determine method using input frequency index\r\n\r\n* Feat: Use sum of sines if ifft is not computable\r\n\r\nThis change allows `surface_elevation` to return a result if the user\r\ninputs a spectrum with a frequency index that does not have a zero\r\nfrequency.\r\n\r\nIf the non zero frequency index condition is found when the method is\r\n`ifft` we warn the user and change the method to `sum_of_sines`\r\n\r\n* Fix: Use previously found frequency index\r\n\r\nS.index may not exist for some input datasets, but f[0] does and we\r\nshould use the value of f[0] here.\r\n\r\n* Test: Warn when using ifft with a non zero frequency\r\n\r\n* Lint","shortMessageHtmlLink":"Improve surface_elevation internal method selection (#340)"}},{"before":"ed04eb64fd43adc398253a78301209ca2efeb063","after":null,"ref":"refs/heads/np2","pushedAt":"2024-07-03T21:29:56.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jmcvey3","name":"James McVey","path":"/jmcvey3","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/53623232?s=80&v=4"}},{"before":null,"after":"ed04eb64fd43adc398253a78301209ca2efeb063","ref":"refs/heads/np2","pushedAt":"2024-07-03T21:28:49.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jmcvey3","name":"James McVey","path":"/jmcvey3","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/53623232?s=80&v=4"},"commit":{"message":"Use python classes to avoid printing numpy scalars on attributes","shortMessageHtmlLink":"Use python classes to avoid printing numpy scalars on attributes"}},{"before":"089766b4541418bc6e4f4ed0df8b09c813339c32","after":"da22c8e4029d7508b127be4d485128e5b92cbd82","ref":"refs/heads/develop","pushedAt":"2024-07-03T15:58:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"Improve Reynolds stress ADCP estimation notebook discussion V2 (#326)\n\n* tke updates\r\n\r\n* Fix shear velocity functions\r\n\r\n* More detail for tke shear production\r\n\r\n* Don't rotate heading beyond 360 degrees\r\n\r\n* Fix some typos in notebook\r\n\r\n* Rename deprecated function","shortMessageHtmlLink":"Improve Reynolds stress ADCP estimation notebook discussion V2 (#326)"}},{"before":"72156c6de678252e5ac605761f85a25576310bf7","after":null,"ref":"refs/heads/np2","pushedAt":"2024-07-02T00:41:40.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jmcvey3","name":"James McVey","path":"/jmcvey3","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/53623232?s=80&v=4"}},{"before":null,"after":"72156c6de678252e5ac605761f85a25576310bf7","ref":"refs/heads/np2","pushedAt":"2024-07-02T00:41:10.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jmcvey3","name":"James McVey","path":"/jmcvey3","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/53623232?s=80&v=4"},"commit":{"message":"Fix Nortek datatypes","shortMessageHtmlLink":"Fix Nortek datatypes"}},{"before":"83a9d6d77841bd9da6f0d494c1df9f4bb43d58b0","after":"24674f19ac006445f01d4e0408aac2c699c25a51","ref":"refs/heads/master","pushedAt":"2024-06-30T13:37:15.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"Merge pull request #337 from MHKiT-Software/develop\n\n# MHKiT v0.8.1\r\nMHKiT v0.8.1, includes bug fixes in the example notebooks and fixes the dependencies to requirements updates prior to Numpy 2.0.0.\r\n\r\nFixes MHKIT v0.8.0 installation issues (#334) by fixing the dependencies.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/335\r\n\r\nFixes bugs in MHKiT example notebooks\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/327","shortMessageHtmlLink":"Merge pull request #337 from MHKiT-Software/develop"}},{"before":"37254f794d2a856b34538f535d4400ddd26cbcc6","after":"089766b4541418bc6e4f4ed0df8b09c813339c32","ref":"refs/heads/develop","pushedAt":"2024-06-28T13:48:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"MHKiT Numpy < 2.0.0 (#335)\n\n* no np 2.0\r\n\r\n* v0.8.1\r\n\r\n* fix python versions description\r\n\r\n* netcdf <=1.6.5","shortMessageHtmlLink":"MHKiT Numpy < 2.0.0 (#335)"}},{"before":"83a9d6d77841bd9da6f0d494c1df9f4bb43d58b0","after":"37254f794d2a856b34538f535d4400ddd26cbcc6","ref":"refs/heads/develop","pushedAt":"2024-06-18T12:32:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"v0.8.0 bug fixes and doc string fixes (#327)\n\n* fix ipynb notebooks\r\n\r\n* update links in noaa.py\r\n\r\n* clean up module docstrings\r\n\r\n* add notebook and python <3.12 to dependencies\r\n\r\n* update variable naming in hindcast.py\r\n\r\n* move notebook to a pip install in yaml file\r\n\r\n* update np.product to np.prod per the depreciation warning\r\n\r\n* fix type checking in wave.performance capture length and maep matrix\r\n\r\n* fix valueerror in tidal.graphics\r\n\r\n* slight speedup for utils.type_handling\r\n\r\n* revert minor utils type_handling change\r\n\r\n* revert dataarray conversion in power_performance_workflow\r\n\r\n* fix mooring test\r\n\r\n---------\r\n\r\nCo-authored-by: ssolson ","shortMessageHtmlLink":"v0.8.0 bug fixes and doc string fixes (#327)"}},{"before":"83a9d6d77841bd9da6f0d494c1df9f4bb43d58b0","after":null,"ref":"refs/heads/develop_new","pushedAt":"2024-05-08T14:40:33.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"}},{"before":"fb5f9b8f3e227c6853964b11de67fb98e6170b4e","after":"83a9d6d77841bd9da6f0d494c1df9f4bb43d58b0","ref":"refs/heads/develop","pushedAt":"2024-05-08T14:19:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"MHKiT v0.8.0 (#321)\n\n# MHKiT v0.8.0\r\nWe're excited to announce the release of MHKiT v0.8.0, which brings a host of new features, enhancements, and bug fixes across various modules, ensuring compatibility with Python 3.10 and 3.11, and introducing full xarray support for more flexible data handling. Significant updates in the Wave and DOLfYN modules improve functionality and extend capabilities.\r\n\r\n## Python 3.10 & 3.11 Support\r\nMHKiT now supports python 3.10 and 3.11. Support for 3.12 will follow in the next minor update.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/240\r\n\r\n\r\n## Wave Module\r\n### Enhancements:\r\n**Automatic Threshold Calculation for Peaks-Over-Threshold**: We've introduced a new feature that automatically calculates the \"best\" threshold for identifying significant wave events. This method, originally developed by Neary, V. S., et al. in their 2020 study, has now been translated from Matlab to Python, enhancing our existing peaks-over-threshold functionality.\r\n\r\n**Wave Heights Analysis**: A new function, `wave_heights`, has been added to extract the heights of individual waves from a time series. This function uses zero up-crossing analysis to accurately measure wave heights, improving upon our previous methods which only provided the maximum value between up-crossings.\r\n\r\n**Enhanced Zero Crossing Analysis**: Building on the above, the zero crossing code previously embedded in `global_peaks` has been isolated into a helper function. This modular approach not only refines the codebase but also supports new functionalities such as calculating wave heights, zero crossing periods, and identifying crests.\r\n\r\n### Bug Fixes:\r\n**Contour Sampling Error in Wave Contours**: A bug identified in `mhkit.wave.contours.samples_contour` has been resolved. The issue occurred when period samples defined using the maximum period resulted in values outside the interpolation range of the contour data. This was corrected by ensuring that all sampling points are within the interpolation range and adjusting the contour data selection process accordingly.\r\n\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/268 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/252 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/278\r\n\r\n\r\n## Xarray Support\r\nMHKiT functions now fully support the use of xarray for passing and returning data.\r\n\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/279 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/282\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/285\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/302\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/310\r\n\r\n\r\n## DOLfYN\r\n\r\nThanks to the many user contributions and users of MHKiT the DOLFYN module include a significant number of enhancements and bug fixes. \r\n\r\n### Enhancements:\r\n**Altimeter Support**: Enhanced the Nortek Signature Reader to add capability for reading ADCP dual profile configurations.\r\n\r\n**Data Handling Improvements**: Introduced logic to skip messy header data that can accumulate during measurements collected via Nortek software on PCs and Macs.\r\n\r\n**Instrument Noise Subtraction**: Added a function to subtract instrument noise from turbulence intensity estimation using RMS calculations, providing results that differ by approximately 1% from the existing standard deviation-based \"I\" property.\r\n\r\n**Improved File Handling**: Updates for RDI files to handle changing \"number of cells\" and variable \"cell sizes,\" which are now bin-averaged into the largest cell size.\r\n\r\n### Bug Fixes:\r\n**Power Spectra Calculation**: Fixed a bug where a given noise value was not being subtracted from the power spectra, and noise was inadvertently added as an input to dissipation rate calculations.\r\n\r\n**Improved Header Handling**: Allowed RDI reader to skip junk headers effectively.\r\n\r\n**Nortek Reader C Types Update**: Adjusted C types in the Nortek reader to handle below-zero water temperatures and to allow pitch and roll values to go negative.\r\n\r\n\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/280 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/289\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/290\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/292\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/293\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/294\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/299\r\n\r\n\r\n## River & Tidal: D3D\r\nAdded limits to `variable_interpolation` and added 3 array input capability to `create_points`\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/271\r\n\r\n## Developer Experience\r\n### Black formatting\r\nBlack formatting is now enforced on all MHKiT files. This ensures consistent formatting across the MHKiT package.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/281\r\n\r\n### Linting & Type Hints\r\nMHKiT is in the process of enforcing pylint and adding type hints to all functions. Currently this has been achieved and is enforced in the Loads and Power modules.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/288 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/296 \r\n\r\n### CI/CD\r\nThis release introduces significant reduction in testing time for development. This is achieved by reducing the number of tests for pulls against the develop branch and only running hindcast test when changes are made to it. A bug in the hindcast CI was fixed which only ran on changes to the hindcast tests instead of the hindcast module. Additionally the wave and wind hindcast needed to be separated in 2 jobs due to the excessive time taken to run a wind cache. This created a number of follow on PRs around solidifying the logic of these job. A special case for Python 3.8, pip, and Mac OS was added to use homebrew to install NetCDF and HDF5 to get tests to pass.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/241\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/270\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/306\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/311\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/317\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/318\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/319\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/320\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/324\r\n\r\n### Clean Up\r\nMHKiT fixed an implementation error where functions used assert instead of built in errors for type and value checking. Additionally these PRs removed unused files, fixed typos, and created an argument which allows users to run CDIP API calls silently.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/276\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/272\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/273","shortMessageHtmlLink":"MHKiT v0.8.0 (#321)"}},{"before":"fb5f9b8f3e227c6853964b11de67fb98e6170b4e","after":null,"ref":"refs/heads/develop_old","pushedAt":"2024-05-08T14:16:01.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"}},{"before":null,"after":"fb5f9b8f3e227c6853964b11de67fb98e6170b4e","ref":"refs/heads/develop","pushedAt":"2024-05-08T14:16:00.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"CI: Coveralls flag-name (#320)\n\n* set flag name\r\n\r\n* use master coveralls-app action\r\n\r\n* v0.8.0","shortMessageHtmlLink":"CI: Coveralls flag-name (#320)"}},{"before":"83a9d6d77841bd9da6f0d494c1df9f4bb43d58b0","after":null,"ref":"refs/heads/develop","pushedAt":"2024-05-08T14:15:05.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"}},{"before":null,"after":"83a9d6d77841bd9da6f0d494c1df9f4bb43d58b0","ref":"refs/heads/develop_new","pushedAt":"2024-05-08T14:15:04.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"MHKiT v0.8.0 (#321)\n\n# MHKiT v0.8.0\r\nWe're excited to announce the release of MHKiT v0.8.0, which brings a host of new features, enhancements, and bug fixes across various modules, ensuring compatibility with Python 3.10 and 3.11, and introducing full xarray support for more flexible data handling. Significant updates in the Wave and DOLfYN modules improve functionality and extend capabilities.\r\n\r\n## Python 3.10 & 3.11 Support\r\nMHKiT now supports python 3.10 and 3.11. Support for 3.12 will follow in the next minor update.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/240\r\n\r\n\r\n## Wave Module\r\n### Enhancements:\r\n**Automatic Threshold Calculation for Peaks-Over-Threshold**: We've introduced a new feature that automatically calculates the \"best\" threshold for identifying significant wave events. This method, originally developed by Neary, V. S., et al. in their 2020 study, has now been translated from Matlab to Python, enhancing our existing peaks-over-threshold functionality.\r\n\r\n**Wave Heights Analysis**: A new function, `wave_heights`, has been added to extract the heights of individual waves from a time series. This function uses zero up-crossing analysis to accurately measure wave heights, improving upon our previous methods which only provided the maximum value between up-crossings.\r\n\r\n**Enhanced Zero Crossing Analysis**: Building on the above, the zero crossing code previously embedded in `global_peaks` has been isolated into a helper function. This modular approach not only refines the codebase but also supports new functionalities such as calculating wave heights, zero crossing periods, and identifying crests.\r\n\r\n### Bug Fixes:\r\n**Contour Sampling Error in Wave Contours**: A bug identified in `mhkit.wave.contours.samples_contour` has been resolved. The issue occurred when period samples defined using the maximum period resulted in values outside the interpolation range of the contour data. This was corrected by ensuring that all sampling points are within the interpolation range and adjusting the contour data selection process accordingly.\r\n\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/268 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/252 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/278\r\n\r\n\r\n## Xarray Support\r\nMHKiT functions now fully support the use of xarray for passing and returning data.\r\n\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/279 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/282\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/285\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/302\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/310\r\n\r\n\r\n## DOLfYN\r\n\r\nThanks to the many user contributions and users of MHKiT the DOLFYN module include a significant number of enhancements and bug fixes. \r\n\r\n### Enhancements:\r\n**Altimeter Support**: Enhanced the Nortek Signature Reader to add capability for reading ADCP dual profile configurations.\r\n\r\n**Data Handling Improvements**: Introduced logic to skip messy header data that can accumulate during measurements collected via Nortek software on PCs and Macs.\r\n\r\n**Instrument Noise Subtraction**: Added a function to subtract instrument noise from turbulence intensity estimation using RMS calculations, providing results that differ by approximately 1% from the existing standard deviation-based \"I\" property.\r\n\r\n**Improved File Handling**: Updates for RDI files to handle changing \"number of cells\" and variable \"cell sizes,\" which are now bin-averaged into the largest cell size.\r\n\r\n### Bug Fixes:\r\n**Power Spectra Calculation**: Fixed a bug where a given noise value was not being subtracted from the power spectra, and noise was inadvertently added as an input to dissipation rate calculations.\r\n\r\n**Improved Header Handling**: Allowed RDI reader to skip junk headers effectively.\r\n\r\n**Nortek Reader C Types Update**: Adjusted C types in the Nortek reader to handle below-zero water temperatures and to allow pitch and roll values to go negative.\r\n\r\n\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/280 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/289\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/290\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/292\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/293\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/294\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/299\r\n\r\n\r\n## River & Tidal: D3D\r\nAdded limits to `variable_interpolation` and added 3 array input capability to `create_points`\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/271\r\n\r\n## Developer Experience\r\n### Black formatting\r\nBlack formatting is now enforced on all MHKiT files. This ensures consistent formatting across the MHKiT package.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/281\r\n\r\n### Linting & Type Hints\r\nMHKiT is in the process of enforcing pylint and adding type hints to all functions. Currently this has been achieved and is enforced in the Loads and Power modules.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/288 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/296 \r\n\r\n### CI/CD\r\nThis release introduces significant reduction in testing time for development. This is achieved by reducing the number of tests for pulls against the develop branch and only running hindcast test when changes are made to it. A bug in the hindcast CI was fixed which only ran on changes to the hindcast tests instead of the hindcast module. Additionally the wave and wind hindcast needed to be separated in 2 jobs due to the excessive time taken to run a wind cache. This created a number of follow on PRs around solidifying the logic of these job. A special case for Python 3.8, pip, and Mac OS was added to use homebrew to install NetCDF and HDF5 to get tests to pass.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/241\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/270\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/306\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/311\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/317\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/318\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/319\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/320\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/324\r\n\r\n### Clean Up\r\nMHKiT fixed an implementation error where functions used assert instead of built in errors for type and value checking. Additionally these PRs removed unused files, fixed typos, and created an argument which allows users to run CDIP API calls silently.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/276\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/272\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/273","shortMessageHtmlLink":"MHKiT v0.8.0 (#321)"}},{"before":null,"after":"83a9d6d77841bd9da6f0d494c1df9f4bb43d58b0","ref":"refs/heads/develop","pushedAt":"2024-05-08T14:14:49.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"MHKiT v0.8.0 (#321)\n\n# MHKiT v0.8.0\r\nWe're excited to announce the release of MHKiT v0.8.0, which brings a host of new features, enhancements, and bug fixes across various modules, ensuring compatibility with Python 3.10 and 3.11, and introducing full xarray support for more flexible data handling. Significant updates in the Wave and DOLfYN modules improve functionality and extend capabilities.\r\n\r\n## Python 3.10 & 3.11 Support\r\nMHKiT now supports python 3.10 and 3.11. Support for 3.12 will follow in the next minor update.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/240\r\n\r\n\r\n## Wave Module\r\n### Enhancements:\r\n**Automatic Threshold Calculation for Peaks-Over-Threshold**: We've introduced a new feature that automatically calculates the \"best\" threshold for identifying significant wave events. This method, originally developed by Neary, V. S., et al. in their 2020 study, has now been translated from Matlab to Python, enhancing our existing peaks-over-threshold functionality.\r\n\r\n**Wave Heights Analysis**: A new function, `wave_heights`, has been added to extract the heights of individual waves from a time series. This function uses zero up-crossing analysis to accurately measure wave heights, improving upon our previous methods which only provided the maximum value between up-crossings.\r\n\r\n**Enhanced Zero Crossing Analysis**: Building on the above, the zero crossing code previously embedded in `global_peaks` has been isolated into a helper function. This modular approach not only refines the codebase but also supports new functionalities such as calculating wave heights, zero crossing periods, and identifying crests.\r\n\r\n### Bug Fixes:\r\n**Contour Sampling Error in Wave Contours**: A bug identified in `mhkit.wave.contours.samples_contour` has been resolved. The issue occurred when period samples defined using the maximum period resulted in values outside the interpolation range of the contour data. This was corrected by ensuring that all sampling points are within the interpolation range and adjusting the contour data selection process accordingly.\r\n\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/268 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/252 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/278\r\n\r\n\r\n## Xarray Support\r\nMHKiT functions now fully support the use of xarray for passing and returning data.\r\n\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/279 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/282\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/285\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/302\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/310\r\n\r\n\r\n## DOLfYN\r\n\r\nThanks to the many user contributions and users of MHKiT the DOLFYN module include a significant number of enhancements and bug fixes. \r\n\r\n### Enhancements:\r\n**Altimeter Support**: Enhanced the Nortek Signature Reader to add capability for reading ADCP dual profile configurations.\r\n\r\n**Data Handling Improvements**: Introduced logic to skip messy header data that can accumulate during measurements collected via Nortek software on PCs and Macs.\r\n\r\n**Instrument Noise Subtraction**: Added a function to subtract instrument noise from turbulence intensity estimation using RMS calculations, providing results that differ by approximately 1% from the existing standard deviation-based \"I\" property.\r\n\r\n**Improved File Handling**: Updates for RDI files to handle changing \"number of cells\" and variable \"cell sizes,\" which are now bin-averaged into the largest cell size.\r\n\r\n### Bug Fixes:\r\n**Power Spectra Calculation**: Fixed a bug where a given noise value was not being subtracted from the power spectra, and noise was inadvertently added as an input to dissipation rate calculations.\r\n\r\n**Improved Header Handling**: Allowed RDI reader to skip junk headers effectively.\r\n\r\n**Nortek Reader C Types Update**: Adjusted C types in the Nortek reader to handle below-zero water temperatures and to allow pitch and roll values to go negative.\r\n\r\n\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/280 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/289\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/290\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/292\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/293\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/294\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/299\r\n\r\n\r\n## River & Tidal: D3D\r\nAdded limits to `variable_interpolation` and added 3 array input capability to `create_points`\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/271\r\n\r\n## Developer Experience\r\n### Black formatting\r\nBlack formatting is now enforced on all MHKiT files. This ensures consistent formatting across the MHKiT package.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/281\r\n\r\n### Linting & Type Hints\r\nMHKiT is in the process of enforcing pylint and adding type hints to all functions. Currently this has been achieved and is enforced in the Loads and Power modules.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/288 \r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/296 \r\n\r\n### CI/CD\r\nThis release introduces significant reduction in testing time for development. This is achieved by reducing the number of tests for pulls against the develop branch and only running hindcast test when changes are made to it. A bug in the hindcast CI was fixed which only ran on changes to the hindcast tests instead of the hindcast module. Additionally the wave and wind hindcast needed to be separated in 2 jobs due to the excessive time taken to run a wind cache. This created a number of follow on PRs around solidifying the logic of these job. A special case for Python 3.8, pip, and Mac OS was added to use homebrew to install NetCDF and HDF5 to get tests to pass.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/241\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/270\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/306\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/311\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/317\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/318\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/319\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/320\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/324\r\n\r\n### Clean Up\r\nMHKiT fixed an implementation error where functions used assert instead of built in errors for type and value checking. Additionally these PRs removed unused files, fixed typos, and created an argument which allows users to run CDIP API calls silently.\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/276\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/272\r\n- https://github.com/MHKiT-Software/MHKiT-Python/pull/273","shortMessageHtmlLink":"MHKiT v0.8.0 (#321)"}},{"before":"83a9d6d77841bd9da6f0d494c1df9f4bb43d58b0","after":null,"ref":"refs/heads/develop","pushedAt":"2024-05-08T14:14:45.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"}},{"before":null,"after":"fb5f9b8f3e227c6853964b11de67fb98e6170b4e","ref":"refs/heads/develop_backup","pushedAt":"2024-05-08T14:09:56.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"},"commit":{"message":"CI: Coveralls flag-name (#320)\n\n* set flag name\r\n\r\n* use master coveralls-app action\r\n\r\n* v0.8.0","shortMessageHtmlLink":"CI: Coveralls flag-name (#320)"}},{"before":"83a9d6d77841bd9da6f0d494c1df9f4bb43d58b0","after":null,"ref":"refs/heads/main","pushedAt":"2024-05-08T13:29:53.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ssolson","name":null,"path":"/ssolson","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13438942?s=80&v=4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xMVQxMjo0MzowMC4wMDAwMDBazwAAAASzMNGT","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xMVQxMjo0MzowMC4wMDAwMDBazwAAAASzMNGT","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNS0wOFQxMzoyOTo1My4wMDAwMDBazwAAAAREqcjq"}},"title":"Activity ยท MHKiT-Software/MHKiT-Python"}