Getting it to run on STM32F303, can't compile

I'm very noob at this, would appreciate some help.
I'm trying the example https://github.com/stm32-rs/stm32f3xx-hal/blob/master/examples/pwm.rs on my STM32F303 Discovery board. Here's my cargo:
[package]
name = "stmf32f303_tests"
version = "0.1.0"
authors = ["Lucas Zanella<EMAIL_ADDRESS>edition = "2018"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
embedded-hal = "0.2.3"
nb = "0.1.2"
cortex-m = "0.6.2"
cortex-m-rt = "0.6.11"
# Panic behaviour, see https://crates.io/keywords/panic-impl for alternatives
panic-halt = "0.2.0"

[dependencies.stm32f3xx-hal]
version = "0.6.1"
features = ["rt", "stm32f303xc", "defmt"]

I've put the code of pwm.rs into main.rs.
Errors:
error[E0599]: no method named `MHz` found for type `u32` in the current scope
  --> src/main.rs:31:40
   |
31 |     let clocks = rcc.cfgr.sysclk(16u32.MHz()).freeze(&mut flash.acr);
   |                                        ^^^ method not found in `u32`

error[E0599]: no method named `into_af2_push_pull` found for struct `stm32f3xx_hal::gpio::gpioa::PA4<Input<Floating>>` in the current scope
  --> src/main.rs:37:10
   |
37 |         .into_af2_push_pull(&mut gpioa.moder, &mut gpioa.otyper, &mut gpioa.afrl);
   |          ^^^^^^^^^^^^^^^^^^ method not found in `stm32f3xx_hal::gpio::gpioa::PA4<Input<Floating>>`

error[E0599]: no method named `into_af2_push_pull` found for struct `stm32f3xx_hal::gpio::gpioa::PA6<Input<Floating>>` in the current scope
  --> src/main.rs:40:10
   |
40 |         .into_af2_push_pull(&mut gpioa.moder, &mut gpioa.otyper, &mut gpioa.afrl);
   |          ^^^^^^^^^^^^^^^^^^ method not found in `stm32f3xx_hal::gpio::gpioa::PA6<Input<Floating>>`

error[E0599]: no method named `into_af2_push_pull` found for struct `stm32f3xx_hal::gpio::gpioa::PA7<Input<Floating>>` in the current scope
  --> src/main.rs:43:10
   |
43 |         .into_af2_push_pull(&mut gpioa.moder, &mut gpioa.otyper, &mut gpioa.afrl);
   |          ^^^^^^^^^^^^^^^^^^ method not found in `stm32f3xx_hal::gpio::gpioa::PA7<Input<Floating>>`

error[E0599]: no method named `into_af2_push_pull` found for struct `stm32f3xx_hal::gpio::gpiob::PB0<Input<Floating>>` in the current scope
  --> src/main.rs:48:10
   |
48 |         .into_af2_push_pull(&mut gpiob.moder, &mut gpiob.otyper, &mut gpiob.afrl);
   |          ^^^^^^^^^^^^^^^^^^ method not found in `stm32f3xx_hal::gpio::gpiob::PB0<Input<Floating>>`

error[E0599]: no method named `into_af2_push_pull` found for struct `stm32f3xx_hal::gpio::gpiob::PB1<Input<Floating>>` in the current scope
  --> src/main.rs:51:10
   |
51 |         .into_af2_push_pull(&mut gpiob.moder, &mut gpiob.otyper, &mut gpiob.afrl);
   |          ^^^^^^^^^^^^^^^^^^ method not found in `stm32f3xx_hal::gpio::gpiob::PB1<Input<Floating>>`

error[E0599]: no method named `into_af2_push_pull` found for struct `stm32f3xx_hal::gpio::gpiob::PB4<stm32f3xx_hal::gpio::AF0>` in the current scope
  --> src/main.rs:54:10
   |
54 |         .into_af2_push_pull(&mut gpiob.moder, &mut gpiob.otyper, &mut gpiob.afrl);
   |          ^^^^^^^^^^^^^^^^^^ method not found in `stm32f3xx_hal::gpio::gpiob::PB4<stm32f3xx_hal::gpio::AF0>`

error[E0599]: no method named `into_af2_push_pull` found for struct `stm32f3xx_hal::gpio::gpiob::PB5<Input<Floating>>` in the current scope
  --> src/main.rs:57:10
   |
57 |         .into_af2_push_pull(&mut gpiob.moder, &mut gpiob.otyper, &mut gpiob.afrl);
   |          ^^^^^^^^^^^^^^^^^^ method not found in `stm32f3xx_hal::gpio::gpiob::PB5<Input<Floating>>`

error[E0599]: no method named `into_af1_push_pull` found for struct `stm32f3xx_hal::gpio::gpiob::PB8<Input<Floating>>` in the current scope
  --> src/main.rs:60:10
   |
60 |         .into_af1_push_pull(&mut gpiob.moder, &mut gpiob.otyper, &mut gpiob.afrh);
   |          ^^^^^^^^^^^^^^^^^^ method not found in `stm32f3xx_hal::gpio::gpiob::PB8<Input<Floating>>`

error[E0599]: no method named `into_af1_push_pull` found for struct `stm32f3xx_hal::gpio::gpiob::PB10<Input<Floating>>` in the current scope
  --> src/main.rs:63:10
   |
63 |         .into_af1_push_pull(&mut gpiob.moder, &mut gpiob.otyper, &mut gpiob.afrh);
   |          ^^^^^^^^^^^^^^^^^^ method not found in `stm32f3xx_hal::gpio::gpiob::PB10<Input<Floating>>`

error[E0599]: no method named `into_af4_push_pull` found for struct `stm32f3xx_hal::gpio::gpioc::PC10<Input<Floating>>` in the current scope
  --> src/main.rs:68:10
   |
68 |         .into_af4_push_pull(&mut gpioc.moder, &mut gpioc.otyper, &mut gpioc.afrh);
   |          ^^^^^^^^^^^^^^^^^^ method not found in `stm32f3xx_hal::gpio::gpioc::PC10<Input<Floating>>`

error[E0599]: no method named `Hz` found for type `u32` in the current scope
  --> src/main.rs:76:15
   |
76 |         50u32.Hz(), // frequency of period
   |               ^^ method not found in `u32`

error[E0599]: no method named `Hz` found for type `u32` in the current scope
   --> src/main.rs:125:15
    |
125 |         50u32.Hz(), // frequency of period
    |               ^^ method not found in `u32`

error[E0599]: no method named `Hz` found for type `u32` in the current scope
   --> src/main.rs:140:15
    |
140 |         50u32.Hz(), // frequency of period
    |               ^^ method not found in `u32`

error[E0599]: no method named `Hz` found for type `u32` in the current scope
   --> src/main.rs:154:15
    |
154 |         50u32.Hz(), // frequency of period
    |               ^^ method not found in `u32`

Here's the entire project: https://github.com/lucaszanella/stmf32f303_tests_rust/tree/de0850645d8bca126fe6cb3f2cd04185d4d5631a
By the way, where's the blinky example for this board?

There are changes on the master branch which are not yet in the version from https://crates.io.  You should use the example from https://github.com/stm32-rs/stm32f3xx-hal/blob/v0.6.1/examples/pwm.rs probably.

@Rahix thanks. I also had to add panic-semihosting = "0.5" in cargo. Now I get
= note: rust-lld: error: /workspaces/stmf32f303_tests/stmf32f03_tests/target/thumbv7m-none-eabi/debug/build/cortex-m-rt-ae57eb3f4f80966b/out/link.x:23: cannot find linker script memory.x
         >>> INCLUDE memory.x
         >>>         ^

even though memory.x is in the root of the project: https://github.com/lucaszanella/stmf32f303_tests_rust/tree/c539c1d96ee67aeae5b6360d967534f2371305e8
Where should I put it? I tried putting inside .cargo and src also, same error.
And do you have a blinky example for this board? I won't be able to test the PWM.
ps: I'll make a PR in this repo with better instructions once I make it work.

@Rahix
I added memory.x to /workspaces/stmf32f303_tests/stmf32f03_tests/target/thumbv7m-none-eabi/debug/build/cortex-m-rt-ae57eb3f4f80966b/out/ but I think this is not the right place. I get now:

root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7m-none-eabi/lib/librustc_std_workspace_core-3a4e0255861739a3.rlib" "/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7m-none-eabi/lib/libcore-0d8d5cf15c7c9ebf.rlib" "--end-group" "/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7m-none-eabi/lib/libcompiler_builtins-534771455226d24e.rlib" "-Tlink.x" "-Bdynamic"
  = note: rust-lld: error: undefined symbol: _defmt_acquire
          >>> referenced by export.rs:36 (/root/.cargo/registry/src/github.com-1ecc6299db9ec823/defmt-0.1.3/src/export.rs:36)
          >>>               defmt-84ed3a0cea1a91b2.defmt.6dx2hueh-cgu.4.rcgu.o:(defmt::export::acquire::h4db1f0ae6b2633e2) in archive /workspaces/stmf32f303_tests/stmf32f03_tests/target/thumbv7m-none-eabi/debug/deps/libdefmt-84ed3a0cea1a91b2.rlib

          rust-lld: error: undefined symbol: _defmt_release
          >>> referenced by export.rs:48 (/root/.cargo/registry/src/github.com-1ecc6299db9ec823/defmt-0.1.3/src/export.rs:48)
          >>>               defmt-84ed3a0cea1a91b2.defmt.6dx2hueh-cgu.4.rcgu.o:(defmt::export::release::hc6fca43b9f6a8bc3) in archive /workspaces/stmf32f303_tests/stmf32f03_tests/target/thumbv7m-none-eabi/debug/deps/libdefmt-84ed3a0cea1a91b2.rlib

          rust-lld: error: undefined symbol: _defmt_timestamp
          >>> referenced by export.rs:62 (/root/.cargo/registry/src/github.com-1ecc6299db9ec823/defmt-0.1.3/src/export.rs:62)
          >>>               defmt-84ed3a0cea1a91b2.defmt.6dx2hueh-cgu.4.rcgu.o:(defmt::export::timestamp::hc4235ffb1a53001c) in archive /workspaces/stmf32f303_tests/stmf32f03_tests/target/thumbv7m-none-eabi/debug/deps/libdefmt-84ed3a0cea1a91b2.rlib

          rust-lld: error: undefined symbol: _defmt_panic
          >>> referenced by export.rs:204 (/root/.cargo/registry/src/github.com-1ecc6299db9ec823/defmt-0.1.3/src/export.rs:204)
          >>>               defmt-84ed3a0cea1a91b2.defmt.6dx2hueh-cgu.4.rcgu.o:(defmt::export::panic::h6f1c2e6d454c15c3) in archive /workspaces/stmf32f303_tests/stmf32f03_tests/target/thumbv7m-none-eabi/debug/deps/libdefmt-84ed3a0cea1a91b2.rlib

do not know if it's related to where I've put it.

Hey, as @Rahix correctly stated, the examples from the master branch are currently not building for the last released version. This should be fixed, when a new version is released, though it is advised to try out the examples under the corresponding version tag instead (in your case: examples/pwm.rs)
The memory.x issue seems strange. Normally putting memory.x in the root folder of the project should work. For more detailed instructions, comparing against https://github.com/rust-embedded/cortex-m-quickstart is always helpful.
Do you have a build.rs in your root project? This is needed, so that cargo can tell the linker (rust-lld) where to search for the linker-script (memory.x).
Anyways, to the last problem you have: Does removing defmt from the features help?
  [dependencies.stm32f3xx-hal]
  version = "0.6.1"
- features = ["rt", "stm32f303xc", "defmt"]
+ features = ["rt", "stm32f303xc"]

@Sh3Rm4n removing fmt and putting memory.x in the right place and creating build.rs worked, it was one place off. Thank you very much.
Could somebody link me with a blinking example? I'd like to see if things are working and I don't have any equipment to plug into the GPIO to test PWM. My discovery board has a build in LED (I guess).

I dockerized everything inside a docker container and also plugged it into VSCode's devcontainer so begginers can simply open this project in VSCode and it will just work, even the burning program will work.
https://github.com/lucaszanella/stmf32f303_tests_rust/tree/932a21dd6ac717b070f48634733ab627bcecb4ab
Just need to test the blinking example if someone can link me with one and see how it goes, then I'll probably write a nice introduction for newcomers.
Thanks for all the help.

What about toggle.rs?  You'll probably need to adjust which pin is used for the LED, of course.

@Rahix thanks, I was able to find the correct pin for one of the LEDs in my stm32f303. Are you guys using cargo flash? I tried and got
root@117f490caf45:/workspaces/stmf32f303_tests/stmf32f03_tests# cargo flash
    Finished dev [unoptimized + debuginfo] target(s) in 0.04s
    Flashing /workspaces/stmf32f303_tests/stmf32f03_tests/target/thumbv7m-none-eabi/debug/stmf32f303_tests
       Error The firmware on the probe is outdated

indeed this firmware is really old. Maybe some very recent firmware is needed for rust? Anyone got this problem before?

Are you using the stm32f303-discovery board? It seems like the firmware for the onboard debugger is outdated and not supported by cargo-flash / probe-rs. Here is an issue with similar problems, with some pointers how to update the debugger firmware. This could also help.
I definitely did update the probe on my debugger some time ago, but do not remember the details to write down a detailed instruction. I hope these pointers will help anyways. :)

@Sh3Rm4n thanks, this worked and I was able to flash with cargo flash --chip stm32f303C8 --release after upgrading the firmware. Led blinks now.
I just don't know if my stm32f303 is the C8 but it worked. Would be nice to know how to see this information in the board, so I can write into my little tutorial. Mine has nothing written into it, only stm32f3, I don't even remember how I know it's the stm32f303

Great. Glad I could help you. As the original issue is resolved, I'll close this issue now.

I just don't know if my stm32f303 is the C8 but it worked. Would be nice to know how to see this information in the board, so I can write into my little tutorial. Mine has nothing written into it, only stm32f3, I don't even remember how I know it's the stm32f303

Well, if cargo flash did not complain, I guess it is not "too" wrong and memory mappings and checks inside the debugger succeeded. If you have the STM32F303 Discovery Board, it should be at least clear, that you have an stm32f303 as this should be printed on the PCB.
Which variant of the stm32f303 you have can be either found out, if you look closely on the print of the MCU. Or you could look at the datasheet about your discovery board, or count the number of pins on your chip and match it too existing ones :grinning:
My discovery board for example is the stm32f303 vct6 variant, therefore I would use cargo flash --chip stm32f303vctx.

FYI, for defmt to work, you have to follow the Application setup. (I guess you missed the part, adjusting your .cargo/config.toml and this is the reason why rust-ldd has thrown errors)
Maybe the README / documentation should point to this guide to avoid confusion.


SMTPException: SMTP AUTH extension not supported by server.

I used the SMTP instead of SES.
EMAILS_USE_SMTP = True     # Otherwise, Use SES
MAIL_SERVER = 'smtp.gmail.com'
MAIL_PORT = 587
MAIL_USE_SSL = True
MAIL_USERNAME = 'username'
MAIL_PASSWORD = 'password'
The smtp is working fine, I had tested it. However when I used to send the alerts via SMTP in security monkey, it gives this error.

Could you set MAIL_USE_SSL to True and let me know if that works?
On Fri, Oct 9, 2015, 06:22 Vishnu Nair<EMAIL_ADDRESS>wrote:

[image: mail]
https://cloud.githubusercontent.com/assets/4784716/10394705/23fbc3a6-6e99-11e5-8388-d3d931dc5220.png
I used the SMTP instead of SES.
These are only required if using SMTP instead of SES
EMAILS_USE_SMTP = True # Otherwise, Use SES
MAIL_SERVER = 'smtp.gmail.com'
MAIL_PORT = 587
MAIL_USE_SSL = False
MAIL_USERNAME = 'username'
MAIL_PASSWORD = 'password'
The smtp is working fine, I had tested it. However when I used to send the
alerts via SMTP in security monkey, it gives this error.
—
Reply to this email directly or view it on GitHub
https://github.com/Netflix/security_monkey/issues/225.

I am using MAIL_USE_SSL = True

Assuming from the original description that you are using gmail.
I wonder if you need to enable POP/IMAP for your gmail account in order to use SMTP.  Could you check if you have one of those enabled?
The gmail instructions identify the following information for SMTP:
https://support.google.com/mail/troubleshooter/1668960?hl=en&rd=1#ts=1665018%2C1665144
Outgoing Mail (SMTP) Server - Requires TLS
smtp.gmail.com
Port: 465 or 587
Requires SSL: Yes
Requires authentication: Yes
Email address: your full Gmail address<EMAIL_ADDRESS>Google Apps users, please enter<EMAIL_ADDRESS>Password: your Gmail password
If you have MFA enabled on your account, you may need to grab an "App password" and use that instead:
https://myaccount.google.com/security?utm_source=OGB#signin
Could you let me know if any of this helps?

@monkeysecurity  As I said before, SMTP was working fine, I tested it. Even I tried it with MAIL_USE_SSL with True and False.  Also I tried it with TLS.  Couldn't get time to check it afterwards, will check it again and will post the update here.
Thanks

@monkeysecurity  closing this, I make it work with SSL True, there was an issue with my SSL connection and after fixing that, everything works fine.
Thanks for the support.


[New chain]: Moonbase Alpha 1.4.1

Summary

https://github.com/safe-global/safe-deployments/pull/567
https://github.com/ethereum-lists/chains/blob/master/_data/chains/eip155-1287.json

Chain ID
1287
Chain detail URL
https://chainlist.org/chain/1287
RPC URL
https://moonbase-rpc.dwellir.com
Blockscout Client URL
No response
Etherscan Client URL
https://moonbase.moonscan.io
Etherscan Client API URL
https://api-moonbase.moonscan.io
Version
1.4.1
Address (Master copy)
0x41675C099F32341bf84BFc5382aF534df5C7461a
Deployment Tx hash (Master copy)
0xd3b8a6b22beb65438e5d3b9eff695e69820ff8d769cd84ddc8098a08b6534266
Block explorer URL (Master copy)
No response
Address (Master copy L2)
0x29fcB43b46531BcA003ddC8FCB67FFE91900C762
Deployment Tx hash (Master copy L2)
0x70ddc6cfa3ace00d522d372353c388474f2d41f16d06dfaf178885e0d25bc747
Block explorer URL (Master copy L2)
No response
Address (Proxy factory)
0x4e1DCf7AD4e460CfD30791CCC4F9c8a4f820ec67
Deployment Tx hash (Proxy factory)
0x19871100a32d229c31f498d5357bab0e6ea6d1c499aa6ea3d88426eab07b3f54
Block explorer URL (Proxy factory)
No response

/execute


NIFI-360 Create Processors to work against JSON data

I have created two Processors, EvaluateJsonPath and SplitJson which are analogs of the functionality provided through EvaluateXPath and SpiltXML.
Both are powered primarily around the usage of JsonPath by Jayway.
Their capability descriptions are provided below:
EvaluateJsonPath
Evaluates one or more JsonPath expressions against the content of a FlowFile. The results of those expressions are assigned to FlowFile Attributes or are written to the content of the FlowFile itself, depending on configuration of the Processor. JsonPaths are entered by adding user-defined properties; the name of the property maps to the Attribute Name into which the result will be placed (if the Destination is flowfile-attribute; otherwise, the property name is ignored).
The value of the property must be a valid JsonPath expression. If the JsonPath evaluates to a JSON array or JSON object and the Return Type is set to 'scalar' the FlowFile will be unmodified and will be routed to failure. A Return Type of JSON can return scalar values if the provided JsonPath evaluates to the specified value and will be routed as a match. If Destination is 'flowfile-content' and the JsonPath does not evaluate to a defined path, the FlowFile will be routed to 'unmatched' without having its contents modified. If Destination is flowfile-attribute and the expression matches nothing, attributes will be created with empty strings as the value, and the FlowFile will always be routed to 'matched.'
SplitJson
Splits a JSON File into multiple, separate FlowFiles for an array element specified by a JsonPath expression. Each generated FlowFile is comprised of an element of the specified array and transferred to relationship 'split, with the original file transferred to the 'original' relationship. If the specified JsonPath is not found or does not evaluate to an array element, the original file is routed to 'failure' and no files are generated.
One item of note is the transitive dependency of ASM through Json-Smart through JsonPath.
I have included, what I believe is needed to appropriately make use of this item in the LICENSE. Review of its correctness is requested.
Any feedback is appreciated. Thanks!

Aldrin - awesome!  I have created a branch and am reviewing the details now.  Regarding the update to nifi/LICENSE  - I think the correct place for the addition is nifi/nifi-assembly/LICENSE as this is a binary only dependency (as far as I can tell just yet).  The items in /nifi/LICENSE are only for source dependencies.  Will adjust that prior to merging.  Initial pass of all deps/licensing/notice looks good though.  Unit tests and sample data looks great too.    Really nice effort here - this will be very helpful.

I think you are correct and that was my understanding of its usage when I was reviewing dependencies.

Review Findings:

Adjusted the LICENSE/NOTICE information for Standard Nar, NiFi source root, and NiFi assembly.

Can we cache the compiled JsonPaths [they are threadsafe, etc..]?

If so whenever onPropertyModified is triggers we know to invalidate the cache.  Can let it get refreshed during the next onTrigger.

EvaluateJsonPath: Instead of pulling some set batch size use the @SupportsBatching annotation and the framework can take care of this for you and will do so in a manner that favors user defined tolerances for latency vs throughput.  In addition this removes the need for the for loop, the flowfileloop goto, etc..  But it does make the previous suggestion more important (caching compiled JsonPaths)

Another contributor has provided an auto-documentation mechanism.  Not sure of its status for being pulled in just yet though. In the mean time please consider adding documentation pages in src/main/resources/docs....

EvaluateJsonPath: Line 207.  Is exception handling the only possible option for handling/detecting this?  Exceptions create a shocking amount of stress on GC and overall JVM performance at rate.  Having exception handling be key to the flow control will greatly limit the applicability of this processor for truly high volume processing.  If there is no alternative it is probably worth documenting this fact as a caveat for users to know in the docs for the processor.  If you'd like to see just how horrible exceptions are for throughput of the JVM do a simple test of Integer.parseInt to parse a String (when some of the inputs could be non-Integers) vs a regex to test first if it appears to be an Int then using Integer.parseInt.

EvaluateJsonPath: Consider telling the provenance event reporter if you modified the content of the flow file and providing some details about the change.

SplitJson: Exception based handling again to be avoided if possible.

Both Processors: It appears to be that the library will load the full input stream in memory then return results, splits, etc..  If so that provides important information about its applicability on large JSON documents.  If so please document this concern with the processor so users can consider this and its impact to the heap/memory space.

SplitJson: Consider telling the provenance event reporter that the splits are forks from the original.

Summary: Really good stuff here.  This will be a very helpful processor.  Please consider making the suggested modifications.  I will push to origin this new branch NIFI-360.  Please modify off that and we can work from that PR.  Thanks!

Great feedback, thanks.  I'll work on incorporating these changes over the next few days.
Regarding performance issues, digging a bit deeper through the source, it looks like there may be a way around the exceptions.  Since the library in question is ASL/MIT, it's my understanding that it is okay to reproduce code segments as these fall in Category A, is this correct?
Will definitely document the memory hit for loading items.  I was looking for a way to utilize output streams, but JsonPath does not currently provide this.

Regarding generated processor documentation:I think everything is ready to
go.  When I spoke to Mark about this last week he said he was keeping this
on the side until the 0.0.2 release was cut.  So once 0.0.2 is cut, the
auto doc feature will get merged into 0.1.0
Dan
On Wed, Feb 18, 2015 at 12:12 AM, asfbot<EMAIL_ADDRESS>wrote:

Joe Witt on<EMAIL_ADDRESS>replies:
Aldrin:
I agree with your understanding for the ASL/MIT licensing. If we do
that we will need to update our licensings to reflect the source
dependency but that is no problem at all. I definitely think it is
worth it if we can bypass exception handling as a routine flow control
mechanism.
Thanks!
Joe
9
r the next few days.
, it looks like there may be a way around the exceptions. Since the librar=
y in question is ASL/MIT, it's my understanding that it is okay to
reproduc=
e code segments as these fall in Category A, is this correct?
king for a way to utilize output streams, but JsonPath does not currently
p=
rovide this.
ur
e
se
—
Reply to this email directly or view it on GitHub
https://github.com/apache/incubator-nifi/pull/28#issuecomment-74813584.


libgrpc_csharp_ext.x64.so in Grpc.Core NuGet package is huge (115 MB)

What version of gRPC and what language are you using?
Grpc.Core NuGet package 2.36.4
What operating system (Linux, Windows,...) and version?
Linux (and Windows)
What runtime / compiler are you using (e.g. python version or version of gcc)
.NET 5.0
What did you do?
Upgraded the Google.Cloud.PubSub.V1 NuGet package used by my application from 1.0.0 to 2.4.0.
What did you expect to see?
No significant increase in the size of our application's published binaries.
What did you see instead?
An increase of 83 MB in the size of my our application's published binaries, because the size of libgrpc_csharp_ext.x64.so increased by ~100 MB (but libgrpc_csharp_ext.x86.so was deleted, reducing the total increase somewhat). This is included in the Grpc.Core NuGet package, which is referenced by Google.Cloud.PubSub.V1.
Anything else we should know about your project / environment?
I found the workaround on the mailing list: strip --strip-debug libgrpc_csharp_ext.x64.so - and that was posted in response to someone complaining that 15 MB was too large, but now it's 115MB, which doubled our total deployment size. Yes, this single file is bigger than all the rest of our (by no means trivial) application and all its other dependencies combined! (The Windows native DLL is also quite large at 9.5 MB.)
Please publish a NuGet package without this huge bloat - the vast majority of NuGet users will not debug your library, especially not the native code in it. Debug info can be distributed separately. Yes, of course, I can strip it myself, just like I can compile it myself, but the point of NuGet is to provide a "ready to use" package for the average user.

This has already been addressed by https://github.com/grpc/grpc/pull/25729.
The latest version of the nuget https://www.nuget.org/packages/Grpc.Core/2.37.0-pre1 is now 14MB.

This is again broken in the latest Prpc.Core 2.42.0 and 2.43.0-pre1 nugets.  libgrpc_csharp_ext.so is once again 107MB!

This is again broken in the latest Prpc.Core 2.42.0 and 2.43.0-pre1 nugets. libgrpc_csharp_ext.so is once again 107MB!

You seem to be mistaken.
I checked the Grpc.Core 2.42.0 nuget manually:

the size of the nuget is 14.94MB as reported in https://www.nuget.org/packages/Grpc.Core/2.42.0 (and there seems to be no significant size increase since the previous version).
the libgrpc_csharp_ext.x64.so is ~ 6MB

I don't know how this happened, but I am no longer using this library in this project so I cannot check it.  If I see this again I will report back with more details.


[EventGrid] Move Samples to V2 Architecture.

Opening as a draft for now, as there's still some known TODOs to handle.

[ ] Update test-resources.json to provision Service Bus resources
for consumer sample

[ ] Figure out if the changes I made in tsconfig.json around the lib
stuff are correct.

/azp run js - eventgrid - tests

/azp run js - eventgrid - tests

/azp run js - eventgrid - tests

/azp run js - eventgrid - tests

/azp run js - eventgrid - tests

/azp run js - eventgrid - tests

/azp run js - eventgrid - tests

/azp run js - eventgrid - tests

/azp run js - eventgrid - tests


Use kity for terminal emulator?

Instead of the default macOS Terminal or iTerm I want to use Kitty as my terminal.
Inside shuttle.json i set
"terminal": "kitty.app",
It's the exact file name under Applications and it still does not work, instead it simply opens default macOS Terminal.
Any help is appreciated.

我也遇到相同的问题。

我也遇到相同的问题。

Translation: I have also encountered the same problem.

check my comment for this problem. You can modify it to work for kity.app
https://github.com/fitztrev/shuttle/issues/282#issuecomment-1419048621


any way to remove the microsecond

is there any way to remove the last microsecond timer. only want up to plain minutes not any microseconds digit??

Just don't put it into your html.

is there any way we could remove ms from props.seconds, need only to keep the seconds

Set the interval prop to 1000 (default value).


Toolbox shows only the first Web Part specified in preconfiguredEntries

If you specify multiple preconfiguredEntries, only the first Web Part is displayed in the toolbox:
{
  "$schema"<EMAIL_ADDRESS>
  "id": "cbf1c4ba-8b6c-4b45-9900-ef12815275c3",
  "componentType": "WebPart",
  "version": "0.0.1",
  "manifestVersion": 2,

  "preconfiguredEntries": [{
    "groupId": "cbf1c4ba-8b6c-4b45-9900-ef12815275c3",
    "group": { "default": "Under Development" },
    "title": { "default": "HelloWorld" },
    "description": { "default": "HelloWorld description" },
    "officeFabricIconFontName": "Page",
    "properties": {
      "description": "HelloWorld"
    }
  },
  {
    "groupId": "cbf1c4ba-8b6c-4b45-9900-ef12815275c3",
    "group": { "default": "Under Development" },
    "title": { "default": "HelloWorld 123" },
    "description": { "default": "HelloWorld description" },
    "officeFabricIconFontName": "Page",
    "properties": {
      "description": "HelloWorld"
    }
  }]
}

Yes - we have a work item to get that sorted out.  One question while we are on the subject though.  Currently, certain values appear on the config (like description for example) that are multi-lingual.  In general, the config options should be a starting point, with the values in the config copied to the actual webpart, after which they are no longer "connected".  The configs are really just a starting point.  You can add and delete entries in the config section, and it shouldn't affect any existing webpart that has been created.
Now, copying most of the properties is no issue at all, particularly the webpart properties.  The multi-lingual things are tricky.  We really don't want to persist a huge dictionary of translated labels into every webpart saved, and I don't like the design of keeping an index into the config section, as that entry might change over time (and you have the problem of what happens when the entry was removed completely).
One idea would be to copy the localized string from the local at creation time (and the author should be able to change those entries anyhow).

What if the manifest could point to the loc file shipped with the bundle and get its strings from there on runtime? That way you would store only the keys and the values would be determined on runtime using the loc file corresponding to the current locale.

We considered pointing to a "strings" file in the bundle, but that approach has a couple of issues:

We intentionally don't load any external scripts when listing items in the toolbox. The toolbox only looks at manifests. Loading a script for each webpart to get the title to show in the toolbox adds a lot of unnecessary complexity (for instance, we may need to wait for dozens of async callbacks to complete before we can show a "complete" toolbox vs the toolbox rendering instantly and synchronously).
We don't mandate any particular "strings" resource format. Having the framework load a file/script that contains a title or description string would require enforcement of a resource file format, which isn't something I think we want to impose on developers.

Got it. Thank you for the explanation @iclanton. In that case what @patmill suggested would indeed be an option: copy the localized string when adding the Web Part to the page and use that from that point on.

Cleaning up old bugs for GA.  We show each preconfigured entry now.


when uv_poll_start is started, the associated callback is not executed immediately

I found a very strange question about the use of uv_poll_start, please see my next description:
First, I use the mq_open function to create a message queue and get a fd handle, and then I call the uv_poll_init function and the fd handle as an input parameter. In addition, I also call uv_timer functions to close and restart some periodic timers to perform some special functions. In the actual work process, I call uv_poll_start function to start the poll associated with it to ensure that the callback function can be executed in the uv loop.
The test scenario is:

Init

uv_timer_init(&bt_loop, timer_handle);
uv_timer_start(timer_handle, sdk_init_callback, 6000, 0);
int fd = mq_open(name, O_RDWR | O_CREAT | O_NONBLOCK, mode, &attr);
uv_poll_init(loop, &msq->poll, fd);
uv_poll_start(&poll->poll, UV_READABLE, msg_queue_pollin_cb);

The function of msg_queue_pollin_cb is to read the content of the message queue through the mq_receive function and perform subsequent processing.

work process

There will be a periodic close timer, re-create a new timer and start the timer, the period of the timer is 6s.
An application will call the mq_send function to send a message. What we expect is that uvloop(uv_run) can check the change of the fd handle and execute the msg_queue_pollin_cb function(Read the content of the message queue via mq_receive and perform subsequent processing. This subsequent processing includes the call uv_poll_stop and perform some business processing at the same. When the business processing ends, uv_poll_start will be executed again to restart).

test result
When doing some tests, it will appear that the application calls the mq_send function to send a message successfully, uvloop(uv_run) should call the msg_queue_pollin_cb function quickly, but the test result that uvloop(uv_run) will wait about 6s before called the msg_queue_pollin_cb function. The msg_queue_pollin_cb function was not executed immediately.

Of course, in response to this problem, I also conducted a scenario test, which is to start a 1s periodic timer during initialization. This timer is executed periodically and will not be closed. (Because at first I suspected that msg_queue_pollin_cb was not executed because of the uvloop function(uv_run) was blocked.) I tested it again, but the result was that when the application sent a message via mq_send, the msg_queue_pollin_cb function will be executed after the timer callback is executed instead of waiting for about 6s. I also tried to modify the timer cycle, the timer cycle increases to 2s or 3s. The phenomenon is that the 2s or 3s msg_queue_pollin_cb function is executed after the timer is executed when the message is sent via mq_send. Of course, this problem does not occur every time, but it is likely to occur on my side. I don’t know if anyone else has encountered similar problems, I have not found a solution to the problem.
Let me summarize my problem:
when uv_poll_start is started, the associated callback is not executed immediately, but the uv_poll_start has succeeded, and the value of activity_handlers for uvloop has been increased by 1.
The libuv is release v1.41 , and libuv is used on the nuttx system.

I have found a solution, it is the problem of our method of use, thank you all.

please let now the exact problem and how you solved it?


WIP: Added Spanish Velocity paper

Description
Adds Spanish Velocity paper to /papers
Other changes
Minor typo
Tested
TODO: Update snapshots?
Related issues

Fixes #4739

It looks like you left both version of the spanish PDF in. would be best to delete one of them


Honor global.proxy.logLevel and global.proxy.componentLogLevel in pilot and mixer

They are already being used in gateways and sidecars.

@jwendell: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

unit-tests_istio
522607f3138891529ce0993c8e3e7f8585366430
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest


1.1.0

Coverage remained the same at 93.757% when pulling 8563c16a95d4e16619cc0e860fcc4c6aaf41e479 on release_v1.1.0 into 037c3a69d3f4a1c9ec5be7d416763a601a076846 on master.

Coverage remained the same at 93.757% when pulling e6abe7872cc59cb03fb9d941ae04be33e35b7f54 on release_v1.1.0 into 037c3a69d3f4a1c9ec5be7d416763a601a076846 on master.


[Unsupported] Installing 4.9.4 on Node 11

NPM version (npm -v): 6.4.1
Node version (node -v): v11.0.0
Node Process (node -p process.versions):

{ http_parser: '2.8.0',
  node: '11.0.0',
  v8: '7.0.276.28-node.5',
  uv: '1.23.2',
  zlib: '1.2.11',
  ares: '1.14.0',
  modules: '67',
  nghttp2: '1.34.0',
  napi: '3',
  openssl: '1.1.0i \n',
  icu: '62.1',
  unicode: '11.0',
  cldr: '33.1',
  tz: '2018e' }

Node Platform (node -p process.platform):  win32
Node architecture (node -p process.arch): x64
node-sass version (node -p "require('node-sass').info"):

internal/modules/cjs/loader.js:589
    throw err;
    ^

Error: Cannot find module 'node-sass'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:587:15)
    at Function.Module._load (internal/modules/cjs/loader.js:513:25)
    at Module.require (internal/modules/cjs/loader.js:643:17)
    at require (internal/modules/cjs/helpers.js:22:18)
    at [eval]:1:1
    at Script.runInThisContext (vm.js:119:20)
    at Object.runInThisContext (vm.js:316:38)
    at Object.<anonymous> ([eval]-wrapper:6:22)
    at Module._compile (internal/modules/cjs/loader.js:707:30)
    at evalScript (internal/bootstrap/node.js:715:27)

npm node-sass versions (npm ls node-sass):

<EMAIL_ADDRESS>C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova
`--<EMAIL_ADDRESS>  `-- UNMET OPTIONAL DEPENDENCY<EMAIL_ADDRESS>

Error on installation
npm install node-sass@latest

><EMAIL_ADDRESS>install C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\@angular-devkit\build-angular\node_modules\node-sass
> node scripts/install.js

Downloading binary from https://github.com/sass/node-sass/releases/download/v4.9.3/win32-x64-67_binding.node
Cannot download "https://github.com/sass/node-sass/releases/download/v4.9.3/win32-x64-67_binding.node":

HTTP error 404 Not Found

Hint: If github.com is not accessible in your location
      try setting a proxy via HTTP_PROXY, e.g.

      export HTTP_PROXY=http://example.com:1234

or configure npm proxy via

      npm config set proxy http://example.com:8080

><EMAIL_ADDRESS>install C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-sass
> node scripts/install.js

Downloading binary from https://github.com/sass/node-sass/releases/download/v4.9.4/win32-x64-67_binding.node
Cannot download "https://github.com/sass/node-sass/releases/download/v4.9.4/win32-x64-67_binding.node":

HTTP error 404 Not Found

Hint: If github.com is not accessible in your location
      try setting a proxy via HTTP_PROXY, e.g.

      export HTTP_PROXY=http://example.com:1234

or configure npm proxy via

      npm config set proxy http://example.com:8080

><EMAIL_ADDRESS>postinstall C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\@angular-devkit\build-angular\node_modules\node-sass
> node scripts/build.js

Building: C:\Program Files\nodejs\node.exe C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
gyp info it worked if it ends with ok
gyp verb cli [ 'C:\\Program Files\\nodejs\\node.exe',
gyp verb cli   'C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\node-gyp\\bin\\node-gyp.js',
gyp verb cli   'rebuild',
gyp verb cli   '--verbose',
gyp verb cli   '--libsass_ext=',
gyp verb cli   '--libsass_cflags=',
gyp verb cli   '--libsass_ldflags=',
gyp verb cli   '--libsass_library=' ]
gyp info using<EMAIL_ADDRESS>gyp info using<EMAIL_ADDRESS>| win32 | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "python2" in the PATH
gyp verb `which` failed Error: not found: python2
gyp verb `which` failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb `which` failed  python2 { Error: not found: python2
gyp verb `which` failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb `which` failed   stack:
gyp verb `which` failed    'Error: not found: python2\n    at getNotFoundError (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:13:12)\n    at F (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:68:19)\n    at E (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:80:29)\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:89:16\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\isexe\\index.js:42:5\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\isexe\\windows.js:36:5\n    at FSReqCallback.oncomplete (fs.js:161:21)',
gyp verb `which` failed   code: 'ENOENT' }
gyp verb check python checking for Python executable "python" in the PATH
gyp verb `which` failed Error: not found: python
gyp verb `which` failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb `which` failed  python { Error: not found: python
gyp verb `which` failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb `which` failed   stack:
gyp verb `which` failed    'Error: not found: python\n    at getNotFoundError (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:13:12)\n    at F (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:68:19)\n    at E (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:80:29)\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:89:16\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\isexe\\index.js:42:5\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\isexe\\windows.js:36:5\n    at FSReqCallback.oncomplete (fs.js:161:21)',
gyp verb `which` failed   code: 'ENOENT' }
gyp verb could not find "python". checking python launcher
gyp verb could not find "python". guessing location
gyp verb ensuring that file exists: C:\Python27\python.exe
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack     at PythonFinder.failNoPython (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\lib\configure.js:484:19)
gyp ERR! stack     at PythonFinder.<anonymous> (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\lib\configure.js:509:16)
gyp ERR! stack     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\graceful-fs\polyfills.js:284:29
gyp ERR! stack     at FSReqCallback.oncomplete (fs.js:161:21)
gyp ERR! System Windows_NT 10.0.17134
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\@angular-devkit\build-angular\node_modules\node-sass
gyp ERR! node -v v11.0.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
Build failed with error code: 1

><EMAIL_ADDRESS>postinstall C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-sass
> node scripts/build.js

Building: C:\Program Files\nodejs\node.exe C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
gyp info it worked if it ends with ok
gyp verb cli [ 'C:\\Program Files\\nodejs\\node.exe',
gyp verb cli   'C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\node-gyp\\bin\\node-gyp.js',
gyp verb cli   'rebuild',
gyp verb cli   '--verbose',
gyp verb cli   '--libsass_ext=',
gyp verb cli   '--libsass_cflags=',
gyp verb cli   '--libsass_ldflags=',
gyp verb cli   '--libsass_library=' ]
gyp info using<EMAIL_ADDRESS>gyp info using<EMAIL_ADDRESS>| win32 | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "python2" in the PATH
gyp verb `which` failed Error: not found: python2
gyp verb `which` failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb `which` failed  python2 { Error: not found: python2
gyp verb `which` failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb `which` failed   stack:
gyp verb `which` failed    'Error: not found: python2\n    at getNotFoundError (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:13:12)\n    at F (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:68:19)\n    at E (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:80:29)\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:89:16\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\isexe\\index.js:42:5\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\isexe\\windows.js:36:5\n    at FSReqCallback.oncomplete (fs.js:161:21)',
gyp verb `which` failed   code: 'ENOENT' }
gyp verb check python checking for Python executable "python" in the PATH
gyp verb `which` failed Error: not found: python
gyp verb `which` failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb `which` failed  python { Error: not found: python
gyp verb `which` failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb `which` failed   stack:
gyp verb `which` failed    'Error: not found: python\n    at getNotFoundError (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:13:12)\n    at F (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:68:19)\n    at E (C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:80:29)\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\which\\which.js:89:16\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\isexe\\index.js:42:5\n    at C:\\Users\\Giacomo\\Documents\\Visual Studio 2017\\Projects\\Angular\\prova\\node_modules\\isexe\\windows.js:36:5\n    at FSReqCallback.oncomplete (fs.js:161:21)',
gyp verb `which` failed   code: 'ENOENT' }
gyp verb could not find "python". checking python launcher
gyp verb could not find "python". guessing location
gyp verb ensuring that file exists: C:\Python27\python.exe
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack     at PythonFinder.failNoPython (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\lib\configure.js:484:19)
gyp ERR! stack     at PythonFinder.<anonymous> (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\lib\configure.js:509:16)
gyp ERR! stack     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\graceful-fs\polyfills.js:284:29
gyp ERR! stack     at FSReqCallback.oncomplete (fs.js:161:21)
gyp ERR!  Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!      C:\Users\Giacomo\AppData\Roaming\npm-cache\_logs\2018-10-25T09_46_10_484Z-debug.log

Duplicate
On Thu., 25 Oct. 2018, 8:48 pm Toso82<EMAIL_ADDRESS>wrote:

NPM version (npm -v): 6.4.1
Node version (node -v): v11.0.0
Node Process (node -p process.versions):

{ http_parser: '2.8.0',
node: '11.0.0',
v8: '7.0.276.28-node.5',
uv: '1.23.2',
zlib: '1.2.11',
ares: '1.14.0',
modules: '67',
nghttp2: '1.34.0',
napi: '3',
openssl: '1.1.0i \n',
icu: '62.1',
unicode: '11.0',
cldr: '33.1',
tz: '2018e' }

Node Platform (node -p process.platform): win32
Node architecture (node -p process.arch): x64
node-sass version (node -p "require('node-sass').info"):

internal/modules/cjs/loader.js:589
throw err;
^
Error: Cannot find module 'node-sass'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:587:15)
at Function.Module._load (internal/modules/cjs/loader.js:513:25)
at Module.require (internal/modules/cjs/loader.js:643:17)
at require (internal/modules/cjs/helpers.js:22:18)
at [eval]:1:1
at Script.runInThisContext (vm.js:119:20)
at Object.runInThisContext (vm.js:316:38)
at Object. ([eval]-wrapper:6:22)
at Module._compile (internal/modules/cjs/loader.js:707:30)
at evalScript (internal/bootstrap/node.js:715:27)

npm node-sass versions (npm ls node-sass):

<EMAIL_ADDRESS>C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova
--<EMAIL_ADDRESS> -- UNMET OPTIONAL DEPENDENCY<EMAIL_ADDRESS>Error on installation
npm install node-sass@latest

<EMAIL_ADDRESS>install C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules@angular-devkit\build-angular\node_modules\node-sass
node scripts/install.js

Downloading binary from https://github.com/sass/node-sass/releases/download/v4.9.3/win32-x64-67_binding.node
Cannot download "https://github.com/sass/node-sass/releases/download/v4.9.3/win32-x64-67_binding.node":
HTTP error 404 Not Found
Hint: If github.com is not accessible in your location
try setting a proxy via HTTP_PROXY, e.g.
  export HTTP_PROXY=http://example.com:1234

or configure npm proxy via
  npm config set proxy http://example.com:8080

<EMAIL_ADDRESS>install C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-sass
node scripts/install.js

Downloading binary from https://github.com/sass/node-sass/releases/download/v4.9.4/win32-x64-67_binding.node
Cannot download "https://github.com/sass/node-sass/releases/download/v4.9.4/win32-x64-67_binding.node":
HTTP error 404 Not Found
Hint: If github.com is not accessible in your location
try setting a proxy via HTTP_PROXY, e.g.
  export HTTP_PROXY=http://example.com:1234

or configure npm proxy via
  npm config set proxy http://example.com:8080

<EMAIL_ADDRESS>postinstall C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules@angular-devkit\build-angular\node_modules\node-sass
node scripts/build.js

Building: C:\Program Files\nodejs\node.exe C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
gyp info it worked if it ends with ok
gyp verb cli [ 'C:\Program Files\nodejs\node.exe',
gyp verb cli   'C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\bin\node-gyp.js',
gyp verb cli   'rebuild',
gyp verb cli   '--verbose',
gyp verb cli   '--libsass_ext=',
gyp verb cli   '--libsass_cflags=',
gyp verb cli   '--libsass_ldflags=',
gyp verb cli   '--libsass_library=' ]
gyp info using<EMAIL_ADDRESS>gyp info using<EMAIL_ADDRESS>| win32 | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "python2" in the PATH
gyp verb which failed Error: not found: python2
gyp verb which failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb which failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb which failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb which failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb which failed  python2 { Error: not found: python2
gyp verb which failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb which failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb which failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb which failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb which failed   stack:
gyp verb which failed    'Error: not found: python2\n    at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)\n    at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)\n    at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5\n    at FSReqCallback.oncomplete (fs.js:161:21)',
gyp verb which failed   code: 'ENOENT' }
gyp verb check python checking for Python executable "python" in the PATH
gyp verb which failed Error: not found: python
gyp verb which failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb which failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb which failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb which failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb which failed  python { Error: not found: python
gyp verb which failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb which failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb which failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb which failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb which failed   stack:
gyp verb which failed    'Error: not found: python\n    at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)\n    at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)\n    at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5\n    at FSReqCallback.oncomplete (fs.js:161:21)',
gyp verb which failed   code: 'ENOENT' }
gyp verb could not find "python". checking python launcher
gyp verb could not find "python". guessing location
gyp verb ensuring that file exists: C:\Python27\python.exe
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack     at PythonFinder.failNoPython (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\lib\configure.js:484:19)
gyp ERR! stack     at PythonFinder. (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\lib\configure.js:509:16)
gyp ERR! stack     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\graceful-fs\polyfills.js:284:29
gyp ERR! stack     at FSReqCallback.oncomplete (fs.js:161:21)
gyp ERR! System Windows_NT 10.0.17134
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\bin\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules@angular-devkit\build-angular\node_modules\node-sass
gyp ERR! node -v v11.0.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
Build failed with error code: 1

<EMAIL_ADDRESS>postinstall C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-sass
node scripts/build.js

Building: C:\Program Files\nodejs\node.exe C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
gyp info it worked if it ends with ok
gyp verb cli [ 'C:\Program Files\nodejs\node.exe',
gyp verb cli   'C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\bin\node-gyp.js',
gyp verb cli   'rebuild',
gyp verb cli   '--verbose',
gyp verb cli   '--libsass_ext=',
gyp verb cli   '--libsass_cflags=',
gyp verb cli   '--libsass_ldflags=',
gyp verb cli   '--libsass_library=' ]
gyp info using<EMAIL_ADDRESS>gyp info using<EMAIL_ADDRESS>| win32 | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "python2" in the PATH
gyp verb which failed Error: not found: python2
gyp verb which failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb which failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb which failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb which failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb which failed  python2 { Error: not found: python2
gyp verb which failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb which failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb which failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb which failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb which failed   stack:
gyp verb which failed    'Error: not found: python2\n    at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)\n    at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)\n    at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5\n    at FSReqCallback.oncomplete (fs.js:161:21)',
gyp verb which failed   code: 'ENOENT' }
gyp verb check python checking for Python executable "python" in the PATH
gyp verb which failed Error: not found: python
gyp verb which failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb which failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb which failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb which failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb which failed  python { Error: not found: python
gyp verb which failed     at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)
gyp verb which failed     at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)
gyp verb which failed     at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5
gyp verb which failed     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5
gyp verb which failed     at FSReqCallback.oncomplete (fs.js:161:21)
gyp verb which failed   stack:
gyp verb which failed    'Error: not found: python\n    at getNotFoundError (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:13:12)\n    at F (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:68:19)\n    at E (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:80:29)\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\which\which.js:89:16\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\index.js:42:5\n    at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\isexe\windows.js:36:5\n    at FSReqCallback.oncomplete (fs.js:161:21)',
gyp verb which failed   code: 'ENOENT' }
gyp verb could not find "python". checking python launcher
gyp verb could not find "python". guessing location
gyp verb ensuring that file exists: C:\Python27\python.exe
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack     at PythonFinder.failNoPython (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\lib\configure.js:484:19)
gyp ERR! stack     at PythonFinder. (C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\node-gyp\lib\configure.js:509:16)
gyp ERR! stack     at C:\Users\Giacomo\Documents\Visual Studio 2017\Projects\Angular\prova\node_modules\graceful-fs\polyfills.js:284:29
gyp ERR! stack     at FSReqCallback.oncomplete (fs.js:161:21)
gyp ERR!  Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR!      C:\Users\Giacomo\AppData\Roaming\npm-cache_logs\2018-10-25T09_46_10_484Z-debug.log
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/sass/node-sass/issues/2525, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAjZWDIBo9l4FKWY_V5vi-b06ZTSPNMJks5uoYj1gaJpZM4X55dw
.

@xzyfer I understand why you'd close this as a duplicate. But it would be helpful if you had linked to what it is a duplicate of. I'm also having this issue, and Google took me to this page to find a solution.

This is documented as the first line in the read me.
On Sun., 24 Mar. 2019, 8:17 pm Glenn Lawyer<EMAIL_ADDRESS>wrote:

@xzyfer https://github.com/xzyfer I understand why you'd close this as
a duplicate. But it would be helpful if you had linked to what it is a
duplicate of. I'm also having this issue, and Google took me to this page
to find a solution.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/sass/node-sass/issues/2525#issuecomment-475941644,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAjZWMqzGk-BoEnXsTt6oOjE4I7cEwSCks5vZ0KcgaJpZM4X55dw
.

same issue!
I refered to almost all issues, and tried with different node version and node-sass version, but no way to solve!


Where is the stylesheet?

I cannot find any stylesheet in the npm package folder. Are they missing?

I recognized that the styles are directly integrated into the component.


Add loading spinner on demographic page + use suspense for data fetching

Description of PR
This PR adds a spinner on Demographics Page while the data is being fetched. Uses the recently introduced Suspense feature of React.
In near future, we can use this data fetching technique on all pages and also add Error Boundaries to show error.
Type of PR

[ ]  Bugfix
[x]  New feature

Relevant Issues
Fixes #826
Checklist

[x]  Compiles and passes lint tests
[x]  Properly formatted
[x]  Tested on desktop
[x]  Tested on phone

Screenshot

@punit2502 Hey, thanks for the PR! This looks good, would it be possible if we could add the loader to the patients component and not the PatientDB component? It'll look a little bit more cleaner is what I feel :)


Pytest 6.2.2

Pytest changelog: https://docs.pytest.org/en/stable/changelog.html
Plus, switch to requiments.txt instead of dev-requirements

Why do you rename it requirements instead of dev-req ? There already is a requirement.txt, in the mplc folder.

Why do you rename it requirements instead of dev-req ? There already is a requirement.txt, in the mplc folder.

Ok for the pytest update, but I don't understand why renaming dev-req. There already exist a mplc/requirement.txt, which is enough to run mplc and dev-req is for running the test, flake it, and make a pip release

Oh my bad, I got confused, I'll revert this part

Ok for the pytest update, but I don't understand why renaming dev-req. There already exist a mplc/requirement.txt, which is enough to run mplc and dev-req is for running the test, flake it, and make a pip release

Oh my bad, I got confused, I'll revert this part

Codecov Report

Merging #326 (89645c4) into master (5392596) will decrease coverage by 0.23%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #326      +/-   ##
==========================================
- Coverage   82.63%   82.39%   -0.24%
==========================================
  Files          13       13
  Lines        2637     2602      -35
==========================================
- Hits         2179     2144      -35
  Misses        458      458

Impacted Files
Coverage Δ

mplc/partner.py
89.74% <0.00%> (-1.47%)
:arrow_down:

mplc/corruption.py
79.67% <0.00%> (-0.74%)
:arrow_down:

mplc/models.py
78.08% <0.00%> (-0.30%)
:arrow_down:

mplc/dataset.py
85.79% <0.00%> (-0.25%)
:arrow_down:

mplc/multi_partner_learning.py
85.18% <0.00%> (-0.13%)
:arrow_down:

mplc/scenario.py
82.96% <0.00%> (-0.13%)
:arrow_down:

mplc/mpl_utils.py
84.09% <0.00%> (-0.12%)
:arrow_down:

mplc/splitter.py
96.25% <0.00%> (-0.05%)
:arrow_down:

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 5392596...89645c4. Read the comment docs.

Codecov Report

Merging #326 (89645c4) into master (5392596) will decrease coverage by 0.23%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #326      +/-   ##
==========================================
- Coverage   82.63%   82.39%   -0.24%
==========================================
  Files          13       13
  Lines        2637     2602      -35
==========================================
- Hits         2179     2144      -35
  Misses        458      458

Impacted Files
Coverage Δ

mplc/partner.py
89.74% <0.00%> (-1.47%)
:arrow_down:

mplc/corruption.py
79.67% <0.00%> (-0.74%)
:arrow_down:

mplc/models.py
78.08% <0.00%> (-0.30%)
:arrow_down:

mplc/dataset.py
85.79% <0.00%> (-0.25%)
:arrow_down:

mplc/multi_partner_learning.py
85.18% <0.00%> (-0.13%)
:arrow_down:

mplc/scenario.py
82.96% <0.00%> (-0.13%)
:arrow_down:

mplc/mpl_utils.py
84.09% <0.00%> (-0.12%)
:arrow_down:

mplc/splitter.py
96.25% <0.00%> (-0.05%)
:arrow_down:

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 5392596...89645c4. Read the comment docs.

👍

👍


Added GitLab Issues endpoint

Only adding in the features which I need, I can expand this out to GitHub if needed.

Looks good. I can't remember if there's another place to change anything. Have you tested that this branch works the way you expect?


Get tailwind to start modifying the page

Was missing custom css and jass css file connection to main.hbs


FixedColumns with multiple tables

FixedColumns extension doesn't work with multiple tables, see this jsFiddle.
Tried to find a workaround (see this jsFiddle), but it didn't help either.
Is this by design or can be fixed?

Nevermind, the problem was that both tables had the same ID which surprisingly led to this issue.

Yes good point. Thanks. I'll update it shortly.

Finally committed the change. Will be pushed on the site shortly.


Support importing encrypted private keys

Please consider adding support for encrypted private keys, i.e, those that begin with edesk1.  See eztz.crypto.extractEncryptedKeys for an example JS implementation.
Keep up the awesome work guys!

Hi, @phpcodecrafting! Thank you for your suggestion.
We’ll try to include it in one of our upcoming Beta updates.

@phpcodecrafting, this feature already exists in the latest version. Thanks!


Map of lots disappeared from production site in 11/2015

A month ago or so I noticed that the map of available lots on the production site (www.clelots.org or www.clevelandlots.org) disappeared. I'm not sure why it would disappear - I don't see any commits around that time (except the FAQ update on 12/4), but someone could have gone in to /home/ubuntu/ and made changes manually.
It's possible that the map itself disappeared from the external site where it's hosted.

no longer applicable


Add MapAggregator to compose tuples of (key, agg) pairs

Add a MapAggregator to join tuples of (K, Aggregator[A, Bn, C]) pairs
into a composed Aggregator[A, TupleN[B1,...,BN], Map[K, C]].
cc @avibryant @mlmanapat

I could be wrong about this but I think it would be more usable if the apply methods took N Tuple2 parameters instead of a single TupleN[Tuple2...]. As a practical matter, that means you wouldn't need the extra set of params and constructing a MapAggregator would look almost exactly like constructing a Map: MapAggregator("min" -> Aggregator.min, "max" -> Aggregator.max).

+1 to Avi's suggestion. Also, not that it is super important: but are you planning to use this or is it just a nice generalization? The reason I ask is that I'm surprised that the result type (V is the map) is homogenous across a wide variety of aggregations. Of course, Double might be common enough.

Yeah, Double is quite common for us. Also, you can imagine using an Either type or something similar (like brushfire's 4-way Dispatched) to unify disparate aggregation results into a single V.

Totally convinced, made the suggested changes!  cc @mlmanapat

Thanks, @DanielleSucher!

For consistency/simplicity-of-use, we're missing the ability to generate Tuple or Map aggregator from one entry!
at the moment we'he hacked up this:
  /**
   * makes an aggregator returning a Tuple1[Metric]
   * this allows to keep aggregator definition consistent with GeneratedTupleAggregator.fromN
   */
  def tupleAggrFrom1[A, B, C](agg: Aggregator[A, B, C]): Aggregator[A, B, scala.Tuple1[C]] = {
    agg.andThenPresent(Tuple1(_))
  }

  // for the MapAggregator
  def mapAggrFrom1[A, B, C <: AnyVal](aggDef: (String, Aggregator[A, B, C])): Aggregator[A, B, Map[String, AnyVal]] = {
    val (key, agg) = aggDef
    agg.andThenPresent(value => Map(key -> value))
  }


Minor changes to User Guide

Codecov Report
Base: 68.31% // Head: 68.31% // No change to project coverage :thumbsup:

Coverage data is based on head (00dad78) compared to base (a8c3bbb).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff            @@
##             master     #212   +/-   ##
=========================================
  Coverage     68.31%   68.31%
  Complexity      505      505
=========================================
  Files            86       86
  Lines          1616     1616
  Branches        158      158
=========================================
  Hits           1104     1104
  Misses          453      453
  Partials         59       59

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


IV Extractor fails on Priconne[JPN] v5.9.0

After Japan client visited https://api-priconne-redive.cygames.jp/check/check_agreement ,IV Extractor throws such error.
Uncaught Exception:
Error: invalid ciphertext size (must be multiple of 16 bytes)
    at ModeOfOperationCBC.decrypt (E:\Github\pcr-exporter\node_modules\aes-js\index.js:475:19)
    at SWProxy.handler (E:\Github\pcr-exporter\app\plugins\iv-extractor.js:35:62)
    at SWProxy.emit (node:events:394:28)
    at E:\Github\pcr-exporter\app\proxy\proxy.js:71:14
    at E:\Github\pcr-exporter\node_modules\http-mitm-proxy\lib\proxy.js:1073:12
    at E:\Github\pcr-exporter\node_modules\http-mitm-proxy\node_modules\async\dist\async.js:2554:44
    at eachOfArrayLike (E:\Github\pcr-exporter\node_modules\http-mitm-proxy\node_modules\async\dist\async.js:503:13)
    at eachOf (E:\Github\pcr-exporter\node_modules\http-mitm-proxy\node_modules\async\dist\async.js:623:16)
    at awaitable (E:\Github\pcr-exporter\node_modules\http-mitm-proxy\node_modules\async\dist\async.js:211:32)
    at Object.eachLimit (E:\Github\pcr-exporter\node_modules\http-mitm-proxy\node_modules\async\dist\async.js:2657:16)

This seems related to aesBody as a 196-bytes-long Buffer.
https://github.com/FabulousCupcake/pcr-exporter/blob/e46b814a1d5e0c3000a7bd6faa10412724df3c57/app/plugins/iv-extractor.js#L35
Please tell me if you need more information.

I thought I wrote a reply weeks ago but looks like I didn't hit the send button 😔
The project mainly focuses on the EN version; I don't play the JP version, so I don't think I can help with the updated encryption process in the other version.

Anyway, thanks for your reply.😊


index: add dvc_data.index.view() and DataIndexView

Provides read-only view into DataIndex using a filtered set of keys. Does not modify or create a new trie, only wraps the existing index._trie object
Should be usable in any existing dvc-data functions that don't write back to the index (i.e. save, checkout, dvcfs methods, etc)
Implements

iteritems
traverse
ls

Codecov Report
Base: 51.31% // Head: 51.81% // Increases project coverage by +0.50% :tada:

Coverage data is based on head (94f411e) compared to base (047860a).
Patch coverage: 75.25% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #195      +/-   ##
==========================================
+ Coverage   51.31%   51.81%   +0.50%
==========================================
  Files          46       46
  Lines        2594     2665      +71
  Branches      442      343      -99
==========================================
+ Hits         1331     1381      +50
- Misses       1198     1220      +22
+ Partials       65       64       -1

Impacted Files
Coverage Δ

src/dvc_data/hashfile/tree.py
59.44% <0.00%> (-0.93%)
:arrow_down:

src/dvc_data/index/checkout.py
70.37% <ø> (ø)

src/dvc_data/index/index.py
68.75% <70.66%> (-0.59%)
:arrow_down:

src/dvc_data/index/save.py
78.43% <88.88%> (+1.83%)
:arrow_up:

src/dvc_data/index/diff.py
65.71% <100.00%> (ø)

tests/test_index.py
100.00% <100.00%> (ø)

src/dvc_data/hashfile/hash.py
75.00% <0.00%> (-0.26%)
:arrow_down:

src/dvc_data/cli.py
32.10% <0.00%> (ø)

src/dvc_data/hashfile/build.py
17.74% <0.00%> (ø)

... and 3 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

For reference, in my not very scientific test for view.iteritems() performance vs index.iteritems():

In the worst case scenario, where the view is mapped to the entire index, performance is significantly worse
When the view is smaller than the entire index, performance is significantly better

I would have expected the worst case scenario to give roughly equivalent performance so I'll have to look into that some more.

Using the entire dvc-bench repo and this script:
import timeit

from dvc.repo import Repo
from dvc_data.index import view

repo = Repo(".")
index = repo.index.data["repo"]
print("loading index")
index.load()
index_view = view(index, lambda k: True)
large_view = view(index, lambda k: "large" in k)

def orig_iter():
    for k, v in index.iteritems():
        pass

def make_view():
    view(index, lambda k: True)

def view_iter():
    for k, v in index_view.iteritems():
        pass

def make_large():
    view(index, lambda k: "large" in k)

def large_iter():
    for k, v in large_view.iteritems():
        pass

def make_mnist():
    view(index, lambda k: "mnist" in k)

def mnist_iter():
    for k, v in mnist_view.iteritems():
        pass

print("index.iteritems", timeit.timeit("orig_iter()", number=10, globals=globals()))
print("construct view (worst case)", timeit.timeit("make_view()", number=10, globals=globals()))
print("view.iteritems (worst case)", timeit.timeit("view_iter()", number=10, globals=globals()))
print("construct view (large)", timeit.timeit("make_large()", number=10, globals=globals()))
print("view.iteritems (large)", timeit.timeit("large_iter()", number=10, globals=globals()))
print("construct view (mnist)", timeit.timeit("mnist_large()", number=10, globals=globals()))
print("view.iteritems (mnist)", timeit.timeit("mnist_iter()", number=10, globals=globals()))

loading index
index.iteritems 0.7863161660000006
construct view (worst case) 1.3461258339999986
view.iteritems (worst case) 1.877840208000002
construct view (large) 0.0002096250000001021
view.iteritems (large) 9.167000001752967e-06
construct view (mnist) 0.00015529199999875232
view.iteritems (mnist) 5.417000000562666e-06

Where you get the performance for iterating over the entire index, constructing + iterating over the worst case scenario view, and constructing + iterating over only data/large and data/mnist views. (data/mnist is almost 3/4 of the entire amount of data in the entire index)


Invalid credentials for the OSS Index - Credentials work fine on OSSIndex website

Describe the bug
We are using DependencyCheck in our GitLab CI/CD pipeline and have been for quite some time. Suddenly, out of the blue, today we started getting failures in the job that runs DC. The failure is due to "Invalid credentials for the OSS Index", according to the message. This baffles me a bit though as when I copy the credentials from the CI/CD pipeline variables and paste them into the https://ossindex.sonatype.org/ login page, they work just fine...
Version of dependency-check used
CLI 8.2.1
Log file
To Reproduce
Run dependency-check.sh with following parameters
--project projectName
--scan .
--format HTML --format JSON
--prettyPrint
--cveDownloadWait 0
--ossIndexUsername $OSS_INDEX_USERNAME --ossIndexPassword $OSS_INDEX_PASSWORD
--dotnet $DOTNET_CORE_PATH

Expected behavior
I don't get an invalid credentials message as the credentials are valid.
Additional context
We are using shared runners on gitlab (to which we have no access --> cannot log onto them). I have reran the job 3 times and it has used different runners, same result.
The DC is run inside a Sonar Scanner job (between sonarscanner begin and sonarscanner end)

Same issue with the Maven plugin and an API token.

However, this account also now fails to log in to their website:

401 Error
Authentication failure. It has been logged (ID bf9d8538f71bc1af).

I also got this once. But that was after a period of inactivity on the website. I managed to re-login succesfully.
Furthermore, The pipeline job now went through magically without changes... Not quite sure what is going on

See linked issue, but I think they probably fired a bunch of IT staff.

Yeah I had a look at it earlier. Crazy stuff. Hope they get it sorted. Either way it sounds like this is not a DC issue then rather than something on OSS Index Server side

Would we be missing any critical information in the dependency check report if we disabled the OSS Index analyzer?


[P1] Location of code for "LM training and serving with ReFT"

The ReadMe mentions the ability to serve at scale with continuous batching.
Even if not vLLM or TGI, is there some work that someone could point me to on this?
Is there any functioning packaging for serving continuous batching via an endpoint? Thanks

@RonanKMcGovern Thanks for the note! The continuous batching is still in planning right now, we might do it soon (after our conf submission deadline).
I am thinking to implement it not as a generic API, but a pyreft feature where intervention locations on KV cache requires some special handlings (since inputs are concatenated together in that case)

Noted with thanks @frankaging .
Yes, I was thinking that there'll need to be a separate "inputs" field for the intervention.
This may be a bit wild of an idea, but I wonder if the interventions could be input as images are in vLLM and TGI. It's a case where there needs to be a second "pre-processor".


touchup cl_errors

also enabled the test in CI

This is a dangerous test for CI. It actually allocates tons of RAM


Add updated meta dependency.

Add updated ICU download URL after ICU dependency's tgz file was migrated from Subversion repo to GitHub repo (source: http://site.icu-project.org/repository).
Purpose: Metapy's Python wheel install process runs the Meta repo's cmake build process. The Meta repo's cmake steps will fail to download the ICU dependency because the old URL for the ICU dependency does not have the Tar file anymore. Without this updated URL that has the ICU dependency Meta needs to build, no-one can make builds of Meta and by extension, the Metapy repo cannot make new builds for Python 3.8 and Python 3.9 which are currently needed (but missing because of this bug).

@smassung or @skystrife can you add additional collaborators to this repository, so that it can be actively maintained? We're still using versions of Python that have long since reached end-of-life (Python 2.7 and 3.5) in CS 410 because this fix can't get merged. Good candidates would be any of the current term's TA's contributing to the Development of Assignments in metapy:

@assmaboughoula
@kevinros
@liuyuxiang512
@priyanka-dey or @priyanka-dey-19


Do not use native CMake config for Protobuf on Linux

On Ubuntu 16.04, we have to install Protobuf 3. Unfortunately, find_package()ing Protobuf using native installed CMake CONFIG is problematic in case if there is a system Protobuf 2 installed, while the bundled CMake module works correctly and manages to avoid interference with system-installed Protobuf 2.

@wally-the-cartographer merge

Merge requested by authorized user pifon2a. Merge queue now has a length of 1.


fix fix index in variant

What problem does this PR solve?

Problem Summary:

Fixing error checks, InvertedIndexColumnWriter::check_support_inverted_index, It is not appropriate to determine support for other indexes by checking the inverted index.
Fix TableSchema::update_index()

Check List (For Author)

Test

[x] Regression test
[x] Unit Test
[ ] Manual test (add detailed scripts or steps below)
[ ] No need to test or manual test. Explain why:

[ ] This is a refactor/code format and no logic has been changed.
[ ] Previous test can cover this change.
[ ] No colde files have been changed.
[ ] Other reason

Behavior changed:

[x] No.
[ ] Yes.

Does this need documentation?

[x] No.
[ ] Yes.

Release note

None

Check List (For Reviewer who merge this PR)

[ ] Confirm the release note
[ ] Confirm test cases
[ ] Confirm document
[ ] Add branch pick label

run buildall

run buildall

run buildall


Fix code style - from Issue #46

This issue focussed on code style
Two actions - tests are failing - they will be addressed in other issues, therfore merging now


updated -> completed

correct to right event

Hi @kenakamu, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;


Does libmoon and FlowScope support more than 128 lcores?

I changed the .config file setting CONFIG_RTE_MAX_LCORE to 256, and rebuilt dpdk and libmoon. Now I can get 256 lcores running hello world example of DPDK:

But when I run the libmoon hello world example, there is only 128 lcores(I put in some print functions to learn how it works, please ignore them):

How can I change that?

libmoon expects CONFIG_RTE_MAX_LCORE=128 (and tries to use the last cores for our shared tasks), however, you should be able to change that to 256 here: https://github.com/libmoon/libmoon/blob/master/lua/dpdk.lua#L160


Unintentional logout when reloading the page

Steps to reproduce

Open the web app and log in with a user of type Account
Navigate to some page (e.g. Applications) and refresh the page in browser multiple times

Actual result
The user is logged out and the message The server cannot be reached is shown on the login screen.
Expected result
User should remain logged in after the page was refreshed.
Additional info

This logging out doesn't occur for Admin and SP users.
During our internal investigation, we discovered that this is probably an issue that occurs when the web app runs behind a proxy like Kubernetes with an ingress controller. As we are still deploying the web app using express we were able to configure express to trust proxies. This seems to solve the issue. The serve package that is currently used by this project does not seem to have this particular configuration option.

The server cannot be reached
this message is shown when the webapp is not able to send request to jambonz-api-server. When this happen, jambonz webapp will cleanup token and logout the current user.
Could you give me more hint on how expresss changes will help the webapp is able to connect tp jambonz-api-server?

Express historically has had some issues when running behind proxies (e.g. k8s loadbalancer like Traefik) which also seems to be the case with Vercel serve. So for us the issue wasn't really that the api-server was not reachable but rather that multiple request quickly one after the other were not handled correctly. When we configured Express like described in their documentation (app.set('trust proxies, 1)) the issue went away for us.


Unliking on Bluesky not mirrored to Mastodon

In a mutually bridged state between ActivityPub <-> Bluesky (both accounts mine), after liking a bridged Mastodon post on Bluesky, unliking it doesn’t seem to mirror to the Mastodon server properly. The “favorited” notification doesn’t disappear, and the post’s favorites count doesn’t decrease. In contrast, undoing a repost does seem to mirror properly (after some expected delay). On https://fed.brid.gy/ap/ I can observe unliking (likes disappearing), but it’s not seen on the Mastodon server. Can it be fixed? I cannot confirm whether it’s my server’s fault or not.

Hmm! Sorry for the trouble. Which post was this, and which account liked and unliked it?

That's probably #1361 if unliking was done shortly after liking the post.

This is the Bluesky account:
https://bsky.app/profile/sayunu.bsky.social
And these are the posts:
https://mofu.kemo.no/@sayunu/113574781088219263
https://mofu.kemo.no/@sayunu/113559039920972955
https://mofu.kemo.no/@sayunu/113559901388518271
The operation was like this:

Sent a post on the Mastodon web UI
Saw it on the bsky.app web UI
Liked it
In less than ten seconds, received a notification regarding it on the Mastodon web UI; saw the favorites count increasing
Unliked it
Waited several minutes, reloaded the Mastodon web UI
The notification persisted; the favorites count was unchanged