otb merge requestshttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests2024-02-16T15:06:01Zhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/998PKG: add LERC as external dep, compile gdal with it2024-02-16T15:06:01ZTristan LaurentPKG: add LERC as external dep, compile gdal with itAdd LERC support to gdal dependency. For this libTIFF used by Gdal must have LERC support. Thus LERC is added in libtiff and gdal deps buildAdd LERC support to gdal dependency. For this libTIFF used by Gdal must have LERC support. Thus LERC is added in libtiff and gdal deps build10.0.0Tristan LaurentTristan Laurenthttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/971Enhancement of OpticalCalibration2023-10-26T09:29:25ZRémi CressonEnhancement of OpticalCalibration#### Summary
This MR modifies OpticalCalibration application
#### Rationale
In the current implementation, the following is not right:
- The computation of the `atmo.pixsize` value (float) is not deterministic, which is a big issue w...#### Summary
This MR modifies OpticalCalibration application
#### Rationale
In the current implementation, the following is not right:
- The computation of the `atmo.pixsize` value (float) is not deterministic, which is a big issue when we want to reproduce things,
- The "atmo" parameter group is used only when "level" is "toc", but the parameters group is always enabled.
We discovered that adding some tests in pyotb to cover the `summarize()` method that enables to summarize OTB pipelines or applications in JSON format (see discussion [here](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/-/merge_requests/94)).
#### Implementation Details
Only the code of the application is changed (`otbOpticalCalibration.cxx`).
Regarding the non-deterministic issue: we have removed `vnl_rand` that was used to select the pixel of which to evaluate the pixel size, instead we use the next pixel after the center of the image.
Regarding the unused "atmo" parameter group, we just disable/mandatoryoff/clearvalue the "atmo.*" parameters in `DoUpdateParameters()`
#### Additional notes
We noticed that computing `pixsize` from the central pixel leads to `NaN`, probably because of the way `GroundSpacingImageFunction` works. This is why we use the next pixel coordinate. We have tested the new implementation against images with odd pixel size and it works well. We think the old implementation has one chance to fail when the randomly-selected pixel was in the center (1 chance over `N`, with `N` the number of pixels in the image. But still!)
#### Copyright
The copyright owner is INRAE and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commithttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/902Remove visualization modules2023-02-21T10:20:42ZJulien OsmanRemove visualization modules#### Summary
Remove all the dependencies related to visualization (Qt, OpenGL, etc)
#### Rationale
Fix #2254
#### Implementation Details
See #2254
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contr...#### Summary
Remove all the dependencies related to visualization (Qt, OpenGL, etc)
#### Rationale
Fix #2254
#### Implementation Details
See #2254
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit9.0.0Thibaut ROMAINThibaut ROMAINhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/941Enable accessing output parameters after WriteOutput()2023-01-10T08:21:37ZRémi CressonEnable accessing output parameters after WriteOutput()Closes #2322Closes #2322Rémi CressonRémi Cressonhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/938Robust extended filename options interpretation2022-10-18T09:39:48ZRémi CressonRobust extended filename options interpretation#### Summary
Closes #2312
#### Rationale
When input file paths are HTTP URIs, like the one we can use with [vsicurl](https://gdal.org/user/virtual_file_systems.html#network-based-file-systems), the extended filename options deduction...#### Summary
Closes #2312
#### Rationale
When input file paths are HTTP URIs, like the one we can use with [vsicurl](https://gdal.org/user/virtual_file_systems.html#network-based-file-systems), the extended filename options deduction can be a mess.
The current implementation only split the filename from the first encountered `?` character.
This is wrong, since such character can be part of a HTTP request pointing to an online raster file.
#### Implementation Details
The new implementation consider that the last occurrence of `?&` marks the beginning of the extended filename options.
##### Classes and files
- ENH: `Modules/Core/Common/src/otbExtendedFilenameHelper.cxx` (new implementation)
- REFAC: `Modules/IO/ExtendedFilename/src/otbExtendedFilenameToReaderOptions.cxx` (shorter code)
- FIX: some tests contained wrong extended filename pattern ([the documentation](https://www.orfeo-toolbox.org/CookBook/ExtendedFilenames.html) clearly states the right pattern is _Path/Image.ext_**?&**_key1=value1&key2=value2_).
- `Modules/Adapters/GdalAdapters/test/CMakeLists.txt`
- `Modules/IO/ExtendedFilename/test/CMakeLists.txt`
- `Modules/IO/ImageIO/test/CMakeLists.txt`
- `Modules/Applications/AppSARCalibration/test/CMakeLists.txt`
- `Modules/Core/ImageBase/test/CMakeLists.txt`
#### Copyright
The copyright owner is *INRAE* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commitRémi CressonRémi Cressonhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/936Add a screenshot of the configuration screen of the OTB plugin2022-10-18T09:22:57ZJulien OsmanAdd a screenshot of the configuration screen of the OTB plugin#### Summary
Add a screenshot of the configuration screen of the OTB plugin in the documentation of the plugin.
#### Rationale
Issue #2308 show that the documentation might not be clear enough. Adding a screenshot of the configuration...#### Summary
Add a screenshot of the configuration screen of the OTB plugin in the documentation of the plugin.
#### Rationale
Issue #2308 show that the documentation might not be clear enough. Adding a screenshot of the configuration screen should help people to understand how to configure the plugin.
#### Implementation Details
##### Documentation
Add an image
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.2.0Thibaut ROMAINThibaut ROMAINhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/927Multiple documentation improvvements2022-09-28T08:08:56ZJulien OsmanMultiple documentation improvvements#### Summary
Improve documentation:
- parameter filter.cc.expr for the Segmentation application
- remote module example
- release note in cookbook
- update the NOTICE
#### Rationale
Closes #2280
#### Implementation Details
##### D...#### Summary
Improve documentation:
- parameter filter.cc.expr for the Segmentation application
- remote module example
- release note in cookbook
- update the NOTICE
#### Rationale
Closes #2280
#### Implementation Details
##### Documentation
- Update documentation page for the Segmentation application
- CookBook page for the remote module
- CookBook page for the release note
- the NOTICE file
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.1.0Julien OsmanJulien Osmanhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/926rpcSolver: Avoid setting equation system multiple times2022-09-01T08:49:43ZJulien OsmanrpcSolver: Avoid setting equation system multiple times#### Summary
Implements !897 that was closed prematurely.
Also update the link to the Geoid files, [after a message on the forum](https://forum.orfeo-toolbox.org/t/update-egm96-gr-hdr-file-in-otb-data-repository/1435?u=julienosman).
#...#### Summary
Implements !897 that was closed prematurely.
Also update the link to the Geoid files, [after a message on the forum](https://forum.orfeo-toolbox.org/t/update-egm96-gr-hdr-file-in-otb-data-repository/1435?u=julienosman).
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.1.0Julien OsmanJulien Osmanhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/925Remove code related to GenerateRPCSensorModel2022-09-01T08:49:28ZJulien OsmanRemove code related to GenerateRPCSensorModel#### Summary
Delete remaining code for GenerateRPCSensorModel
#### Rationale
GenerateRPCSensorModel was removed from OTB since v8. But some code for this application is still present. This MR proposes to remove this unused code.
####...#### Summary
Delete remaining code for GenerateRPCSensorModel
#### Rationale
GenerateRPCSensorModel was removed from OTB since v8. But some code for this application is still present. This MR proposes to remove this unused code.
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.1.0Julien OsmanJulien Osmanhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/919Update dependencies2022-08-29T12:28:00ZJulien OsmanUpdate dependencies#### Summary
Update:
- [ ] Curl
- [x] Expat
- [x] Fftw
- [ ] Freetype
- Gdal (see !921)
- [x] Geos
- [x] Geotiff
- [ ] Gsl
- [ ] Hdf5
- [x] Jpeg
- [x] Libsvm
- [ ] Netcdf
- [x] Opencv
- [ ] Openjpeg
- [x] Pcre
- [x] Proj
- [x] Tiff
##...#### Summary
Update:
- [ ] Curl
- [x] Expat
- [x] Fftw
- [ ] Freetype
- Gdal (see !921)
- [x] Geos
- [x] Geotiff
- [ ] Gsl
- [ ] Hdf5
- [x] Jpeg
- [x] Libsvm
- [ ] Netcdf
- [x] Opencv
- [ ] Openjpeg
- [x] Pcre
- [x] Proj
- [x] Tiff
#### Notes
<!--- List remaining open issues if any, and additional notes. -->
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.1.0Julien OsmanJulien Osmanhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/920Correctly take into account the extended filename writerpctag2022-08-29T12:27:59ZJulien OsmanCorrectly take into account the extended filename writerpctag#### Summary
The extended filename `writerpctag` was not taken into account. With this MR, the output image will contain the RPC model if writerpctag=true even if the proejction is present.
#### Rationale
Fix #2295
#### Implementatio...#### Summary
The extended filename `writerpctag` was not taken into account. With this MR, the output image will contain the RPC model if writerpctag=true even if the proejction is present.
#### Rationale
Fix #2295
#### Implementation Details
##### Classes and files
- `Modules/IO/IOGDAL/include/otbGDALImageIO.h`: New class function `GDALMetadataWriteRPC`
- `Modules/IO/IOGDAL/src/otbGDALImageIO.cxx`: Call `GDALMetadataWriteRPC` when writerpctag=true
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.1.0Julien OsmanJulien Osmanhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/904ENH: Add default radius value to NewFunctorFilter overload2022-08-11T06:54:20ZLaurențiu NicolaENH: Add default radius value to NewFunctorFilter overloadThis should allow the usage described at the bottom of https://www.orfeo-toolbox.org/CookBook-8.0/C++/FunctorImageFilter.html#number-of-output-bands.This should allow the usage described at the bottom of https://www.orfeo-toolbox.org/CookBook-8.0/C++/FunctorImageFilter.html#number-of-output-bands.8.1.0https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/922ADD: RegisterPipeline()2022-08-03T09:10:44ZRémi CressonADD: RegisterPipeline()Closes #2290Closes #22908.1.0Rémi CressonRémi Cressonhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/917Avoid reloading the same DEM directory2022-07-12T18:53:22ZJulien OsmanAvoid reloading the same DEM directory#### Summary
Avoid reloading the same DEM directory.
Fix segfault when a corrupted simlink is present in the DEM directory.
#### Rationale
To set the directory containing the DEM in the DEMHandler, one calls `DEMHandler::OpenDEMDirec...#### Summary
Avoid reloading the same DEM directory.
Fix segfault when a corrupted simlink is present in the DEM directory.
#### Rationale
To set the directory containing the DEM in the DEMHandler, one calls `DEMHandler::OpenDEMDirectory`. Due to how the Application framework works, with the DoUpdateParameters function being called for each parameter, the same directory may be set multiple times, unloading and loading the same data each time. To avoid this, we propose to modify the DEMHandler so it doesn't reload a directory if one calls `DEMHandler::OpenDEMDirectory` with the same path.
Also, when there is a simlink in the DEM directory, if this simlink links to itself, it makes OTB exit with a segfault. We propose to handle this case correctly by ignoring this simlink.
#### Implementation Details
##### Classes and files
- `Modules/IO/IOGDAL/src/otbDEMHandler.cxx`
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.1.0Julien OsmanJulien Osmanhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/905Remove the 'Lena' image.2022-05-09T09:51:21ZJulien OsmanRemove the 'Lena' image.#### Summary
Remove the 'Lena' image used in some tests, and replace it with a Sentinel-2 patch image.
#### Rationale
Closes #2252
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agr...#### Summary
Remove the 'Lena' image used in some tests, and replace it with a Sentinel-2 patch image.
#### Rationale
Closes #2252
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.1.0Julien OsmanJulien Osmanhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/906Integrate Merge Request 870 in release 82022-04-12T05:45:57ZJulien OsmanIntegrate Merge Request 870 in release 8#### Summary
Cherry-pick of the MR 870 into the branch release_8.0
#### Rationale
The MR 870 should have been merged into the branch release-8.0, but was merged into the branch develop. So some part of the python API are missing.
###...#### Summary
Cherry-pick of the MR 870 into the branch release_8.0
#### Rationale
The MR 870 should have been merged into the branch release-8.0, but was merged into the branch develop. So some part of the python API are missing.
#### Test
Add the test `pyTvImageInterface`.
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.0.1Julien OsmanJulien Osmanhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/890ADD: role output for mean, min, max, std2022-04-12T05:45:57ZRémi CressonADD: role output for mean, min, max, stdCloses #2261
I took the liberty to add the following in the stats.
- min
- max
In the proposed implementation, the output are strings.
Maybe it could be better to have a proper parameter_output dedicated to pixels? Maybe that is part...Closes #2261
I took the liberty to add the following in the stats.
- min
- max
In the proposed implementation, the output are strings.
Maybe it could be better to have a proper parameter_output dedicated to pixels? Maybe that is part of another issue8.0.0https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/900Use new metadata framework in Application::GetImageProjection2022-03-15T07:03:21ZJulien OsmanUse new metadata framework in Application::GetImageProjection#### Summary
Application::GetImageProjection still used the old metadata dictionary framework. This MR proposes to use the new ImageMetadata framework.
#### Rationale
Fix #2262
- [X] validated through **pyTvBug2262** unitary test
#...#### Summary
Application::GetImageProjection still used the old metadata dictionary framework. This MR proposes to use the new ImageMetadata framework.
#### Rationale
Fix #2262
- [X] validated through **pyTvBug2262** unitary test
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.0.0Julien OsmanJulien Osmanhttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/879Fix SetParameterString for listview parameters2022-02-07T08:32:44ZCédric TraizetFix SetParameterString for listview parameters#### Summary
Closes #2246
Fix SetParameterString for listview parameters, it now has the same behavior as SetParameterStringList if the input list has one element, i.e.
```python
app.SetParameterString("list_view_param", "value")
app...#### Summary
Closes #2246
Fix SetParameterString for listview parameters, it now has the same behavior as SetParameterStringList if the input list has one element, i.e.
```python
app.SetParameterString("list_view_param", "value")
app.SetParameterStringList("list_view_param", ["value"])
```
now produce the same results
#### Implementation Details
`ListViewParameter::FromString` has been modified to use `SetSelectedNames` instead of `SetValue` (which works on key names).
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.1.0Cédric TraizetCédric Traizethttps://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/merge_requests/876Read additional SAR sensor metadata2022-02-07T08:32:44ZCédric TraizetRead additional SAR sensor metadata#### Summary
Parse additional metadata required for DiapOTB
See https://gitlab.orfeo-toolbox.org/remote_modules/diapotb/-/issues/19#note_98090
#### Implementation Details
Parse:
* TSX
* [x] AzimuthFMrate
* [x] DopplerCentroid
...#### Summary
Parse additional metadata required for DiapOTB
See https://gitlab.orfeo-toolbox.org/remote_modules/diapotb/-/issues/19#note_98090
#### Implementation Details
Parse:
* TSX
* [x] AzimuthFMrate
* [x] DopplerCentroid
* [x] Range and azimuth bandwidth
* [x] Scene corners
* [x] Support for PAZ products : currently only TSX and TDX sensor IDs are accepted
* S1
* [x] Range and azimuth bandwidth
* [x] Azimuth steering rate
* CSK
* [x] Scene corners
#### Copyright
The copyright owner is *CNES* and has signed the ORFEO ToolBox Contributor License Agreement.
<hr>
***Check before merging:***
- All discussions are resolved
- At least 2 :thumbsup: votes from core developers, no :thumbsdown: vote.
- The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run `git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i` on latest changes and commit8.0.0Julien OsmanJulien Osman