vcpkg/ports/ccfits/portfile.cmake

46 lines
1.6 KiB
CMake
Raw Normal View History

vcpkg_download_distfile(ARCHIVE
[geogram, ccfits, chartdir] Build fixes discovered by CI on 2021-10-01 (#20518) * REGRESSION: chartdir:x64-linux. If expected, add chartdir:x64-linux=fail to .\scripts\ci.baseline.txt. -- Note: chartdir only supports dynamic library linkage. Building dynamic library. -- Downloading http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz -> chartdir_cpp_linux_64-7.0.0.tar.gz... [DEBUG] Feature flag 'binarycaching' unset [DEBUG] Feature flag 'manifests' = off [DEBUG] Feature flag 'compilertracking' unset [DEBUG] Feature flag 'registries' unset [DEBUG] Feature flag 'versions' unset [DEBUG] popen(curl --fail -L "https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?sp=racwl&st=2021-06-29T20:09:46Z&se=2021-10-02T04:09:46Z&spr=https&sv=2020-08-04&sr=c&sig=g3shlIpD0R923OUzfIsrTwjX0vc6OzNXGEDO3URXmYc%3D" --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 5632 after 31162 us [DEBUG] popen(curl --fail -L http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 0 after 8512565 us Error: Failed to download from mirror set: https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?*** SECRET ***: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (22) The requested URL returned error: 403 Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature. File does not have the expected hash: url : [ http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz ] File path : [ /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part ] Expected hash : [ e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa ] Actual hash : [ ea2e05f28dd9647fed49feaf130d8034065067463965f144b3fae4eae482579b1ecf528dc86d1b3602887d5ca0c3b1569404489b0f4cb2300b798fed940cd467 ] Updated SHAs and added quotes. These are the changes made by upstream: ``` diff --git a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp index 79f15be..302eb78 100644 --- a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp +++ b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp @@ -108,7 +108,9 @@ void createChart(int chartIndex, const char *filename) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -176,7 +178,7 @@ void createChart(int chartIndex, const char *filename) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); diff --git a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 index b1ea97f..bfb1d4b 100644 Binary files a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 and b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 differ diff --git a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp index a3b7962..d706853 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp @@ -10954,7 +10954,9 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -11022,7 +11024,7 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("@/images/maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); @@ -12304,6 +12306,11 @@ void treemapcolors(QChartViewer *viewer, int /* chartIndex */) void treemaplayout(QChartViewer *viewer, int chartIndex) { + // Labels for the tree map + const char* energy_types[] = {"Coal", "Oil", "Gas", "Nuclear", "Hydro", "Solar", "Wind", + "Biomass", "Geothermal", "Wave"}; + const int energy_types_size = (int)(sizeof(energy_types)/sizeof(*energy_types)); + // Random data for the tree map RanSeries* r = new RanSeries(3); DoubleArray data = r->getSeries(20, 20, 400); @@ -14163,10 +14170,7 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) m->setCap(0, Chart::Transparent); // In this example, the circular bar has 20 segments - int segmentCount = 20; - - // The angular step - double angleStep = 360.0 / segmentCount; + int angleStep = 360 / 20; // The gap between segments is 4.5 degrees double angleGap = 4.5; @@ -14205,39 +14209,28 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) stepColorScale_size)); } - // - // Now we draw the segments of the bar meter - // - - // The segment that contains the value - int currentSegment = (int)(angle / angleStep); - - // Segments after the current segment is colored with the blank color - for(int i = currentSegment + 1; i < segmentCount; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - blankColor); + // Draw the blank part of the circular bar + if (angle < 360) { + // Iterate the segments in the blank part of the circular bar + for(int startAngle = (int)(angle / angleStep) * angleStep; startAngle < 360; startAngle += + angleStep) { + // The first segment may be partially filled + double partialAngle = (startAngle >= angle ? 0 : (angle - startAngle) * (1 - angleGap / + angleStep)); + m->addRingSector(radius, radius - 20, startAngle + partialAngle, startAngle + angleStep + - angleGap, blankColor); } - - // Segments before the current segment is colored with the fill color - for(int i = 0; i < currentSegment; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - fillColor); } - // Segment that contains the angle will be partially filled and partially blank. We need to - // adjust the angle to compensated for the angle gap. - double adjustedAngle = currentSegment * angleStep + (angle - currentSegment * angleStep) * (1 - - angleGap / angleStep); - - // The blank part of the segment - if ((currentSegment + 1) * angleStep > angle) { - m->addRingSector(radius, radius - 20, adjustedAngle, (currentSegment + 1) * angleStep - - angleGap, blankColor); + // Draw the fill part of the circular bar + if (angle > 0) { + // Iterate the segments in the fill part of the circular bar + for(int startAngle = 0; startAngle < angle; startAngle += angleStep) { + // The last segment may be partially filled + double angleSpan = (angleStep - angleGap) * (angle >= startAngle + angleStep ? 1 : ( + angle - startAngle) / angleStep); + m->addRingSector(radius, radius - 20, startAngle, startAngle + angleSpan, fillColor); } - - // The filled part of the segment. - if (angle > currentSegment * angleStep) { - m->addRingSector(radius, radius - 20, currentSegment * angleStep, adjustedAngle, fillColor); } // Add a label at the center to display the value diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp index 7b8c1f5..b029776 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp @@ -315,13 +315,6 @@ void FinanceDemo::onLineEditChanged() int new_avgPeriod2 = m_MovAvg2->text().toInt(); QString tickerKey = m_TickerSymbol->text(); - if (tickerKey.isEmpty()) - { - // Default tickerKey - tickerKey = "ASE"; - m_TickerSymbol->setText(tickerKey); - } - QString compareKey = m_CompareWith->text(); bool needReloadData = (m_tickerKey != tickerKey) || (m_compareKey != compareKey); @@ -367,16 +360,12 @@ void FinanceDemo::loadData(const QString& ticker, const QString& compare) if (m_compareKey != compare) { m_compareKey = compare; - if (m_compareKey.isEmpty()) - m_dailyPrice.compareData.clear(); - else - { + // Simulator to generate realistic random OHLC values FinanceSimulator db2(compare.toUtf8().data(), Chart::chartTime(2010, 1, 1), Chart::chartTime(2020, 12, 31), 86400); m_dailyPrice.compareData = arrayToVector(db2.getCloseData()); } - } // In this example, we will compute the weekly and monthly prices on demand. We just // need to clear the old data here. diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; ``` * REGRESSION: ccfits:arm64-windows. If expected, add ccfits:arm64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-linux. If expected, add ccfits:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-osx. If expected, add ccfits:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static-md. If expected, add ccfits:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static. If expected, add ccfits:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows. If expected, add ccfits:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x86-windows. If expected, add ccfits:x86-windows=fail to .\scripts\ci.baseline.txt. >[DEBUG] popen(curl --fail -L https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz --create-dirs --output /Users/bion/vcpkg/downloads/CCfits-2.5.tar.gz.15183.part 2>&1) >[DEBUG] cmd_execute_and_stream_data() returned 5632 after 415053 us >Error: Failed to download from mirror set: >https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current > Dload Upload Total Spent Left Speed > 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 >curl: (22) The requested URL returned error: 404 Not Found Fixed link and modernized portfile. * REGRESSION: geogram:x64-linux. If expected, add geogram:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-osx. If expected, add geogram:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static-md. If expected, add geogram:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static. If expected, add geogram:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows. If expected, add geogram:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x86-windows. If expected, add geogram:x86-windows=fail to .\scripts\ci.baseline.txt. Upstream is gone: https://gforge.inria.fr/frs/download.php/file/38314/geogram_1.7.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (60) SSL: no alternative certificate subject name matches target host name 'gforge.inria.fr' More details here: https://curl.haxx.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above. [DEBUG] /agent/_work/1/s/buildtrees/_vcpkg/src/vcpkg-tool-2021-09-10/src/vcpkg/base/downloads.cpp(626) [DEBUG] Exiting after 583.7 ms us (582562 us) CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:83 (message): Failed to download file with error: 1 If you use a proxy, please check your proxy setting. Possible causes are: 1. You are actually using an HTTP proxy, but setting HTTPS_PROXY variable to `https://address:port`. This is not correct, because `https://` prefix claims the proxy is an HTTPS proxy, while your proxy (v2ray, shadowsocksr , etc..) is an HTTP proxy. Try setting `http://address:port` to both HTTP_PROXY and HTTPS_PROXY instead. 2. You are using Fiddler. Currently a bug (https://github.com/microsoft/vcpkg/issues/17752) will set HTTPS_PROXY to `https://fiddler_address:port` which lead to problem 1 above. Workaround is open Windows 10 Settings App, and search for Proxy Configuration page, Change `http=address:port;https=address:port` to `address`, and fill the port number. 3. You proxy's remote server is out of service. In future vcpkg releases, if you are using Windows, you no longer need to set HTTP(S)_PROXY environment variables. Vcpkg will simply apply Windows IE Proxy Settings set by your proxy software. See (https://github.com/microsoft/vcpkg-tool/pull/49) and (https://github.com/microsoft/vcpkg-tool/pull/77) Otherwise, please submit an issue at https://github.com/Microsoft/vcpkg/issues Call Stack (most recent call first): scripts/cmake/vcpkg_download_distfile.cmake:274 (z_vcpkg_download_distfile_show_proxy_and_fail) ports/geogram/portfile.cmake:4 (vcpkg_download_distfile) scripts/ports.cmake:141 (include) Skipped in ci.baseline.txt.
2021-10-06 13:14:35 +08:00
URLS "https://heasarc.gsfc.nasa.gov/fitsio/CCfits-2.5/CCfits-2.5.tar.gz"
FILENAME "CCfits-2.5.tar.gz"
SHA512 63ab4d153063960510cf60651d5c832824cf85f937f84adc5390c7c2fb46eb8e9f5d8cda2554d79d24c7a4f1b6cf0b7a6e20958fb69920b65d7c362c0a5f26b5
)
vcpkg_extract_source_archive(
SOURCE_PATH
[geogram, ccfits, chartdir] Build fixes discovered by CI on 2021-10-01 (#20518) * REGRESSION: chartdir:x64-linux. If expected, add chartdir:x64-linux=fail to .\scripts\ci.baseline.txt. -- Note: chartdir only supports dynamic library linkage. Building dynamic library. -- Downloading http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz -> chartdir_cpp_linux_64-7.0.0.tar.gz... [DEBUG] Feature flag 'binarycaching' unset [DEBUG] Feature flag 'manifests' = off [DEBUG] Feature flag 'compilertracking' unset [DEBUG] Feature flag 'registries' unset [DEBUG] Feature flag 'versions' unset [DEBUG] popen(curl --fail -L "https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?sp=racwl&st=2021-06-29T20:09:46Z&se=2021-10-02T04:09:46Z&spr=https&sv=2020-08-04&sr=c&sig=g3shlIpD0R923OUzfIsrTwjX0vc6OzNXGEDO3URXmYc%3D" --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 5632 after 31162 us [DEBUG] popen(curl --fail -L http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 0 after 8512565 us Error: Failed to download from mirror set: https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?*** SECRET ***: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (22) The requested URL returned error: 403 Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature. File does not have the expected hash: url : [ http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz ] File path : [ /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part ] Expected hash : [ e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa ] Actual hash : [ ea2e05f28dd9647fed49feaf130d8034065067463965f144b3fae4eae482579b1ecf528dc86d1b3602887d5ca0c3b1569404489b0f4cb2300b798fed940cd467 ] Updated SHAs and added quotes. These are the changes made by upstream: ``` diff --git a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp index 79f15be..302eb78 100644 --- a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp +++ b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp @@ -108,7 +108,9 @@ void createChart(int chartIndex, const char *filename) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -176,7 +178,7 @@ void createChart(int chartIndex, const char *filename) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); diff --git a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 index b1ea97f..bfb1d4b 100644 Binary files a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 and b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 differ diff --git a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp index a3b7962..d706853 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp @@ -10954,7 +10954,9 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -11022,7 +11024,7 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("@/images/maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); @@ -12304,6 +12306,11 @@ void treemapcolors(QChartViewer *viewer, int /* chartIndex */) void treemaplayout(QChartViewer *viewer, int chartIndex) { + // Labels for the tree map + const char* energy_types[] = {"Coal", "Oil", "Gas", "Nuclear", "Hydro", "Solar", "Wind", + "Biomass", "Geothermal", "Wave"}; + const int energy_types_size = (int)(sizeof(energy_types)/sizeof(*energy_types)); + // Random data for the tree map RanSeries* r = new RanSeries(3); DoubleArray data = r->getSeries(20, 20, 400); @@ -14163,10 +14170,7 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) m->setCap(0, Chart::Transparent); // In this example, the circular bar has 20 segments - int segmentCount = 20; - - // The angular step - double angleStep = 360.0 / segmentCount; + int angleStep = 360 / 20; // The gap between segments is 4.5 degrees double angleGap = 4.5; @@ -14205,39 +14209,28 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) stepColorScale_size)); } - // - // Now we draw the segments of the bar meter - // - - // The segment that contains the value - int currentSegment = (int)(angle / angleStep); - - // Segments after the current segment is colored with the blank color - for(int i = currentSegment + 1; i < segmentCount; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - blankColor); + // Draw the blank part of the circular bar + if (angle < 360) { + // Iterate the segments in the blank part of the circular bar + for(int startAngle = (int)(angle / angleStep) * angleStep; startAngle < 360; startAngle += + angleStep) { + // The first segment may be partially filled + double partialAngle = (startAngle >= angle ? 0 : (angle - startAngle) * (1 - angleGap / + angleStep)); + m->addRingSector(radius, radius - 20, startAngle + partialAngle, startAngle + angleStep + - angleGap, blankColor); } - - // Segments before the current segment is colored with the fill color - for(int i = 0; i < currentSegment; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - fillColor); } - // Segment that contains the angle will be partially filled and partially blank. We need to - // adjust the angle to compensated for the angle gap. - double adjustedAngle = currentSegment * angleStep + (angle - currentSegment * angleStep) * (1 - - angleGap / angleStep); - - // The blank part of the segment - if ((currentSegment + 1) * angleStep > angle) { - m->addRingSector(radius, radius - 20, adjustedAngle, (currentSegment + 1) * angleStep - - angleGap, blankColor); + // Draw the fill part of the circular bar + if (angle > 0) { + // Iterate the segments in the fill part of the circular bar + for(int startAngle = 0; startAngle < angle; startAngle += angleStep) { + // The last segment may be partially filled + double angleSpan = (angleStep - angleGap) * (angle >= startAngle + angleStep ? 1 : ( + angle - startAngle) / angleStep); + m->addRingSector(radius, radius - 20, startAngle, startAngle + angleSpan, fillColor); } - - // The filled part of the segment. - if (angle > currentSegment * angleStep) { - m->addRingSector(radius, radius - 20, currentSegment * angleStep, adjustedAngle, fillColor); } // Add a label at the center to display the value diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp index 7b8c1f5..b029776 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp @@ -315,13 +315,6 @@ void FinanceDemo::onLineEditChanged() int new_avgPeriod2 = m_MovAvg2->text().toInt(); QString tickerKey = m_TickerSymbol->text(); - if (tickerKey.isEmpty()) - { - // Default tickerKey - tickerKey = "ASE"; - m_TickerSymbol->setText(tickerKey); - } - QString compareKey = m_CompareWith->text(); bool needReloadData = (m_tickerKey != tickerKey) || (m_compareKey != compareKey); @@ -367,16 +360,12 @@ void FinanceDemo::loadData(const QString& ticker, const QString& compare) if (m_compareKey != compare) { m_compareKey = compare; - if (m_compareKey.isEmpty()) - m_dailyPrice.compareData.clear(); - else - { + // Simulator to generate realistic random OHLC values FinanceSimulator db2(compare.toUtf8().data(), Chart::chartTime(2010, 1, 1), Chart::chartTime(2020, 12, 31), 86400); m_dailyPrice.compareData = arrayToVector(db2.getCloseData()); } - } // In this example, we will compute the weekly and monthly prices on demand. We just // need to clear the old data here. diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; ``` * REGRESSION: ccfits:arm64-windows. If expected, add ccfits:arm64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-linux. If expected, add ccfits:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-osx. If expected, add ccfits:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static-md. If expected, add ccfits:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static. If expected, add ccfits:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows. If expected, add ccfits:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x86-windows. If expected, add ccfits:x86-windows=fail to .\scripts\ci.baseline.txt. >[DEBUG] popen(curl --fail -L https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz --create-dirs --output /Users/bion/vcpkg/downloads/CCfits-2.5.tar.gz.15183.part 2>&1) >[DEBUG] cmd_execute_and_stream_data() returned 5632 after 415053 us >Error: Failed to download from mirror set: >https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current > Dload Upload Total Spent Left Speed > 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 >curl: (22) The requested URL returned error: 404 Not Found Fixed link and modernized portfile. * REGRESSION: geogram:x64-linux. If expected, add geogram:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-osx. If expected, add geogram:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static-md. If expected, add geogram:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static. If expected, add geogram:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows. If expected, add geogram:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x86-windows. If expected, add geogram:x86-windows=fail to .\scripts\ci.baseline.txt. Upstream is gone: https://gforge.inria.fr/frs/download.php/file/38314/geogram_1.7.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (60) SSL: no alternative certificate subject name matches target host name 'gforge.inria.fr' More details here: https://curl.haxx.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above. [DEBUG] /agent/_work/1/s/buildtrees/_vcpkg/src/vcpkg-tool-2021-09-10/src/vcpkg/base/downloads.cpp(626) [DEBUG] Exiting after 583.7 ms us (582562 us) CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:83 (message): Failed to download file with error: 1 If you use a proxy, please check your proxy setting. Possible causes are: 1. You are actually using an HTTP proxy, but setting HTTPS_PROXY variable to `https://address:port`. This is not correct, because `https://` prefix claims the proxy is an HTTPS proxy, while your proxy (v2ray, shadowsocksr , etc..) is an HTTP proxy. Try setting `http://address:port` to both HTTP_PROXY and HTTPS_PROXY instead. 2. You are using Fiddler. Currently a bug (https://github.com/microsoft/vcpkg/issues/17752) will set HTTPS_PROXY to `https://fiddler_address:port` which lead to problem 1 above. Workaround is open Windows 10 Settings App, and search for Proxy Configuration page, Change `http=address:port;https=address:port` to `address`, and fill the port number. 3. You proxy's remote server is out of service. In future vcpkg releases, if you are using Windows, you no longer need to set HTTP(S)_PROXY environment variables. Vcpkg will simply apply Windows IE Proxy Settings set by your proxy software. See (https://github.com/microsoft/vcpkg-tool/pull/49) and (https://github.com/microsoft/vcpkg-tool/pull/77) Otherwise, please submit an issue at https://github.com/Microsoft/vcpkg/issues Call Stack (most recent call first): scripts/cmake/vcpkg_download_distfile.cmake:274 (z_vcpkg_download_distfile_show_proxy_and_fail) ports/geogram/portfile.cmake:4 (vcpkg_download_distfile) scripts/ports.cmake:141 (include) Skipped in ci.baseline.txt.
2021-10-06 13:14:35 +08:00
ARCHIVE "${ARCHIVE}"
PATCHES
dll_exports.patch
fix-dependency.patch
)
[geogram, ccfits, chartdir] Build fixes discovered by CI on 2021-10-01 (#20518) * REGRESSION: chartdir:x64-linux. If expected, add chartdir:x64-linux=fail to .\scripts\ci.baseline.txt. -- Note: chartdir only supports dynamic library linkage. Building dynamic library. -- Downloading http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz -> chartdir_cpp_linux_64-7.0.0.tar.gz... [DEBUG] Feature flag 'binarycaching' unset [DEBUG] Feature flag 'manifests' = off [DEBUG] Feature flag 'compilertracking' unset [DEBUG] Feature flag 'registries' unset [DEBUG] Feature flag 'versions' unset [DEBUG] popen(curl --fail -L "https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?sp=racwl&st=2021-06-29T20:09:46Z&se=2021-10-02T04:09:46Z&spr=https&sv=2020-08-04&sr=c&sig=g3shlIpD0R923OUzfIsrTwjX0vc6OzNXGEDO3URXmYc%3D" --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 5632 after 31162 us [DEBUG] popen(curl --fail -L http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 0 after 8512565 us Error: Failed to download from mirror set: https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?*** SECRET ***: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (22) The requested URL returned error: 403 Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature. File does not have the expected hash: url : [ http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz ] File path : [ /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part ] Expected hash : [ e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa ] Actual hash : [ ea2e05f28dd9647fed49feaf130d8034065067463965f144b3fae4eae482579b1ecf528dc86d1b3602887d5ca0c3b1569404489b0f4cb2300b798fed940cd467 ] Updated SHAs and added quotes. These are the changes made by upstream: ``` diff --git a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp index 79f15be..302eb78 100644 --- a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp +++ b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp @@ -108,7 +108,9 @@ void createChart(int chartIndex, const char *filename) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -176,7 +178,7 @@ void createChart(int chartIndex, const char *filename) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); diff --git a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 index b1ea97f..bfb1d4b 100644 Binary files a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 and b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 differ diff --git a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp index a3b7962..d706853 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp @@ -10954,7 +10954,9 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -11022,7 +11024,7 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("@/images/maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); @@ -12304,6 +12306,11 @@ void treemapcolors(QChartViewer *viewer, int /* chartIndex */) void treemaplayout(QChartViewer *viewer, int chartIndex) { + // Labels for the tree map + const char* energy_types[] = {"Coal", "Oil", "Gas", "Nuclear", "Hydro", "Solar", "Wind", + "Biomass", "Geothermal", "Wave"}; + const int energy_types_size = (int)(sizeof(energy_types)/sizeof(*energy_types)); + // Random data for the tree map RanSeries* r = new RanSeries(3); DoubleArray data = r->getSeries(20, 20, 400); @@ -14163,10 +14170,7 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) m->setCap(0, Chart::Transparent); // In this example, the circular bar has 20 segments - int segmentCount = 20; - - // The angular step - double angleStep = 360.0 / segmentCount; + int angleStep = 360 / 20; // The gap between segments is 4.5 degrees double angleGap = 4.5; @@ -14205,39 +14209,28 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) stepColorScale_size)); } - // - // Now we draw the segments of the bar meter - // - - // The segment that contains the value - int currentSegment = (int)(angle / angleStep); - - // Segments after the current segment is colored with the blank color - for(int i = currentSegment + 1; i < segmentCount; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - blankColor); + // Draw the blank part of the circular bar + if (angle < 360) { + // Iterate the segments in the blank part of the circular bar + for(int startAngle = (int)(angle / angleStep) * angleStep; startAngle < 360; startAngle += + angleStep) { + // The first segment may be partially filled + double partialAngle = (startAngle >= angle ? 0 : (angle - startAngle) * (1 - angleGap / + angleStep)); + m->addRingSector(radius, radius - 20, startAngle + partialAngle, startAngle + angleStep + - angleGap, blankColor); } - - // Segments before the current segment is colored with the fill color - for(int i = 0; i < currentSegment; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - fillColor); } - // Segment that contains the angle will be partially filled and partially blank. We need to - // adjust the angle to compensated for the angle gap. - double adjustedAngle = currentSegment * angleStep + (angle - currentSegment * angleStep) * (1 - - angleGap / angleStep); - - // The blank part of the segment - if ((currentSegment + 1) * angleStep > angle) { - m->addRingSector(radius, radius - 20, adjustedAngle, (currentSegment + 1) * angleStep - - angleGap, blankColor); + // Draw the fill part of the circular bar + if (angle > 0) { + // Iterate the segments in the fill part of the circular bar + for(int startAngle = 0; startAngle < angle; startAngle += angleStep) { + // The last segment may be partially filled + double angleSpan = (angleStep - angleGap) * (angle >= startAngle + angleStep ? 1 : ( + angle - startAngle) / angleStep); + m->addRingSector(radius, radius - 20, startAngle, startAngle + angleSpan, fillColor); } - - // The filled part of the segment. - if (angle > currentSegment * angleStep) { - m->addRingSector(radius, radius - 20, currentSegment * angleStep, adjustedAngle, fillColor); } // Add a label at the center to display the value diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp index 7b8c1f5..b029776 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp @@ -315,13 +315,6 @@ void FinanceDemo::onLineEditChanged() int new_avgPeriod2 = m_MovAvg2->text().toInt(); QString tickerKey = m_TickerSymbol->text(); - if (tickerKey.isEmpty()) - { - // Default tickerKey - tickerKey = "ASE"; - m_TickerSymbol->setText(tickerKey); - } - QString compareKey = m_CompareWith->text(); bool needReloadData = (m_tickerKey != tickerKey) || (m_compareKey != compareKey); @@ -367,16 +360,12 @@ void FinanceDemo::loadData(const QString& ticker, const QString& compare) if (m_compareKey != compare) { m_compareKey = compare; - if (m_compareKey.isEmpty()) - m_dailyPrice.compareData.clear(); - else - { + // Simulator to generate realistic random OHLC values FinanceSimulator db2(compare.toUtf8().data(), Chart::chartTime(2010, 1, 1), Chart::chartTime(2020, 12, 31), 86400); m_dailyPrice.compareData = arrayToVector(db2.getCloseData()); } - } // In this example, we will compute the weekly and monthly prices on demand. We just // need to clear the old data here. diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; ``` * REGRESSION: ccfits:arm64-windows. If expected, add ccfits:arm64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-linux. If expected, add ccfits:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-osx. If expected, add ccfits:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static-md. If expected, add ccfits:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static. If expected, add ccfits:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows. If expected, add ccfits:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x86-windows. If expected, add ccfits:x86-windows=fail to .\scripts\ci.baseline.txt. >[DEBUG] popen(curl --fail -L https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz --create-dirs --output /Users/bion/vcpkg/downloads/CCfits-2.5.tar.gz.15183.part 2>&1) >[DEBUG] cmd_execute_and_stream_data() returned 5632 after 415053 us >Error: Failed to download from mirror set: >https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current > Dload Upload Total Spent Left Speed > 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 >curl: (22) The requested URL returned error: 404 Not Found Fixed link and modernized portfile. * REGRESSION: geogram:x64-linux. If expected, add geogram:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-osx. If expected, add geogram:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static-md. If expected, add geogram:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static. If expected, add geogram:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows. If expected, add geogram:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x86-windows. If expected, add geogram:x86-windows=fail to .\scripts\ci.baseline.txt. Upstream is gone: https://gforge.inria.fr/frs/download.php/file/38314/geogram_1.7.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (60) SSL: no alternative certificate subject name matches target host name 'gforge.inria.fr' More details here: https://curl.haxx.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above. [DEBUG] /agent/_work/1/s/buildtrees/_vcpkg/src/vcpkg-tool-2021-09-10/src/vcpkg/base/downloads.cpp(626) [DEBUG] Exiting after 583.7 ms us (582562 us) CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:83 (message): Failed to download file with error: 1 If you use a proxy, please check your proxy setting. Possible causes are: 1. You are actually using an HTTP proxy, but setting HTTPS_PROXY variable to `https://address:port`. This is not correct, because `https://` prefix claims the proxy is an HTTPS proxy, while your proxy (v2ray, shadowsocksr , etc..) is an HTTP proxy. Try setting `http://address:port` to both HTTP_PROXY and HTTPS_PROXY instead. 2. You are using Fiddler. Currently a bug (https://github.com/microsoft/vcpkg/issues/17752) will set HTTPS_PROXY to `https://fiddler_address:port` which lead to problem 1 above. Workaround is open Windows 10 Settings App, and search for Proxy Configuration page, Change `http=address:port;https=address:port` to `address`, and fill the port number. 3. You proxy's remote server is out of service. In future vcpkg releases, if you are using Windows, you no longer need to set HTTP(S)_PROXY environment variables. Vcpkg will simply apply Windows IE Proxy Settings set by your proxy software. See (https://github.com/microsoft/vcpkg-tool/pull/49) and (https://github.com/microsoft/vcpkg-tool/pull/77) Otherwise, please submit an issue at https://github.com/Microsoft/vcpkg/issues Call Stack (most recent call first): scripts/cmake/vcpkg_download_distfile.cmake:274 (z_vcpkg_download_distfile_show_proxy_and_fail) ports/geogram/portfile.cmake:4 (vcpkg_download_distfile) scripts/ports.cmake:141 (include) Skipped in ci.baseline.txt.
2021-10-06 13:14:35 +08:00
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DCMAKE_CXX_STANDARD=11 # 17 removes std::binary_function
)
[geogram, ccfits, chartdir] Build fixes discovered by CI on 2021-10-01 (#20518) * REGRESSION: chartdir:x64-linux. If expected, add chartdir:x64-linux=fail to .\scripts\ci.baseline.txt. -- Note: chartdir only supports dynamic library linkage. Building dynamic library. -- Downloading http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz -> chartdir_cpp_linux_64-7.0.0.tar.gz... [DEBUG] Feature flag 'binarycaching' unset [DEBUG] Feature flag 'manifests' = off [DEBUG] Feature flag 'compilertracking' unset [DEBUG] Feature flag 'registries' unset [DEBUG] Feature flag 'versions' unset [DEBUG] popen(curl --fail -L "https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?sp=racwl&st=2021-06-29T20:09:46Z&se=2021-10-02T04:09:46Z&spr=https&sv=2020-08-04&sr=c&sig=g3shlIpD0R923OUzfIsrTwjX0vc6OzNXGEDO3URXmYc%3D" --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 5632 after 31162 us [DEBUG] popen(curl --fail -L http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 0 after 8512565 us Error: Failed to download from mirror set: https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?*** SECRET ***: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (22) The requested URL returned error: 403 Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature. File does not have the expected hash: url : [ http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz ] File path : [ /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part ] Expected hash : [ e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa ] Actual hash : [ ea2e05f28dd9647fed49feaf130d8034065067463965f144b3fae4eae482579b1ecf528dc86d1b3602887d5ca0c3b1569404489b0f4cb2300b798fed940cd467 ] Updated SHAs and added quotes. These are the changes made by upstream: ``` diff --git a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp index 79f15be..302eb78 100644 --- a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp +++ b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp @@ -108,7 +108,9 @@ void createChart(int chartIndex, const char *filename) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -176,7 +178,7 @@ void createChart(int chartIndex, const char *filename) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); diff --git a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 index b1ea97f..bfb1d4b 100644 Binary files a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 and b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 differ diff --git a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp index a3b7962..d706853 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp @@ -10954,7 +10954,9 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -11022,7 +11024,7 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("@/images/maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); @@ -12304,6 +12306,11 @@ void treemapcolors(QChartViewer *viewer, int /* chartIndex */) void treemaplayout(QChartViewer *viewer, int chartIndex) { + // Labels for the tree map + const char* energy_types[] = {"Coal", "Oil", "Gas", "Nuclear", "Hydro", "Solar", "Wind", + "Biomass", "Geothermal", "Wave"}; + const int energy_types_size = (int)(sizeof(energy_types)/sizeof(*energy_types)); + // Random data for the tree map RanSeries* r = new RanSeries(3); DoubleArray data = r->getSeries(20, 20, 400); @@ -14163,10 +14170,7 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) m->setCap(0, Chart::Transparent); // In this example, the circular bar has 20 segments - int segmentCount = 20; - - // The angular step - double angleStep = 360.0 / segmentCount; + int angleStep = 360 / 20; // The gap between segments is 4.5 degrees double angleGap = 4.5; @@ -14205,39 +14209,28 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) stepColorScale_size)); } - // - // Now we draw the segments of the bar meter - // - - // The segment that contains the value - int currentSegment = (int)(angle / angleStep); - - // Segments after the current segment is colored with the blank color - for(int i = currentSegment + 1; i < segmentCount; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - blankColor); + // Draw the blank part of the circular bar + if (angle < 360) { + // Iterate the segments in the blank part of the circular bar + for(int startAngle = (int)(angle / angleStep) * angleStep; startAngle < 360; startAngle += + angleStep) { + // The first segment may be partially filled + double partialAngle = (startAngle >= angle ? 0 : (angle - startAngle) * (1 - angleGap / + angleStep)); + m->addRingSector(radius, radius - 20, startAngle + partialAngle, startAngle + angleStep + - angleGap, blankColor); } - - // Segments before the current segment is colored with the fill color - for(int i = 0; i < currentSegment; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - fillColor); } - // Segment that contains the angle will be partially filled and partially blank. We need to - // adjust the angle to compensated for the angle gap. - double adjustedAngle = currentSegment * angleStep + (angle - currentSegment * angleStep) * (1 - - angleGap / angleStep); - - // The blank part of the segment - if ((currentSegment + 1) * angleStep > angle) { - m->addRingSector(radius, radius - 20, adjustedAngle, (currentSegment + 1) * angleStep - - angleGap, blankColor); + // Draw the fill part of the circular bar + if (angle > 0) { + // Iterate the segments in the fill part of the circular bar + for(int startAngle = 0; startAngle < angle; startAngle += angleStep) { + // The last segment may be partially filled + double angleSpan = (angleStep - angleGap) * (angle >= startAngle + angleStep ? 1 : ( + angle - startAngle) / angleStep); + m->addRingSector(radius, radius - 20, startAngle, startAngle + angleSpan, fillColor); } - - // The filled part of the segment. - if (angle > currentSegment * angleStep) { - m->addRingSector(radius, radius - 20, currentSegment * angleStep, adjustedAngle, fillColor); } // Add a label at the center to display the value diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp index 7b8c1f5..b029776 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp @@ -315,13 +315,6 @@ void FinanceDemo::onLineEditChanged() int new_avgPeriod2 = m_MovAvg2->text().toInt(); QString tickerKey = m_TickerSymbol->text(); - if (tickerKey.isEmpty()) - { - // Default tickerKey - tickerKey = "ASE"; - m_TickerSymbol->setText(tickerKey); - } - QString compareKey = m_CompareWith->text(); bool needReloadData = (m_tickerKey != tickerKey) || (m_compareKey != compareKey); @@ -367,16 +360,12 @@ void FinanceDemo::loadData(const QString& ticker, const QString& compare) if (m_compareKey != compare) { m_compareKey = compare; - if (m_compareKey.isEmpty()) - m_dailyPrice.compareData.clear(); - else - { + // Simulator to generate realistic random OHLC values FinanceSimulator db2(compare.toUtf8().data(), Chart::chartTime(2010, 1, 1), Chart::chartTime(2020, 12, 31), 86400); m_dailyPrice.compareData = arrayToVector(db2.getCloseData()); } - } // In this example, we will compute the weekly and monthly prices on demand. We just // need to clear the old data here. diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; ``` * REGRESSION: ccfits:arm64-windows. If expected, add ccfits:arm64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-linux. If expected, add ccfits:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-osx. If expected, add ccfits:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static-md. If expected, add ccfits:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static. If expected, add ccfits:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows. If expected, add ccfits:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x86-windows. If expected, add ccfits:x86-windows=fail to .\scripts\ci.baseline.txt. >[DEBUG] popen(curl --fail -L https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz --create-dirs --output /Users/bion/vcpkg/downloads/CCfits-2.5.tar.gz.15183.part 2>&1) >[DEBUG] cmd_execute_and_stream_data() returned 5632 after 415053 us >Error: Failed to download from mirror set: >https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current > Dload Upload Total Spent Left Speed > 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 >curl: (22) The requested URL returned error: 404 Not Found Fixed link and modernized portfile. * REGRESSION: geogram:x64-linux. If expected, add geogram:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-osx. If expected, add geogram:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static-md. If expected, add geogram:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static. If expected, add geogram:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows. If expected, add geogram:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x86-windows. If expected, add geogram:x86-windows=fail to .\scripts\ci.baseline.txt. Upstream is gone: https://gforge.inria.fr/frs/download.php/file/38314/geogram_1.7.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (60) SSL: no alternative certificate subject name matches target host name 'gforge.inria.fr' More details here: https://curl.haxx.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above. [DEBUG] /agent/_work/1/s/buildtrees/_vcpkg/src/vcpkg-tool-2021-09-10/src/vcpkg/base/downloads.cpp(626) [DEBUG] Exiting after 583.7 ms us (582562 us) CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:83 (message): Failed to download file with error: 1 If you use a proxy, please check your proxy setting. Possible causes are: 1. You are actually using an HTTP proxy, but setting HTTPS_PROXY variable to `https://address:port`. This is not correct, because `https://` prefix claims the proxy is an HTTPS proxy, while your proxy (v2ray, shadowsocksr , etc..) is an HTTP proxy. Try setting `http://address:port` to both HTTP_PROXY and HTTPS_PROXY instead. 2. You are using Fiddler. Currently a bug (https://github.com/microsoft/vcpkg/issues/17752) will set HTTPS_PROXY to `https://fiddler_address:port` which lead to problem 1 above. Workaround is open Windows 10 Settings App, and search for Proxy Configuration page, Change `http=address:port;https=address:port` to `address`, and fill the port number. 3. You proxy's remote server is out of service. In future vcpkg releases, if you are using Windows, you no longer need to set HTTP(S)_PROXY environment variables. Vcpkg will simply apply Windows IE Proxy Settings set by your proxy software. See (https://github.com/microsoft/vcpkg-tool/pull/49) and (https://github.com/microsoft/vcpkg-tool/pull/77) Otherwise, please submit an issue at https://github.com/Microsoft/vcpkg/issues Call Stack (most recent call first): scripts/cmake/vcpkg_download_distfile.cmake:274 (z_vcpkg_download_distfile_show_proxy_and_fail) ports/geogram/portfile.cmake:4 (vcpkg_download_distfile) scripts/ports.cmake:141 (include) Skipped in ci.baseline.txt.
2021-10-06 13:14:35 +08:00
vcpkg_cmake_install()
[geogram, ccfits, chartdir] Build fixes discovered by CI on 2021-10-01 (#20518) * REGRESSION: chartdir:x64-linux. If expected, add chartdir:x64-linux=fail to .\scripts\ci.baseline.txt. -- Note: chartdir only supports dynamic library linkage. Building dynamic library. -- Downloading http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz -> chartdir_cpp_linux_64-7.0.0.tar.gz... [DEBUG] Feature flag 'binarycaching' unset [DEBUG] Feature flag 'manifests' = off [DEBUG] Feature flag 'compilertracking' unset [DEBUG] Feature flag 'registries' unset [DEBUG] Feature flag 'versions' unset [DEBUG] popen(curl --fail -L "https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?sp=racwl&st=2021-06-29T20:09:46Z&se=2021-10-02T04:09:46Z&spr=https&sv=2020-08-04&sr=c&sig=g3shlIpD0R923OUzfIsrTwjX0vc6OzNXGEDO3URXmYc%3D" --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 5632 after 31162 us [DEBUG] popen(curl --fail -L http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 0 after 8512565 us Error: Failed to download from mirror set: https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?*** SECRET ***: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (22) The requested URL returned error: 403 Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature. File does not have the expected hash: url : [ http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz ] File path : [ /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part ] Expected hash : [ e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa ] Actual hash : [ ea2e05f28dd9647fed49feaf130d8034065067463965f144b3fae4eae482579b1ecf528dc86d1b3602887d5ca0c3b1569404489b0f4cb2300b798fed940cd467 ] Updated SHAs and added quotes. These are the changes made by upstream: ``` diff --git a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp index 79f15be..302eb78 100644 --- a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp +++ b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp @@ -108,7 +108,9 @@ void createChart(int chartIndex, const char *filename) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -176,7 +178,7 @@ void createChart(int chartIndex, const char *filename) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); diff --git a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 index b1ea97f..bfb1d4b 100644 Binary files a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 and b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 differ diff --git a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp index a3b7962..d706853 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp @@ -10954,7 +10954,9 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -11022,7 +11024,7 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("@/images/maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); @@ -12304,6 +12306,11 @@ void treemapcolors(QChartViewer *viewer, int /* chartIndex */) void treemaplayout(QChartViewer *viewer, int chartIndex) { + // Labels for the tree map + const char* energy_types[] = {"Coal", "Oil", "Gas", "Nuclear", "Hydro", "Solar", "Wind", + "Biomass", "Geothermal", "Wave"}; + const int energy_types_size = (int)(sizeof(energy_types)/sizeof(*energy_types)); + // Random data for the tree map RanSeries* r = new RanSeries(3); DoubleArray data = r->getSeries(20, 20, 400); @@ -14163,10 +14170,7 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) m->setCap(0, Chart::Transparent); // In this example, the circular bar has 20 segments - int segmentCount = 20; - - // The angular step - double angleStep = 360.0 / segmentCount; + int angleStep = 360 / 20; // The gap between segments is 4.5 degrees double angleGap = 4.5; @@ -14205,39 +14209,28 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) stepColorScale_size)); } - // - // Now we draw the segments of the bar meter - // - - // The segment that contains the value - int currentSegment = (int)(angle / angleStep); - - // Segments after the current segment is colored with the blank color - for(int i = currentSegment + 1; i < segmentCount; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - blankColor); + // Draw the blank part of the circular bar + if (angle < 360) { + // Iterate the segments in the blank part of the circular bar + for(int startAngle = (int)(angle / angleStep) * angleStep; startAngle < 360; startAngle += + angleStep) { + // The first segment may be partially filled + double partialAngle = (startAngle >= angle ? 0 : (angle - startAngle) * (1 - angleGap / + angleStep)); + m->addRingSector(radius, radius - 20, startAngle + partialAngle, startAngle + angleStep + - angleGap, blankColor); } - - // Segments before the current segment is colored with the fill color - for(int i = 0; i < currentSegment; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - fillColor); } - // Segment that contains the angle will be partially filled and partially blank. We need to - // adjust the angle to compensated for the angle gap. - double adjustedAngle = currentSegment * angleStep + (angle - currentSegment * angleStep) * (1 - - angleGap / angleStep); - - // The blank part of the segment - if ((currentSegment + 1) * angleStep > angle) { - m->addRingSector(radius, radius - 20, adjustedAngle, (currentSegment + 1) * angleStep - - angleGap, blankColor); + // Draw the fill part of the circular bar + if (angle > 0) { + // Iterate the segments in the fill part of the circular bar + for(int startAngle = 0; startAngle < angle; startAngle += angleStep) { + // The last segment may be partially filled + double angleSpan = (angleStep - angleGap) * (angle >= startAngle + angleStep ? 1 : ( + angle - startAngle) / angleStep); + m->addRingSector(radius, radius - 20, startAngle, startAngle + angleSpan, fillColor); } - - // The filled part of the segment. - if (angle > currentSegment * angleStep) { - m->addRingSector(radius, radius - 20, currentSegment * angleStep, adjustedAngle, fillColor); } // Add a label at the center to display the value diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp index 7b8c1f5..b029776 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp @@ -315,13 +315,6 @@ void FinanceDemo::onLineEditChanged() int new_avgPeriod2 = m_MovAvg2->text().toInt(); QString tickerKey = m_TickerSymbol->text(); - if (tickerKey.isEmpty()) - { - // Default tickerKey - tickerKey = "ASE"; - m_TickerSymbol->setText(tickerKey); - } - QString compareKey = m_CompareWith->text(); bool needReloadData = (m_tickerKey != tickerKey) || (m_compareKey != compareKey); @@ -367,16 +360,12 @@ void FinanceDemo::loadData(const QString& ticker, const QString& compare) if (m_compareKey != compare) { m_compareKey = compare; - if (m_compareKey.isEmpty()) - m_dailyPrice.compareData.clear(); - else - { + // Simulator to generate realistic random OHLC values FinanceSimulator db2(compare.toUtf8().data(), Chart::chartTime(2010, 1, 1), Chart::chartTime(2020, 12, 31), 86400); m_dailyPrice.compareData = arrayToVector(db2.getCloseData()); } - } // In this example, we will compute the weekly and monthly prices on demand. We just // need to clear the old data here. diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; ``` * REGRESSION: ccfits:arm64-windows. If expected, add ccfits:arm64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-linux. If expected, add ccfits:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-osx. If expected, add ccfits:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static-md. If expected, add ccfits:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static. If expected, add ccfits:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows. If expected, add ccfits:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x86-windows. If expected, add ccfits:x86-windows=fail to .\scripts\ci.baseline.txt. >[DEBUG] popen(curl --fail -L https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz --create-dirs --output /Users/bion/vcpkg/downloads/CCfits-2.5.tar.gz.15183.part 2>&1) >[DEBUG] cmd_execute_and_stream_data() returned 5632 after 415053 us >Error: Failed to download from mirror set: >https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current > Dload Upload Total Spent Left Speed > 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 >curl: (22) The requested URL returned error: 404 Not Found Fixed link and modernized portfile. * REGRESSION: geogram:x64-linux. If expected, add geogram:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-osx. If expected, add geogram:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static-md. If expected, add geogram:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static. If expected, add geogram:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows. If expected, add geogram:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x86-windows. If expected, add geogram:x86-windows=fail to .\scripts\ci.baseline.txt. Upstream is gone: https://gforge.inria.fr/frs/download.php/file/38314/geogram_1.7.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (60) SSL: no alternative certificate subject name matches target host name 'gforge.inria.fr' More details here: https://curl.haxx.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above. [DEBUG] /agent/_work/1/s/buildtrees/_vcpkg/src/vcpkg-tool-2021-09-10/src/vcpkg/base/downloads.cpp(626) [DEBUG] Exiting after 583.7 ms us (582562 us) CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:83 (message): Failed to download file with error: 1 If you use a proxy, please check your proxy setting. Possible causes are: 1. You are actually using an HTTP proxy, but setting HTTPS_PROXY variable to `https://address:port`. This is not correct, because `https://` prefix claims the proxy is an HTTPS proxy, while your proxy (v2ray, shadowsocksr , etc..) is an HTTP proxy. Try setting `http://address:port` to both HTTP_PROXY and HTTPS_PROXY instead. 2. You are using Fiddler. Currently a bug (https://github.com/microsoft/vcpkg/issues/17752) will set HTTPS_PROXY to `https://fiddler_address:port` which lead to problem 1 above. Workaround is open Windows 10 Settings App, and search for Proxy Configuration page, Change `http=address:port;https=address:port` to `address`, and fill the port number. 3. You proxy's remote server is out of service. In future vcpkg releases, if you are using Windows, you no longer need to set HTTP(S)_PROXY environment variables. Vcpkg will simply apply Windows IE Proxy Settings set by your proxy software. See (https://github.com/microsoft/vcpkg-tool/pull/49) and (https://github.com/microsoft/vcpkg-tool/pull/77) Otherwise, please submit an issue at https://github.com/Microsoft/vcpkg/issues Call Stack (most recent call first): scripts/cmake/vcpkg_download_distfile.cmake:274 (z_vcpkg_download_distfile_show_proxy_and_fail) ports/geogram/portfile.cmake:4 (vcpkg_download_distfile) scripts/ports.cmake:141 (include) Skipped in ci.baseline.txt.
2021-10-06 13:14:35 +08:00
if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/bin")
file(RENAME "${CURRENT_PACKAGES_DIR}/lib/CCfits.dll" "${CURRENT_PACKAGES_DIR}/bin/CCfits.dll")
if(NOT VCPKG_BUILD_TYPE)
file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/debug/bin")
file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/CCfits.dll" "${CURRENT_PACKAGES_DIR}/debug/bin/CCfits.dll")
endif()
endif()
# Remove duplicate include files
[geogram, ccfits, chartdir] Build fixes discovered by CI on 2021-10-01 (#20518) * REGRESSION: chartdir:x64-linux. If expected, add chartdir:x64-linux=fail to .\scripts\ci.baseline.txt. -- Note: chartdir only supports dynamic library linkage. Building dynamic library. -- Downloading http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz -> chartdir_cpp_linux_64-7.0.0.tar.gz... [DEBUG] Feature flag 'binarycaching' unset [DEBUG] Feature flag 'manifests' = off [DEBUG] Feature flag 'compilertracking' unset [DEBUG] Feature flag 'registries' unset [DEBUG] Feature flag 'versions' unset [DEBUG] popen(curl --fail -L "https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?sp=racwl&st=2021-06-29T20:09:46Z&se=2021-10-02T04:09:46Z&spr=https&sv=2020-08-04&sr=c&sig=g3shlIpD0R923OUzfIsrTwjX0vc6OzNXGEDO3URXmYc%3D" --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 5632 after 31162 us [DEBUG] popen(curl --fail -L http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 0 after 8512565 us Error: Failed to download from mirror set: https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?*** SECRET ***: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (22) The requested URL returned error: 403 Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature. File does not have the expected hash: url : [ http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz ] File path : [ /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part ] Expected hash : [ e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa ] Actual hash : [ ea2e05f28dd9647fed49feaf130d8034065067463965f144b3fae4eae482579b1ecf528dc86d1b3602887d5ca0c3b1569404489b0f4cb2300b798fed940cd467 ] Updated SHAs and added quotes. These are the changes made by upstream: ``` diff --git a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp index 79f15be..302eb78 100644 --- a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp +++ b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp @@ -108,7 +108,9 @@ void createChart(int chartIndex, const char *filename) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -176,7 +178,7 @@ void createChart(int chartIndex, const char *filename) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); diff --git a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 index b1ea97f..bfb1d4b 100644 Binary files a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 and b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 differ diff --git a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp index a3b7962..d706853 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp @@ -10954,7 +10954,9 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -11022,7 +11024,7 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("@/images/maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); @@ -12304,6 +12306,11 @@ void treemapcolors(QChartViewer *viewer, int /* chartIndex */) void treemaplayout(QChartViewer *viewer, int chartIndex) { + // Labels for the tree map + const char* energy_types[] = {"Coal", "Oil", "Gas", "Nuclear", "Hydro", "Solar", "Wind", + "Biomass", "Geothermal", "Wave"}; + const int energy_types_size = (int)(sizeof(energy_types)/sizeof(*energy_types)); + // Random data for the tree map RanSeries* r = new RanSeries(3); DoubleArray data = r->getSeries(20, 20, 400); @@ -14163,10 +14170,7 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) m->setCap(0, Chart::Transparent); // In this example, the circular bar has 20 segments - int segmentCount = 20; - - // The angular step - double angleStep = 360.0 / segmentCount; + int angleStep = 360 / 20; // The gap between segments is 4.5 degrees double angleGap = 4.5; @@ -14205,39 +14209,28 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) stepColorScale_size)); } - // - // Now we draw the segments of the bar meter - // - - // The segment that contains the value - int currentSegment = (int)(angle / angleStep); - - // Segments after the current segment is colored with the blank color - for(int i = currentSegment + 1; i < segmentCount; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - blankColor); + // Draw the blank part of the circular bar + if (angle < 360) { + // Iterate the segments in the blank part of the circular bar + for(int startAngle = (int)(angle / angleStep) * angleStep; startAngle < 360; startAngle += + angleStep) { + // The first segment may be partially filled + double partialAngle = (startAngle >= angle ? 0 : (angle - startAngle) * (1 - angleGap / + angleStep)); + m->addRingSector(radius, radius - 20, startAngle + partialAngle, startAngle + angleStep + - angleGap, blankColor); } - - // Segments before the current segment is colored with the fill color - for(int i = 0; i < currentSegment; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - fillColor); } - // Segment that contains the angle will be partially filled and partially blank. We need to - // adjust the angle to compensated for the angle gap. - double adjustedAngle = currentSegment * angleStep + (angle - currentSegment * angleStep) * (1 - - angleGap / angleStep); - - // The blank part of the segment - if ((currentSegment + 1) * angleStep > angle) { - m->addRingSector(radius, radius - 20, adjustedAngle, (currentSegment + 1) * angleStep - - angleGap, blankColor); + // Draw the fill part of the circular bar + if (angle > 0) { + // Iterate the segments in the fill part of the circular bar + for(int startAngle = 0; startAngle < angle; startAngle += angleStep) { + // The last segment may be partially filled + double angleSpan = (angleStep - angleGap) * (angle >= startAngle + angleStep ? 1 : ( + angle - startAngle) / angleStep); + m->addRingSector(radius, radius - 20, startAngle, startAngle + angleSpan, fillColor); } - - // The filled part of the segment. - if (angle > currentSegment * angleStep) { - m->addRingSector(radius, radius - 20, currentSegment * angleStep, adjustedAngle, fillColor); } // Add a label at the center to display the value diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp index 7b8c1f5..b029776 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp @@ -315,13 +315,6 @@ void FinanceDemo::onLineEditChanged() int new_avgPeriod2 = m_MovAvg2->text().toInt(); QString tickerKey = m_TickerSymbol->text(); - if (tickerKey.isEmpty()) - { - // Default tickerKey - tickerKey = "ASE"; - m_TickerSymbol->setText(tickerKey); - } - QString compareKey = m_CompareWith->text(); bool needReloadData = (m_tickerKey != tickerKey) || (m_compareKey != compareKey); @@ -367,16 +360,12 @@ void FinanceDemo::loadData(const QString& ticker, const QString& compare) if (m_compareKey != compare) { m_compareKey = compare; - if (m_compareKey.isEmpty()) - m_dailyPrice.compareData.clear(); - else - { + // Simulator to generate realistic random OHLC values FinanceSimulator db2(compare.toUtf8().data(), Chart::chartTime(2010, 1, 1), Chart::chartTime(2020, 12, 31), 86400); m_dailyPrice.compareData = arrayToVector(db2.getCloseData()); } - } // In this example, we will compute the weekly and monthly prices on demand. We just // need to clear the old data here. diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; ``` * REGRESSION: ccfits:arm64-windows. If expected, add ccfits:arm64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-linux. If expected, add ccfits:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-osx. If expected, add ccfits:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static-md. If expected, add ccfits:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static. If expected, add ccfits:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows. If expected, add ccfits:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x86-windows. If expected, add ccfits:x86-windows=fail to .\scripts\ci.baseline.txt. >[DEBUG] popen(curl --fail -L https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz --create-dirs --output /Users/bion/vcpkg/downloads/CCfits-2.5.tar.gz.15183.part 2>&1) >[DEBUG] cmd_execute_and_stream_data() returned 5632 after 415053 us >Error: Failed to download from mirror set: >https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current > Dload Upload Total Spent Left Speed > 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 >curl: (22) The requested URL returned error: 404 Not Found Fixed link and modernized portfile. * REGRESSION: geogram:x64-linux. If expected, add geogram:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-osx. If expected, add geogram:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static-md. If expected, add geogram:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static. If expected, add geogram:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows. If expected, add geogram:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x86-windows. If expected, add geogram:x86-windows=fail to .\scripts\ci.baseline.txt. Upstream is gone: https://gforge.inria.fr/frs/download.php/file/38314/geogram_1.7.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (60) SSL: no alternative certificate subject name matches target host name 'gforge.inria.fr' More details here: https://curl.haxx.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above. [DEBUG] /agent/_work/1/s/buildtrees/_vcpkg/src/vcpkg-tool-2021-09-10/src/vcpkg/base/downloads.cpp(626) [DEBUG] Exiting after 583.7 ms us (582562 us) CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:83 (message): Failed to download file with error: 1 If you use a proxy, please check your proxy setting. Possible causes are: 1. You are actually using an HTTP proxy, but setting HTTPS_PROXY variable to `https://address:port`. This is not correct, because `https://` prefix claims the proxy is an HTTPS proxy, while your proxy (v2ray, shadowsocksr , etc..) is an HTTP proxy. Try setting `http://address:port` to both HTTP_PROXY and HTTPS_PROXY instead. 2. You are using Fiddler. Currently a bug (https://github.com/microsoft/vcpkg/issues/17752) will set HTTPS_PROXY to `https://fiddler_address:port` which lead to problem 1 above. Workaround is open Windows 10 Settings App, and search for Proxy Configuration page, Change `http=address:port;https=address:port` to `address`, and fill the port number. 3. You proxy's remote server is out of service. In future vcpkg releases, if you are using Windows, you no longer need to set HTTP(S)_PROXY environment variables. Vcpkg will simply apply Windows IE Proxy Settings set by your proxy software. See (https://github.com/microsoft/vcpkg-tool/pull/49) and (https://github.com/microsoft/vcpkg-tool/pull/77) Otherwise, please submit an issue at https://github.com/Microsoft/vcpkg/issues Call Stack (most recent call first): scripts/cmake/vcpkg_download_distfile.cmake:274 (z_vcpkg_download_distfile_show_proxy_and_fail) ports/geogram/portfile.cmake:4 (vcpkg_download_distfile) scripts/ports.cmake:141 (include) Skipped in ci.baseline.txt.
2021-10-06 13:14:35 +08:00
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
# Patch installed headers to look in the correct subdirectory
[geogram, ccfits, chartdir] Build fixes discovered by CI on 2021-10-01 (#20518) * REGRESSION: chartdir:x64-linux. If expected, add chartdir:x64-linux=fail to .\scripts\ci.baseline.txt. -- Note: chartdir only supports dynamic library linkage. Building dynamic library. -- Downloading http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz -> chartdir_cpp_linux_64-7.0.0.tar.gz... [DEBUG] Feature flag 'binarycaching' unset [DEBUG] Feature flag 'manifests' = off [DEBUG] Feature flag 'compilertracking' unset [DEBUG] Feature flag 'registries' unset [DEBUG] Feature flag 'versions' unset [DEBUG] popen(curl --fail -L "https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?sp=racwl&st=2021-06-29T20:09:46Z&se=2021-10-02T04:09:46Z&spr=https&sv=2020-08-04&sr=c&sig=g3shlIpD0R923OUzfIsrTwjX0vc6OzNXGEDO3URXmYc%3D" --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 5632 after 31162 us [DEBUG] popen(curl --fail -L http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz --create-dirs --output /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part 2>&1) [DEBUG] cmd_execute_and_stream_data() returned 0 after 8512565 us Error: Failed to download from mirror set: https://vcpkgassetcache.blob.core.windows.net/assets/e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa?*** SECRET ***: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (22) The requested URL returned error: 403 Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature. File does not have the expected hash: url : [ http://www.advsofteng.net/chartdir_cpp_linux_64.tar.gz ] File path : [ /mnt/vcpkg-ci/downloads/chartdir_cpp_linux_64-7.0.0.tar.gz.1003174.part ] Expected hash : [ e7e71b64b3a756b6df174758c392ab4c9310b4d265e521dccbd009eeefd46e021a74572e7212de5564725df20ddf189e1599e88a116b426f1256f7d34b0131aa ] Actual hash : [ ea2e05f28dd9647fed49feaf130d8034065067463965f144b3fae4eae482579b1ecf528dc86d1b3602887d5ca0c3b1569404489b0f4cb2300b798fed940cd467 ] Updated SHAs and added quotes. These are the changes made by upstream: ``` diff --git a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp index 79f15be..302eb78 100644 --- a/new_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp +++ b/old_sha/ChartDirector/cppdemo/surfacetexture/surfacetexture.cpp @@ -108,7 +108,9 @@ void createChart(int chartIndex, const char *filename) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -176,7 +178,7 @@ void createChart(int chartIndex, const char *filename) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); diff --git a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 index b1ea97f..bfb1d4b 100644 Binary files a/new_sha/ChartDirector/lib/libchartdir.so.7.0.0 and b/old_sha/ChartDirector/lib/libchartdir.so.7.0.0 differ diff --git a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/helloworld/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp index a3b7962..d706853 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/democharts.cpp @@ -10954,7 +10954,9 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) const int dataZ_size = dataX_size * dataY_size; double dataZ[dataZ_size]; for(int yIndex = 0; yIndex < dataY_size; ++yIndex) { + double y = dataY[yIndex]; for(int xIndex = 0; xIndex < dataX_size; ++xIndex) { + double x = dataX[xIndex]; dataZ[yIndex * dataX_size + xIndex] = dataX[xIndex] * dataY[yIndex]; } } @@ -11022,7 +11024,7 @@ void surfacetexture(QChartViewer *viewer, int chartIndex) // Use a DrawArea to load the image DrawArea* d = new DrawArea(); d->load("@/images/maptexture.png"); - d->resize(c->getPlotRegionWidth(), c->getPlotRegionDepth()); + d->resize(240, 210); // Set the DrawArea as a resource c->setResource("texture", d); @@ -12304,6 +12306,11 @@ void treemapcolors(QChartViewer *viewer, int /* chartIndex */) void treemaplayout(QChartViewer *viewer, int chartIndex) { + // Labels for the tree map + const char* energy_types[] = {"Coal", "Oil", "Gas", "Nuclear", "Hydro", "Solar", "Wind", + "Biomass", "Geothermal", "Wave"}; + const int energy_types_size = (int)(sizeof(energy_types)/sizeof(*energy_types)); + // Random data for the tree map RanSeries* r = new RanSeries(3); DoubleArray data = r->getSeries(20, 20, 400); @@ -14163,10 +14170,7 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) m->setCap(0, Chart::Transparent); // In this example, the circular bar has 20 segments - int segmentCount = 20; - - // The angular step - double angleStep = 360.0 / segmentCount; + int angleStep = 360 / 20; // The gap between segments is 4.5 degrees double angleGap = 4.5; @@ -14205,39 +14209,28 @@ void circularbarmeter2(QChartViewer *viewer, int chartIndex) stepColorScale_size)); } - // - // Now we draw the segments of the bar meter - // - - // The segment that contains the value - int currentSegment = (int)(angle / angleStep); - - // Segments after the current segment is colored with the blank color - for(int i = currentSegment + 1; i < segmentCount; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - blankColor); + // Draw the blank part of the circular bar + if (angle < 360) { + // Iterate the segments in the blank part of the circular bar + for(int startAngle = (int)(angle / angleStep) * angleStep; startAngle < 360; startAngle += + angleStep) { + // The first segment may be partially filled + double partialAngle = (startAngle >= angle ? 0 : (angle - startAngle) * (1 - angleGap / + angleStep)); + m->addRingSector(radius, radius - 20, startAngle + partialAngle, startAngle + angleStep + - angleGap, blankColor); } - - // Segments before the current segment is colored with the fill color - for(int i = 0; i < currentSegment; ++i) { - m->addRingSector(radius, radius - 20, i * angleStep, (i + 1) * angleStep - angleGap, - fillColor); } - // Segment that contains the angle will be partially filled and partially blank. We need to - // adjust the angle to compensated for the angle gap. - double adjustedAngle = currentSegment * angleStep + (angle - currentSegment * angleStep) * (1 - - angleGap / angleStep); - - // The blank part of the segment - if ((currentSegment + 1) * angleStep > angle) { - m->addRingSector(radius, radius - 20, adjustedAngle, (currentSegment + 1) * angleStep - - angleGap, blankColor); + // Draw the fill part of the circular bar + if (angle > 0) { + // Iterate the segments in the fill part of the circular bar + for(int startAngle = 0; startAngle < angle; startAngle += angleStep) { + // The last segment may be partially filled + double angleSpan = (angleStep - angleGap) * (angle >= startAngle + angleStep ? 1 : ( + angle - startAngle) / angleStep); + m->addRingSector(radius, radius - 20, startAngle, startAngle + angleSpan, fillColor); } - - // The filled part of the segment. - if (angle > currentSegment * angleStep) { - m->addRingSector(radius, radius - 20, currentSegment * angleStep, adjustedAngle, fillColor); } // Add a label at the center to display the value diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp index 7b8c1f5..b029776 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/financedemo.cpp @@ -315,13 +315,6 @@ void FinanceDemo::onLineEditChanged() int new_avgPeriod2 = m_MovAvg2->text().toInt(); QString tickerKey = m_TickerSymbol->text(); - if (tickerKey.isEmpty()) - { - // Default tickerKey - tickerKey = "ASE"; - m_TickerSymbol->setText(tickerKey); - } - QString compareKey = m_CompareWith->text(); bool needReloadData = (m_tickerKey != tickerKey) || (m_compareKey != compareKey); @@ -367,16 +360,12 @@ void FinanceDemo::loadData(const QString& ticker, const QString& compare) if (m_compareKey != compare) { m_compareKey = compare; - if (m_compareKey.isEmpty()) - m_dailyPrice.compareData.clear(); - else - { + // Simulator to generate realistic random OHLC values FinanceSimulator db2(compare.toUtf8().data(), Chart::chartTime(2010, 1, 1), Chart::chartTime(2020, 12, 31), 86400); m_dailyPrice.compareData = arrayToVector(db2.getCloseData()); } - } // In this example, we will compute the weekly and monthly prices on demand. We just // need to clear the old data here. diff --git a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp index 5736d60..423120f 100644 --- a/new_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp +++ b/old_sha/ChartDirector/qtdemo/qtdemo/qchartviewer.cpp @@ -107,9 +107,9 @@ private: QCursor *hZoomOutCursor; QCursor *hNoZoomCursor; - QCursor &getZoomCursor(QCursor **cache, double scale, int flags) + QCursor &getZoomCursor(QCursor *cache, double scale, int flags) { - if (0 == *cache) + if (0 == cache) { DrawArea d; d.setSize(32, 32, Chart::Transparent); @@ -127,9 +127,9 @@ private: MemBlock m = d.outPNG(); QImage img = QImage::fromData((const uchar*)m.data, m.len); img.setDevicePixelRatio(scale); - *cache = new QCursor(QPixmap::fromImage(img), 15, 15); + cache = new QCursor(QPixmap::fromImage(img), 15, 15); } - return **cache; + return *cache; } public: @@ -145,15 +145,15 @@ public: } QCursor &getZoomInCursor(double scale) { - return getZoomCursor(&hZoomInCursor, scale, 3); + return getZoomCursor(hZoomInCursor, scale, 3); } QCursor &getZoomOutCursor(double scale) { - return getZoomCursor(&hZoomOutCursor, scale, 1); + return getZoomCursor(hZoomOutCursor, scale, 1); } QCursor &getNoZoomCursor(double scale) { - return getZoomCursor(&hNoZoomCursor, scale, 0); + return getZoomCursor(hNoZoomCursor, scale, 0); } } cursorManager; ``` * REGRESSION: ccfits:arm64-windows. If expected, add ccfits:arm64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-linux. If expected, add ccfits:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-osx. If expected, add ccfits:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static-md. If expected, add ccfits:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows-static. If expected, add ccfits:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x64-windows. If expected, add ccfits:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: ccfits:x86-windows. If expected, add ccfits:x86-windows=fail to .\scripts\ci.baseline.txt. >[DEBUG] popen(curl --fail -L https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz --create-dirs --output /Users/bion/vcpkg/downloads/CCfits-2.5.tar.gz.15183.part 2>&1) >[DEBUG] cmd_execute_and_stream_data() returned 5632 after 415053 us >Error: Failed to download from mirror set: >https://heasarc.gsfc.nasa.gov/fitsio/ccfits/CCfits-2.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current > Dload Upload Total Spent Left Speed > 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 >curl: (22) The requested URL returned error: 404 Not Found Fixed link and modernized portfile. * REGRESSION: geogram:x64-linux. If expected, add geogram:x64-linux=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-osx. If expected, add geogram:x64-osx=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static-md. If expected, add geogram:x64-windows-static-md=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows-static. If expected, add geogram:x64-windows-static=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x64-windows. If expected, add geogram:x64-windows=fail to .\scripts\ci.baseline.txt. REGRESSION: geogram:x86-windows. If expected, add geogram:x86-windows=fail to .\scripts\ci.baseline.txt. Upstream is gone: https://gforge.inria.fr/frs/download.php/file/38314/geogram_1.7.5.tar.gz: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (60) SSL: no alternative certificate subject name matches target host name 'gforge.inria.fr' More details here: https://curl.haxx.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above. [DEBUG] /agent/_work/1/s/buildtrees/_vcpkg/src/vcpkg-tool-2021-09-10/src/vcpkg/base/downloads.cpp(626) [DEBUG] Exiting after 583.7 ms us (582562 us) CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:83 (message): Failed to download file with error: 1 If you use a proxy, please check your proxy setting. Possible causes are: 1. You are actually using an HTTP proxy, but setting HTTPS_PROXY variable to `https://address:port`. This is not correct, because `https://` prefix claims the proxy is an HTTPS proxy, while your proxy (v2ray, shadowsocksr , etc..) is an HTTP proxy. Try setting `http://address:port` to both HTTP_PROXY and HTTPS_PROXY instead. 2. You are using Fiddler. Currently a bug (https://github.com/microsoft/vcpkg/issues/17752) will set HTTPS_PROXY to `https://fiddler_address:port` which lead to problem 1 above. Workaround is open Windows 10 Settings App, and search for Proxy Configuration page, Change `http=address:port;https=address:port` to `address`, and fill the port number. 3. You proxy's remote server is out of service. In future vcpkg releases, if you are using Windows, you no longer need to set HTTP(S)_PROXY environment variables. Vcpkg will simply apply Windows IE Proxy Settings set by your proxy software. See (https://github.com/microsoft/vcpkg-tool/pull/49) and (https://github.com/microsoft/vcpkg-tool/pull/77) Otherwise, please submit an issue at https://github.com/Microsoft/vcpkg/issues Call Stack (most recent call first): scripts/cmake/vcpkg_download_distfile.cmake:274 (z_vcpkg_download_distfile_show_proxy_and_fail) ports/geogram/portfile.cmake:4 (vcpkg_download_distfile) scripts/ports.cmake:141 (include) Skipped in ci.baseline.txt.
2021-10-06 13:14:35 +08:00
file(GLOB HEADERS "${CURRENT_PACKAGES_DIR}/include/CCfits/*")
foreach(HEADER IN LISTS HEADERS)
vcpkg_replace_string("${HEADER}" "\"fitsio.h\"" "\"cfitsio/fitsio.h\"" IGNORE_UNCHANGED)
endforeach()
vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/include/CCfits/CCfits.h
"#include \"longnam.h\"" "#include \"cfitsio/longnam.h\""
)
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/License.txt")