diff --git a/CHANGELOG.md b/CHANGELOG.md index bf7eea56..831cd2f3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,261 @@ # Changelog +## [15.0.0](https://github.com/mljs/spectra-processing/compare/v14.29.3...v15.0.0) (2026-07-20) + + +### ⚠ BREAKING CHANGES + +* remove xSequentialFill and add 2 methods xSequentialFillFromStep and xSequentialFillFromTo +* improve types in zones functions +* remove deprecated zoneToX function +* improve types in xyObject functions +* improve types in xyArray functions +* improve types in xy functions +* improve types in x functions +* improve types in utils functions +* improve types in xreim functions +* improve types in reim functions +* improve types in matrix functions +* remove xIsMonotone and xIsMonotoneIncreasing + - remove xIsMonotone, should be replace by xIsMonotonic + - remove xIsMonotoneIncreasing, xIsMonotonic should return 1 +* xNormed throws an error if divide by 0 +* rename createXArray to createFromToArray +* added the xSampling and createXArray functions ([#112](https://github.com/mljs/spectra-processing/issues/112)) +* Remove xyCalibrate +* remove node 10 from CI + +### Features + +* add absolute option in xHisotgram and matrixHistogram ([f3ea8a3](https://github.com/mljs/spectra-processing/commit/f3ea8a337d6464816bf9d764ca34ce10207c7a40)) +* add getCombinations and getCombinationsIterator ([f63b393](https://github.com/mljs/spectra-processing/commit/f63b393dad148398438c3dc4d0f1af3fb629f6b9)) +* add getRecaler with clamping ([95c1e74](https://github.com/mljs/spectra-processing/commit/95c1e74257e0600cd03ff651f4a4104de6441271)) +* add inplace fft matrix by columns, phase correction and reimAbsolute ([#348](https://github.com/mljs/spectra-processing/issues/348)) ([f4af49f](https://github.com/mljs/spectra-processing/commit/f4af49f0ca9a87196fbab115c497258c1d2df5a5)) +* add inPlace for reimArrayFFT and reimFFT ([9cda6b5](https://github.com/mljs/spectra-processing/commit/9cda6b501601bb3c190f47f342766a9563d6f6f2)) +* add matrixAbsoluteMedian ([a7a77b0](https://github.com/mljs/spectra-processing/commit/a7a77b01b854a9a1905956a3c065379fee8a2a64)) +* add matrixAutoCorrelation ([#173](https://github.com/mljs/spectra-processing/issues/173)) ([a7cda65](https://github.com/mljs/spectra-processing/commit/a7cda65a95ce6106913d40a2b6e0be5c1af8bd7c)) +* add matrixBoxPlot ([#171](https://github.com/mljs/spectra-processing/issues/171)) ([a474793](https://github.com/mljs/spectra-processing/commit/a474793ffc37eef0cc9d6e0e1288d16fac2d1897)) +* add matrixGetSubMatrix function ([#236](https://github.com/mljs/spectra-processing/issues/236)) ([ab8f02a](https://github.com/mljs/spectra-processing/commit/ab8f02a7049109fc6d2076ddd97ebc016ad385e2)) +* add matrixMaxAbsoluteZ ([c8ae9c0](https://github.com/mljs/spectra-processing/commit/c8ae9c0e7a64242a8643f429246ede9108374fd7)) +* add matrixMedian ([#157](https://github.com/mljs/spectra-processing/issues/157)) ([4ce1b72](https://github.com/mljs/spectra-processing/commit/4ce1b726a9c49d723add5e5fcf92549b1ba472b6)) +* add matrixMinMaxAbsoluteZ ([0b30854](https://github.com/mljs/spectra-processing/commit/0b30854e6e5e35ca6ad1461777ff178568f1e0d6)) +* add matrixMinMaxAbsoluteZ ([e8662e7](https://github.com/mljs/spectra-processing/commit/e8662e7c2502615e398969224230f2a8f0b8ba71)) +* add matrixSetSubMatrix ([#211](https://github.com/mljs/spectra-processing/issues/211)) ([922e2cc](https://github.com/mljs/spectra-processing/commit/922e2ccffb9c92fd39331eee574eaf236cec9572)) +* add matrixToArray and matrixNoiseStandardDeviation ([ead7b21](https://github.com/mljs/spectra-processing/commit/ead7b218466c4cad87c800e602804662916fd8b5)) +* add matrixTranspose function ([#309](https://github.com/mljs/spectra-processing/issues/309)) ([0b00126](https://github.com/mljs/spectra-processing/commit/0b001263d25ca966a676360f7e54807232b6cc02)) +* add matrixZPivotRescale ([784ab2e](https://github.com/mljs/spectra-processing/commit/784ab2eade4300c9b50f9a55cb1a99248a231bc2)) +* add more getRescaler algorithms ([6f1b5de](https://github.com/mljs/spectra-processing/commit/6f1b5de12cad21a9cffcc5f807ea8c206444f9f0)) +* add option that allows to calculate xBoxPlot on small arrays ([960da81](https://github.com/mljs/spectra-processing/commit/960da81ffa4404b532303ae5488a82e0982fb5ff)) +* add option to get exact xMedian ([d98821b](https://github.com/mljs/spectra-processing/commit/d98821b602262b3d6980f4d621fba9e1081c658f)) +* add options in xBinning ([fe93b24](https://github.com/mljs/spectra-processing/commit/fe93b24a7032680d93ecad3c399924960c67b7ee)) +* add recursiveResolve ([#274](https://github.com/mljs/spectra-processing/issues/274)) ([9005fc2](https://github.com/mljs/spectra-processing/commit/9005fc2f5222c3c96ee3b67ca8134690185d33ae)) +* add reimArrayFFT ([9cda6b5](https://github.com/mljs/spectra-processing/commit/9cda6b501601bb3c190f47f342766a9563d6f6f2)) +* add reimArrayFFT ([9cda6b5](https://github.com/mljs/spectra-processing/commit/9cda6b501601bb3c190f47f342766a9563d6f6f2)) +* add reimMatrixFFT ([f9a140e](https://github.com/mljs/spectra-processing/commit/f9a140e492c23b7b0ba94f88152384bafe684aa9)) +* add reverse to reimPhaseCorrection ([#183](https://github.com/mljs/spectra-processing/issues/183)) ([daed2d7](https://github.com/mljs/spectra-processing/commit/daed2d7d4b5312038508694b30a2c9736c31cd15)) +* add sorted option to xFindClosestIndex function ([#94](https://github.com/mljs/spectra-processing/issues/94)) ([aa228be](https://github.com/mljs/spectra-processing/commit/aa228beb14e321cd8d43eddec89c1ad9923d7561)) +* add sparse cholesky solver and cuthill-mckee ([8c9e233](https://github.com/mljs/spectra-processing/commit/8c9e233e51038690decbb432a816f48f4c6110b6)) +* add uniform random array generator and rename createNormalRandomArray to createRandomArray ([adbf2b4](https://github.com/mljs/spectra-processing/commit/adbf2b4b06cf6f25575c87e87926d7b4cbb2e3c7)) +* add utilities isPowerOfTwo and nextPowerOfTwo ([bec701a](https://github.com/mljs/spectra-processing/commit/bec701a88d851ea6e95fa3792197ac764a729c4f)) +* add utilities to build a weighted least squared fit/smooth of 1D data ([8c9e233](https://github.com/mljs/spectra-processing/commit/8c9e233e51038690decbb432a816f48f4c6110b6)) +* add utility stringify that converts typed array to nomal array ([5cac645](https://github.com/mljs/spectra-processing/commit/5cac64531ea77ee0b204c60eaca315a98e3c2c74)) +* add xAbsoluteSum method ([#245](https://github.com/mljs/spectra-processing/issues/245)) ([bd46796](https://github.com/mljs/spectra-processing/commit/bd4679631b33be189255ee64b5cf18fff38efb2b)) +* add xApplyFunctionStr ([e9e13fd](https://github.com/mljs/spectra-processing/commit/e9e13fdf493bb18b3589c6e4d49673055070839d)) +* add xBinning and xyInterpolateLinear ([dbbaf2c](https://github.com/mljs/spectra-processing/commit/dbbaf2cc4e075430a858671a22563a6236790d8d)) +* add xBoxPlotWithOutliers mehtod to deal with possible outliers ([#260](https://github.com/mljs/spectra-processing/issues/260)) ([985caee](https://github.com/mljs/spectra-processing/commit/985caeef2e4ea0a4b5fbfa5e04be503a3c42e403)) +* add xCostMatrix function ([#151](https://github.com/mljs/spectra-processing/issues/151)) ([fd88754](https://github.com/mljs/spectra-processing/commit/fd88754ae487efca6772265cfdb2a97d149c1c6d)) +* add xDistributionStats ([3a51a97](https://github.com/mljs/spectra-processing/commit/3a51a971f6cee7bb2bedf45161c6edd867fd265e)) +* add xEnsureFloat64 ([cc58e79](https://github.com/mljs/spectra-processing/commit/cc58e7919b9e74c8ad248ef1630d08f375e6e945)) +* add xHilbertTransform ([9521510](https://github.com/mljs/spectra-processing/commit/9521510a9087de4e38f0ff4a5f3a671ee22ae351)) +* add xIsEquallySpaced ([19c182f](https://github.com/mljs/spectra-processing/commit/19c182f99e3d76f6dcca8bef80bcd2549663b5e6)) +* add xIsMonotoneIncreasing ([fd8fb17](https://github.com/mljs/spectra-processing/commit/fd8fb174d3d0ad256b17392d9425a8277be5d6f2)) +* add xIsMonotonic that returns -1, 0 or 1 ([c672db1](https://github.com/mljs/spectra-processing/commit/c672db1bb17b35a7a66aa82221846d79826b0553)) +* add xMaxAbsoluteValue ([d173542](https://github.com/mljs/spectra-processing/commit/d173542e2694d25b00583ff809f670319d8a88fd)) +* add xMedianAbsoluteDeviation ([c8d5e38](https://github.com/mljs/spectra-processing/commit/c8d5e3811781dc4471caef395648b4df9fe3d65f)) +* add xMinMaxDelta ([b142519](https://github.com/mljs/spectra-processing/commit/b142519a295c88d8a0b3d7de9419f484eddb102d)) +* add xMinMaxValues ([7e2a85b](https://github.com/mljs/spectra-processing/commit/7e2a85bde1e3ca2adf828b80877ed63ee1d4d496)) +* add xNoiseStandardDeviation ([9baff45](https://github.com/mljs/spectra-processing/commit/9baff45e5d33ecb85f519ea7c6ddb1c0bac96cb6)) +* add xRemoveOutliersIQR ([b9c1166](https://github.com/mljs/spectra-processing/commit/b9c1166521d74b7a22a030512c63ded8d1172fbf)) +* add xRobustDistributionStats ([2173ee8](https://github.com/mljs/spectra-processing/commit/2173ee867997fcf5d775024a747f4df0134634c7)) +* add xUniqueSorted ([104cf0f](https://github.com/mljs/spectra-processing/commit/104cf0f8b31f1e31a07028093f8d374af5dfe5d3)) +* add xVariance ([b1ae447](https://github.com/mljs/spectra-processing/commit/b1ae44737d6f177eaf4638b33ccd22e55881acf0)) +* add xWhitakerSmoother ([8c9e233](https://github.com/mljs/spectra-processing/commit/8c9e233e51038690decbb432a816f48f4c6110b6)) +* add xy2ToXY ([6bf49a5](https://github.com/mljs/spectra-processing/commit/6bf49a566cfae65cb246652cc9e3fd198e4fc2b1)) +* add xyArrayAlighToFirst ([9ea0921](https://github.com/mljs/spectra-processing/commit/9ea0921617714eff982285eaa6aa6126c7e05e53)) +* add xyArrayWeightedMerge ([37032c2](https://github.com/mljs/spectra-processing/commit/37032c2da9b84f2503a58af7e83ce76c1673e357)) +* add xyEnsureFloat64 function ([#224](https://github.com/mljs/spectra-processing/issues/224)) ([467a03a](https://github.com/mljs/spectra-processing/commit/467a03a2aa55fe0c0b941613db519fedc95186f2)) +* add xyEqualIntegrationVector and xEqualIntegrationVectorSimilarity ([698a660](https://github.com/mljs/spectra-processing/commit/698a6608de1b447d2f21ca536510a1667dd1d124)) +* add xyFilterMinYValue ([5845edd](https://github.com/mljs/spectra-processing/commit/5845edd2c8d07256f01b0339ba3e1459f63fb7b3)) +* add xyFilterTopYValues ([7570091](https://github.com/mljs/spectra-processing/commit/7570091ef091c49856dd88f2b17f88d8bcfe9fc2)) +* add xyFromInterleaved and xyToInterleaved ([#371](https://github.com/mljs/spectra-processing/issues/371)) ([48da090](https://github.com/mljs/spectra-processing/commit/48da090a70f41fe216e5047302e3f879e898a380)) +* add xyMassCenter ([#239](https://github.com/mljs/spectra-processing/issues/239)) ([86b48ef](https://github.com/mljs/spectra-processing/commit/86b48efcb8feeadf2fc9bf98e85e38459056b162)) +* add xyMassCenterVector ([18b314b](https://github.com/mljs/spectra-processing/commit/18b314bdf80a89f6e61c48d0cd671424bb0d37ce)) +* add xyMedianY and xyMedianYAtXs methods ([33e68a1](https://github.com/mljs/spectra-processing/commit/33e68a13f5e1dab171edb2e4c9717fadde17e3c2)) +* add xyObjectMinMaxValues function ([#279](https://github.com/mljs/spectra-processing/issues/279)) ([dd09ee3](https://github.com/mljs/spectra-processing/commit/dd09ee3cab362b68cdaafeb2e9edbb9ec0d08c54)) +* add xyObjectNormedY ([cc50b98](https://github.com/mljs/spectra-processing/commit/cc50b98505c713728fb2784f6f211bc1e244f0fe)) +* add xyObjectSumY ([28b709c](https://github.com/mljs/spectra-processing/commit/28b709cc0ca29051e7ad58f27ac7aab81c0010fd)) +* add xyReduceNonContinuous ([22a6640](https://github.com/mljs/spectra-processing/commit/22a6640a11dc518c8e02d7b973ec71da9247f688)) +* add xyRollingCircleTransform ([be9b34a](https://github.com/mljs/spectra-processing/commit/be9b34ae1c479adf9579e69e5a561945d262300c)) +* add xySetYValue ([e047bfd](https://github.com/mljs/spectra-processing/commit/e047bfdec7199cb33b5dd32b7512955472854544)) +* added recursiveRemoveEmptyAndNull ([#316](https://github.com/mljs/spectra-processing/issues/316)) ([131f751](https://github.com/mljs/spectra-processing/commit/131f7511ed9cccbf982dc28a9686867404b9d32e)) +* added reverse option to autoPhaseCorrection ([#186](https://github.com/mljs/spectra-processing/issues/186)) ([3970d65](https://github.com/mljs/spectra-processing/commit/3970d654f0287a61326b7c1afeb63a32ab8226d4)) +* added the xSampling and createXArray functions ([#112](https://github.com/mljs/spectra-processing/issues/112)) ([655c428](https://github.com/mljs/spectra-processing/commit/655c428849a258a86ee7c01b4f0a701f493fc446)) +* added utility functions in order to encode textual features into numerical features ([#104](https://github.com/mljs/spectra-processing/issues/104)) ([d987ac9](https://github.com/mljs/spectra-processing/commit/d987ac95488230fab109942a8cd39c751fb08016)) +* allow absolute in matrixHistogram ([f4e266c](https://github.com/mljs/spectra-processing/commit/f4e266cb327af3e8c1459f5b622a914d1ede9c2b)) +* allow from / to in xyMaximaY and xyMinimaY ([#243](https://github.com/mljs/spectra-processing/issues/243)) ([d19683d](https://github.com/mljs/spectra-processing/commit/d19683da68736d2fe7e6565688139542056d58bb)) +* Allow xHilbertTransform to use FFT for array lengths non power of 2 through and option ([#203](https://github.com/mljs/spectra-processing/issues/203)) ([14c0dde](https://github.com/mljs/spectra-processing/commit/14c0ddeecb8af069f98db44a54465c9f05edf5a2)) +* Allow xHilbertTransform to use FFT for array lengths non power of 2 through and option ([#203](https://github.com/mljs/spectra-processing/issues/203)) ([14c0dde](https://github.com/mljs/spectra-processing/commit/14c0ddeecb8af069f98db44a54465c9f05edf5a2)), closes [#202](https://github.com/mljs/spectra-processing/issues/202) +* allows to specify the array target type for matrixZRescale ([3e8a39d](https://github.com/mljs/spectra-processing/commit/3e8a39dae0895fdb5237f771321f7f2700bac65e)) +* avoid data cloning in xSampling ([6c2a8bb](https://github.com/mljs/spectra-processing/commit/6c2a8bbb48c20054836e1f6da121602b53038b22)) +* create xyFilter ([223f6f3](https://github.com/mljs/spectra-processing/commit/223f6f3cd2b29e3c7d2bb19604c007279212bf78)) +* default seed for createRandomArray is Date.now() ([67ef5d9](https://github.com/mljs/spectra-processing/commit/67ef5d9fd10df5e70e06c78501f168864132974c)) +* enable FFT for xHilbertTransform to enhance speed for arrays with lengths that are powers of 2 ([#198](https://github.com/mljs/spectra-processing/issues/198)) ([e5677a7](https://github.com/mljs/spectra-processing/commit/e5677a7c7805f463b4efaa6c2bf28e769444ee7a)) +* expoe in package.json the different folders ([cb0025b](https://github.com/mljs/spectra-processing/commit/cb0025b8190e1fcb2a67a25b42d3438b3443e4dd)) +* export san plot chart ([#83](https://github.com/mljs/spectra-processing/issues/83)) ([fdaa738](https://github.com/mljs/spectra-processing/commit/fdaa738c48751dd514e99989570dd1200d5ac000)) +* expose xCheck ([3fe1914](https://github.com/mljs/spectra-processing/commit/3fe1914c1211254c27c92e2b4cce4f4541605e8a)) +* expose xCostMatrix ([dccc9ba](https://github.com/mljs/spectra-processing/commit/dccc9bae7521dcd15f29af2051989cf62f0d9fb4)) +* homogenisation of parameter names. xNormed use max and sum options ([412801c](https://github.com/mljs/spectra-processing/commit/412801c5a10fd67b88a706d0d260b01205021f3e)) +* implement reimZeroFilling function ([#306](https://github.com/mljs/spectra-processing/issues/306)) ([9f02d91](https://github.com/mljs/spectra-processing/commit/9f02d9130e243e4948c718931e26771df7d1105e)) +* implement resampling within xSampling to handle array lengths larger than the original size ([#200](https://github.com/mljs/spectra-processing/issues/200)) ([fdeca70](https://github.com/mljs/spectra-processing/commit/fdeca70ef5452ac7cb89044aa906c1b0929aab09)) +* implement Whitaker smoother and all the utilities to be used outside ([#292](https://github.com/mljs/spectra-processing/issues/292)) ([8c9e233](https://github.com/mljs/spectra-processing/commit/8c9e233e51038690decbb432a816f48f4c6110b6)) +* implement xMeanWeighted ([#178](https://github.com/mljs/spectra-processing/issues/178)) ([686d804](https://github.com/mljs/spectra-processing/commit/686d80475a4f2aa07466fe511bf8a5a4986a9844)) +* Implement zonesToXEquallySpaced ([#356](https://github.com/mljs/spectra-processing/issues/356)) ([9c9e5a1](https://github.com/mljs/spectra-processing/commit/9c9e5a16b50480c310f9cbf0670845ef6b31416c)) +* implementation of xyBinning ([#367](https://github.com/mljs/spectra-processing/issues/367)) ([927c149](https://github.com/mljs/spectra-processing/commit/927c149d84097a0de8bdd016c95b438e9cadfe42)) +* Implemented invert.ts, normalize.ts, zonesWithPoints.ts ([#115](https://github.com/mljs/spectra-processing/issues/115)) ([4599613](https://github.com/mljs/spectra-processing/commit/4599613903398fe6953b3797a7282d40073fa1a6)) +* improve speed Whittaker smoother ([#358](https://github.com/mljs/spectra-processing/issues/358)) ([c736e4c](https://github.com/mljs/spectra-processing/commit/c736e4c64ada715498131cb7f96331eabd806549)) +* improve type of xyEnsureGrowingX and xyGrowingX ([95f8b73](https://github.com/mljs/spectra-processing/commit/95f8b73f2d1e711ad0ac0969b01867e693cc1aab)) +* improve xDive, xMultiply, xRescale for typescript return value ([e90f3b2](https://github.com/mljs/spectra-processing/commit/e90f3b26f0f8576d49292abd7b2fa536114e8b9b)) +* matrixZPivotRescale and matrixZPivotRescale can use any NumberArrayConstructors ([28ab4a4](https://github.com/mljs/spectra-processing/commit/28ab4a42a5300b67b8d6c71ae1d910125a5f02b8)) +* matrixZPivotRescale and matrixZPivotRescale can use any NumberArrayConstructors ([28ab4a4](https://github.com/mljs/spectra-processing/commit/28ab4a42a5300b67b8d6c71ae1d910125a5f02b8)) +* migrate fully to ESM ([#321](https://github.com/mljs/spectra-processing/issues/321)) ([054e0f3](https://github.com/mljs/spectra-processing/commit/054e0f3bfd8a5b6b52c87ba9e402e889ab86162d)) +* new function to calculate similarity between massCenter vectors ([05402c7](https://github.com/mljs/spectra-processing/commit/05402c78feefac9a14dfceb3851a45c3aa95cc02)) +* optimize xySortX if already sorted ([e6dac65](https://github.com/mljs/spectra-processing/commit/e6dac65c584b9dcc64a5add1e9819051cf476db4)) +* refactor zonesNormalize and remove zonesInvert and getZones ([0236bbf](https://github.com/mljs/spectra-processing/commit/0236bbfe135c03b5ec4586a70cbad8722b55ff8b)) +* remove autoMinMax from xRescale ([ddad5ae](https://github.com/mljs/spectra-processing/commit/ddad5aeefcdbfb60e4c9689520bd1c497211d024)) +* remove xSequentialFill and add 2 methods xSequentialFillFromStep and xSequentialFillFromTo ([42d1c39](https://github.com/mljs/spectra-processing/commit/42d1c39cb889ec29c5e15c814786b0dc2cd28139)) +* rename createNormalRandomXArray to createNormalRandomArray ([6d2a40f](https://github.com/mljs/spectra-processing/commit/6d2a40f0557ccfef633106e9c0fccef1434d9b1a)) +* rename createSequentialArray was renamed to createXArray ([655c428](https://github.com/mljs/spectra-processing/commit/655c428849a258a86ee7c01b4f0a701f493fc446)) +* rename createXArray to createFromToArray ([e9280e2](https://github.com/mljs/spectra-processing/commit/e9280e2ccae3842a960b2724aaba286d78415f65)) +* rename createXArrayWithStep to createStepArray ([0db5d53](https://github.com/mljs/spectra-processing/commit/0db5d536b853e701d83b285f71bf7bc7cebc3b3d)) +* rename xyClosestX to xyFindClosestPoint and only allow sorted array ([2b439f8](https://github.com/mljs/spectra-processing/commit/2b439f8141c4d7869b0bac96101829c2cb8ec8a9)) +* use an object for parameters in xSequentialFillFromStep and xSequentialFillFromTo ([#223](https://github.com/mljs/spectra-processing/issues/223)) ([69e6897](https://github.com/mljs/spectra-processing/commit/69e689763219e94cdc929f03fe6e5f2b55f42667)) +* xBoxPlot has an option to calculate outliers ([#256](https://github.com/mljs/spectra-processing/issues/256)) ([69cb82c](https://github.com/mljs/spectra-processing/commit/69cb82cf039fc56f04f2c17fe91d372c17c5c205)) +* xBoxPlot returns an object with better named properties ([125a4cc](https://github.com/mljs/spectra-processing/commit/125a4cc8b05c0862f0d775a5f8a7882f64f81bf2)) +* xCheck as a minLength ([231ca46](https://github.com/mljs/spectra-processing/commit/231ca46a8e5e0b96d932bd9ec607eb705e05ffa8)) +* xDistributionStats deals with outliers ([0c5ff63](https://github.com/mljs/spectra-processing/commit/0c5ff63ff5456289e70fed1ae7072de2850aa3c7)) +* xDivide and xMultiply allow have output parameter ([0bd78dd](https://github.com/mljs/spectra-processing/commit/0bd78dd732dbfafcce58be3eef71db3f0e8e1b5e)) +* xFindClosestIndex accepts a NumberArray ([4c10bc7](https://github.com/mljs/spectra-processing/commit/4c10bc73580dac0554af54cfd878525582f87024)) +* xGetFromToIndex accepts a NumberArray ([c2acea7](https://github.com/mljs/spectra-processing/commit/c2acea7c0453ce3020d823abcfba08aeb1dcb14b)) +* xMaxValue, xMinValue and xSum allow to specify from and to ([5e7212a](https://github.com/mljs/spectra-processing/commit/5e7212a939fb62676c315dd2c8f5651e3c95bd21)) +* xMean allows to specify from and to ([4141d0f](https://github.com/mljs/spectra-processing/commit/4141d0f62815b9057ced8deac8067664f4cf290e)) +* xMedianAbsoluteDeviation returns an object with median and mad ([26430ca](https://github.com/mljs/spectra-processing/commit/26430ca2233fe1c97a528f1b73b324df238596e4)) +* xNoiseStandardDeviation returns now mad, median and sd ([8c7d332](https://github.com/mljs/spectra-processing/commit/8c7d3323671e4cf097271be0c5424e493e26810a)) +* xNormed throws an error if divide by 0 ([7976466](https://github.com/mljs/spectra-processing/commit/79764667d07cef004bb687805a201d035a882ed5)) +* xRescale and xNormed returns typed array ([20eadc0](https://github.com/mljs/spectra-processing/commit/20eadc03dd1da59dc17fc29e8baa046db760001b)) +* xyArrayAlign is able to filter result to have a Y value ([a0c9496](https://github.com/mljs/spectra-processing/commit/a0c94968122ece243a6a651433e0d047a0c06070)) +* xyArrayWeightedMerge allows a function for delta ([028eaa1](https://github.com/mljs/spectra-processing/commit/028eaa16648b33328207b1c2f4a01cbf06a4569f)) +* xyCheck may have the option minLength ([06501df](https://github.com/mljs/spectra-processing/commit/06501dfd989cbe1cc799485492bd03271bf67871)) +* xyEquallySpaced must be growing ! Throw error if not ([8221a2f](https://github.com/mljs/spectra-processing/commit/8221a2fdecb6604ec4f7f0e7e4b2bea1777e8394)) +* xyMedian function added ([#85](https://github.com/mljs/spectra-processing/issues/85)) ([e54280a](https://github.com/mljs/spectra-processing/commit/e54280a55417e7ade305248e3e6aec269aad730f)) + + +### Bug Fixes + +* add "types" field to package.json ([#333](https://github.com/mljs/spectra-processing/issues/333)) ([fa77eb0](https://github.com/mljs/spectra-processing/commit/fa77eb06e2825b6ffca7715779ccdfd5640acc52)) +* add CITATION.cff ([#265](https://github.com/mljs/spectra-processing/issues/265)) ([fc43a05](https://github.com/mljs/spectra-processing/commit/fc43a0541f6ef9e4f8c47e11dc091f4f2de03308)) +* add remove main, module and types properties in package.json ([af6757e](https://github.com/mljs/spectra-processing/commit/af6757ea77782398974fff3b7952b5a3bcd6bfee)) +* **auto phase:** avoid NaN phase correction value ([#262](https://github.com/mljs/spectra-processing/issues/262)) ([eef13cd](https://github.com/mljs/spectra-processing/commit/eef13cd8798237de40cb654a3c1c2414099ab2f2)) +* avoid to return number in xyMaxYPoint and xyMinYPoint (throw error in no elements in array) ([5f9aae3](https://github.com/mljs/spectra-processing/commit/5f9aae3e6b959eb77f63b28a52f66fe77bdfe874)) +* check first and last point for xyGrowingX ([#264](https://github.com/mljs/spectra-processing/issues/264)) ([e5a832f](https://github.com/mljs/spectra-processing/commit/e5a832f3a0f554bfde13c9780fc942920eb85425)) +* correct eslint problems ([f631198](https://github.com/mljs/spectra-processing/commit/f631198a126fe9ce23c941df091395317314d26d)) +* correct package.json, spline-interpolator is a dependency ([737eb3e](https://github.com/mljs/spectra-processing/commit/737eb3ee63376f648b5458900830260a99d18bdf)) +* correct robust distribution stats ([fe2a451](https://github.com/mljs/spectra-processing/commit/fe2a4515a6a6586f0aacea7ef54ee606ebb34bb5)) +* correct xMaxAbsoluteValue sign and guard numeric edge cases ([#383](https://github.com/mljs/spectra-processing/issues/383)) ([1b2ddd0](https://github.com/mljs/spectra-processing/commit/1b2ddd054ba2868c98ca9a1eefc833eea176c4a1)) +* correctly export hilbertTransform as xHilbertTransform ([e0a80ef](https://github.com/mljs/spectra-processing/commit/e0a80ef17d9f971f8f398fffa5668e804831f004)) +* correctly import spline-interpolation and fix xNoiseSanPlot ([474f08c](https://github.com/mljs/spectra-processing/commit/474f08c190bb604e8039fedcb0c0ee5ec200b4f8)) +* documentation of xyCheck ([4c6b59a](https://github.com/mljs/spectra-processing/commit/4c6b59a26bd255a49bab8ff39abb8e330f76993e)) +* don't use MIN_VALUE in xyReduce ([edafc19](https://github.com/mljs/spectra-processing/commit/edafc19178d7a90095796bbe92f4a1ad89cd0a20)) +* don't use Number.MIN_VALUE in xyObjectSlotX ([c364d4c](https://github.com/mljs/spectra-processing/commit/c364d4c73003e674099b99413066423fe3ba1d7b)) +* expose matrixSetSubMatrix ([#213](https://github.com/mljs/spectra-processing/issues/213)) ([132206f](https://github.com/mljs/spectra-processing/commit/132206fbaa77ff16a35d4515a1e74ce253ed493a)) +* expose xyEnsureFloat64 ([#226](https://github.com/mljs/spectra-processing/issues/226)) ([2260f3c](https://github.com/mljs/spectra-processing/commit/2260f3cdc6143e7306e9e2fff04271ef5824eef2)) +* fft cache has a default value of 1 ([bc9dff0](https://github.com/mljs/spectra-processing/commit/bc9dff068294e5d8ed541193ce29a2932496e4a6)) +* fix matrixHistogram with log scale ([c531c6c](https://github.com/mljs/spectra-processing/commit/c531c6c1754866cdde50a2202c65d0c7a13efb1e)) +* improve perf of distribution stats ([33ebe8e](https://github.com/mljs/spectra-processing/commit/33ebe8eb606630440feed3a35aecf2d6a95d0f09)) +* improve reimautophasecorrection by removing outliers ([#206](https://github.com/mljs/spectra-processing/issues/206)) ([7b00d93](https://github.com/mljs/spectra-processing/commit/7b00d93b7c3eeade9f6ac4895900808f34e46b6c)) +* improve speed in hilbert transform by FFT ([#284](https://github.com/mljs/spectra-processing/issues/284)) ([fc7dfd6](https://github.com/mljs/spectra-processing/commit/fc7dfd6b856e3f9e9c2006e4367cc9f928413417)) +* improve types in matrix functions ([1918fc8](https://github.com/mljs/spectra-processing/commit/1918fc850e4472a01c38d13b64d6b84103dfae57)) +* improve types in reim functions ([24a6285](https://github.com/mljs/spectra-processing/commit/24a6285f9a7378aa7e14bc3a9b01d457d5ad905d)) +* improve types in utils functions ([7476f47](https://github.com/mljs/spectra-processing/commit/7476f476fe7596f1008cf4528209765fc7048bee)) +* improve types in x functions ([bf5886e](https://github.com/mljs/spectra-processing/commit/bf5886ecde7b5995d40096c20cb5d8bba268b4b9)) +* improve types in xreim functions ([b6257b5](https://github.com/mljs/spectra-processing/commit/b6257b571990bcfee275bcf3b28884982fc72a16)) +* improve types in xy functions ([5c4a68f](https://github.com/mljs/spectra-processing/commit/5c4a68ff92193e19ab34ccbd171bd3514e965579)) +* improve types in xyArray functions ([018b825](https://github.com/mljs/spectra-processing/commit/018b82506b729339e15d622c434103e33dafca05)) +* improve types in xyObject functions ([5f0f88b](https://github.com/mljs/spectra-processing/commit/5f0f88b0a3003be0398767f2f1bc879f708cae94)) +* improve types in zones functions ([3c72b05](https://github.com/mljs/spectra-processing/commit/3c72b05feb6eb005b7e24f93c772e5aef3db748c)) +* improve types regarding arrays ([#231](https://github.com/mljs/spectra-processing/issues/231)) ([5cd995e](https://github.com/mljs/spectra-processing/commit/5cd995e9226968d0a117761921a9d50262ac70c0)) +* improve xyEnsureGrowingX ([c8b33d6](https://github.com/mljs/spectra-processing/commit/c8b33d6c113e4f202492a72772064896d5827179)) +* is-any-array is a dependency and not a devDependency ([c7e6510](https://github.com/mljs/spectra-processing/commit/c7e651095f5204d968fd403cda16a2b2219dad8e)) +* keep input type in reimZeroFilling ([#336](https://github.com/mljs/spectra-processing/issues/336)) ([df54ad6](https://github.com/mljs/spectra-processing/commit/df54ad6e4944ca85542066ad28743c756168a273)) +* matrixApplyNumericalEncoding returned a matrix of zeros ([1c89179](https://github.com/mljs/spectra-processing/commit/1c89179d97d316d34b359538d7e6b0ce61c6b34a)) +* matrixMinMaxZ returns always min and max as numbers ([a68fe87](https://github.com/mljs/spectra-processing/commit/a68fe879ab0660acb8d12f2b7ba3625bae17a956)) +* Normalize small zones that combined into one zone ([#132](https://github.com/mljs/spectra-processing/issues/132)) ([91225c5](https://github.com/mljs/spectra-processing/commit/91225c552b6ffa0886410e4fbcf93ac0fab5ad7a)) +* options type of xyIntegration ([c798c18](https://github.com/mljs/spectra-processing/commit/c798c189c78f760c8c08d3289b0f8b4dd21ad59f)) +* reject NaN and speed up box plot distribution stats ([#382](https://github.com/mljs/spectra-processing/issues/382)) ([289ff10](https://github.com/mljs/spectra-processing/commit/289ff105771d49a7887d4cf4ed8ea0a99dc9ea4c)) +* remove circular dependency ([8698ea8](https://github.com/mljs/spectra-processing/commit/8698ea8aa5a6f6a0007d25ad2c537673a6d3caf6)) +* remove non-existent "zone" export ([#308](https://github.com/mljs/spectra-processing/issues/308)) ([d1d5777](https://github.com/mljs/spectra-processing/commit/d1d57776170777bcb5c79f924efff523f16720a7)) +* remove unused variable assignment ([#253](https://github.com/mljs/spectra-processing/issues/253)) ([b155cd5](https://github.com/mljs/spectra-processing/commit/b155cd5d45c59a68d260087c60c5510c83ff2232)) +* remove zone if no points in xyEquallySpaced ([443887f](https://github.com/mljs/spectra-processing/commit/443887ffbe9f9bd2b923bc2ff810405c19bf2b33)) +* Remove Zone interface (that should be FromTo) ([a389f30](https://github.com/mljs/spectra-processing/commit/a389f30389ec382edc49ea93f200fde416acfdc5)) +* rename matrixZRescale to matrixZRescalePerColumn ([377300c](https://github.com/mljs/spectra-processing/commit/377300cd75ebbc65237c3d9a1659cc7852220e1c)) +* return type definition of xSequentialFill ([220f6ce](https://github.com/mljs/spectra-processing/commit/220f6ce69fb0caaba131d26f1899de7b14ce5ce6)) +* script to deploy documentation ([2c2cbee](https://github.com/mljs/spectra-processing/commit/2c2cbee01967156ab1a2578ae0f8c6fbe8a3fd02)) +* simplify recursiveRemoveEmptyAndNull (remove second parameter) and improve docs ([57eec5b](https://github.com/mljs/spectra-processing/commit/57eec5bdea31ae5f6a385fb3880b34e4b98f1f1b)) +* specify variant possibilities ([7b22eb1](https://github.com/mljs/spectra-processing/commit/7b22eb13e1f6ce2656070e481e6b866c153bc417)) +* support TypeScript 5.9 TypedArray changes ([18ac5a6](https://github.com/mljs/spectra-processing/commit/18ac5a6a003506ee47d20d9b8cb8f3c4fd215e7a)) +* throw error in null matrix for matrixMinMaxZ and matrixMinMaxAbsoluteZ ([fd1d921](https://github.com/mljs/spectra-processing/commit/fd1d921ba835340f926effc61a105f9482888688)) +* update dependencies and fix cyclic dependencies ([f8c2445](https://github.com/mljs/spectra-processing/commit/f8c24454bee6f380cce3274bfab2f0837c3cbc62)) +* update ml-matrix dependency ([#369](https://github.com/mljs/spectra-processing/issues/369)) ([f305c39](https://github.com/mljs/spectra-processing/commit/f305c3960137252c5298ad1d9d697eb27aeea710)) +* update weights in control points zones ([#350](https://github.com/mljs/spectra-processing/issues/350)) ([b9169dd](https://github.com/mljs/spectra-processing/commit/b9169dd80260b591f61ed7d40ce3bea4b04e39cd)) +* use thenable in recursiveResolve ([#282](https://github.com/mljs/spectra-processing/issues/282)) ([a675766](https://github.com/mljs/spectra-processing/commit/a67576664236b9feb3b1bf6c0798c2f99df7a68f)) +* xApplyFunctionStr did not accept functions ([8b6dca3](https://github.com/mljs/spectra-processing/commit/8b6dca3c71be6c379899ed0e002eb214a4d09f5c)) +* xBoxPlot deals correctly with very close numbers ([4161e77](https://github.com/mljs/spectra-processing/commit/4161e775b45db6475edfa2732e5b6810593b4bf9)) +* xBoxPlot implement consistently inclusive interpolate algorithm ([2ef1edb](https://github.com/mljs/spectra-processing/commit/2ef1edb3f9dd6ae4475fff8abb399635129469a2)) +* xBoxPlotWithOutliers calculate more parameters and fix min / max values ([d6eebd7](https://github.com/mljs/spectra-processing/commit/d6eebd76b3860833b4ffc75db8449756529ee99a)) +* xGetFromToIndex takes care about the size of the array ([14f10f1](https://github.com/mljs/spectra-processing/commit/14f10f1afc747aa47bc2478a47fa643cad969b26)) +* xHistogram test case ([4170db9](https://github.com/mljs/spectra-processing/commit/4170db98ab911a4caa2f03553da216d0875a5056)) +* xMassCenterVectorSimilarity was changing in place the arrays ([3918530](https://github.com/mljs/spectra-processing/commit/39185307f740bad3f0b30a3b7a318029623092c2)) +* xMean gives correct result if fromIndex or toIndex outside range ([4141d0f](https://github.com/mljs/spectra-processing/commit/4141d0f62815b9057ced8deac8067664f4cf290e)) +* xNoiseSanPlot refined negative noise read from wrong array ([#386](https://github.com/mljs/spectra-processing/issues/386)) ([9ae3772](https://github.com/mljs/spectra-processing/commit/9ae377278ec7cd81757d0e2d15ddffd81494298f)) +* **xNoiseSanplot:** use analytical expression for Raylegh inverse CDF ([#289](https://github.com/mljs/spectra-processing/issues/289)) ([bd9dc3e](https://github.com/mljs/spectra-processing/commit/bd9dc3e716f0722a0bb4e222840e418cd905df55)) +* xNormed use as options value instead of sum / max ([a9d1cbe](https://github.com/mljs/spectra-processing/commit/a9d1cbe637559d260f246b21e057113d32cce997)) +* xSampling when the ratio originalLength finalLength is not an integer ([041c639](https://github.com/mljs/spectra-processing/commit/041c639127a4f9fb467556cb8b203186b05482ed)) +* **xWhittakerSmoother:** ensure baseline is initialized as Float64Array ([18ac5a6](https://github.com/mljs/spectra-processing/commit/18ac5a6a003506ee47d20d9b8cb8f3c4fd215e7a)) +* **xWhittakerSmoother:** use correct name to whittaker smoother ([#311](https://github.com/mljs/spectra-processing/issues/311)) ([18ac5a6](https://github.com/mljs/spectra-processing/commit/18ac5a6a003506ee47d20d9b8cb8f3c4fd215e7a)) +* **xyArrayAlignToFirst:** deal correctly with delta as function ([9cef8f4](https://github.com/mljs/spectra-processing/commit/9cef8f49bfa66acc17f66c2ddc62ee30f459d6f5)) +* xyCovariance unbiased type ([0e0361b](https://github.com/mljs/spectra-processing/commit/0e0361bab81e8a12c700b4429e468f92182370ad)) +* xyGrowingX bug ([#268](https://github.com/mljs/spectra-processing/issues/268)) ([bb00293](https://github.com/mljs/spectra-processing/commit/bb0029302a15371c1d676e9c164247f7fdc89683)) +* xyIntegral and xyIntegration throw error is length 0 and returns correct value if length=1 ([#110](https://github.com/mljs/spectra-processing/issues/110)) ([cdbe86e](https://github.com/mljs/spectra-processing/commit/cdbe86efcfdd0a77b3027a8568ba69a388d5e514)) +* xyIntegralOptions extends xyIntegrationOptions ([#234](https://github.com/mljs/spectra-processing/issues/234)) ([3b85a72](https://github.com/mljs/spectra-processing/commit/3b85a72ac198a49638383ad65321b1305f3b74a9)) +* **xySortX:** avoid NaN results when X is a typedArray ([#249](https://github.com/mljs/spectra-processing/issues/249)) ([af7ca47](https://github.com/mljs/spectra-processing/commit/af7ca47921ef34c936cc970db625079a25abf6a7)) +* zonesNormalize could not deal with larges arrays ([905ce05](https://github.com/mljs/spectra-processing/commit/905ce05d1ee2cea15aa2f86d566215fd89e0ceb4)) + + +### Performance Improvements + +* avoid extra array copies in xy median and scan helpers ([#385](https://github.com/mljs/spectra-processing/issues/385)) ([b068dcb](https://github.com/mljs/spectra-processing/commit/b068dcb39118c2bc4b78cf67f7e665ffa8eb7d88)) +* **fft:** cache FFT instances ([#377](https://github.com/mljs/spectra-processing/issues/377)) ([9d84adf](https://github.com/mljs/spectra-processing/commit/9d84adf2a269921eea41485ceb1f11df3ee0c78f)) + + +### Miscellaneous Chores + +* remove node 10 from CI ([391b064](https://github.com/mljs/spectra-processing/commit/391b064f357a69e2725ad581f90de2ecc09d519e)) +* Remove xyCalibrate ([90d81cb](https://github.com/mljs/spectra-processing/commit/90d81cb663abfd48f6c2edae597a0579dc33afac)) + + +### Code Refactoring + +* remove deprecated zoneToX function ([034d68a](https://github.com/mljs/spectra-processing/commit/034d68ae467f06d28772173b078803f28eec5389)) + ## [14.29.2](https://github.com/mljs/spectra-processing/compare/v14.29.1...v14.29.2) (2026-07-03) diff --git a/package.json b/package.json index 0fe93cdf..89b3e11a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ml-spectra-processing", - "version": "14.29.2", + "version": "15.0.0", "license": "MIT", "description": "Various method to process spectra", "keywords": [],