feat(util): Allow disabling factory via null

Before this PR, all three of these specs failed:
    it('allows disabling icon via null', () => {
      Dropdown.defaultProps.icon.should.equal('dropdown')
      wrapperRender(<Dropdown icon={null} />)
        .should.not.contain.descendants('.icon')
    })
    it('allows disabling icon via undefined', () => {
      Dropdown.defaultProps.icon.should.equal('dropdown')
      wrapperRender(<Dropdown icon={undefined} />)
        .should.not.contain.descendants('.icon')
    })
    it("allows disabling icon via ''", () => {
      Dropdown.defaultProps.icon.should.equal('dropdown')
      wrapperRender(<Dropdown icon={''} />)
        .should.not.contain.descendants('.icon')
    })

...meaning there's no way to disable the icon on the Dropdown component. I'd say the third probably shouldn't disable it (it would have an icon element with an empty name), but one of the first two should.
This updates createFactory to do nothing for both undefined and null. Previously it only ignored undefined, which meant for components that had a default value (e.g. Dropdown icon defaults to dropdown) there was no way to disable it. The default prop will override undefined but it won't override null.
There may be wider implications to consider, but I figured it'd be easier/faster to discuss this over a PR with a potential fix vs an issue.

Current coverage is 98.62% (diff: 100%)

Merging #480 into master will not change coverage

@@             master       #480   diff @@
==========================================
  Files           101        101
  Lines          1451       1451
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits           1431       1431
  Misses           20         20
  Partials          0          0

Powered by Codecov. Last update b13d63a...6c98261

Thoughts:

Agree '' should be passed as as empty string
React treats undefined as no present, so I don't think it should remove the Icon, since it is equivalent to not having an icon prop at all.
Agree that null should remove the icon, however, I'm seeing that this already works without any changes to the current factory.

http://technologyadvice.github.io/stardust/modules/dropdown

@levithomason - on master I ran those specs and logged the resulting HTML:
      ✖ allows disabling icon via null
LOG: '

'
      ✖ allows disabling icon via undefined
LOG: '

'
      ✖ allows disabling icon via ''
LOG: '

'

null is treated like '', so while the icon is technically not visible since there's no icon name class, there's an empty , which messes up the spacing. Here's a sceenshot with icon set to null (i manually made the icon's background red in chrome dev tools so you can see it):

I see, it is still rendering an empty  which is not desirable.  I'll merge this.
I'd like to get more coverage than just the Dropdown.  We have a common.implementsIconProp(), however, testing that an icon isn't present does not apply to every use case.  So, instead of asserting it there, I think we should instead add a createFactory-test.js and assert that the returned factory ignores null values.  This way, we know all components using the factory are covered.

@levithomason - check that last commit. Some of tests within implementsIconProp weren't actually testing anything. The tests were checking for the existence of an i tag, but since shallow doesn't deeply render children, it will never render the Icon and thus never render a i.
In fixing the specs, I realized it wasn't testing for the case where the component had a default icon so I updated it to do so. I also temporarily rolled back the code change I made in this PR to ensure the specs I added were red before and green after.

Thanks, also fixed this and some other things in the Button PR #295.  Though, I think I like your default solution better than my decision to remove "does not exist" tests.
Thanks much!

Released in<EMAIL_ADDRESS>


what the version of torch and cuda

when I prepare the mmcv, there would be some bugs if I don't know the version of torch and cuda

when I prepare the mmcv, there would be some bugs if I don't know the version of torch and cuda

cuda=11.8
torch=2.0.0


Bump etcd to v3.5.3-k3s1

Proposed Changes
Bump etcd to v3.5.3-k3s1
Types of Changes
bugfix
Verification
Check version in go.mod
Linked Issues

TBD

User-Facing Change
The embedded etcd version has been bumped to v3.5.3-k3s1

Further Comments

Apologies for the failed copypasta, I'm juggling a bunch of version bump PRs across both repos and doing a poor job of it.

Single sonobuoy flake; merging
[PARALLEL-mysql] Summarizing 1 Failure:
[PARALLEL-mysql]
[PARALLEL-mysql] [Fail] [sig-storage] Downward API volume [It] should update labels on modification [NodeConformance] [Conformance]
[PARALLEL-mysql] /workspace/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/common/storage/downwardapi_volume.go:151
[PARALLEL-mysql]
[PARALLEL-mysql] Ran 325 of 7042 Specs in 549.355 seconds
[PARALLEL-mysql] FAIL! -- 324 Passed | 1 Failed | 0 Pending | 6717 Skipped


Add a config option for delay between rendering actions

This seems to be helping my GPU usage significantly in certain game scenarios (30%+ usage -> 5%) . The existing "fps" option does not seem to work when set to > 0.

43f5302 fixes the fps bug, please test if it works.
no need to import a new config entry for this function.


make operations with observable side effects non-lazy

E.g., .update() operations should take place even without a .then() handler

fixed in v1.0.0

:+1: no more .then(function () { logger.log('updated'); });


Add examples of WMS configurations

Should add some different examples of using a Web Mapping Service as a source for map layers. May want to consider adding some/all of the following:
Ways to add sources:

Django Admin Pages (description in README.MD)
Django Fixture
Django Migration

Different Source Types:

Raster
Vector

Here's an example of using a Django migration to automatically load a map layer stored in a fixture: https://github.com/legiongis/fpan/blob/master/fpan/migrations/0015_load_slr_layers.py
We need to keep in mind that Arches can also load map layers automatically during package installation as well, so we'll need to make sure these two strategies are clearly documented.


Error while analysing SeisProcessing

julia> analyze("SeisProcessing")
ERROR: SystemError: opening file "/var/folders/v2/hmy3kzgj4tb3xsy8qkltxd0r0000gn/T/jl_OD2NBs/SeisProcessing/kmGog/src/Processing/.#SeisGain.jl": No such file or directory
Stacktrace:
  [1] systemerror(p::String, errno::Int32; extrainfo::Nothing)
    @ Base ./error.jl:176
  [2] systemerror(p::String, b::Bool; extrainfo::Nothing)
    @ Base ./error.jl:175 [inlined]
  [3] open(fname::String; lock::Bool, read::Nothing, write::Nothing, create::Nothing, truncate::Nothing, append::Nothing)
    @ Base ./iostream.jl:293
  [4] open(fname::String)
    @ Base ./iostream.jl:275 [inlined]
  [5] open(f::Base.var"#434#435"{String}, args::String; kwargs::@Kwargs{})
    @ Base ./io.jl:394
  [6] open(f::Base.var"#434#435"{String}, args::String)
    @ Base ./io.jl:393 [inlined]
  [7] read(filename::String, ::Type{String})
    @ Base ./io.jl:486 [inlined]
  [8] parse_green_node(file_path::String)
    @ PackageAnalyzer ~/.julia/packages/PackageAnalyzer/ku4CT/src/count_loc.jl:102
  [9] count_julia_lines_of_code(dir::String)
    @ PackageAnalyzer ~/.julia/packages/PackageAnalyzer/ku4CT/src/count_loc.jl:146
 [10] count_lines_of_code(dir::String)
    @ PackageAnalyzer ~/.julia/packages/PackageAnalyzer/ku4CT/src/count_loc.jl:16
 [11] analyze_code(dir::String; repo::String, reachable::Bool, subdir::String, auth::GitHub.OAuth2, sleep::Int64, only_subdir::Bool, version::VersionNumber)
    @ PackageAnalyzer ~/.julia/packages/PackageAnalyzer/ku4CT/src/analyze.jl:263
 [12] kwcall(::NamedTuple, ::typeof(PackageAnalyzer.analyze_code), dir::AbstractString)
    @ PackageAnalyzer ~/.julia/packages/PackageAnalyzer/ku4CT/src/analyze.jl:221 [inlined]
 [13] analyze(pkg::PackageAnalyzer.Release; root::String, auth::GitHub.OAuth2, sleep::Int64)
    @ PackageAnalyzer ~/.julia/packages/PackageAnalyzer/ku4CT/src/analyze.jl:163
 [14] analyze
    @ PackageAnalyzer ~/.julia/packages/PackageAnalyzer/ku4CT/src/analyze.jl:155 [inlined]
 [15] analyze(name_or_dir_or_url::String; registries::Vector{RegistryInstances.RegistryInstance}, auth::GitHub.OAuth2, sleep::Int64, version::Nothing, root::String, subdir::String)
    @ PackageAnalyzer ~/.julia/packages/PackageAnalyzer/ku4CT/src/analyze.jl:67
 [16] analyze(name_or_dir_or_url::String)
    @ PackageAnalyzer ~/.julia/packages/PackageAnalyzer/ku4CT/src/analyze.jl:58
 [17] top-level scope
    @ REPL[3]:1

Not sure what's the problem: https://github.com/SeismicJulia/SeisProcessing.jl

Ah, the problem is this broken symlink: https://github.com/SeismicJulia/SeisProcessing.jl/blob/fd47fe606a22de97e2a76bd3722f61edb5a57ac8/src/Processing/.%23SeisGain.jl
We should probably check that a file exist before attempting to read it?

We get the paths from readdir, I didn’t realize those might not be actual files. Should be easy to fix, is isfile the right check?

No, I think it's ispath.  isfile returns whether the argument is a regular file, which a symlink never is.

I guess they could have a directory named dir.jl and I shouldn’t read that? So maybe ispath(p) && !isdir(p) ?


Unable to list camera sizes on S20+

[x] I have read the FAQ.
[x] I have searched in existing issues.

Environment

OS: Arch Linux
scrcpy version: 2.4
installation method: Repo
device model: Samsung S20+
Android version: 13

Describe the bug
Listing cameras works as expected but then going to list sizes results in a crash.
On errors, please provide the output of the console (and adb logcat if relevant).
$ scrcpy --list-cameras
scrcpy 2.4 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     -->   (usb)  R5CNB05JENH                     device  SM_G986U1
/usr/share/scrcpy/scrcpy-server: 1 file pushed, 0 skipped. 156.0 MB/s (69007 bytes in 0.000s)
[server] INFO: Device: [samsung] samsung SM-G986U1 (Android 13)
[server] INFO: List of cameras:
    --camera-id=0    (back, 4032x3024, fps=[15, 24, 30])
    --camera-id=1    (front, 3648x2736, fps=[15, 24, 30])
    --camera-id=2    (back, 4032x3024, fps=[15, 24, 30])
    --camera-id=3    (front, 3216x2208, fps=[15, 24, 30])
    --camera-id=4    (back, 640x480, fps=[5, 10, 15, 20])
$ scrcpy --list-camera-sizes
scrcpy 2.4 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     -->   (usb)  R5CNB05JENH                     device  SM_G986U1
/usr/share/scrcpy/scrcpy-server: 1 file pushed, 0 skipped. 155.4 MB/s (69007 bytes in 0.000s)
[server] INFO: Device: [samsung] samsung SM-G986U1 (Android 13)
[server] ERROR: Attempt to get length of null array
java.lang.NullPointerException: Attempt to get length of null array
        at com.genymobile.scrcpy.LogUtils.buildCameraListMessage(LogUtils.java:121)
        at com.genymobile.scrcpy.Server.internalMain(Server.java:252)
        at com.genymobile.scrcpy.Server.main(Server.java:214)
        at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
        at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:411)

Realized this may be due to the 5th camera being a depth sensor that can't be grabbed like a normal device
[parker@rogally ~]$ scrcpy --video-source=camera --camera-id=4
scrcpy 2.4 <https://github.com/Genymobile/scrcpy>
INFO: Camera video source: control disabled
INFO: Camera video source: microphone audio source selected
INFO: ADB device found:
INFO:     -->   (usb)  R5CNB05JENH                     device  SM_G986U1
/usr/share/scrcpy/scrcpy-server: 1 file pushed, 0 skipped. 115.7 MB/s (69007 bytes in 0.001s)
[server] INFO: Device: [samsung] samsung SM-G986U1 (Android 13)
INFO: Renderer: opengl
INFO: OpenGL version: 4.6 (Compatibility Profile) Mesa 24.0.5-arch1.1
INFO: Trilinear filtering enabled
ERROR: Demuxer 'video': stream disabled due to connection error
ERROR: Demuxer 'audio': stream disabled due to connection error
ERROR: Demuxer error
[server] ERROR: Exception on thread Thread[video,5,main]
java.lang.NullPointerException: Attempt to get length of null array
        at java.util.Arrays.stream(Arrays.java:5473)
        at com.genymobile.scrcpy.FakeContext$$ExternalSyntheticApiModelOutline0.m(Unknown Source:0)
        at com.genymobile.scrcpy.CameraCapture.selectSize(CameraCapture.java:130)
        at com.genymobile.scrcpy.CameraCapture.init(CameraCapture.java:80)
        at com.genymobile.scrcpy.SurfaceEncoder.streamScreen(SurfaceEncoder.java:55)
        at com.genymobile.scrcpy.SurfaceEncoder.lambda$start$0$com-genymobile-scrcpy-SurfaceEncoder(SurfaceEncoder.java:253)
        at com.genymobile.scrcpy.SurfaceEncoder$$ExternalSyntheticLambda0.run(Unknown Source:4)
        at java.lang.Thread.run(Thread.java:1012)

Thank you for your report.
Could you please retry with these changes:
diff --git a/server/src/main/java/com/genymobile/scrcpy/CameraCapture.java b/server/src/main/java/com/genymobile/scrcpy/CameraCapture.java
index a1003829f..df3cf7c4f 100644
--- a/server/src/main/java/com/genymobile/scrcpy/CameraCapture.java
+++ b/server/src/main/java/com/genymobile/scrcpy/CameraCapture.java
@@ -127,6 +127,10 @@ public class CameraCapture extends SurfaceCapture {

         StreamConfigurationMap configs = characteristics.get(CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP);
         android.util.Size[] sizes = highSpeed ? configs.getHighSpeedVideoSizes() : configs.getOutputSizes(MediaCodec.class);
+        if (sizes == null) {
+            return null;
+        }
+
         Stream<android.util.Size> stream = Arrays.stream(sizes);
         if (maxSize > 0) {
             stream = stream.filter(it -> it.getWidth() <= maxSize && it.getHeight() <= maxSize);
diff --git a/server/src/main/java/com/genymobile/scrcpy/LogUtils.java b/server/src/main/java/com/genymobile/scrcpy/LogUtils.java
index efa0672b7..1ffb19d3c 100644
--- a/server/src/main/java/com/genymobile/scrcpy/LogUtils.java
+++ b/server/src/main/java/com/genymobile/scrcpy/LogUtils.java
@@ -118,12 +118,16 @@ public final class LogUtils {
                         StreamConfigurationMap configs = characteristics.get(CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP);

                         android.util.Size[] sizes = configs.getOutputSizes(MediaCodec.class);
-                        for (android.util.Size size : sizes) {
-                            builder.append("\n        - ").append(size.getWidth()).append('x').append(size.getHeight());
+                        if (sizes == null || sizes.length == 0) {
+                            builder.append("\n        (none)");
+                        } else {
+                            for (android.util.Size size : sizes) {
+                                builder.append("\n        - ").append(size.getWidth()).append('x').append(size.getHeight());
+                            }
                         }

                         android.util.Size[] highSpeedSizes = configs.getHighSpeedVideoSizes();
-                        if (highSpeedSizes.length > 0) {
+                        if (highSpeedSizes != null && highSpeedSizes.length > 0) {
                             builder.append("\n      High speed capture (--camera-high-speed):");
                             for (android.util.Size size : highSpeedSizes) {
                                 Range<Integer>[] highFpsRanges = configs.getHighSpeedVideoFpsRanges();

Here is a binary (to replace in your scrcpy v2.4 folder):

scrcpy-server SHA-256: b92c92032f0afaf462a4df551eec9e880e716c7302c16119ee50c9c017b79a9

That seems to have worked!
[parker@rogally ~]$ scrcpy --list-camera-sizes
scrcpy 2.4 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     -->   (usb)  R5CNB05JENH                     device  SM_G986U1
/usr/share/scrcpy/scrcpy-server: 1 file pushed, 0 skipped. 262.1 MB/s (163648 bytes in 0.001s)
[server] INFO: Device: [samsung] samsung SM-G986U1 (Android 13)
[server] INFO: List of cameras:
    --camera-id=0    (back, 4032x3024, fps=[15, 24, 30])
        - 4032x3024
        - 4032x2268
        - 4032x1816
        - 3024x3024
        - 1920x824
        - 3840x2160
        - 1920x1080
        - 2400x1080
        - 1920x864
        - 1920x1440
        - 1440x1080
        - 1088x1088
        - 1280x720
        - 960x720
        - 720x480
        - 640x480
        - 640x360
        - 352x288
        - 320x240
        - 256x144
        - 176x144
      High speed capture (--camera-high-speed):
        - 1280x720 (fps=[120, 240])
        - 1920x1080 (fps=[120, 240])
        - 1920x824 (fps=[120, 240])
    --camera-id=1    (front, 3648x2736, fps=[15, 24, 30])
        - 3648x2736
        - 3648x2048
        - 3648x1640
        - 2736x2736
        - 1920x824
        - 1920x1080
        - 2400x1080
        - 1920x864
        - 1920x1440
        - 1440x1080
        - 1088x1088
        - 1280x720
        - 960x720
        - 720x480
        - 640x480
        - 640x360
        - 352x288
        - 320x240
        - 256x144
        - 176x144
      High speed capture (--camera-high-speed):
        - 1280x720 (fps=[120])
        - 1920x1080 (fps=[120])
        - 1920x824 (fps=[120])
    --camera-id=2    (back, 4032x3024, fps=[15, 24, 30])
        - 4032x3024
        - 4032x2268
        - 4032x1816
        - 3024x3024
        - 1920x824
        - 3840x2160
        - 1920x1080
        - 2400x1080
        - 1920x864
        - 1920x1440
        - 1440x1080
        - 1088x1088
        - 1280x720
        - 960x720
        - 720x480
        - 640x480
        - 640x360
        - 352x288
        - 320x240
        - 256x144
        - 176x144
    --camera-id=3    (front, 3216x2208, fps=[15, 24, 30])
        - 3216x1808
        - 3216x1448
        - 2944x2208
        - 2944x1656
        - 2944x1320
        - 2208x2208
        - 1920x824
        - 1920x1080
        - 2400x1080
        - 1920x864
        - 1920x1440
        - 1440x1080
        - 1088x1088
        - 1280x720
        - 960x720
        - 720x480
        - 640x480
        - 640x360
        - 352x288
        - 320x240
        - 256x144
        - 176x144
      High speed capture (--camera-high-speed):
        - 1280x720 (fps=[120])
        - 1920x1080 (fps=[120])
        - 1920x824 (fps=[120])
    --camera-id=4    (back, 640x480, fps=[5, 10, 15, 20])
        (none)

Side note: I can do 1080 60 for video recording but this seems to not list it?
Camera ID 0 says max of 30 and when I trying specifying ID 0 size 1080 and FPS 60 I get Camera capture failed.

That seems to have worked!

Merged bcb8503b261969c1ec176c7b852f9e0a4924db7b into dev :rocket:

Side note: I can do 1080 60 for video recording but this seems to not list it?
Camera ID 0 says max of 30 and when I trying specifying ID 0 size 1080 and FPS 60 I get Camera capture failed.

Looks like #4675. Can you record at 1080p 60fps with another camera app (like OpenCamera)?


Refactor products filter category port to 3.1

I want to merge this change because it is port changes from 3.0 to 3.1
https://github.com/mirumee/saleor/pull/8277

Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations
[ ] Documentation needs to be updated

Pull Request Checklist

[ ] Privileged queries and mutations are guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migration files are up to date
[ ] The changes are tested
[ ] GraphQL schema and type definitions are up to date
[ ] Changes are mentioned in the changelog

Task linked: SALEOR-3312 Refactor products filtering(except ProductFilter).


Resolves a crashing issue occurs around ControlSizeTrigger::~ControlSizeTrigger()

Fixes a crashing issue occurs around ControlSizeTrigger::~ControlSizeTrigger().
Description of the changes:

Remove ControlSizeTrigger::~ControlSizeTrigger()

Explanation:

The delegates which is refering to ControlSizeTrigger::OnSizeChanged() is well managed in C#, so we don't need to manage its lifecycle in this case
Fixes this issue aligning with the resolution of alarms.app

How changes were validated:

Build Passed
Validated with UI tests and manual tests
CI-Pipeline is not applicable at current stage

Hi @hanzhang54, could you help review this PR? thanks!

Hi @hanzhang54 ,
Could you help review this PR? Thanks.


If mouse X/Y are both at 0, camera disables itself.

by 'disables itself', I mean it doesn't work until the values aren't 0 anymore.

When you resume the game after pause, mouse X/Y are set to 0 for a second (by R*), so I added a check for it to avoid mouse free look to be invoked each time the game is resumed. It may be the cause of this.
I'll look at it.

@avail I'm not able to reproduce this. Are you sure this happens in the latest version?
Can you post clear steps to reproduce?
What's your Custom Camera V version?

semi-custom build, mainly unmodified from master, minus a fix for controller input which is:
            if (!Function.Call<bool>(Hash._IS_INPUT_DISABLED, 0))
            {
                xMovement = 0.0f;
                yMovement = 0.0f;
            }```
inside of updateMouseAndGamepadInput, right after isGamepadLooking


fix(core): make table normalization 9.2-compatible

In response to breaking change (adding DropColumns) in ibis-project/ibis#9440

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 84.93%. Comparing base (722c448) to head (a8bfa19).
Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #130   +/-   ##
=======================================
  Coverage   84.92%   84.93%
=======================================
  Files          26       26
  Lines        1917     1918    +1
=======================================
+ Hits         1628     1629    +1
  Misses        289      289

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

FYI @jitingxu1 I want to wait to see if https://github.com/ibis-project/ibis/pull/9677 is accepted; if not, I'll remove the comment around reverting to .equals down the road.

FYI @jitingxu1 I want to wait to see if ibis-project/ibis#9677 is accepted; if not, I'll remove the comment around reverting to .equals down the road.

Thank you so much for your quick fix.


Vcpkg fails to install anything - File does not have the expected hash

Steps to reproduce:

vcpkg install --triplet x64-windows boost (or any other package)
Expected outcome: Boost (or any other package) would install
Actual outcome: An error message complaining about hash mismatch for the installed 7-zip is displayed

Output:
A suitable version of 7zip was not found (required v18.1.0). Downloading portable 7zip v18.1.0...
Downloading 7zip...
  https://www.nuget.org/api/v2/package/7-Zip.CommandLine/18.1.0 -> C:\Repos\vcpkg\downloads\7-zip.commandline.18.1.0.nupkg
File does not have the expected hash:
             url : [ https://www.nuget.org/api/v2/package/7-Zip.CommandLine/18.1.0 ]
       File path : [ C:\Repos\vcpkg\downloads\7-zip.commandline.18.1.0.nupkg.part ]
   Expected hash : [ 8c75314102e68d2b2347d592f8e3eb05812e1ebb525decbac472231633753f1d4ca31c8e6881a36144a8da26b2571305b3ae3f4e2b85fc4a290aeda63d1a13b8 ]
     Actual hash : [ a9dfaaafd15d98a2ac83682867ec5766720acf6e99d40d1a00d480692752603bf3f3742623f0ea85647a92374df405f331afd6021c5cf36af43ee8db198129c0 ]

Detail:

OS: Windows 10
Vcpkg commit: 1c01a56dc8aa66c3769c29fce09dbcf8938cc17a

Full Output:
PS C:\Repos\vcpkg> vcpkg install --triplet x64-windows boost
The following packages will be built and installed:
    boost[core]:x64-windows
  * boost-accumulators[core]:x64-windows
  * boost-algorithm[core]:x64-windows
  * boost-align[core]:x64-windows
  * boost-any[core]:x64-windows
  * boost-array[core]:x64-windows
  * boost-asio[core]:x64-windows
  * boost-assert[core]:x64-windows
  * boost-assign[core]:x64-windows
  * boost-atomic[core]:x64-windows
  * boost-beast[core]:x64-windows
  * boost-bimap[core]:x64-windows
  * boost-bind[core]:x64-windows
  * boost-build[core]:x64-windows
  * boost-callable-traits[core]:x64-windows
  * boost-chrono[core]:x64-windows
  * boost-circular-buffer[core]:x64-windows
  * boost-compatibility[core]:x64-windows
  * boost-compute[core]:x64-windows
  * boost-concept-check[core]:x64-windows
  * boost-config[core]:x64-windows
  * boost-container[core]:x64-windows
  * boost-container-hash[core]:x64-windows
  * boost-context[core]:x64-windows
  * boost-contract[core]:x64-windows
  * boost-conversion[core]:x64-windows
  * boost-convert[core]:x64-windows
  * boost-core[core]:x64-windows
  * boost-coroutine[core]:x64-windows
  * boost-coroutine2[core]:x64-windows
  * boost-crc[core]:x64-windows
  * boost-date-time[core]:x64-windows
  * boost-detail[core]:x64-windows
  * boost-disjoint-sets[core]:x64-windows
  * boost-dll[core]:x64-windows
  * boost-dynamic-bitset[core]:x64-windows
  * boost-endian[core]:x64-windows
  * boost-exception[core]:x64-windows
  * boost-fiber[core]:x64-windows
  * boost-filesystem[core]:x64-windows
  * boost-flyweight[core]:x64-windows
  * boost-foreach[core]:x64-windows
  * boost-format[core]:x64-windows
  * boost-function[core]:x64-windows
  * boost-function-types[core]:x64-windows
  * boost-functional[core]:x64-windows
  * boost-fusion[core]:x64-windows
  * boost-geometry[core]:x64-windows
  * boost-gil[core]:x64-windows
  * boost-graph[core]:x64-windows
  * boost-graph-parallel[core]:x64-windows
  * boost-hana[core]:x64-windows
  * boost-hana-msvc[core]:x64-windows
  * boost-heap[core]:x64-windows
  * boost-hof[core]:x64-windows
  * boost-icl[core]:x64-windows
  * boost-integer[core]:x64-windows
  * boost-interprocess[core]:x64-windows
  * boost-interval[core]:x64-windows
  * boost-intrusive[core]:x64-windows
  * boost-io[core]:x64-windows
  * boost-iostreams[core]:x64-windows
  * boost-iterator[core]:x64-windows
  * boost-lambda[core]:x64-windows
  * boost-lexical-cast[core]:x64-windows
  * boost-local-function[core]:x64-windows
  * boost-locale[core]:x64-windows
  * boost-lockfree[core]:x64-windows
  * boost-log[core]:x64-windows
  * boost-logic[core]:x64-windows
  * boost-math[core]:x64-windows
  * boost-metaparse[core]:x64-windows
  * boost-modular-build-helper[core]:x64-windows
  * boost-move[core]:x64-windows
  * boost-mp11[core]:x64-windows
  * boost-mpl[core]:x64-windows
  * boost-msm[core]:x64-windows
  * boost-multi-array[core]:x64-windows
  * boost-multi-index[core]:x64-windows
  * boost-multiprecision[core]:x64-windows
  * boost-numeric-conversion[core]:x64-windows
  * boost-odeint[core]:x64-windows
  * boost-optional[core]:x64-windows
  * boost-parameter[core]:x64-windows
  * boost-phoenix[core]:x64-windows
  * boost-poly-collection[core]:x64-windows
  * boost-polygon[core]:x64-windows
  * boost-pool[core]:x64-windows
  * boost-predef[core]:x64-windows
  * boost-preprocessor[core]:x64-windows
  * boost-process[core]:x64-windows
  * boost-program-options[core]:x64-windows
  * boost-property-map[core]:x64-windows
  * boost-property-tree[core]:x64-windows
  * boost-proto[core]:x64-windows
  * boost-ptr-container[core]:x64-windows
  * boost-python[core]:x64-windows
  * boost-qvm[core]:x64-windows
  * boost-random[core]:x64-windows
  * boost-range[core]:x64-windows
  * boost-ratio[core]:x64-windows
  * boost-rational[core]:x64-windows
  * boost-regex[core]:x64-windows
  * boost-scope-exit[core]:x64-windows
  * boost-serialization[core]:x64-windows
  * boost-signals[core]:x64-windows
  * boost-signals2[core]:x64-windows
  * boost-smart-ptr[core]:x64-windows
  * boost-sort[core]:x64-windows
  * boost-spirit[core]:x64-windows
  * boost-stacktrace[core]:x64-windows
  * boost-statechart[core]:x64-windows
  * boost-static-assert[core]:x64-windows
  * boost-system[core]:x64-windows
  * boost-test[core]:x64-windows
  * boost-thread[core]:x64-windows
  * boost-throw-exception[core]:x64-windows
  * boost-timer[core]:x64-windows
  * boost-tokenizer[core]:x64-windows
  * boost-tti[core]:x64-windows
  * boost-tuple[core]:x64-windows
  * boost-type-erasure[core]:x64-windows
  * boost-type-index[core]:x64-windows
  * boost-type-traits[core]:x64-windows
  * boost-typeof[core]:x64-windows
  * boost-ublas[core]:x64-windows
  * boost-units[core]:x64-windows
  * boost-unordered[core]:x64-windows
  * boost-utility[core]:x64-windows
  * boost-uuid[core]:x64-windows
  * boost-variant[core]:x64-windows
  * boost-vcpkg-helpers[core]:x64-windows
  * boost-vmd[core]:x64-windows
  * boost-wave[core]:x64-windows
  * boost-winapi[core]:x64-windows
  * boost-xpressive[core]:x64-windows
  * boost-yap[core]:x64-windows
  * bzip2[core]:x64-windows
  * liblzma[core]:x64-windows
  * openssl[core]:x64-windows
  * openssl-windows[core]:x64-windows
  * python3[core]:x64-windows
  * zlib[core]:x64-windows
Additional packages (*) will be modified to complete this operation.
Starting package 1/143: boost-vcpkg-helpers:x64-windows
Building package boost-vcpkg-helpers[core]:x64-windows...
A suitable version of cmake was not found (required v3.11.4). Downloading portable cmake v3.11.4...
Extracting cmake...
A suitable version of 7zip was not found (required v18.1.0). Downloading portable 7zip v18.1.0...
Downloading 7zip...
  https://www.nuget.org/api/v2/package/7-Zip.CommandLine/18.1.0 -> C:\Repos\vcpkg\downloads\7-zip.commandline.18.1.0.nupkg
File does not have the expected hash:
             url : [ https://www.nuget.org/api/v2/package/7-Zip.CommandLine/18.1.0 ]
       File path : [ C:\Repos\vcpkg\downloads\7-zip.commandline.18.1.0.nupkg.part ]
   Expected hash : [ 8c75314102e68d2b2347d592f8e3eb05812e1ebb525decbac472231633753f1d4ca31c8e6881a36144a8da26b2571305b3ae3f4e2b85fc4a290aeda63d1a13b8 ]
     Actual hash : [ a9dfaaafd15d98a2ac83682867ec5766720acf6e99d40d1a00d480692752603bf3f3742623f0ea85647a92374df405f331afd6021c5cf36af43ee8db198129c0 ]

That's annoyhing, I just tried the above command on a clean machine and was unable to reproduce the issue.
 A suitable version of 7zip was not found (required v18.1.0). Downloading portable 7zip v18.1.0...
Downloading 7zip...
  https://www.nuget.org/api/v2/package/7-Zip.CommandLine/18.1.0 -> E:\vcpkg\vcpkg\downloads\7-zip.commandline.18.1.0.nupkg
Downloading 7zip... done.
Extracting 7zip...

Does it still repro?  I ask only because it could have been an intermittent issue in the nuget service that is now resolved so it worked for me but not for you earlier.

same here
OS: win10 x64
>vcpkg install curl
The following packages will be built and installed:
    curl[core,ssl]:x86-windows
  * openssl[core]:x86-windows
  * openssl-windows[core]:x86-windows
  * zlib[core]:x86-windows
Additional packages (*) will be modified to complete this operation.
Starting package 1/4: zlib:x86-windows
Building package zlib[core]:x86-windows...
A suitable version of cmake was not found (required v3.11.4). Downloading portable cmake v3.11.4...
Extracting cmake...
A suitable version of 7zip was not found (required v18.1.0). Downloading portable 7zip v18.1.0...
Downloading 7zip...
  https://www.nuget.org/api/v2/package/7-Zip.CommandLine/18.1.0 -> C:\Users\Jane Wang\vcpkg\downloads\7-zip.commandline.18.1.0.nupkg
File does not have the expected hash:
             url : [ https://www.nuget.org/api/v2/package/7-Zip.CommandLine/18.1.0 ]
       File path : [ C:\Users\****\vcpkg\downloads\7-zip.commandline.18.1.0.nupkg.part ]
   Expected hash : [ 8c75314102e68d2b2347d592f8e3eb05812e1ebb525decbac472231633753f1d4ca31c8e6881a36144a8da26b2571305b3ae3f4e2b85fc4a290aeda63d1a13b8 ]
     Actual hash : [ a9dfaaafd15d98a2ac83682867ec5766720acf6e99d40d1a00d480692752603bf3f3742623f0ea85647a92374df405f331afd6021c5cf36af43ee8db198129c0 ]

And the downloaded file name actually is 7-zip.commandline.18.1.0.nupkg.part

I'm experiencing the same issue. Tried
vcpkg commit: 9ad166279c913cf0becc56865d05ed5806fad8aa
Fails at 7-Zip.Commandline/18.1.0 extraction.

This can be temporarily  and  foolishly 'fixed' by replacing the hash value in vcpkg/scripts/vcpkgTools (tool name="7zip" os="windows") with the actual hash. I'm pretty sure that it such an act ranks highly in the list of security sins.

I can confirm, same problem, on a clean Windows 10 x64 machine.

@Rastaban tried again on a clean VM and it does still reproduce. Same exact hashes. Also I my machine I just changed the hash in scripts/vcpkgTools.xml and the issue went away and Boost installed just fine.

I can confirm the same failure as well.
To work around this I copied the original 7-zip.commandline.18.1.0.nupkg (the one with the correct hash) that I had from another install location into the vcpkg/downloads directory. It was then able to install packages as normal.
This doesn't help though if you can't get your hands on the right file...

Thank you everyone for quickly jumping in and reporting this!
I've just pushed 068032bc to master, which downgrades the version of 7-zip to a previous version while we work on some internal changes to fix this more permanently for 18.1.0.
The root cause of the issue is that NuGet.org decided to modify the existing published nupkg files and inject signature files into them, which changes their hash. Our system to protect users from malicious files detected this change and correctly refused to use the un-validated executable.
Unfortunately, it isn't as simple as changing the expected hash, because existing users will still have the older file downloaded. We also can't just rename the file, because nuget.exe demands that the file be named in a very specific way.
As mentioned above, we're working on fixing this properly as a high priority, but 068032bc will fix the issue for now.
Thanks again!

Unfortunately the hotfix is causing a new problem.

Thanks for the further investigation.
I was able to confirm some strange behavior (though not this particular issue) when using the old 7zip as well. I've pushed a different workaround (273b8ce3d0d3533f3b959a7ecf4b0aa1eef22cab) that's a bit more permanent by mapping the new hash in the tool back to the old hash.
The reason to map the new hash to the old hash is to improve compatibility for existing users which might git pull but forget to ./bootstrap-vcpkg.bat -- they'll see everything keep working as before, because they already have the old version downloaded. For new users, they will definitely be bootstrapping, so the new file's hash will get (hackily) mapped to the old hash and the check will pass.
A proper fix is still desirable, but this particular duct tape should hold for longer since it's using the same (latest available) version of 7zip as before.

This issue still appears for anyone who has not ran .\bootstrap-vcpkg.bat since the patch.
It is not something I'd do when there is no update warning.

@ras0219-msft @Farwaykorse Yes, version should be increased so at least  message to run .\bootstrap-vcpkg.bat pops up.
@ras0219-msft The nuget versioning is wacky, 7zip versioning is format YY,MM, i.e. 18.01, and not number.number.

Hello, I have the same issue, I am trying to run .\bootstrap-vcpkg.bat but it failed due to toolsrc/ folder not existing.
I got vcpkg 1.50 through VS 2017 Nuget Package Manager.
Thank you in advance.

This seems to be an issue especially when going back in time to get earlier versions of libraries.

This issue is still present in 2020.01 version

Among many other converters, I would like to highlight AnyConv. It is simple, fast, and supports many file formats. anyconv.com

same problem when i install boost-compatibility
**.\vcpkg install boost-compatibility
Computing installation plan...
The following packages will be built and installed:
boost-compatibility[core]:x86-windows
Starting package 1/1: boost-compatibility:x86-windows
Building package boost-compatibility[core]:x86-windows...
-- Downloading https://github.com/boostorg/compatibility/archive/boost-1.73.0.tar.gz...
-- Using source at D:/Work 2019/GIT Code/vcpkg/buildtrees/boost-compatibility/src/ost-1.73.0-44642da97c
-- Packaging headers
-- Packaging headers done
-- Using cached D:/Work 2019/GIT Code/vcpkg/downloads/boost_LICENSE_1_0.txt
CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:99 (message):
File does not have expected hash:
      File path: [ D:/Work 2019/GIT Code/vcpkg/downloads/boost_LICENSE_1_0.txt ]
  Expected hash: [ d6078467835dba8932314c1c1e945569a64b065474d7aced27c9a7acc391d52e9f234138ed9f1aa9cd576f25f12f557e0b733c14891d42c16ecdc4a7bd4d60b8 ]
    Actual hash: [ b3e1ca08971b1c3e8cb11a854d094cea3a5fd2c95cf9e985b5212a4bde7975cc3ae15455e8d9e7dc3f2a47b1285b0a34798fc6e194d4ec2db4ceb76547bf07bb ]

Please delete the file and retry if this file should be downloaded again.
Call Stack (most recent call first):
scripts/cmake/vcpkg_download_distfile.cmake:110 (test_hash)
installed/x86-windows/share/boost-vcpkg-helpers/boost-modular-headers.cmake:17 (vcpkg_download_distfile)
ports/boost-compatibility/portfile.cmake:12 (boost_modular_headers)
scripts/ports.cmake:76 (include)
Error: Building package boost-compatibility:x86-windows failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with .\vcpkg update, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
Package: boost-compatibility:x86-windows
Vcpkg version: 2020.02.04-nohash
Additionally, attach any relevant sections from the log files above.
D:\Work 2019\GIT Code\vcpkg>.\vcpkg update
Using local portfile versions. To update the local portfiles, use git pull.
No packages need updating.
D:\Work 2019\GIT Code\vcpkg>.\vcpkg install boost-compatibility
Computing installation plan...
The following packages will be built and installed:
boost-compatibility[core]:x86-windows
Starting package 1/1: boost-compatibility:x86-windows
Building package boost-compatibility[core]:x86-windows...
-- Using cached D:/Work 2019/GIT Code/vcpkg/downloads/boostorg-compatibility-boost-1.73.0.tar.gz
-- Using source at D:/Work 2019/GIT Code/vcpkg/buildtrees/boost-compatibility/src/ost-1.73.0-44642da97c
-- Packaging headers
-- Packaging headers done
-- Using cached D:/Work 2019/GIT Code/vcpkg/downloads/boost_LICENSE_1_0.txt
CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:99 (message):
File does not have expected hash:
      File path: [ D:/Work 2019/GIT Code/vcpkg/downloads/boost_LICENSE_1_0.txt ]
  Expected hash: [ d6078467835dba8932314c1c1e945569a64b065474d7aced27c9a7acc391d52e9f234138ed9f1aa9cd576f25f12f557e0b733c14891d42c16ecdc4a7bd4d60b8 ]
    Actual hash: [ b3e1ca08971b1c3e8cb11a854d094cea3a5fd2c95cf9e985b5212a4bde7975cc3ae15455e8d9e7dc3f2a47b1285b0a34798fc6e194d4ec2db4ceb76547bf07bb ]

Please delete the file and retry if this file should be downloaded again.
Call Stack (most recent call first):
scripts/cmake/vcpkg_download_distfile.cmake:110 (test_hash)
installed/x86-windows/share/boost-vcpkg-helpers/boost-modular-headers.cmake:17 (vcpkg_download_distfile)
ports/boost-compatibility/portfile.cmake:12 (boost_modular_headers)
scripts/ports.cmake:76 (include)
Error: Building package boost-compatibility:x86-windows failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with .\vcpkg update, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
Package: boost-compatibility:x86-windows
Vcpkg version: 2020.02.04-nohash
Additionally, attach any relevant sections from the log files above.
D:\Work 2019\GIT Code\vcpkg>./bootstrap-vcpkg.bat
'.' 不是内部或外部命令，也不是可运行的程序
或批处理文件。
D:\Work 2019\GIT Code\vcpkg>.\bootstrap-vcpkg.bat
Building vcpkg.exe ...
Using triplet "x86-windows" from "D:\Work 2019\GIT Code\vcpkg\installed\x86-windows"
pch.cpp
archives.cpp
checks.cpp
chrono.cpp
cofffilereader.cpp
downloads.cpp
enums.cpp
files.cpp
hash.cpp
json.cpp
machinetype.cpp
parse.cpp
strings.cpp
stringview.cpp
system.cpp
system.print.cpp
system.process.cpp
unicode.cpp
binarycaching.cpp
binaryparagraph.cpp
build.cpp
buildenvironment.cpp
cmakevars.cpp
commands.autocomplete.cpp
commands.buildexternal.cpp
commands.cache.cpp
commands.ci.cpp
commands.ciclean.cpp
commands.contact.cpp
commands.cpp
commands.create.cpp
commands.dependinfo.cpp
commands.edit.cpp
commands.env.cpp
commands.exportifw.cpp
commands.import.cpp
commands.integrate.cpp
commands.list.cpp
commands.owns.cpp
commands.porthistory.cpp
commands.portsdiff.cpp
commands.search.cpp
commands.setinstalled.cpp
commands.upgrade.cpp
commands.version.cpp
commands.xvsinstances.cpp
dependencies.cpp
export.cpp
export.chocolatey.cpp
export.prefab.cpp
D:\Work 2019\GIT Code\vcpkg\toolsrc\src\vcpkg\export.prefab.cpp(1,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数 据丢失 [D:\Work 2019\GIT Code\vcpkg\t
oolsrc\vcpkglib\vcpkglib.vcxproj]
globalstate.cpp
help.cpp
input.cpp
install.cpp
logicexpression.cpp
metrics.cpp
packagespec.cpp
paragraphparseresult.cpp
paragraphs.cpp
portfileprovider.cpp
postbuildlint.buildtype.cpp
postbuildlint.cpp
remove.cpp
sourceparagraph.cpp
statusparagraph.cpp
statusparagraphs.cpp
tools.cpp
triplet.cpp
update.cpp
userconfig.cpp
vcpkgcmdarguments.cpp
vcpkglib.cpp
vcpkgpaths.cpp
versiont.cpp
visualstudio.cpp
vcpkglib.vcxproj -> D:\Work 2019\GIT Code\vcpkg\toolsrc\msbuild.x86.release\vcpkglib.lib
Using triplet "x86-windows" from "D:\Work 2019\GIT Code\vcpkg\installed\x86-windows"
vcpkg.cpp
正在生成代码
Previous IPDB not found, fall back to full compilation.
All 17889 functions were compiled because no usable IPDB/IOBJ from previous compilation was found.
已完成代码的生成
vcpkg.vcxproj -> D:\Work 2019\GIT Code\vcpkg\toolsrc\msbuild.x86.release\vcpkg.exe
Using triplet "x86-windows" from "D:\Work 2019\GIT Code\vcpkg\installed\x86-windows"
vcpkgmetricsuploader.cpp
正在生成代码
Previous IPDB not found, fall back to full compilation.
All 3379 functions were compiled because no usable IPDB/IOBJ from previous compilation was found.
已完成代码的生成
vcpkgmetricsuploader.vcxproj -> D:\Work 2019\GIT Code\vcpkg\toolsrc\msbuild.x86.release\vcpkgmetricsuploader.exe
Building vcpkg.exe... done.
Telemetry
vcpkg collects usage data in order to help us improve your experience.
The data collected by Microsoft is anonymous.
You can opt-out of telemetry by re-running the bootstrap-vcpkg script with -disableMetrics,
passing --disable-metrics to vcpkg on the command line,
or by setting the VCPKG_DISABLE_METRICS environment variable.
Read more about vcpkg telemetry at docs/about/privacy.md
D:\Work 2019\GIT Code\vcpkg>.\vcpkg update
Using local portfile versions. To update the local portfiles, use git pull.
No packages need updating.
D:\Work 2019\GIT Code\vcpkg>.\vcpkg install pcl
Computing installation plan...
The following packages will be built and installed:

boost-algorithm[core]:x86-windows
boost-any[core]:x86-windows
boost-array[core]:x86-windows
boost-asio[core]:x86-windows
boost-assert[core]:x86-windows
boost-atomic[core]:x86-windows
boost-bimap[core]:x86-windows
boost-bind[core]:x86-windows
boost-build[core]:x86-windows
boost-chrono[core]:x86-windows
boost-circular-buffer[core]:x86-windows
boost-compatibility[core]:x86-windows
boost-concept-check[core]:x86-windows
boost-config[core]:x86-windows
boost-container[core]:x86-windows
boost-container-hash[core]:x86-windows
boost-context[core]:x86-windows
boost-conversion[core]:x86-windows
boost-core[core]:x86-windows
boost-coroutine[core]:x86-windows
boost-date-time[core]:x86-windows
boost-detail[core]:x86-windows
boost-dynamic-bitset[core]:x86-windows
boost-endian[core]:x86-windows
boost-exception[core]:x86-windows
boost-filesystem[core]:x86-windows
boost-foreach[core]:x86-windows
boost-format[core]:x86-windows
boost-function[core]:x86-windows
boost-function-types[core]:x86-windows
boost-functional[core]:x86-windows
boost-fusion[core]:x86-windows
boost-graph[core]:x86-windows
boost-integer[core]:x86-windows
boost-interprocess[core]:x86-windows
boost-intrusive[core]:x86-windows
boost-io[core]:x86-windows
boost-iostreams[core]:x86-windows
boost-iterator[core]:x86-windows
boost-lambda[core]:x86-windows
boost-lexical-cast[core]:x86-windows
boost-locale[core]:x86-windows
boost-math[core]:x86-windows
boost-modular-build-helper[core]:x86-windows
boost-move[core]:x86-windows
boost-mp11[core]:x86-windows
boost-mpl[core]:x86-windows
boost-multi-array[core]:x86-windows
boost-multi-index[core]:x86-windows
boost-multiprecision[core]:x86-windows
boost-numeric-conversion[core]:x86-windows
boost-optional[core]:x86-windows
boost-parameter[core]:x86-windows
boost-phoenix[core]:x86-windows
boost-pool[core]:x86-windows
boost-predef[core]:x86-windows
boost-preprocessor[core]:x86-windows
boost-property-map[core]:x86-windows
boost-property-tree[core]:x86-windows
boost-proto[core]:x86-windows
boost-ptr-container[core]:x86-windows
boost-random[core]:x86-windows
boost-range[core]:x86-windows
boost-ratio[core]:x86-windows
boost-rational[core]:x86-windows
boost-regex[core]:x86-windows
boost-serialization[core]:x86-windows
boost-signals2[core]:x86-windows
boost-smart-ptr[core]:x86-windows
boost-spirit[core]:x86-windows
boost-static-assert[core]:x86-windows
boost-system[core]:x86-windows
boost-test[core]:x86-windows
boost-thread[core]:x86-windows
boost-throw-exception[core]:x86-windows
boost-tokenizer[core]:x86-windows
boost-tti[core]:x86-windows
boost-tuple[core]:x86-windows
boost-type-index[core]:x86-windows
boost-type-traits[core]:x86-windows
boost-typeof[core]:x86-windows
boost-unordered[core]:x86-windows
boost-utility[core]:x86-windows
boost-uuid[core]:x86-windows
boost-variant[core]:x86-windows
boost-winapi[core]:x86-windows
boost-xpressive[core]:x86-windows
bzip2[core]:x86-windows
curl[core,non-http,ssl,sspi,winssl]:x86-windows
double-conversion[core]:x86-windows
eigen3[core]:x86-windows
expat[core]:x86-windows
flann[core]:x86-windows
freetype[bzip2,core,png]:x86-windows
glew[core]:x86-windows
hdf5[core,szip,zlib]:x86-windows
jsoncpp[core]:x86-windows
libharu[core,notiffsymbols]:x86-windows
libiconv[core]:x86-windows
libjpeg-turbo[core]:x86-windows
liblzma[core]:x86-windows
libogg[core]:x86-windows
libpng[core]:x86-windows
libtheora[core]:x86-windows
libxml2[core]:x86-windows
lz4[core]:x86-windows
netcdf-c[core]:x86-windows
openssl[core]:x86-windows
openssl-windows[core]:x86-windows
pcl[core]:x86-windows
pegtl-2[core]:x86-windows
proj4[core,database]:x86-windows
pugixml[core]:x86-windows
qhull[core]:x86-windows
sqlite3[core,tool]:x86-windows
szip[core]:x86-windows
tiff[core]:x86-windows
utfcpp[core]:x86-windows
vtk[core]:x86-windows
xxhash[core]:x86-windows
zlib[core]:x86-windows
zstd[core]:x86-windows
Additional packages (*) will be modified to complete this operation.
Starting package 1/122: boost-compatibility:x86-windows
Building package boost-compatibility[core]:x86-windows...
-- Using cached D:/Work 2019/GIT Code/vcpkg/downloads/boostorg-compatibility-boost-1.73.0.tar.gz
-- Using source at D:/Work 2019/GIT Code/vcpkg/buildtrees/boost-compatibility/src/ost-1.73.0-44642da97c
-- Packaging headers
-- Packaging headers done
-- Using cached D:/Work 2019/GIT Code/vcpkg/downloads/boost_LICENSE_1_0.txt
CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:99 (message):

File does not have expected hash:
      File path: [ D:/Work 2019/GIT Code/vcpkg/downloads/boost_LICENSE_1_0.txt ]
  Expected hash: [ d6078467835dba8932314c1c1e945569a64b065474d7aced27c9a7acc391d52e9f234138ed9f1aa9cd576f25f12f557e0b733c14891d42c16ecdc4a7bd4d60b8 ]
    Actual hash: [ b3e1ca08971b1c3e8cb11a854d094cea3a5fd2c95cf9e985b5212a4bde7975cc3ae15455e8d9e7dc3f2a47b1285b0a34798fc6e194d4ec2db4ceb76547bf07bb ]

Please delete the file and retry if this file should be downloaded again.
Call Stack (most recent call first):
scripts/cmake/vcpkg_download_distfile.cmake:110 (test_hash)
installed/x86-windows/share/boost-vcpkg-helpers/boost-modular-headers.cmake:17 (vcpkg_download_distfile)
ports/boost-compatibility/portfile.cmake:12 (boost_modular_headers)
scripts/ports.cmake:76 (include)
Error: Building package boost-compatibility:x86-windows failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with .\vcpkg update, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
Package: boost-compatibility:x86-windows
Vcpkg version: 2020.02.04-nohash
Additionally, attach any relevant sections from the log files a**bove.

For me it was solved by running the command with admin privileges...

updating vcpkg fixes the problem to me 2020.06.15-

I can confirm the same failure as well.
To work around this I copied the original 7-zip.commandline.18.1.0.nupkg (the one with the correct hash) that I had on hand from another install location into the vcpkg/downloads directory. It was then able to install packages as normal.
This doesn't help though if you can't get your hands on the right file...

Thank you. This helped a lot!!!

Thank you everyone for quickly jumping in and reporting this!
I've just pushed 068032b to master, which downgrades the version of 7-zip to a previous version while we work on some internal changes to fix this more permanently for 18.1.0.
The root cause of the issue is that NuGet.org decided to modify the existing published nupkg files and inject signature files into them, which changes their hash. Our system to protect users from malicious files detected this change and correctly refused to use the un-validated executable.
Unfortunately, it isn't as simple as changing the expected hash, because existing users will still have the older file downloaded. We also can't just rename the file, because nuget.exe demands that the file be named in a very specific way.
As mentioned above, we're working on fixing this properly as a high priority, but 068032b will fix the issue for now.
Thanks again!

This issue has been long solved for me, and I don't think the follow-ups describe the same issue. If my opinion as the person who opened this issue counts, this issue can be closed.

I agree, thank you parsa for your response! closing this issue now.

I solve the preblem
1)download this files
https://raw.githubusercontent.com/boostorg/boost/boost-1.75.0/LICENSE_1_0.txt
https://raw.githubusercontent.com/boostorg/boost/boost-1.75.0/boostcpp.jam
2)skip the hash test
add skip code at the vcpkg_download_distfile.camke


[SR-13049] prioritizeKeepingFunctionOutputTogether → Assertion failed: Too many unresolved delimiter token lengths.

Previous ID
SR-13049

Radar
None

Original Reporter
SDGGiesbrecht (JIRA User)

Type
Bug

Environment
macOS 10.15
Swift 5.2.4
swift-format 0.50200.1 (--configuration debug)

Additional Detail from JIRA

Votes
1

Component/s
swift-format

Labels
Bug

Assignee
None

Priority
Medium

md5: 03dbcc7fa590f6df220907a3ac3b2572

Issue Description:
Formatting with `prioritizeKeepingFunctionOutputTogether` engaged can lead to assertion failures.
This code is enough to trip it:
init(a: B) {}

Just got this error as well, prioritizeKeepingFunctionOutputTogether was the culprit.

Tracked in Apple’s issue tracker as rdar://126948255


Cron Trigger expressions not supported

App: functions1f748f5a
I used http://www.cronmaker.com/ (from google search) to generate a few expressions
e.g
hourly
0 0 0/1 1/1 * ? *
every minute
0 0/1 * 1/1 * ? *
but we dont seem to support them.
2016-03-29T17:49:28.083 Microsoft.Azure.WebJobs.Host: Error indexing method 'Functions.TimerTriggerCSharp1'. mscorlib: String was not recognized as a valid TimeSpan.
We should validate the expressions upfront, a UI to generate working expressions would also be handy .

We use the NCrontabl library for our CRON expressions, so we only support what it supports. https://github.com/atifaziz/NCrontab. No plans to change that.
Also note that the TimerTrigger itself lives in https://github.com/Azure/azure-webjobs-sdk-extensions, and that is where the CRON format is defined.


Azure Blueprint Operations

Hi,
Is there any package for blueprint operations (assign, user assigned managed identity) in sdk? Any advice would be appreciated.
Best

hey @anotherancientalien , thanks for reaching out.
Could you help give some more detail of what blueprint operations you're looking for -- do you have links for that? this would help us triaging the issue, thanks!

Hello @yunhaoling,
Create or update and list (user assigned)
Best
Yasemen

Does not seem to have a relevant package for blueprints in the python sdk...

@anotherancientalien Apologies for the late reply. I am looking in to this issue. I will update this thread once I have more detail on this.

@anotherancientalien There are no plans to release Azure Blueprint Python SDK for the above operations. We are moving all Blueprint Assignment functionality to Deployment Stacks and eventually we will have a Python SDK for that. Please let me know if you have any questions on this before we proceed with archival.

@navba-MSFT I appreciated your kind help.


mp3: only MPEG version 1 (want 3; got 2) is supported

Hello,
I'm trying to play an mp3 outputted from the Google Text to Speech API. I keep getting the following error on mp3.Decode(f)
mp3: only MPEG version 1 (want 3; got 2) is supported
Any help would be appreciated. Thanks.
TTS API: https://cloud.google.com/text-to-speech/docs/libraries
MP3 File: https://www.dropbox.com/s/l9w5qkad2jtm3vw/output.mp3?dl=0
Original issue: https://github.com/faiface/beep/issues/116

Solved but relevant for #43.


Hotfix/526 its not possible to scope all of gre

👋 Thanks for creating a pull request! 🚀 Checkout the storybook we've created for it: chlorophyll


Fixed alignment of project cards

Please, go through these steps before you submit a PR.

[ ] My Pod Leader knows I'm working on this Pull Request
[x] I've explained what the Pull Request is adding.
[x] I've explained why this is important.

Changes:

The project's thumbnail and show more button is aligned to the centre.
Project content is justify aligned.

Fixes #65

Please review @yashika51


Raise error and retry with PTY on sudo password prompt

Signed-off-by: Robert Vežnaver<EMAIL_ADDRESS>
Description

The knife ssh command will silently fail if it starts with sudo and will not prompt for a password. The proposed change shall error out of open_session on sudo complaining about not having a TTY and will retry the command with a PTY.
Related Issue

This fixes a regression introduced in #9482 by requesting a PTY only when open_session errors out. In addition, it also requires tty-prompt as once a PTY is allocated the prompt fails with #10705.
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Chore (non-breaking change that does not add functionality or fix an issue)

Checklist:

[x] I have read the CONTRIBUTING document.
[ ] I have run the pre-merge tests locally and they pass.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.
[x] All commits have been signed-off for the Developer Certificate of Origin.

In addition, it also requires tty-prompt as once a PTY is allocated the prompt fails with #10705.

#10705 was fixed a few days ago in #10706.

@rveznaver Can you run chefstyle -a against the file to fix the style issues?

@dheerajd-msys: given you are the original author of #9482, could you please check this works well with Windows machines? It should not reintroduce any bugs, but if you have time to double check it that would be great!

Thanks for the fix @rveznaver


Alter db tables through migration tool

The ability to alter tables without dropping them first.
http://stackoverflow.com/questions/7300948/add-column-to-sqlalchemy-table
http://docs.sqlalchemy.org/en/latest/core/metadata.html#altering-schemas-through-migrations

Optional?


Can't compile 2.0.0 on windows

there was no problem with the previous version 1.7.3
C:\Ruby21-x64\devkit>gem update rinku
Updating installed gems
Updating rinku
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
ERROR:  Error installing rinku:
ERROR: Failed to build gem native extension.
C:/Ruby21-x64/bin/ruby.exe extconf.rb

creating Makefile
make "DESTDIR=" clean
make "DESTDIR="
generating rinku-x64-mingw32.def
0 [main] sh 4768 fork_copy: linked dll data/bss pass 0 failed, 0x6E8000..0x6E8AD8, done 0, windows pid 256, Win32 error 487
/bin/sh: fork: Resource temporarily unavailable
make: *** [rinku-x64-mingw32.def] Error 128
make failed, exit code 2

Hm, I'm really unsure this is related to changes in the code. It looks like your MinGW Make is failing to fork. Maybe resource exhaustion?

My devkit was broken, this can be closed, thanks.

I figured. 😄


[Feature request] Option to enable phantoms spawning like a normal mob.

I use a datapack to debuff natural health regeneration and to add a little health regen after sleeping so I use bed frequently. I would like the phantoms to spawn even when a player was sleeping the previous night.

I don't think this fits into TinyTweaks, exactly, sorry.


Add tests for and refactor publication field type validation rules

The range validations add a very large amount of complexity. I'm starting to think about how much we really need them. Sure length validation for article descriptions might be good, but do we really need to validate date ranges and integer values? Maybe it would be better to allow arbitrary Laravel validation rules to be specified in the schema file instead of its min/max values.


Error tls: crypto/x509: system root pool is not available on Windows

Description
After the merge of this pull request 1339, when executing the terraform apply command to create the eks cluster and the managed nodes groups, it gives the following error as shown in the image below.

Versions

Terraform:

$ terraform -version
Terraform v0.15.0
on windows_amd64

Provider(s):

provider registry.terraform.io/hashicorp/aws v3.40.0
provider registry.terraform.io/hashicorp/cloudinit v2.2.0
provider registry.terraform.io/hashicorp/kubernetes v1.13.3
provider registry.terraform.io/hashicorp/local v2.1.0
provider registry.terraform.io/hashicorp/null v3.1.0
provider registry.terraform.io/hashicorp/random v3.1.0
provider registry.terraform.io/hashicorp/template v2.2.0
provider registry.terraform.io/terraform-aws-modules/http v2.4.0

Module:

terraform-aws-eks

Reproduction
Steps to reproduce the behavior:
I'm trying to deploy EKS and Nodes Groups using the example launch_templates_with_managed_node_groups as a model.
And I'm using Git Bash to run the terraform commands.
Code Snippet to Reproduce
Example launch_templates_with_managed_node_groups
Expected behavior
Work on both Windows and Linux platforms.
Actual behavior
After I runned the commando terraform apply -auto-approve show this error below:
│ Error: Error tls: crypto/x509: system root pool is not available on Windows
│
│   on .terraform\modules\eks\cluster.tf line 68, in data "http" "wait_for_cluster":
│   68: data "http" "wait_for_cluster" {
Terminal Output Screenshot(s)

Additional context
N/A

Thanks @ivialex-mcd for reporting this issue. I'll try to fix this during the weekend.

I got same issue
Error: Error tls: crypto/x509: system root pool is not available on Windows
on .terraform\modules\eks\cluster.tf line 68, in data "http" "wait_for_cluster":
68: data "http" "wait_for_cluster" {

I just publish https://github.com/terraform-aws-modules/terraform-provider-http/releases/tag/v2.4.1 to try to fix the provider issue on Windows.
@ivialex-mcd  @nareshkhatiwada can you please test it with terraform-aws-modules/terraform-provider-http v2.4.1 ?
terraform {
  required_providers {
    http = {
      source = "terraform-aws-modules/http"
      version = "2.4.1"
    }
  }
}

I just published https://github.com/terraform-aws-modules/terraform-provider-http/releases/tag/v2.4.1 to try to fix the provider issue on Windows.
@ivialex-mcd @nareshkhatiwada @rkinganduril can you please test it with terraform-aws-modules/terraform-provider-http v2.4.1 ?
terraform {
  required_providers {
    http = {
      source = "terraform-aws-modules/http"
      version = "2.4.1"
    }
  }
}

Hi @barryib ,
It works for me. But it generated another problem as shown below.
This error had happened with version 15.2.0 of the EKS module. And even upgrading to version 16.1.0 did not solve it. Do you already have any other tickets for this problem?
│ Error: error creating EKS Node Group (eks-cluster-mcd-rfm-dev/eks-cluster-mcd-rfm-dev-node_group_gp-enjoyed-ferret): InvalidRequestException: Cannot specify instance types in launch template and API request
│ {
│   RespMetadata: {
│     StatusCode: 400,
│     RequestID: "1afe9bdf-b681-468e-ba43-f5ed6c761c34"
│   },
│   ClusterName: "eks-cluster-mcd-rfm-dev",
│   Message_: "Cannot specify instance types in launch template and API request",
│   NodegroupName: "eks-cluster-mcd-rfm-dev-node_group_gp-enjoyed-ferret"
│ }
│
│   on .terraform\modules\eks\modules\node_groups\node_groups.tf line 1, in resource "aws_eks_node_group" "workers":
│    1: resource "aws_eks_node_group" "workers" {
│

Thanks for your feedback. Indeed this is not related to the wait_for_cluster datasource. Please, we can continue to discuss on https://github.com/terraform-aws-modules/terraform-aws-eks/issues/1386


Sensor data visualization issue

Thank you for developing amazing project so that we can use some sensors in Unity with ROS.
But I think there is a geometrical problem about ROS Connection.
When I tried to visualize sensor data with Unity Robotics Visualizations package, I got below data which seems like some geometrical error.

Please consider revising this problem. Thank you:)

Thanks for the Issue.
We are currently working on a redesign of UnitySensors in dev/restruct branch and the geometrical issue will be fixed accordingly.


distinguish between error codes and and other exception messages and use them consistently

The article clearly states these are error codes and that is also what they are treated in Azure AD Sign In logs.
But over a longer endevaour with Microsoft support on another issue after long back and forth we found out you also use e.g. AADSTS50158 as a normal exception to trigger an Flow to validate status when a uses is e.g. under a Conditional Access Terms of Use policy.
This combintation of quick and dirty use of error codes and sparse documentatation costed months (from both us and fellow workload PGs who also assumed there is a real error they have to handle)

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: a826ee6f-f457-7109-9f77-67c57977d4e7
Version Independent ID: 11766f27-492e-a579-dced-8a42528cbb47
Content: Azure Active Directory authentication and authorization error codes
Content Source: articles/active-directory/develop/reference-aadsts-error-codes.md
Service: active-directory
Sub-service: develop
GitHub Login: @rwike77
Microsoft Alias: ryanwi

@franzmiltner  Thank you for the feedback. We will check and update on the same.

@rwike77  Ryan, could this be verified and updated in the document ?

We have an active work item open with the sign in logs to correctly mark the "errors" as interrupts that are expected to be seen within the log in flow.  You can assign this one to me @rwike77 / @neeleshray-msft

Thanks @hpsin.  #reassign:@hpsin

#please-close This work is being taken on by the sign in logs team to correctly categorize errors.  Many errors are by design and do not indicate an issue that the developer has to fix.  This is expected.  We recommend that developers read both the error message and remediation rather than assuming that all errors must be fixed.

Wait @hpsin - are you saying this is by design and stays as is? Have a look at MSPremier case #17426202. This was nothing a developer thought he has to fix, It was a false positive which occupied Premier heavily while trying to hunt down another issue and that resulted in senior level attention needed. Calling out in the support article that some errors are not errors but interrupts by design until the log team has a better categorization would be a nice move and rather quick fix to not have others suffer from that!

@franzmiltner - we are planning to delete all error messages here since they encourage bad behavior and code patterns in applications, and do not offer any novel information, while remaining out of date and non-exhaustive.  The error controller suffices.  I cannot speak to the support case you reference nor access it for privacy reasons, but if you can contact me internally we can discuss it further. Agreed that the sign in logs need to be better updated, and we are working on that.

If you let me know how, happy to reach out internally.
As a short summary of the case: We were not in any dev scenario but hunting that confusing log message in a use-of-product scenario (e.g. when using Conditionally Access Terms of Use, you get tons of AADSTS50158 which in hindsight turned out to be expected but obfuscated the actual bug we where seeing). But good to hear you are working on making these clearer,


Minor refactoring

Some minor refactor to reduce code duplication

publish job
> waiting for PR to get merged or closed


[clang-tidy] plans to add '-warnings-as-errors' flag as a command line argument

Description
Are there any plans to add the -warnings-as-errors flag when the clang-tidy and clang-tidy-checks are provided through the command line. Based on the documentation from https://clang.llvm.org/extra/clang-tidy/, the flag should upgrade any warnings emitted by the checks flag into errors.

The severity with which warnings are treated tends to be a project-level decision. Are you able to put this in a .clang-tidy file? Format is described in https://clang.llvm.org/extra/clang-tidy/
This is the preferred way to configure .clang-tidy with clangd (and IMO at all). -clang-tidy-checks is an escape hatch, mostly for testing, but I don't think we want to go down the path of exposing every clang-tidy option as a clangd flag.

@sam-mccall thank you for the clarification and your comments.

The severity with which warnings are treated tends to be a project-level decision. Are you able to put this in a .clang-tidy file? Format is described in https://clang.llvm.org/extra/clang-tidy/. I do believe we support WarningsAsErrors as of https://reviews.llvm.org/D61841

Yes, I was able to use the WarningsAsErrors included in the .clang-tidy file previously.
If this is the recommended way forward I completely understand, and I agree it's more of a project level decision which flags to turn on, and which to treat as errors.

-clang-tidy-checks is an escape hatch, mostly for testing, but I don't think we want to go down the path of exposing every clang-tidy option as a clangd flag.

Thank you for the clarification, I had noticed the -clang-tidy-checks in clangd and was simply wondering as to why a flag similar to -clang-tidy-warnings-as-errors wasn't exposed but now I understand. I agree that it wouldn't be the best way forward to expose every clang-tidy option as a clangd flag.


Opus Lib will not load

Last login: Mon May 15 20:13:48 on ttys000
/Users/Josh/Desktop/MusicBot-master/runbot_mac.command ; exit;
Joshs-Air:~ Josh$ /Users/Josh/Desktop/MusicBot-master/runbot_mac.command ; exit;
Traceback (most recent call last):
File "run.py", line 162, in main
from musicbot import MusicBot
File "/Users/Josh/Desktop/MusicBot-master/musicbot/init.py", line 1, in
from .bot import MusicBot
File "/Users/Josh/Desktop/MusicBot-master/musicbot/bot.py", line 38, in
load_opus_lib()
File "/Users/Josh/Desktop/MusicBot-master/musicbot/opus_loader.py", line 17, in load_opus_lib
raise RuntimeError('Could not load an opus lib. Tried %s' % (', '.join(opus_libs)))
RuntimeError: Could not load an opus lib. Tried libopus-0.x86.dll, libopus-0.x64.dll, libopus-0.dll, libopus.so.0, libopus.0.dylib
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.
[Process completed]
I have tried doing the update, downloading the specific files and adding them to folder, and nothing works. Please help. Also I am on mac

Did you run brew install opus?
https://github.com/Just-Some-Bots/MusicBot/wiki/Guide-for-OSX


How to join Slack channel?

Signups are disabled. One can only join by invite. Can you add me? simo at webinventinc dot com

huge apologies I'd missed your issue! (sorry when moving the organisations around I seem to have missed github notifications). I've just added you.
FWIW there's now an invite URL here: http://slack.fabric8.io/

@jstrachan awesome thanks!

I've just updated the home page to link to that invite URL too: https://funktion.fabric8.io/


Broken in Chrome 63.0.3239.132

In Chrome 63.0.3239.132 the plugin returns en-gb while the languages are set on ["nl", "en-GB", "en-US", "en"]. en-gb is OS language while nl is the users preferred language.

whoa sorry for the late reply! looking into this...

this should be fixed technically in #62

actually... reopening. this is not fixed yet.

@VMBindraban could you provide some extra detail. on the values you get when you do the following in your console (if applicable):
window.navigator.languages
window.navigator.userLanguage
window.clientInformation.language
window.Intl.DateTimeFormat.resolvedOptions().locale

also, was this within a chrome app, node, or just in the browser?

In the browser (64.0.3282.167 atm).
window.navigator.languages => ["nl", "en-US", "en-GB", "en"]
window.navigator.userLanguage => undefined
window.clientInformation.language => "en-GB"
window.Intl.DateTimeFormat.resolvedOptions().locale => Not a function, DateTimeFormat is an function.

@VMBindraban thanks! i made a mistake with the last one:
window.Intl.DateTimeFormat().resolvedOptions().locale

without being too inquisitive, do you have your mac's language region to Netherlands or UK? I want to clarify what system settings are set and what the browser is then interpreting.

window.Intl.DateTimeFormat().resolvedOptions().locale => "en-GB"

These are my languages in Chrome:

And my mac language settings:

Perhaps this also helps, the window.navigator:

thanks! will look into a fix for this shortly

sorry this took months :)... i was side-tracked @VMBindraban
the resolve may be irrelevant by now, but am working on a fix. I assume the result for your case should be: nl-GB (correct me if i'm wrong). if you could, i'd love to also see screenshots of your window.navigator in firefox and safari as well if you could. thanks

I am not using this module anymore but i can at least provide you with the info to fix it. :)
Safari 11.1.2:

Firefox 61.0.1:

I think Chrome fixed the issue somewhere between version 63 and 67.
This is 67.0.3:

thanks @VMBindraban! (that's interesting re: chrome)


Styling broken in detail dropdown of imports on the Imports page

Specifically, the dropdown menu has a lower z-order index than the view button of the import below it.

I'm going to look into this!


PSASSET-868 Adding in backup_runs resource to Google CloudSQL Plugins

Description
Adding in backup_runs resource to Google CloudSQL Plugins
Issues Resolved
[List any existing issues this PR resolves]
Contribution Check List

[ ] All tests pass.
[ ] New functionality includes testing.
[ ] New functionality has been documented in the README if applicable
[ ] New functionality has been documented in CHANGELOG.MD

https://cl.ly/2F193X2F3a1o


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target_0fd0fe77-d8fe-43bc-80fe-32c6d4252be1/pull/1 is merged into live branch.
Auto archive content to https://github.com/opstest2/docs-archive-test-target_0fd0fe77-d8fe-43bc-80fe-32c6d4252be1.git

Docs Build status updates of commit 91ad1e6:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-RuningBuildFailed] Some unexpected errors happened when running build, please open a ticket in https://aka.ms/SiteHelp and include the error report for our team to troubleshoot

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Comparison with results from original M4 participants?

You state on your leaderboard that TimesNet is the best for "short-term forecasting", which I take means the best on the M4 dataset? Your TimesNet paper reports an OWA of 0.851 for your method and of 0.855 for NBEATS.
The M4 was won by a method with an OWA of 0.821, see Table 4 in:
Makridakis, S., Spiliotis, E., & Assimakopoulos, V. (2020). The M4 Competition: 100,000 time series and 61 forecasting methods. International Journal of Forecasting, 36(1), 54-74.
Also, NBEATS reported in their original paper OWAs way better, namely 0.795, see:
https://arxiv.org/pdf/1905.10437.pdf
I'm wondering where these differences come from? Are you using a subset of the M4 only, for example?

What about the original participants in the M4 then?

Note that different from competition, for research, a fair comparison is essential. Without fair comparison, we cannot obtain any scientific conclusions.
If you try to apply TimesNet to M6 or other competitions, you can also employ the ensemble strategy to TimesNet like N-BEATS. But for us and this repo, as we stated in the README.md, this repo is to provide a clean code base for researchers. We still insist the single-model comparison configuration.


Can you add a SnapShot Feature ?

When i do a snapshot , it should give me the current state of table snapshot(screenshot) of the table as pdf/image ?

@kamarajuPrathi you mean save an image for current table @@?


Explore high contrast mode

In dev tools, element tab, cmd+shift+P, search forced-colors and click emulate.

lgtm


Support time literals in log playback scrubber

Pull request #299 implemented a log playback scrubber. The time input field, which supports jumping to a specific time, requires input to match dd hh:mm:ss.nnn. It would be nice if the user could enter something like 200s, which would jump to 200 seconds in the log file.

Would this also apply for day, hour, minute, and nanosecond?  For instance, what would be the format for something like 2 hours, 19 minutes, 27 seconds?  Something like 2h 19m 27s?


Fail to install into ATOM

i'm attemping to install you packge but i got some error.... look the output below:
Installing<EMAIL_ADDRESS>failed.Hide output…

<EMAIL_ADDRESS>install /tmp/apm-install-dir-115810-7379-150zpvb/node_modules/terminal-plus/node_modules/pty.js
node-gyp rebuild

make: Entering directory /tmp/apm-install-dir-115810-7379-150zpvb/node_modules/terminal-plus/node_modules/pty.js/build'   CXX(target) Release/obj.target/pty/src/unix/pty.o make: Leaving directory /tmp/apm-install-dir-115810-7379-150zpvb/node_modules/terminal-plus/node_modules/pty.js/build'
make: g++: Command not found
make: *** [Release/obj.target/pty/src/unix/pty.o] Error 127
gyp ERR! build error
gyp ERR! stack Error: make failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/node-gyp/lib/build.js:269:23)
gyp ERR! stack     at ChildProcess.emit (events.js:98:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:820:12)
gyp ERR! System Linux 3.13.0-62-generic
gyp ERR! command "node" "/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /tmp/apm-install-dir-115810-7379-150zpvb/node_modules/terminal-plus/node_modules/pty.js
gyp ERR! node -v v0.10.40
gyp ERR! node-gyp -v v2.0.2
gyp ERR! not ok
npm ERR! Linux 3.13.0-62-generic
npm ERR! argv "/usr/share/atom/resources/app/apm/bin/node" "/usr/share/atom/resources/app/apm/node_modules/npm/bin/npm-cli.js" "--globalconfig" "/home/myuser/.atom/.apm/.apmrc" "--userconfig" "/home/myuser/.atom/.apmrc" "install" "/tmp/d-115810-7379-1idt3og/package.tgz" "--target=0.22.0" "--arch=x64"
npm ERR! node v0.10.40
npm ERR! npm  v2.13.3
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the pty.js package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get their info via:
npm ERR!     npm owner ls pty.js
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR!     /tmp/apm-install-dir-115810-7379-150zpvb/npm-debug.log

@binhor009 You need g++ to compile the dependencies. If you go into your local terminal on your machine and enter the command 'g++' it should give you instructions on how to install it.

This usually stems from the fact that either Xcode or Xcode Command Line Tools aren't installed (on OS X).

Windows 7 x64
Atom 1.0.11

@Zooce Sorry, there have been issues installing on Windows. It's a problem with one of the dependencies I use. I'll be sure to let you know when it's fixed.

@jeremyramin Thanks, I appreciate it!

The latest version v0.4.0 should fix this issue.
@Zooce It would be very helpful if you could give this latest update a try and let me know if it works on your system.

@jeremyramin It's working great so far! Thanks for jumping on this issue so quickly!

I'll ahead and close this issue since it appears to be fixed.


Include a sub package in a bundle

Hello,
This is probably my own ignorance, but I did not find a way to include a subpackage in my vendor bundle.
A created a small project demonstrating the issue.
The gist of the problem is that the locales of the package date-fns are in a subpackage.
I tried to include them like this:
fsbx.FuseBox.init({
  homeDir: `./src`,
  cache: false,
  log: false
}).bundle({
  [`dist/vendor.js`]: "+date-fns +date-fns/locale/fr"
})

But this does not work as I expected.
Could you suggest another way to accomplish this?

@geowarin thanks for reporting!
Yeah, it's a known "bug" you can't really add it like so. But this will be fixed.
You can make a workaround for now:
require("date-fns/locale/fr")

Ok. Yeah there is an easy workaround for those interested.
additionalVendors.js
require('date-fns/locale/fr');

fuse.js
vendor.bundle({
  [`dist/vendor.js`]: "+date-fns additionalVendors.js"
})

Thanks there seems to be a problem with distinguishing what is a node module reference and what is a file. Gotta keep that issue in mind.
Thanks.

Coming with the next one


Calculate various Redeemer fields

We need to figure out how to calculate the various fields of the CSL-style Redeemer type which is much different from the Plutus-style redeemer an end user will encounter.
Our definition is:
newtype Redeemer = Redeemer
  { tag :: RedeemerTag
  , index :: BigInt
  , data :: PlutusData
  , ex_units :: ExUnits
  }

index might correspond to the index of the input which is being spent with the redeemer. ex_units might be significantly harder to figure out
More context/discussion: https://github.com/Emurgo/cardano-serialization-lib/issues/241

OK, looks like we might need to use evaluateTransactionExecutionUnits from Cardano.Api for this

It turns out this will be horribly complex to do from the server. Instead we can use Ogmios v5.2.0 (after upgrading) and use it EvaluateTx protocol:
https://ogmios.dev/mini-protocols/local-tx-submission/#evaluatetx

I'm going to close this in favor of #167 where calling the Ogmios protocol will be implemented

I'm going to close this in favor of #167 where calling the Ogmios protocol will be implemented


Mailgun load custom templates

Is there any way i can use mailgun action to send custom mails.?

Hey @RahulKatariya, I am not so familiar with the maligun action as it was created by @thiagolioy. But maybe they can chime in and see if we can get some advice on that?

Yes, It would be great.

I'm on it.

@oronbz how do you structure the template so that it fills in the values like message and app_link, etc?

@oronbz Can you please provide an example because i am not able to set the template path right.

Hi guys @tettoffensive  @RahulKatariya ,
I've just cloned the original fastlane email template and edited it to my will, you can check the original here:
https://github.com/fastlane/fastlane/blob/master/fastlane/lib/assets/mailgun_html_template.erb
Let me know if something isn't clear

@oronbz thanks! I was just using an html file per mailgun's advice. Didn't know about the erb.


Add resource requirements for Workspace statefulsets

Background
When we create a Workspace, it is stored as a Statefulset. We use a nodeSelector to target a machine. However, we don't specify the resource requirements such as cpu/memory/gpu. This means that the scheduler could put multiple pods onto the same node, so we're not getting the full machine capacity for our Workspace.
In order to get the full machine capacity, we need to request the full machine resources available.
Task
The user can specify the resources in the configuration provided in the params.yaml.
The system needs to read this, and if it is set, add it to the statefulset manifest when creating a workspace.
We already do this for workflows, here is the code
https://github.com/onepanelio/core/pull/393/files#diff-2df54c8de22b7ec30c64350c5cbfd591R147
Testing

[ ] configure params.yaml with resource requirements and make sure it is saved correctly in the final manifest
[ ] create a workspace and make sure the manifest adds the resource requirements
[ ] repeat the above, but use a different node pool to make sure the resource requirements are changing appropriately

An update on this.
Through recent discussions about this functionality, we want to increase the automation regarding the nodes available and their resources.
For this ticket specifically, we're dealing with node resources and making sure the pod can use all of the resources without having to share.
For example, we want CVAT workspace to be able to use the full node resources, such as GPU and CPU, without sharing with another CVAT workspace.
We explored this solution:
Add an extra container to a given workspace.
The container is minimal, such as alpine:linux, and instructed to sleep forever.

So the container takes almost no resources to run
Has to run forever so argo doesn't think the workflow is crashing

The extra container has extra fields to request resources, such as cpu: 4000m (4 cpus) and nvidia|amd.com:1 to request GPUs.
This generally works.
We can read the users configuration values from params.yaml and request them when the workspace is created, for a selected node.
To improve automation, we wanted to figure out this capacity dynamically, without the user setting the information in params.yaml.
So, we added code to look up the running nodes and retrieve their available capacity for allocation.

This also worked.
Some issues with figuring out the exact amount, because I had to tweak and set 90% of the values reported for the pod to schedule properly.

This solution had a big issue: we required the nodes to be running in order to see their capacity.

Some nodepools would be at 0 and thus scale up when required.
There is no easy way to get this information from k8s.
More difficulty, the cloud providers (such as AKS) do not make their cluster-autoscaler available in the cluster.
It gets used, but it can't be outright accessed

So finally, Rush discovered a solution of pod anti-affinity to schedule the pods.

We don't worry about resources, because we can ensure only one pod per node. New pods will be forced to go to other nodes.
The autoscaler will still schedule new nodes as needed.

@Vafilor @rushtehrani I think we can close this ticket as obsolete.

@aleksandrmelnikov we can definitely close the ticket but might want to keep the branch around for a bit for reference.


add transportSecurity layer but only symmetic so far

add transportSecurity layer, but only symmetic so far

Codecov Report

Merging #20 into develop will decrease coverage by 0.04%.
The diff coverage is 87.71%.

@@             Coverage Diff             @@
##           develop      #20      +/-   ##
===========================================
- Coverage     88.1%   88.05%   -0.05%
===========================================
  Files           21       24       +3
  Lines          824      938     +114
===========================================
+ Hits           726      826     +100
- Misses          64       72       +8
- Partials        34       40       +6

Impacted Files
Coverage Δ

crypto/hash/hashfuncs.go
100% <ø> (ø)
:arrow_up:

crypto/transport/listener.go
87.5% <87.5%> (ø)

crypto/transport/conn.go
87.5% <87.5%> (ø)

crypto/transport/encrypt.go
88% <88%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 06c005d...c9ad8e6. Read the comment docs.


Check runtime environement on startup

Run some checks on startup to check if the runtime environment is properly set up. These checks could include things like:

[x] Checking that the Node Version is supported
[x] Checking if dependencies were dependencies were installed
[ ] ~Checking if the XML Stuff working~
[x] Checking if Port 3000 is already in use

If something was some to be missing / wrong we could log out the error and give the user some hints how to resolve them. This could reduce troubles for new users not familiar with the used technologies.

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Node version support should be checked because of the declaration in package.json, no? And the XML challenges are now automatically disabled when the app runs inside a Docker container.
Do the remaining points warrant an extra start.bat / start.sh script pair to be added and maintained? Any other things we might put in there?

The engines flag in the package.json only seems to check the engines field if you try to add a this package as a dependency to your project. So wont be checked for our use case as Juice Shop isn't a package.
Checking these things could be done directly in node.
It would just have to be the very first thing we do. So no .sh or '.bat' scripts required.

Similar to the challenge validation and country codes check then, sounds good!

Hi @bkimminich @J12934 For "Checking if dependencies were dependencies were installed" I was trying to use const dependencyCheck = require('check-dependencies').
The documentation for check-dependencies can be found it https://www.npmjs.com/package/check-dependencies.
But when I run it inside lib/startup/validatePreconditions.js. Before the program reaches my all to dependencyCheck, the following error occurs(in this case I first deleted the folder portscanner so actually an error occurs):
➜  juice-shop git:(develop) ✗ npm run serve

><EMAIL_ADDRESS>serve /Users/arpit/juice-shop
> concurrently --kill-others "node app" "cd frontend && ng serve"

[0] Wed, 27 Mar 2019 09:14:43 GMT sequelize deprecated String based operators are now deprecated. Please use Symbol based operators for better security, read more at http://docs.sequelizejs.com/manual/tutorial/querying.html#operators at node_modules/sequelize/lib/sequelize.js:242:13
[0] internal/modules/cjs/loader.js:583
[0]     throw err;
[0]     ^
[0]
[0] Error: Cannot find module 'portscanner'
[0]     at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)
[0]     at Function.Module._load (internal/modules/cjs/loader.js:507:25)
[0]     at Module.require (internal/modules/cjs/loader.js:637:17)
[0]     at require (internal/modules/cjs/helpers.js:22:18)
[0]     at Object.<anonymous> (/Users/arpit/juice-shop/lib/startup/validatePreconditions.js:7:21)
[0]     at Module._compile (internal/modules/cjs/loader.js:689:30)
[0]     at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
[0]     at Module.load (internal/modules/cjs/loader.js:599:32)
[0]     at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
[0]     at Function.Module._load (internal/modules/cjs/loader.js:530:3)
[0]     at Module.require (internal/modules/cjs/loader.js:637:17)
[0]     at require (internal/modules/cjs/helpers.js:22:18)
[0]     at Object.<anonymous> (/Users/arpit/juice-shop/server.js:74:1)
[0]     at Module._compile (internal/modules/cjs/loader.js:689:30)
[0]     at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
[0]     at Module.load (internal/modules/cjs/loader.js:599:32)
[0]     at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
[0]     at Function.Module._load (internal/modules/cjs/loader.js:530:3)
[0]     at Module.require (internal/modules/cjs/loader.js:637:17)
[0]     at require (internal/modules/cjs/helpers.js:22:18)
[0]     at Object.<anonymous> (/Users/arpit/juice-shop/app.js:1:78)
[0]     at Module._compile (internal/modules/cjs/loader.js:689:30)
[0]     at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
[0]     at Module.load (internal/modules/cjs/loader.js:599:32)
[0]     at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
[0]     at Function.Module._load (internal/modules/cjs/loader.js:530:3)
[0]     at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
[0]     at startup (internal/bootstrap/node.js:283:19)
[0] node app exited with code 1
--> Sending SIGTERM to other processes..
[1] cd frontend && ng serve exited with code SIGTERM
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>serve: `concurrently --kill-others "node app" "cd frontend && ng serve"`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>serve script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
➜  juice-shop git:(develop) ✗

Can you please help in understanding it?

The check for uninstalled dependencies would have to be the very first thing done in the server.
Your code isn't reached, as it fails due to missing dependencies, before the check is run. Or at least i would assume so from the stacktrace.

The check for uninstalled dependencies would have to be the very first thing done in the server.
Your code isn't reached, as it fails due to missing dependencies, before the check is run. Or at least i would assume so from the stacktrace.

Yes, I too realise that. So, should I make at happen as the first thing in server.js?

Maybe create a validateDependencies.js next to the other validation files.

Maybe create a validateDependencies.js next to the other validation files.

Sure I will proceed with that.
Thanks!!

I think we can ditch any extra check for the XML stuff, right? With libxmljs being checked by the dependencies test, all should be fine.


JS function to navigate the page manually

Can we navigate the pages left and right by calling a simple function manually instead of using button clicks?

Found the solution!
We need to use goToPage method using $refs object on carousel parent element.
eg : this.$refs.catsCarousel.goToPage(index);
Could you please add this method definitions in the documentation.


[Install guide improve]

Hi, please update installation guide for helm install linux x86, instructions unclear was stuck when installing on linux x86
git clone https://github.com/jaeg/NodeWrecker.git && cd NodeWrecker
helm upgrade --install pi-wrecker ./helm-chart/
kubectl get pod status
pi-wrecker-helm-chart-764cfd9d64-kbzpw                            0/1     CrashLoopBackOff   2          41s
kubectl logs pi-wrecker-helm-chart-764cfd9d64-kbzpw
standard_init_linux.go:211: exec user process caused "exec format error"
Found later this was due to installing wrong version intended for pi, for linux x86 architecture install it was required to
edit helm-chart/Chart.yaml
change line
appVersion: latest-pi
with
appVersion: latest
then install as
helm upgrade --install wrecker ./helm-chart/

Hello, I've updated the chart.yaml to make the default "latest" so that the instructions will by default work with Linux x86.  I created a new step for making it run on a Pi.
I apologize for any confusion, the charts and readme for those sections should of been defaulted to linux x86 with the Pi being a bonus feature.  It was an oversight on my part.


@import in css files loaded via webpack results in "File to import not found or unreadable"

Greetings,
Something that use to work on other projects that did not use ExtractTextPlugin seems to not work here.
So,
I have installed node-sass + node-bourbon.
Here is my loaders array:
const bourbon = require('node-bourbon').includePaths;
  if (env === productionEnvironment ) {
    // generate separate physical stylesheet for production build using ExtractTextPlugin. This provides separate caching and avoids a flash of unstyled content on load.
    loaders.push({
      test: /(\.css|\.scss)$/,
      include: path.join(__dirname, 'src'),
      loader: ExtractTextPlugin.extract("css?sourceMap!sass?outputStyle=expanded&includePaths[]=" + bourbon)
    });
  } else {
    loaders.push({
      test: /(\.css|\.scss)$/,
      include: path.join(__dirname, 'src'),
      loaders: ['style', 'css?sourceMap', 'sass?outputStyle=expanded&includePaths[]=' + bourbon]
    });
  }

and in styles.scss, I import bourbon globally as i normally would:
@import 'bourbon';
However, this results in the following error:
@import 'bourbon';

      File to import not found or unreadable: bourbon
Parent style sheet: stdin
      in /Users/sirrah/Koding/work/thirdshelf/loyalty-grader/src/styles/styles.scss (line 2, column 1)
Error:

@import 'bourbon';

      File to import not found or unreadable: bourbon
 Parent style sheet: stdin
       in /Users/sirrah/Koding/work/thirdshelf/loyalty-grader/src/styles/styles.scss (line 2, column 1)
     at options.error (/Users/sirrah/Koding/work/thirdshelf/loyalty-grader/node_modules/node-sass/lib/index.js:277:32)
  @ ./src/styles/styles.scss 4:14-280 13:2-17:4 14:20-286

This use to work fine, however I believe that in this case it is because of ExtractTextPlugin since it is the only difference between me doing this on previous projects and this one.
Any ideas?

Does it work fine with npm start?
I ask because that behavior hasn't changed.
Only npm run build uses the ExtractTextPlugin to generate a separate CSS file.

hey @coryhouse yes it does. I believe there might be a problem with the way im doing it (sorry, im new to  bourbon). In contrast, here is a version that works in my other projects using webpack:
{ test: /\.scss$/, loader: "style!css!sass?includePaths[]=" + bourbon},
But im not sure how to do it with ExtractTextPlugin. I'll try a few things later this week and report back, so far I have simply included bourbon in the styles folder and important it manually, but would be way better to have it globally and simply use @import 'bourbon'

Yesterday I coincidentally hit the same wall. On a separate project I'm trying to get @import to work within a CSS file that I'm loading via Webpack. Let me know if/when you have any luck, and I'll do the same.

I did some googling on the web and found
const sassPaths = bourbon
  .includePaths
  .map((sassPath)=>`includePaths[]=${sassPath}`)
  .join('&');

and
const sassPaths = bourbon
  .with([
    path.resolve(__dirname,'./src/styles')
  ])
  .map((sassPath)=>`includePaths[]=${sassPath}`)
  .join('&');

this type of code. which on my testing seemed to work.

@darcnite3000 that solution worked for me. Thanks!

Hey hey!
Do we happen to have the solution for configuring webpack to use MiniCssExtractPlugin now that Webpack 4 doesn't use ExtractTextPlugin anymore. I've been tinkering with my app and also have been receiving the same File to import not found or unreadable: stylesheets/variables error.
Currently, this is the only change I've made:
plugins: [
    // .. the other plugins
    new MiniCssExtractPlugin()
  ],
  module: {
    rules: [
      {
        test: /(\.css|\.scss|\.sass)$/,
        use: [
          {
            loader: MiniCssExtractPlugin.loader
          },
          {
            loader: 'css-loader',
            options: {
              sourceMap: true
            }
          },
          {
            loader: 'postcss-loader',
            options: {
              plugins: () => [require('autoprefixer')],
              sourceMap: true
            }
          },
          {
            loader: 'sass-loader',
            options: {
              includePaths: [path.resolve(__dirname, 'src', 'scss')],
              sourceMap: true
            }
          }
        ]
      },

@superkat64 - That's already configured in master. https://github.com/coryhouse/react-slingshot/blob/master/webpack.config.prod.js#L129

@coryhouse Thank you so much! I must have removed it trying to figure it all out on accident or I'm just blind. Really appreciate the quick response


Check step padding in proof-mode

When executing cairo 1 Programs with proof mode, we need to check the steps padding depending on the Builtins we are using

Done https://github.com/lambdaclass/cairo-vm/pull/1539/files


Linker error on VS2015 when Lua is compiled as C++

I have compiled all of Lua as C++ code by specifying the /TP compiler flag in order to use C++ exceptions instead of setjmp/longjmp. Compiling as C++ applies name mangling to symbols. When using Sol, I got a lot of undefined references to Lua functions during linking. I have traced this to Sol including <lua.hpp>; this header wraps Lua includes in extern "C", which disables name mangling, causing linker errors.
I have fixed this by the following simple patch to Sol:
-#include <lua.hpp>
+#include <lua.h>
+#include <lualib.h>
+#include <lauxlib.h>

A better fix would probably be:
#ifdef SOL_CXX_LUA
#include <lua.h>
#include <lualib.h>
#include <luaxlib.h>
#else
#include <lua.hpp>
#endif // C++-compiler Lua

But yeah, that's a good idea. Thanks for sharing!

Fixed. The define is going to officially be SOL_USING_CXX_LUA, documented here: http://sol2.readthedocs.io/en/latest/errors.html#linker-errors
Get it here: https://github.com/ThePhD/sol2/blob/develop/single/sol/sol.hpp