How to configure unbound with --enable-dnstap: Issue protoc-c... no

Describe the bug
When configuring unbound with --enable-dnstap, it can't locate protobuf-c.
$ ./configure --enable-dnstap
...
...
...
checking for protoc-c... no
configure: error: The protoc-c program was not found. Please install protobuf-c!

I have checked that protobuf-c is installed.
$ dpkg -l | grep protobuf
ii  libprotobuf-c-dev:armhf              1.4.1-1+b1                              armhf        Protocol Buffers C static library and headers (protobuf-c)
ii  libprotobuf-c1:armhf                 1.4.1-1+b1                              armhf        Protocol Buffers C shared library (protobuf-c)
$ sudo find / -name libprotobuf-c1
/usr/share/doc/libprotobuf-c1
$ sudo find / -name libprotobuf-c-dev
/usr/share/doc/libprotobuf-c-dev

I discovered from this answer that the library name is libprotobuf-c.so.1. Its location was found using:
$ sudo find / -name libprotobuf-c.so.1
/usr/lib/arm-linux-gnueabihf/libprotobuf-c.so.1
$ ls -la /usr/lib/arm-linux-gnueabihf | grep libprotobuf-c.so.1
lrwxrwxrwx  1 root root       22 Nov 23  2022 libprotobuf-c.so -> libprotobuf-c.so.1.0.0
lrwxrwxrwx  1 root root       22 Nov 23  2022 libprotobuf-c.so.1 -> libprotobuf-c.so.1.0.0
-rw-r--r--  1 root root    66892 Nov 23  2022 libprotobuf-c.so.1.0.0

I have also tried these commands:
./configure --enable-dnstap --with-protobuf-c=/usr/lib/arm-linux-gnueabihf/libprotobuf-c.so.1

and
./configure --enable-dnstap --with-protobuf-c="/usr/lib/arm-linux-gnueabihf/libprotobuf-c.so.1"

However, I am still getting the same error msgs:
checking for protoc-c... no
configure: error: The protoc-c program was not found. Please install protobuf-c!

The unbound version that I am trying to configure is 1.22.0.
To reproduce
Steps to reproduce the behavior:
As described above.
Expected behavior
The configuration should have worked.
System:

Unbound version: 1.22.0
OS:  Linux, 6.6.54-current-sunxi, armv7l GNU/Linux
unbound -V output:  Nil

Additional information
Nil.

Apart from the libprotobuf-c, unbound also uses the protoc-c program. The packages for that could be separated. Also development versions of the library packages need to be installed, since the compilation uses the development headers to link to the library. Perhaps it is called protobuf-c-dev or protobuf-c-devel, or the protoc-c application has its own package.

Since libprotobuf-c-dev is installed, this is likely about the /usr/bin/protoc-c program that is needed. It compiles the protocol buffers annotation for the format that is used. The program is used during the compilation to create the header that is used with the library. If it is installed in a different place, PROTOC_C=/path/to/protoc-c can be used to set the program location at the configure call.

@wcawijngaards  These are what I found. Which should I install?
$ sudo apt search protobuf-c
Sorting... Done
Full Text Search... Done
libprotobuf-c-dev/stable,now 1.4.1-1+b1 armhf [installed]
Protocol Buffers C static library and headers (protobuf-c)
libprotobuf-c1/stable,now 1.4.1-1+b1 armhf [installed,automatic]
Protocol Buffers C shared library (protobuf-c)
librust-prometheus+protobuf-codegen-pure-dev/stable 0.13.3-1 armhf
Prometheus instrumentation library for Rust applications - feature "protobuf-codegen-pure" and 1 more
librust-protobuf-codegen-dev/stable 2.27.1-1+b2 armhf
Code generator for rust-protobuf - Rust source code
librust-protobuf-codegen-pure-dev/stable 2.27.1-1 armhf
Pure-rust codegen for protobuf using protobuf-parser crate - Rust source code
protobuf-c-compiler/stable 1.4.1-1+b1 armhf
Protocol Buffers C compiler (protobuf-c)
protobuf-codegen/stable 2.27.1-1+b2 armhf
Code generator for rust-protobuf
protobuf-compiler/stable 3.21.12-3 armhf
compiler for protocol buffer definition files
protobuf-compiler-grpc/stable 1.51.1-3+b1 armhf
high performance general RPC framework - protobuf plugin
protobuf-compiler-grpc-java-plugin/stable 1.41.3+ds-1 armhf
high performance general RPC framework - protobuf Java plugin

The protoc-c is a code generator that generates the headers that unbound is going to use, so I guess the packages protobuf-c-compiler/stable and protobuf-compiler/stable make the most sense. Probably one relies on the other, with the c specific one needed, possibly.
The package system may be able to answer what package provides an executable by name, as a search method.

@wcawijngaards Thanks. After sudo apt install protobuf-c-compiler protobuf-compiler, ./configure --enable-dnstap worked.


Deploy trained weight on video, how?

To deploy a trained model, do we first need train the model on video data set or we can simply use weight that trained on image data set? Any pointer?

You can just pass images from the video to the model and do it image by image. How close the videos you use are to the original train images are going to be the biggest factor in how well that works. You could also make a custom video model or do post processing of the detections to handle / filte the time dimension and reduce detections 'flickering' between frames. Well beyond the scope of this repository.


MVN Compile Errors

Description:

Try to do a mvn compile.
Get the error:
[INFO] Scanning for projects...
[WARNING]
[WARNING] Some problems were encountered while building the effective model for org.wso2.km.ext.pingfederate:pingfederate.key.manager:bundle:1.0.4-SNAPSHOT
[WARNING] 'dependencies.dependency.(groupId:artifactId:type:classifier)' must be unique: org.wso2.carbon.apimgt:org.wso2.carbon.apimgt.impl:jar -> duplicate declaration of version (?) @ line 78, column 21
[WARNING] 'dependencyManagement.dependencies.dependency.(groupId:artifactId:type:classifier)' must be unique: com.google.code.gson:gson:jar -> duplicate declaration of version ${gson.version} @ org.wso2.km.ext.pingfederate:pingfederate.auth.client:1.0.4-SNAPSHOT, /Users/john.kirby/Documents/WSO2/env/development/edge/apim/kubernetes-apim/apim-km-pingfederate/pom.xml, line 125, column 25
[WARNING]
[WARNING] Some problems were encountered while building the effective model for org.wso2.km.ext.pingfederate:pingfederate.auth.client:pom:1.0.4-SNAPSHOT
[WARNING] 'dependencyManagement.dependencies.dependency.(groupId:artifactId:type:classifier)' must be unique: com.google.code.gson:gson:jar -> duplicate declaration of version ${gson.version} @ line 125, column 25
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
Suggested Labels:

Suggested Assignees:

Affected Product Version:
OS, DB, other environment details and versions:
Java Version:
ava version "13.0.1" 2019-10-15
Java(TM) SE Runtime Environment (build 13.0.1+9)
Java HotSpot(TM) 64-Bit Server VM (build 13.0.1+9, mixed mode, sharing)
Maven Version:
Maven home: /Users/john.kirby/Documents/apache-maven-3.8.1
Java version: 13.0.1, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac"
Steps to reproduce:
run: mvn compile
Related Issues:

None

Changed to JDK 1.8 and got this error:
Failed to execute goal on project pingfederate.key.manager: Could not resolve dependencies for project org.wso2.km.ext.pingfederate:pingfederate.key.manager:bundle:1.0.4-SNAPSHOT: Failed to collect dependencies at org.wso2.carbon.apimgt:org.wso2.carbon.apimgt.impl:jar:6.7.205 -> org.wso2.carbon.analytics-common:org.wso2.carbon.event.output.adapter.core:jar:5.2.26 -> org.wso2.carbon:org.wso2.carbon.core:jar:4.5.3 -> org.wso2.carbon:javax.cache.wso2:jar:4.5.3 -> org.wso2.carbon:org.wso2.carbon.utils:jar:4.5.3 -> org.ops4j.pax.logging:pax-logging-log4j2:jar:1.11.0 -> org.knopflerfish.kf6:log-API:jar:5.0.0: Failed to read artifact descriptor for org.knopflerfish.kf6:log-API:jar:5.0.0: Could not transfer artifact org.knopflerfish.kf6:log-API:pom:5.0.0 from/to maven-default-http-blocker (http://<IP_ADDRESS>/): Blocked mirror for repositories: [wso2-nexus (http://maven.wso2.org/nexus/content/groups/wso2-public/, default, releases+snapshots), wso2.releases (http://maven.wso2.org/nexus/content/repositories/releases/, default, releases+snapshots), wso2.snapshots (http://maven.wso2.org/nexus/content/repositories/snapshots/, default, snapshots), knopflerfish (http://resources.knopflerfish.org/repo/maven2/release, default, releases+snapshots)] -> [Help 1]

Resolved by the following:

Downgraded to maven 3.6.3.  Starting in 3.8.1 Maven it will block non-https public repos.
Missing Knopflerfish 6 Repository


Tip-unlock: Problems entering decimal places

Version Found
lbry.tv - 2020-06-24
Bug
When unlocking a support on a claim, I can't enter decimal places directly in some scenarios.
To Reproduce

I have a claim with "185.05 LBC to unlock"
I tried to type 85.05, but the period doesn't work ❌
Typing 185.05 surprisingly worked ✔
Dragging the slider does produce decimal points. To get my desired value of 85.05, I had to drag the slider to the closest value, then edit the characters.

I have a similar issue. If I want to unlock an amount less than 1, I'm unable to start by typing the decimal point. I get a message saying something to the effect of, "the amount must be a number." And if I start by typing 0 first, I get a message saying the amount can't be zero. I also find myself having to drag the slider to the nearest amount and then editing the numbers to get the amount I want.


[SUPPORT] flink batch mode commit hudi，enable automatic archive,not clean before archive

Flink hudi's clean operation is placed in checkpoint.
When using flink run batch mode on hudi table with auto archive enabled, not do clean action before archive.
This causes historical partition deletion operations to be lost.

Sorry, can you elaborate more details here?

When do you expect to execute the cleaning then?


How can i see if Bootstrap:Subnav work good ?

Hi all user
Bootstrap:Subnav
page create, but, after ?
I can't found this visuel. Please, can you say me where i can see this ?
I use media wiki 1.26

?


Any way to add custom TailwindCSS styles?

After looking through the documentation, I notice there is no info on how to add custom TailwindCSS classes for a custom style. I see the "Look and Feel" section, so does this mean there's only 1 way the table can look?

Thanks @perryraskin for your observation. I will be making a release in a few days that fixes

This
Better search optimization
Remove UNSAFE react lifecycle methods
Add better pagination
Improve overall performace

Hi! any news about this upcoming release?

:tada: This issue has been resolved in version 1.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Handle exception in realtime decoder gracefully

This PR continues the effort from #9163
We already added continueOnError flag in previous PRs to handle errors gracefully. This PR extends the same configs to handle decoder exceptions as well.
A new config flag has also been added called skipPartialRecords through which user can decided whether to consume these partial records or not after continueOnError.
The PR also adds $INCOMPETE_RECORDS_KEY$ as a schema column so that users can query which records need to be fixed in the table. The current implmentation is not ideal and should ideally be through VirtualColumnProvider. However, it would need some interface changes in virtual column classes.

Codecov Report

Merging #9511 (89c64ca) into master (b026d32) will decrease coverage by 34.77%.
The diff coverage is 6.66%.

@@              Coverage Diff              @@
##             master    #9511       +/-   ##
=============================================
- Coverage     70.00%   35.23%   -34.78%
+ Complexity     4792      189     -4603
=============================================
  Files          1921     1927        +6
  Lines        102349   102763      +414
  Branches      15530    15600       +70
=============================================
- Hits          71651    36205    -35446
- Misses        25636    63490    +37854
+ Partials       5062     3068     -1994

Flag
Coverage Δ

integration1
26.07% <6.66%> (+0.16%)
:arrow_up:

integration2
?

unittests1
?

unittests2
15.58% <0.00%> (-0.01%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

.../local/recordtransformer/CompositeTransformer.java
0.00% <ø> (-83.34%)
:arrow_down:

...cal/recordtransformer/SanitizationTransformer.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...gment/local/segment/creator/TransformPipeline.java
0.00% <0.00%> (-83.73%)
:arrow_down:

...t/creator/impl/SegmentIndexCreationDriverImpl.java
0.00% <0.00%> (-80.11%)
:arrow_down:

...ache/pinot/segment/local/utils/IngestionUtils.java
0.00% <0.00%> (-28.08%)
:arrow_down:

...ot/spi/config/table/ingestion/IngestionConfig.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...manager/realtime/LLRealtimeSegmentDataManager.java
55.45% <18.18%> (-14.66%)
:arrow_down:

.../core/segment/processing/mapper/SegmentMapper.java
87.87% <25.00%> (-1.19%)
:arrow_down:

...manager/realtime/HLRealtimeSegmentDataManager.java
74.19% <50.00%> (-8.68%)
:arrow_down:

...in/java/org/apache/pinot/spi/utils/BytesUtils.java
0.00% <0.00%> (-100.00%)
:arrow_down:

... and 1158 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


reIndent

Hi
Please check it.
I looked editorconfig and your code
I think more miss indent.
It is not unified coding role.
Sorry.
I am not good at English.
If you are rude.
i'm so sorry.
Thanks
Lasty

Thank you!


Added coverage to ExodusModel.

Took the opportunity to clean up some historical annoyances as well.
This being said, there's still some sketchy-ness. This is based mainly
around the current lack of standard on how we name our parameters. I
believe this can be easily fixed in the future, as soon as we write the
little mixin classes for isotropic / anisotropic propagation. Right now,
some value will be checked, and swapped if appropriate. If this happens,
the user will get a friendly warning.
As of now, the case where we have nodal variables, instead of discontinuous elemental variables, is not tested. @martinvandriel is this capability in the mesher at the moment?

Current coverage is 90.59% (diff: 80.21%)

Merging #42 into master will increase coverage by 1.37%

@@             master        #42   diff @@
==========================================
  Files            42         42
  Lines          2133       2148    +15
  Methods         323        326     +3
  Messages          0          0
  Branches        376        376
==========================================
+ Hits           1903       1946    +43
+ Misses          230        202    -28
  Partials          0          0

Powered by Codecov. Last update 56c1758...350aa2b


Small changes

A simple 'import arcpy' statement was missing from the Scenario Plots file. Added it to make it run. It is necessary for this to be reviewed soon as we need to present on 24-02-2017 (Friday).

@daren-thomas , @JIMENOFONSECA : Just getting your attention to this Pull Request

@daren-thomas, thanks for the inputs. I have updated the file based on your inputs.

@daren-thomas : It works with the changes in ArcScene. I connected it to the files from the issue and did this test.


Can't find google play services, Build Model fails

Hey there,
I'm trying to include your project in a teaching curriculum (simply as something to deconstruct at the end of the course, not majorly incorporated), but I can't seem to get it to build.  The error output is as follows:
FAILURE: Build failed with an exception.

What went wrong:
A problem occurred configuring project ':android'.

Could not resolve all dependencies for configuration ':android:_debugCompile'.
Could not find com.google.android.gms:play-services:4.4.52.
Searched in the following locations:
file:/C:/Users/Matt/.m2/repository/com/google/android/gms/play-services/4.4.52/play-services-4.4.52.pom
file:/C:/Users/Matt/.m2/repository/com/google/android/gms/play-services/4.4.52/play-services-4.4.52.jar
https://repo1.maven.org/maven2/com/google/android/gms/play-services/4.4.52/play-services-4.4.52.pom
https://repo1.maven.org/maven2/com/google/android/gms/play-services/4.4.52/play-services-4.4.52.jar
https://oss.sonatype.org/content/repositories/snapshots/com/google/android/gms/play-services/4.4.52/play-services-4.4.52.pom
https://oss.sonatype.org/content/repositories/snapshots/com/google/android/gms/play-services/4.4.52/play-services-4.4.52.jar
https://oss.sonatype.org/content/repositories/releases/com/google/android/gms/play-services/4.4.52/play-services-4.4.52.pom
https://oss.sonatype.org/content/repositories/releases/com/google/android/gms/play-services/4.4.52/play-services-4.4.52.jar
Required by:
martianrun:android:1.0

Clearly we just need to point it to the right rpository for Google Play Services, or I need to get the right version locally, but I wasn't quite sure how to do it.
I was able to work around the issue by just removing the compile instruction for GPS, but then obviously I can't build android builds.  Desktop builds work just fine, though, so I think I can still work with this!
Yours is the first libGDX game I've been able to get running on Windows in Eclipse, after trying quite a few!  Thanks for putting all of this up!

@mtschoen sorry for the late response. I think that you are missing GPS in your android home. Have you checked that it's installed?

Hm. I just tried again on another computer, made sure to get GPS in the SDK manager, and tried to update the version in build.gradle to the latest (7.0.0) but gradle seems to be looking in the wrong location.  Maybe it's looking for the place where Android Studio puts the SDK?
I tried setting ANDROID_HOME, as well, but to no avail.

are you compiling the project from Android Studio or the command line? If it's from the command line, make sure you have your ANDROID_HOME set up either as an environment variable or in the project's local.properties. If you are running it from Android Studio, make sure you are working with the Gradle wrapper included in the project and not your local Gradle installation, maybe there's something misconfigured

Actually I'm using Eclipse...

Oh... I haven't worked with Gradle + Eclipse, but have you tried compiling from the command line? I just cloned it in a different computer and running "./gradlew assemble" worked fine.
Look at #1, not sure if it's related.

Hm. Gradlew assemble has the same result. Also I'm on Windows.  I can try Android Studio, but I've never used it or IntelliJ before, so I'd like to stay with Eclipse.
Anyway I'm able to get away with just building the desktop version and removing the android build target.  Do you think you could give it a shot in Eclipse?  What version of GPS should I be pointing to?

sure, I'll try Eclipse and will let you know. Any GPS version with ads support and basic google game services will do, 4.4.52 works fine.
One more thing, check that google play services is indeed in your Android SDK. All installed versions should be in %ANDROID_HOME%/extras/google/m2repository/com/google/android/gms/play-services/

@mtschoen I got it to build in Eclipse, sorry :-/

Hm, so it must be a windows thing then  (i assume you're on osx or linux?)
My android  sdk doesn't follow the same directory structure, which is odd. I wonder if this is just a problem with gradle or libgdx in general. 8 can find gps, but its in sdk/extras/google, no m2repo folder...
Thanks for your help, btw. I appreciate your time :)

I'm on osx, yes. Hope you get it to work and let me know if you have any other questions :)

Thanks. I might try installing android studio and getting the sdk installed where gradle expects it, but I'm not hopeful. That said, yours was the first open source project i could actually get to compile and run at all, so hooray!


Changing way to apply auto-style values

Related ticket: https://github.com/CartoDB/deep-insights.js/issues/557.
Instead of keep going with the previous way of setting auto-style values, we have changed several things in order to improve what we had.

Now we use PostCSS parser to edit/remove/create properties from the current CartoCSS (thanks to @rochoa for the idea).
We just replace or remove CartoCSS declarations, we don't add any other new symbolizers (like mapnik::geometry_type).
Removed unnecessary and fake code related to auto-style.

Acceptance
Using a polygon dataset as example, add a histogram widget.
1

Set a normal CartoCSS

#layer {
  polygon-fill: #343943;
  polygon-opacity: 0.9;
}

Apply auto-style and check everything is ok, it should be:

#layer {
  polygon-fill: ramp([column_name], cartocolor(ramp, x), whatever);
  polygon-opacity: 0.9;
}

2

Set a CartoCSS with ::outline

#layer {
  polygon-fill: #343943;
  polygon-opacity: 0.9;
  ::outline {
  	line-width: 1;
  	line-color: #FFF;
  	line-opacity: 0.5;
  }
}

Apply auto-style and check everything is ok, it should be:

#layer {
  polygon-fill: ramp([a03_bloc_1], cartocolor(one, X), whatever);
  polygon-opacity: 0.9;
  ::outline {
  	line-width: 1;
  	line-color: #FFF;
  	line-opacity: 0.5;
  }
}

3

Set a CartoCSS with conditional styles

#layer {
  polygon-fill: #343943;
  polygon-opacity: 0.9;
  [column_name>10] {
  	polygon-fill: red;
        polygon-opacity: 1;
  }
  ::outline {
  	line-width: 1;
  	line-color: #FFF;
  	line-opacity: 0.5;
  }
}

Apply auto-style and check everything is ok, it should be:

#layer {
  polygon-fill: ramp([column_name], cartocolor(one, X), jenks);
  polygon-opacity: 0.9;
  [column_name>10] {
    polygon-opacity: 1;
  }
  ::outline {
  	line-width: 1;
  	line-color: #FFF;
  	line-opacity: 0.5;
  }
}

4

Set a CartoCSS with conditional styles and new symbolizer.

#layer {
  polygon-fill: #343943;
  polygon-opacity: 0.9;
  [column_name>10] {
  	polygon-fill: red;
  }
  ::outline {
  	line-width: 1;
  	line-color: #FFF;
  	line-opacity: 0.5;
  }
}
#layer['mapnik::geometry_type'=3] {
  polygon-fill: blue;
  polygon-opacity: 0.3;
}

Apply auto-style and check everything is ok, it should be:

#layer {
  polygon-fill: ramp([column_name], cartocolor(one, x), whatever);
  polygon-opacity: 0.9;
  [column_name>10] {
  }
  ::outline {
  	line-width: 1;
  	line-color: #FFF;
  	line-opacity: 0.5;
  }
}
#layer['mapnik::geometry_type'=3] {
  polygon-opacity: 0.3;
}

cc @rochoa @nobuti

Reviewed @alonsogarciapablo! 💋

Planning to merge it tomorrow morning @alonsogarciapablo 💋

:+1:


[DNM]: Bug 1886859: ceph: ignore unscheduled ceph daemons while cleaning up

Before cleaning up the cluster, we wait for all the daemon pods to be cleaned up. This fails when
a daemon is in pending state and has no NodeName. This PR ignores daemon pods that are not scheduled on any node.
Signed-off-by: Santosh Pillai<EMAIL_ADDRESS>(cherry picked from commit 753bdb3526ab56e6c6ce51215a6b97099bda7df9)

Description of your changes:
Which issue is resolved by this Pull Request:
Resolves #
Checklist:

[ ] Commit Message Formatting: Commit titles and messages follow guidelines in the developer guide.
[ ] Skip Tests for Docs: Add the flag for skipping the build if this is only a documentation change. See here for the flag.
[ ] Skip Unrelated Tests: Add a flag to run tests for a specific storage provider. See test options.
[ ] Reviewed the developer guide on Submitting a Pull Request
[ ] Documentation has been updated, if necessary.
[ ] Unit tests have been added, if necessary.
[ ] Integration tests have been added, if necessary.
[ ] Pending release notes updated with breaking and/or notable changes, if necessary.
[ ] Upgrade from previous release is tested and upgrade user guide is updated, if necessary.
[ ] Code generation (make codegen) has been run to update object specifications, if necessary.

Merging since this is a blocker.

@sp98 I see you have the DNM flag, why can't we merge it?

@sp98 I see you have the DNM flag, why can't we merge it?

I believe we are waiting for final build for 4.6!  @agarwal-mudit is that right?

@sp98 I see you have the DNM flag, why can't we merge it?

I believe we are waiting for final build for 4.6! @agarwal-mudit is that right?

This BZ was not approved for 4.6.0, it would be taken in 4.6.1. So we should merge it after 4.6.0 is released.

Per change in 4.6.0 schedule, approved for merge.


refactor: allow lazy injection tokens not to provide a factory

Issue or need
About to use a lazy injection token for the DEFAULTS token. But in there, no factory is needed. However, the current util function requires one.

Proposed changes
Allows util to make lazy injection tokens to create tokens without factories. Useful in the following PR's case.

Quick reminders

🤝 I will follow Code of Conduct
✅ No existing pull request already does almost same changes
👁 Contributing docs are something I've taken a look at
📝 Commit messages convention has been followed
💬 TSDoc comments have been added or updated indicating API visibility if API surface has changed.
🧪 Tests have been added if needed. For instance, if adding new features or fixing a bug. Or removed if removing features.
⚙ API Report has been updated if API surface is altered.

#907  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @davidlj95 and the rest of your teammates on  Graphite


PR - CCM Slide MMO

I imported CCM Slide this time in MMO. Next I am going to pull request the levelData edit on mmo-server.

I'm also going to add the death barrier for pss if that's ok.

Merged in manually! Great!


Fix #11582, and other enhancements.

I ran all regression tests, and see no error on my machine.
This pull requests handles several issues. I don't know how you prefer it, so I can split this pull requests into multiple small chunks if you wish.
The first two commits: Fixes #11582 on trac. These commits provide a starting point for discussion. I'm willing to work together on a better solution.
Commits three and four care about typos, I don't expect any problems here. This is a strict superset of the other pull request.
The last commit fixes current issues in <boost/test/detail/throw_exception.hpp>.
As far as I can see, you are currently working on this and already have fixed in your branch "new_cla"; however you haven't made it available yet. Since this change is atomic and easy to separate, I suggest applying it now instead of waiting on new_cla. YMMV.
EDIT: Github wrongly displays the order of commits in the overview below (huh?)
In my PR, first add the tests, then provide the fix. Again, YMMV, and I'm willing to change the order if you wish.

BOOST_NORETURN and typo in in develop


Handle trailing commas for request bodies

Describe the bug
Request bodies with trailing JSON commas cause Graph Explorer to perform in an unexpected way. JSON spec does not allow trailing commas.
To Reproduce
Steps to reproduce the behavior:

Go to Graph Explorer
Sign in.
Create a POST or PATCH request with a request body that contains a trailing comma.
See error in console.

Expected behavior
We show an error message stating that the supplied JSON is invalid.
Screenshots

**Desktop **

Browser chrome, edge

Additional context
Incident 187938447

Based on my testing, the issue occurred if request syntax error (like invalid JSON) detected in PATCH/POST method, or even send an empty request body.
No error indicated user to correct request syntax, the query just stuck or hang there without any response until you refresh browser.
This is quite confusing and annoying experience to users.

Hi Guys,
Just want to check when we can fix this bug?
Thanks.

Hi Team,
It's still not working on my side. The symptom is the same.

this change hasn't deployed yet.  Current schedule is later this week.

this change hasn't deployed yet. Current schedule is later this week.

Thanks! I will try this next Monday.

Hi Team,
May I know if the change has been deployed now? I tried it today but looks like still didn't work.
Thanks.

Sorry, I test in the local instance and it worked, version 4.1.3.
May I know then this version can be published to the public instance?

@JimmyLS We are awaiting a resolution to a related deployment blocker.

Thank you so much!


Allow multichain queries for user service

Change the queries to allow filtering based on chainIDs, instead of relying solely on the default chainID passed in a header. Filter should include the header chainId to maintain backward compatibility.
From Daniel:
You'd need to update the user queries to support an array of chains:
extend type Query {
    userGetPoolBalances(chains: [GqlChain!]!): [GqlUserPoolBalance!]!
    userGetStaking(chains: [GqlChain!]!): [GqlPoolStaking!]!

Done for PoolBalances, pending for staking

also change the user ID to be passed via param in addition to header

https://github.com/beethovenxfi/beethovenx-backend/pull/518


Sub choosing dropdown unselected items are again invisible with dark theme under Google Chrome

Description
Sub choosing dropdown unselected items are again invisible with dark theme under Google Chrome. Not so with Firefox, there everything is ok. Both in main page and new post page.
Screenshots

Environment:

OS: Linux with Xfce4 DE
Browser: Google Chrome
Version: 114.0.5735.198

Seems fixed with https://stacker.news/items/223686.

Yup!


scipy-openblas32 and scipy-openblas64 have wrong permissions for their tokens

Also hitting this in scipy-openblas32 and scipy-openblas64, with @honno's API key, see the latest merge CI run which all failed to upload.

Originally posted by @mattip in https://github.com/scientific-python/upload-nightly-action/issues/57#issuecomment-1919004965
This is a different problem than Issue #57 given the error logs
Error:  ('User "<User: _login=honno>" has not enough permissions to create "<User: _login=scientific-python-nightly-wheels>/scipy_openblas64" package', 401)
Error: Process completed with exit code 1.

so this discussion has been moved here.

@honno as this is your personal token (as intended :+1:), can you please check that you've set permission for it correctly following https://github.com/scientific-python/upload-nightly-action/issues/58#issuecomment-1909089968? If so, I would suggest regenerating the tokens and then following up with @stefanv and @jarrodmillman here to ensure permissions are being given to your individual account correctly.

Sure, I am an admin for the scipy-openblas32, scipy-openblas64, and openblas-libs packages. How can I create a token?

@mattip please have a look at the SPEC4 for the instructions https://scientific-python.org/specs/spec-0004/#process-for-adding-new-projects

I generated an API token with the three permissions specified. CI is still failing to upload scipy_openblas32-<IP_ADDRESS>-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl. Note it is using the new token since it now has my username:
Error:  ('User "<User: _login=mattip>" has not enough permissions to create "<User: _login=scientific-python-nightly-wheels>/scipy_openblas32" package', 401)

When I look at https://anaconda.org/scientific-python-nightly-wheels/repo, I see these two projects are marked "collaborator".

@ksunden The matploltlib team seem to be uploading just fine, and are using the latest v0.3.0 action release as of https://github.com/matplotlib/matplotlib/pull/27715, so can you comment on if you had to set any other permissions than what we request in https://scientific-python.org/specs/spec-0004/#process-for-adding-new-projects?
@mattip I see that you're currently not using the uploader action. That's fine of course, but is there functionality missing in the v0.3.0 that you need that is keeping you from using it?

Ahh, I think I see the problem. Somehow I started creating wheels with scipy_openblas64 and scipy_openblas32 rather than scipy-openblas64 and scipy-openblas32 (underline instead of dash separator). PyPI will normalize the name to use the dash, but anaconda does not.

I think this changed due to https://github.com/pypa/setuptools/pull/4159, which now will force wheel file names for projects like scipy-openblas64 to scipy_openblas64. I will try forcing a rename of the file to restore the dash before upload.

@mattip it looks like you're able to upload now, so it seems that https://github.com/MacPython/openblas-libs/pull/135 resolved your issue. If so, can we close this Issue now?

I'm not sure. Should the upload action be checking for a mismatch between the project name and the wheel name? Maybe the upload action could have an option to specify the project name?

I'm not sure. Should the upload action be checking for a mismatch between the project name and the wheel name? Maybe the upload action could have an option to specify the project name?

@mattip I'm confused. You confirmed that you're not using the upload action at all in https://github.com/scientific-python/upload-nightly-action/issues/61#issuecomment-1926521210. You're using your own workflow, and so aren't using the action that this repository provides, correct?
If so, and if the way that you're using anaconda-client's upload command isn't working as expected you should open up an Issue on https://github.com/Anaconda-Platform/anaconda-client (you will also need to be persistent though, as the repo Issues do not get lots of interaction usually).

OK, please close this. I hope scikit-image doesn't hit this issue.

I hope scikit-image doesn't hit this issue.

@mattip No worries, as everything on scikit-image is fine in the weekly scheduled workflow uploads using this action. This is a screen shot of their latest upload workflow that ran on 2024-02-04

and as can be see on https://anaconda.org/scientific-python-nightly-wheels/scikit-image/files the scikit-image wheel files are available. :+1:
This action uses a lock file so there can't be any deviation in behavior in the action side software from run to run, only in the Anaconda cloud backend (as we see in Issue #57).

This action uses a lock file so there can't be any deviation in behavior

Cool. Thanks for closing. The problem I hit was due to the wheel building (before this action runs) so the whole thread is off topic. Sorry for the noise.


build: build Rust examples as part of test

Feature or Problem

Build Rust examples as part of normal testing procedure, while keeping the examples in their own workspaces
Related Issues

Release Information

Consumer Impact

Testing

Unit Test(s)

Acceptance or Integration

Manual Verification

After thinking a bit about this, let's just update test_actors and write unit tests like in #1929


chore: specify files in package.json

.npmignore is no longer necessary when using this way. This helps to reduce maintenance.
Based on https://github.com/hexojs/hexo-renderer-marked/pull/96

Coverage remained the same at 100.0% when pulling e9dd5ef6eea2b1f3bea32c17aabab19e1a195bc7 on weyusi:specify-files into 6ffe8816b8acac6d94ed555e8a59b762fdd01e2b on hexojs:master.

Coverage remained the same at 100.0% when pulling e9dd5ef6eea2b1f3bea32c17aabab19e1a195bc7 on weyusi:specify-files into 6ffe8816b8acac6d94ed555e8a59b762fdd01e2b on hexojs:master.


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_34v7iqxaxr/clone/recipe/meta.yaml:16: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_34v7iqxaxr/clone/recipe/meta.yaml:26: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_34v7iqxaxr/clone/recipe/meta.yaml:26: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
ERROR: /tmp/abs_34v7iqxaxr/clone/recipe/meta.yaml:40: missing_pip_check: For pypi packages, pip check should be present in the test commands
ERROR: /tmp/abs_34v7iqxaxr/clone/recipe/meta.yaml:46: missing_dev_url: The recipe is missing a dev_url
ERROR: /tmp/abs_34v7iqxaxr/clone/recipe/meta.yaml:46: missing_documentation: The recipe is missing a doc_url or doc_source_url
WARNING: /tmp/abs_34v7iqxaxr/clone/recipe/meta.yaml:46: missing_description: The recipe is missing a description
ERROR: /tmp/abs_34v7iqxaxr/clone/recipe/meta.yaml:46: missing_license_family: The recipe is missing the about/license_family key.
Errors were found


pull request for e2e test at 12/30/2016 08:56:08

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Moose MultiApp interface

This applies specifically to the MOOSE-based app CodeInterface.  It is not a main framework issue.
While we do a great job handling single-physics code interfaces for MOOSE-based apps, we don't have a generic tool yet that would handle arbitrary multiapps with multiple input files.  It would be simple to prepend the variable lists with the name of the file they come from, or make that an argument to the XML node, or something similar, but this has not been done yet.

For Change Control Board: Issue Review
This review should occur before any development is performed as a response to this issue.

[ ] 1. Is it tagged with a type: defect or improvement?
[ ] 2. Is it tagged with a priority: critical, normal or minor?
[ ] 3. If it will impact requirements or requirements tests, is it tagged with requirements?
[ ] 4. If it is a defect, can it cause wrong results for users? If so an email needs to be sent to the users.
[ ] 5. Is a rationale provided? (Such as explaining why the improvement is needed or why current code is wrong.)

For Change Control Board: Issue Closure
This review should occur when the issue is imminently going to be closed.

[ ] 1. If the issue is a defect, is the defect fixed?
[ ] 2. If the issue is a defect, is the defect tested for in the regression test system?  (If not explain why not.)
[ ] 3. If the issue can impact users, has an email to the users group been written (the email should specify if the defect impacts stable or master)?
[ ] 4. If the issue is a defect, does it impact the latest stable branch? If yes, is there any issue tagged with stable (create if needed)?
[ ] 5. If the issue is being closed without a merge request, has an explanation of why it is being closed been provided?

archived

archived


Ctrl and enter to send

Yay! Thanks!

No problem!
I noticed that just enabling ctrl + enter would disallow from using it to add line breaks to your message, so I think this strikes a good balance for people who prefer one behavior over another.

Perhaps shift+enter for break?

can't believe I missed that...good catch! really makes it a lot less complicated

So basically you want to be able to do ctrl + enter because when you copy-paste and send stuff you forget to release ctrl ? Am i getting this right ?

So basically you are adding a toggle in the menuitem + adding a new shortcut (shift+enter) just because you forget to release ctrl before hitting enter. I am not sure about this, hmm..

why not just be consistent with hangouts? thus shift+enter = break, and enter/ctrl+enter = send


Non-fatal error is generated when flutter is being built:
╰─➤  $FH/flutter/bin/flutter test
Downloading Dart SDK from Flutter engine b157d4f5683023836cdf15d42bf56fd201a7084b...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 76.9M  100 76.9M    0     0  39.1M      0  0:00:01  0:00:01 --:--:-- 39.1M
Building flutter tool...
Failed to precompile kernel:util:
Dart_LoadScriptFromKernel: The binary program does not contain 'main'.

cc @a-siva in case you have some thoughts on this

@devoncarew have you had much progress with running flutter tools in dart2 mode? @a-siva mentioned you were looking at that recently. The issues we are seeing here seem to be related to that.

I have a PR that address some issues: https://github.com/flutter/flutter/pull/19007
If this is blocking the roll I can look at addressing the review comments and seeing about landing it.

Okay, good to know. We could run flutter tools explictly in dart1 mode until your PR lands

We could run flutter tools explictly in dart1 mode until your PR lands

Sounds like a good workaround; we would want to back out that flag and see what the impact is.

| | We could run flutter tools explictly in dart1 mode until your PR lands
| Sounds like a good workaround; we would want to back out that flag and see what the impact is.
I gave it a try (add --no-preview-dart-2 flag to flutter shell script), but could not get tests(flutter test) to pass. Instead I'm trying to patch https://github.com/flutter/flutter/pull/19007 in and see how that holds up. At least locally tests seem to pass.

Will land my PR once the bots are device bots are green.

I'm trying to patch

Note that I had once small update - changes that hadn't made it into the main PR the first time around.

I'm trying to patch

Note that I had once small update - changes that hadn't made it into the main PR the first time around.

Yep, github pinged when you added another change.

flutter_tools tests are failing with mysterious error:
⏩ RUNNING: cd packages/flutter_tools; ../../bin/cache/dart-sdk/bin/pub run test -j1 -rcompact
Unable to spawn isolate: .dart_tool/pub/bin/test/test.dart.snapshot.dart2:1:1: Error: Unable to decode bytes as UTF-8.
����
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ERROR: Last command exited with 1 (expected: zero).
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

cc @a-siva

Error https://github.com/flutter/flutter/pull/19044#issuecomment-402320496 is caused by a bug in uri handling in File::OpenUri where percent-encoded characters(space is encoded as %20) are not decoded.

FYI I have an engine roll almost about to land...

@cbracken

FYI I have an engine roll almost about to land...
Not sure how we ended up with competing rolls, but I see yours still have errors, which I believe mine have fixes for.

sgtm!


Inconsistency when signing data

First of all, thanks @nagyesta for this awesome project.
Describe the bug
When using the official client and connecting to a real key vault, I cannot use the CryptographyClient#sign method to sign an arbitrary amount of data. It wants you to already send a digest compatible with the specified algorithm. For example, if I choose SHA256, it wants a byte[] with exactly 32 bytes. The signData method on the other hand accepts any kind of input for the data parameter. In this case, the CryptographyClient builds the digest for you.
However, in the lowkeyvault client, the CryptographyClient#sign allows arbitrary data as the method argument and it will digest it. In short, the real keyvault's signData method is functionally equivalent with lowkeyvault's sign method.
The signData method of lowkeyvault on the other hand seems to do something entirely different. At least in my tests, it did not create the signatures I expected.
To reproduce
For the sign method:

Call the sign method of the real key vault with a byte[] of size 33 -> Exception
Call the sign method of lowkey vault vault with a byte[] of size 33 -> Creates a signature for the digest of the given byte array.

For the signData method:

Compare the result of calling the signData method of the real key vault and the lowkey vault. They differ.

Environment
Version: 1.28.94

Hi @michaeljgea ,
Thank you for giving Lowkey Vault a chance and thank you for the great quality bug report! I wasn't aware of how these endpoints worked exactly, so I think I didn't add any restrictions around them.
I need to take a better look at how the client generates the requests and what is the source of the difference you have seen between the official and the Lowkey Vault clients, considering that the Lowkey Vault client is only supposed to configure an instance of the official client for you. Anyway, I will look into it for sure and figure out what the cause might be.
How urgently do you need the fix?

It's not urgent. We have a workaround in place where we switch the signing method used with a lambda, based on whether or not we are using the real keyvault or lowkey vault as a backend. Obviously, it would be optimal to have lowkey vault as a drop-in replacement, but it is more of a nice-to-have ;-)

If it helps, I can also try to provide a minimum viable example code to reproduce the problem.

Hi @michaeljgea ,
sorry for the slow response! The example you have suggested would be a huge help, thank you in advance!
If you could share the example code as well as what kind of key I should create in both the real key vault and in Lowkey Vault, then I would see the issue easily!
I can most probably take a look over the weekend and figure out how hard it will be to fix it.

Here is an example:
package com.gea.ft.service.enrollment.controller;

import com.azure.core.util.polling.SyncPoller;
import com.azure.identity.DefaultAzureCredential;
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.azure.security.keyvault.certificates.CertificateClient;
import com.azure.security.keyvault.certificates.CertificateClientBuilder;
import com.azure.security.keyvault.certificates.models.CertificateContentType;
import com.azure.security.keyvault.certificates.models.CertificateKeyType;
import com.azure.security.keyvault.certificates.models.CertificateKeyUsage;
import com.azure.security.keyvault.certificates.models.CertificateOperation;
import com.azure.security.keyvault.certificates.models.CertificatePolicy;
import com.azure.security.keyvault.certificates.models.KeyVaultCertificateWithPolicy;
import com.azure.security.keyvault.keys.KeyClient;
import com.azure.security.keyvault.keys.KeyClientBuilder;
import com.azure.security.keyvault.keys.cryptography.CryptographyClient;
import com.azure.security.keyvault.keys.cryptography.models.SignResult;
import com.azure.security.keyvault.keys.cryptography.models.SignatureAlgorithm;
import com.github.nagyesta.lowkeyvault.http.ApacheHttpClientProvider;
import com.github.nagyesta.lowkeyvault.http.AuthorityOverrideFunction;
import com.github.nagyesta.lowkeyvault.testcontainers.LowkeyVaultContainer;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.DisplayNameGeneration;
import org.junit.jupiter.api.DisplayNameGenerator;
import org.junit.jupiter.api.Test;
import org.testcontainers.images.PullPolicy;
import org.testcontainers.junit.jupiter.Container;
import org.testcontainers.junit.jupiter.Testcontainers;
import org.testcontainers.utility.DockerImageName;

import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.security.PublicKey;
import java.security.Signature;
import java.security.cert.CertificateFactory;
import java.util.Collections;
import java.util.HashSet;
import java.util.UUID;

import static com.github.nagyesta.lowkeyvault.testcontainers.LowkeyVaultContainerBuilder.lowkeyVault;
import static org.assertj.core.api.Assertions.assertThat;

@DisplayNameGeneration(DisplayNameGenerator.ReplaceUnderscores.class)
@Testcontainers
@Slf4j
public class MveTest {
    private static final String LOWKEY_VAULT_NAME = "default";
    private static final String ROOT_CA_NAME = "CN=my-root-ca";
    private static final String LOREM_IPSUM =
            "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.";
    private static final String REAL_KEY_VAULT_URL = "https://FILL-ME.vault.azure.net/";

    @Container
    static LowkeyVaultContainer vault = lowkeyVault(DockerImageName.parse("nagyesta/lowkey-vault:1.28.94")).vaultNames(
            new HashSet<>() {
                {
                    this.add(LOWKEY_VAULT_NAME); // Set.of(..) did not work somehow
                }
            }).build().withImagePullPolicy(PullPolicy.defaultPolicy());

    @Test
    void given_lowkey_vault_when_signing_long_text_with_sign_method() {
        // generate root certificate
        ApacheHttpClientProvider clientProvider = new ApacheHttpClientProvider(vault.getVaultBaseUrl(LOWKEY_VAULT_NAME),
                new AuthorityOverrideFunction(vault.getVaultAuthority(LOWKEY_VAULT_NAME), vault
                        .getEndpointAuthority()));
        CertificateClient certificateClient = clientProvider.getCertificateClient();
        KeyClient keyClient = clientProvider.getKeyClient();
        KeyVaultCertificateWithPolicy rootCertificate = generateRootCertificate(certificateClient);
        PublicKey rootCertificatePK = getPublicKey(rootCertificate.getCer());
        CryptographyClient cryptographyClient = getCryptographyClient(keyClient, rootCertificate);

        SignResult result = cryptographyClient.sign(SignatureAlgorithm.RS256, LOREM_IPSUM.getBytes());

        assertThat(checkSignature(rootCertificatePK, result.getSignature())).isTrue();
    }

    @Test
    void given_lowkey_vault_when_signing_long_text_with_signData_method() {
        // generate root certificate
        ApacheHttpClientProvider clientProvider = new ApacheHttpClientProvider(vault.getVaultBaseUrl(LOWKEY_VAULT_NAME),
                new AuthorityOverrideFunction(vault.getVaultAuthority(LOWKEY_VAULT_NAME), vault
                        .getEndpointAuthority()));
        CertificateClient certificateClient = clientProvider.getCertificateClient();
        KeyClient keyClient = clientProvider.getKeyClient();
        KeyVaultCertificateWithPolicy rootCertificate = generateRootCertificate(certificateClient);
        PublicKey rootCertificatePK = getPublicKey(rootCertificate.getCer());
        CryptographyClient cryptographyClient = getCryptographyClient(keyClient, rootCertificate);

        SignResult result = cryptographyClient.signData(SignatureAlgorithm.RS256, LOREM_IPSUM.getBytes());

        assertThat(checkSignature(rootCertificatePK, result.getSignature())).isTrue();
    }

    @Test
    void given_real_vault_when_signing_long_text_with_sign_method() {
        // generate root certificate
        DefaultAzureCredential credentials = new DefaultAzureCredentialBuilder().build();
        CertificateClient certificateClient = new CertificateClientBuilder().vaultUrl(REAL_KEY_VAULT_URL)
                .credential(credentials)
                .buildClient();
        KeyClient keyClient = new KeyClientBuilder().vaultUrl(REAL_KEY_VAULT_URL).credential(credentials).buildClient();
        KeyVaultCertificateWithPolicy rootCertificate = generateRootCertificate(certificateClient);
        PublicKey rootCertificatePK = getPublicKey(rootCertificate.getCer());
        CryptographyClient cryptographyClient = getCryptographyClient(keyClient, rootCertificate);

        SignResult result = cryptographyClient.sign(SignatureAlgorithm.RS256, LOREM_IPSUM.getBytes());

        assertThat(checkSignature(rootCertificatePK, result.getSignature())).isTrue();
    }

    @SneakyThrows
    @Test
    void given_real_vault_when_signing_long_text_with_signData_method() {
        // generate root certificate
        DefaultAzureCredential credentials = new DefaultAzureCredentialBuilder().build();
        CertificateClient certificateClient = new CertificateClientBuilder().vaultUrl(REAL_KEY_VAULT_URL)
                .credential(credentials)
                .buildClient();
        KeyClient keyClient = new KeyClientBuilder().vaultUrl(REAL_KEY_VAULT_URL).credential(credentials).buildClient();
        KeyVaultCertificateWithPolicy rootCertificate = generateRootCertificate(certificateClient);
        PublicKey rootCertificatePK = getPublicKey(rootCertificate.getCer());
        CryptographyClient cryptographyClient = getCryptographyClient(keyClient, rootCertificate);

        SignResult result = cryptographyClient.signData(SignatureAlgorithm.RS256, LOREM_IPSUM.getBytes());

        assertThat(checkSignature(rootCertificatePK, result.getSignature())).isTrue();
    }

    @SneakyThrows
    private static boolean checkSignature(PublicKey publicKey, byte[] signatureToCheck) {
        Signature sig = Signature.getInstance("SHA256WithRSA");
        sig.initVerify(publicKey);
        sig.update(LOREM_IPSUM.getBytes());
        return sig.verify(signatureToCheck);
    }

    private CryptographyClient getCryptographyClient(KeyClient keyClient,
                                                     KeyVaultCertificateWithPolicy rootCertificate) {
        String[] keyIdSegments = rootCertificate.getKeyId().split("/");
        String keyName = keyIdSegments[keyIdSegments.length - 2];
        String keyVersion = keyIdSegments[keyIdSegments.length - 1];
        return keyClient.getCryptographyClient(keyName, keyVersion);
    }

    private KeyVaultCertificateWithPolicy generateRootCertificate(CertificateClient certificateClient) {
        CertificatePolicy policy = new CertificatePolicy("Self", ROOT_CA_NAME);
        policy.setExportable(false);
        policy.setKeySize(2048);
        policy.setKeyType(CertificateKeyType.RSA);
        policy.setContentType(CertificateContentType.PKCS12);
        policy.setValidityInMonths(300);
        policy.setKeyReusable(false);
        policy.setKeyUsage(CertificateKeyUsage.KEY_CERT_SIGN,
                CertificateKeyUsage.CRL_SIGN,
                CertificateKeyUsage.DIGITAL_SIGNATURE);
        String certName = UUID.randomUUID().toString();
        SyncPoller<CertificateOperation, KeyVaultCertificateWithPolicy> createOperation = certificateClient
                .beginCreateCertificate(certName, policy, true, Collections.emptyMap());
        createOperation.waitForCompletion();
        return certificateClient.getCertificate(certName);
    }

    @SneakyThrows
    private PublicKey getPublicKey(byte[] certificate) {
        CertificateFactory cf = CertificateFactory.getInstance("X.509");
        InputStream in = new ByteArrayInputStream(certificate);
        return cf.generateCertificate(in).getPublicKey();
    }
}

Dependencies in the pom:

lombok
Testcontainers
Junit 5
assertj
azure-security-keyvault-certificates
azure-security-keyvault-keys
azure-core
azure-identity
Lowkeyvault obviously :-D

To test it on your side, you have to set the REAL_KEY_VAULT_URL constant to a real key vault, where your Azure CLI user has the permissions GET and LIST for certificates and GET, LIST, and SIGN for keys.
The results on my end are as expected:

given_real_vault_when_signing_long_text_with_sign_method -> Exception, byte[] parameter should be 32 bytes in base64url encoding
given_lowkey_vault_when_signing_long_text_with_sign_method -> Succeeds (which is not consistent with the test above)
given_real_vault_when_signing_long_text_with_signData_method -> Succeeds
given_lowkey_vault_when_signing_long_text_with_signData_method -> Produces a signature, which cannot be verified against the public key of the signing certificate.

One side note here: When I use the lowkey vault's built-in verify method instead of java.security.Signature, then this test succeeds, which suggests that the signData and verify methods in lowkey vault are both implemented wrongly, but in a way that when applied together, they still work. Of course, this would not be helpful in actual use cases, where you either sign or verify something but not both.

Hope this helps!

Thank you @michaeljgea this is great! I will look into it over the weekend and see what I can do about it!

The inconsistency around signData must be because double hashing. The signData call is performing a SHA256 hashing even before the service is called. Then inside Lowkey Vault, the SHA256withRSA algorithm is used, which will hash the digest then sign as far as I understand. I will continue the investigation tomorrow, but this is promising.

I have managed to verify this with all available key types and the supported algorithms. Now, I can see, that EC cases are working as expected, but all RSA algorithms are buggy (behaving different to the real key vault).
I know how to fix the RS256, RS384, RS512 cases, but I have some trouble around the PS256, PS384, PS512, because I would need to let the client do the SHA hashing and then perform the MGF1 part with the signing (which I don't know how to do yet as I am not that strong in cryptography). Anyway, I will continue working on this and hopefully figure out how it can be done.
Worst case scenario, I might end up splitting out the MGF1 part into another bug and fix only the rest here.

Thanks for the quick investigation 👍

Hi @michaeljgea ,
thank you for all the help you have provided during this fix! The updated code was just released in v1.29.0. It should show up in Maven Central in a couple of minutes (and in searches in 1-2 hours max). The main Docker artifact is already available and the ARM build will be released as soon as Renovate notices the new Jar version.
Best of luck and please let me know in case you see any issues!
Thank you!

I can confirm that (at least for SHA256) the sign and signData methods are now behaving as expected.
Amazing work! Thanks a bunch.


Update to latest version of all dependencies

This change is

Code needs to be fixed, like CI errors indicate

Code needs to be fixed, like CI errors indicate

This branch compiles for me now locally, maybe the Travis build could be attempted again?

bors r+

Errors still see legitimate?
14 | use genmesh::generators::{IndexedPolygon, SharedVertex, SphereUV};

   |                                                         ^^^^^^^^

   |                                                         |

   |                                                         no `SphereUV` in `generators`

   |                                                         help: a similar name exists in the module (notice the capitalization): `SphereUv`

@Vurich I have rebased your changes and fixed the last build errors here
Please take what you need to make this PR going.
The main issue was cgmath::Point3::from(mint::Vector), for some reason From/Into didn't want to co-operate. So I settled for a less effective: Point3::from(*v.pos.as_ref()), but at leasts It runs.
I will keep rebasing that branch for a while, keeping it updated with master


Application Error  connection to the server was unsuccessful.

Ionic version:  (check one with "x")
[ ] 1.x
[x] 2.x
I'm submitting a ...  (check one with "x")
[x ] bug report
[ ] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:

This is the Ionic 2  starter app - cutepuppypics, worked fine till recently. After upgrading to ionic framework Rc3 , during builds it throws an Error - when I do "ionic run android"
-Application Error
connection to the server was unsuccessful. File://android_asset/www/index.html
Tried reinstalling android platform and all.
I have tried the all the starter templates of ionic 2 and its the same result across 2 different linux machines and windows machine too.
Interestingly it works fine in the android emulator, however fails on the mobile devices.
Any help will be appreciated.
Expected behavior:

Steps to reproduce:

Related code:
chrome browser output
Hello Walkthrough Page
main.js:1949 Angular 2 is running in the development mode. Call enableProdMode() to enable the production mode.
cordova.js:1185 deviceready has not fired after 5 seconds.
main.js:25553 Native: deviceready did not fire within 2000ms. This can happen when plugins are in an inconsistent state. Try removing plugins from plugins/ and reinstalling them.
(anonymous) @ main.js:25553
t.invokeTask @ polyfills.js:3
e.runTask @ polyfills.js:3
invoke @ polyfills.js:3
main.js:25548 DEVICE READY FIRED AFTER 21651 ms
Other information:

Ionic info: (run ionic info from a terminal/cmd prompt and paste output below):
On Opensuse 42.2 Linux machine with nvm installed
Cordova CLI: 6.4.0
Ionic Framework Version: 2.0.0-rc.3
Ionic CLI Version: 2.1.18
Ionic App Lib Version: 2.1.9
Ionic App Scripts Version: 0.0.48
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Linux 4.1
Node Version: v6.9.0
Xcode version: Not installed
**On windows 8 machine**
Ionic Framework Version: 2.0.0-rc.3
Ionic CLI Version: 2.1.18
Ionic App Lib Version: 2.1.9
Ionic App Scripts Version: 1.0.0
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Windows 7
Node Version: v6.9.2
Xcode version: Not installed

Do you have the Device plugin installed?
Does it work with an increased timeout?

yes it worked, thank a bunch.

Hello @magnusmel , thanks for opening an issue with us! Quick question, so after removing all the plugins it worked for you? Or did you just need to update the android platform?

I must have uninstalled over 50times the entire platform and plugins. But the real culprit was the device plugin had got removed when I first removed all plugins and for some reason was missing in the config.xml.


add android api to docs

@yogevbd , I see that there are issues with this feature. I'll try to stable it and then I'll reopen this one


Implement secretsmanager.update_secret_version_stage

Implements update_secret_version_stage. There is no related issue. Also includes the same fix to put_secret_value from https://github.com/spulec/moto/pull/2237 .
One change to internal data structure. version_stages is changed from a list to a set.

Code looks good. It looks like Travis is only complaining about the linter so happy to merge if we can get that cleaned up.


Add coverage stats on PRs

it'd be nice to see coverage stats on PRs
one idea is to have a github action workflow that adds a comment with coverage stats
another idea is to have the ci tests add show stats in the "step summary" (see https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary)

+1


[2.0] PSR-3: Logger Interface

Issue: #404
http://www.php-fig.org/psr/psr-3/
$raven = new \Raven\Client(...);
$client = \Raven\PSR3Client($raven);
$client->log(...);

or
$client = \Raven\PSR3Client([...]);
$client->log(...);

Because this pull request breaks back compatibility I can redirect it to branch feature/2.0. But only after #414 will be merged

I will resolve conficts in two days

I'm still 👎 , as said by @dcramer Sentry is not a log library, so it makes no sense to make the client a logger itself. I instead favour to support integration of PSR-3 standard into this library in terms of using the logger

to support integration of PSR-3

Sorry. I don't understand what do you mean.
I impemented described behaviour of PSR-3 (throwing Exception, placeholders, log levels, etc)

Sorry. I don't understand what do you mean.

As pointed out many times in other issues and PRs, Sentry is not a traditional logger but instead something that keep tracks of errors and nothing else, it's something that tracks what, why, where an error happened and reports it to something else. So, while you can see it as a logger that could implement PSR-3 there is no pro in doing it because logging messages is not what Sentry has been created for. Instead, I support the integration of a logger instance (for example, it could be useful) to log what's happening during the execution of Sentry (for example logging that an event is being sent to the server). Integration is not implementation: one thing is implement the whole LoggerInterface, one thing is using it

I think I would rather this be a separate class (or even separate package) than make this core. The problem with making this behavior highly accessible (and even more importantly, the default) is then people misuse Sentry and end up with a poor experience.

If we use some separate class like a
class \Raven\ClientPSR3 extends \Raven\Client implements \Psr\Log\LoggerInterface {}

we must change base class for all extending classes with overrided behaviour like in PR #413.
I don't see anything bad in adding implements of LoggerInterface to base class. Or I can do a trait so anybody could add this trait and "implements \Psr\Log\LoggerInterface" to their extending classes.
Again I don't see anything bad if somebody uses
$raven = new \Raven\Client(...);
$raven->info(...);

There is only bad thing. Users can not use Sentry without a separated package anymore. So all of them must do "require psr/log"

My main point is there is no benefit to adding this to the base client. It just adds complexity/bloat when we can just have another class which implements the spec (and calls out to the client as appropriate). This is how its done in all other platforms.

Ok. How should I call new class and trait?

There is already a LoggerAwareTrait trait and a LoggerAwareInterface interface. Symfony recommends Monolog for logging, same is for Laravel. There are many other frameworks that don't use it and provide their own implementation of the logging method (although not implementing the PSR-3 standard), I never said the opposite. But I still don't understand why you still try to reimplement the wheel just because you use Sentry as a simply logging platform. We will also have to maintain your implementation of the PSR-3, which means more work when there are more important things to do. If you really need this feature for your projects, why don't you simply implement it there? Or even better, just create your repository that is a bridge between Sentry and the PSR-3 logger

I think I would rather this be a separate class (or even separate package)

Symfony
Laravel

These things mean nothing for me.

just because you use Sentry as a simply logging platform

Lol. I never said this. At first I used Sentry for errors logging then I decided to use it for normal informational messages. All warnings and errors in my projects go to Sentry.

also have to maintain your implementation

There is no need to maintain "my" implementation. I copied working example code and coverated all code I wrote. I don't think PSR-3 may be changed so no need to maintain. It works now and it will work in the future.
More than that. All new code and features must be maintained. This is the inevitable effect that arises from additions new features. If you don't want to maintain new features just don't write them. Let's just run around with sticks and do not invent the wheel.

If you really need this feature

I don't need it. @davidbarratt wants it. And @dcramer said it would be good to support PSR-3. So I did it.

These things mean nothing for me.

You always take and use the parts you want, I just took them as examples and said there are other frameworks/projects that did reinvent the wheel

Lol. I never said this. At first I used Sentry for errors logging then I decided to use it for normal informational messages

You said it in the second part of this message. Sentry can log normal informational messages, noone is going to stop you from doing it, not even me because I have no objections on this. But Sentry is mainly for error logging (where, what, when, why, etc), not informational messages. You seems to not have this clear

There is no need to maintain "my" implementation. I copied working example code

Then everyone can do this, there is no need to add it to the core of this library

it would be good to support PSR-3

You still do not understand that supporting something is different from implementing it. And, as @dcramer said, it woud be better to have a new class if you really really really want this feature in core or, even better, create a new package. This is what I said you, if you want this feature at all costs why you simply don't create a bridge library between Sentry and whatever implementation of the PSR-3 you want?

So what guys? Do we need PSR-3? Or I should close this PR?

Searching over the net I found out this. Is it what you're suggesting to do?

https://github.com/facile-it/sentry-psr-log/blob/master/src/Logger.php#L48
Deprecated

It's not, that library was made 10 months ago when 2.0 was not even a dream. If it's useful, author or community could always improve it to support the new version

that library was made 10 months

Yes. Now it is deprecated

So what, guys? Should I close this PR and issue #404 or resolve conflicts and merge it?

I'm just going to curl up in a ball in a closet and forget that I exist.

+1 implementing PSR Logger Interface

I'm +1 on a class that implements this, but I dont think it should be overloading the base class
e.g.
class SentryLoggerWhatever {
  function __construct(same args as Client) { $this->client = ...}

  function error(...) { }
}

Over time this ensures that we dont have to be worried about the API described by PSR-3 conflicting with things Sentry wants to do.

@dcramer Do you want separate class (extending stdClass) who hides Raven Client in its protected properties? Okay. Choose
class PSR3Compatible implements ... {
function __construct (Client $client) {
    // @todo ...
}

class PSR3Compatible implements ... {
function __construct ($options) {
    // @todo ...
}

Or both at the same time.

@nokitakaze i dont really care about the API of, as long as its dead simple for a user to understand how to configure it (and doesnt cause issues w/ the base Client class)

So this is "both at the same time". Okay. But I need to wait until #462 is ready, because I need to have Client::__construct with one single param.
The new class will only have constructor, methods from PSR and method "function getClient() : Client"

Heads up all- I'm going to remove myself as a reviewer here since I'm not really focusing on the project (and to make sure its clear that I'm not blocking things).

Fix it or just close it?

Referenced this issue in hopes of the new \Raven\Client() format.

@dustingraham the new format is in the 2.x dev branch

I'm going to close this as it's clear after the recent changes that we are not considering to became a PSR-3 implementator


Update timeout documentation

This PR adds a more accurate description for configured timeout in python and adds details on timeout defaults across the languages.
Closes:

https://github.ibm.com/arf/planning-sdk-squad/issues/3164
https://github.ibm.com/arf/planning-sdk-squad/issues/2836

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


The Eco-Score sometimes does not appear on the full product page

The Eco-Score sometimes does not appear on the full product page.
https://fr.openfoodfacts.org/product/4056489207924/farine-de-ble-fluide-navarre

Yeah I think I know why. We don't check for its presence before hiding the entire card.


Improve error message for custom log field mismatch.

FreeBSD build successful! See https://ci.trafficserver.apache.org/job/freebsd-github/1477/ for details.

Linux build failed! See https://ci.trafficserver.apache.org/job/linux-github/1370/ for details.

clang-analyzer build successful! See https://ci.trafficserver.apache.org/job/clang-analyzer-github/41/ for details.

FreeBSD build successful! See https://ci.trafficserver.apache.org/job/freebsd-github/1478/ for details.

Linux build failed! See https://ci.trafficserver.apache.org/job/linux-github/1371/ for details.

clang-analyzer build successful! See https://ci.trafficserver.apache.org/job/clang-analyzer-github/42/ for details.


Unable to fit LSTM layer with default parameters?

System information

Windows 10 Home version 21H1
TensorFlow version: 2.5.0
Python version: 3.9.6
Processor:  i7-10750H CPU @ 2.60GHz
RAM: 16 GB
GPU model and memory: NVIDIA GeForce RTX 2060 6 GB

The Problem
Hello
I have a problem I have been sitting with for an incredibly long time, I hope you can help me with.
In short, I am trying to train a Sequentail model with an LSTM layer. The problem occurs when I try to train the model with LSTM default parameters. The program just stops at the first epoch and no longer enters the code. as can be seen, the last print "Model is trained" is not written.
The is the full code run with the default LSTM parameters.
- This code can not run
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Dropout, LSTM, InputLayer

mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()

x_train = x_train / 255
y_train = y_train / 255

model = Sequential()
model.add(InputLayer((x_train.shape[1:])))
model.add(LSTM(32))  #                                               <---  the problem occurs here
model.add(Dense(10, activation='softmax'))

opt = tf.keras.optimizers.Adam(learning_rate=1e-3, decay=1e-5)

model.compile(
    loss='sparse_categorical_crossentropy',
    optimizer=opt,
    metrics=['accuracy']
)

model.fit(x_train, y_train, epochs=3, validation_data=(x_test, y_test), verbose='auto')

print("Model is trained.")

2021-08-27 10:20:22.799484: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cudart64_110.dll
2021-08-27 10:20:26.443509: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library nvcuda.dll
2021-08-27 10:20:26.488972: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1733] Found device 0 with properties:
pciBusID: 0000:01:00.0 name: NVIDIA GeForce RTX 2060 computeCapability: 7.5
coreClock: 1.2GHz coreCount: 30 deviceMemorySize: 6.00GiB deviceMemoryBandwidth: 245.91GiB/s
2021-08-27 10:20:26.489580: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cudart64_110.dll
2021-08-27 10:20:26.532650: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cublas64_11.dll
2021-08-27 10:20:26.533109: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cublasLt64_11.dll
2021-08-27 10:20:26.559639: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cufft64_10.dll
2021-08-27 10:20:26.565224: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library curand64_10.dll
2021-08-27 10:20:26.637251: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cusolver64_11.dll
2021-08-27 10:20:26.660612: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cusparse64_11.dll
2021-08-27 10:20:26.661815: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cudnn64_8.dll
2021-08-27 10:20:26.662201: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1871] Adding visible gpu devices: 0
2021-08-27 10:20:26.662770: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX AVX2
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2021-08-27 10:20:26.664656: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1733] Found device 0 with properties:
pciBusID: 0000:01:00.0 name: NVIDIA GeForce RTX 2060 computeCapability: 7.5
coreClock: 1.2GHz coreCount: 30 deviceMemorySize: 6.00GiB deviceMemoryBandwidth: 245.91GiB/s
2021-08-27 10:20:26.665660: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1871] Adding visible gpu devices: 0
2021-08-27 10:20:27.284225: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1258] Device interconnect StreamExecutor with strength 1 edge matrix:
2021-08-27 10:20:27.284551: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1264]      0
2021-08-27 10:20:27.284738: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1277] 0:   N
2021-08-27 10:20:27.285152: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1418] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 3961 MB memory) -> physical GPU (device: 0, name: NVIDIA GeForce RTX 2060, pci bus id: 0000:01:00.0, compute capability: 7.5)
2021-08-27 10:20:28.198186: I tensorflow/compiler/mlir/mlir_graph_optimization_pass.cc:176] None of the MLIR Optimization Passes are enabled (registered 2)
Epoch 1/50
2021-08-27 10:20:29.513381: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cudnn64_8.dll

Process finished with exit code -1073740791 (0xC0000409)

BUT, if I e.g. writes model.add (LSTM (32, activation = 'relu')), so if I use "relu" instead of default activation, the model works as intended and trains all 3 epochs and remaining code in the file.
The is the full code run without the default LSTM parameters.
- This code can run
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Dropout, LSTM, InputLayer

mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()

x_train = x_train / 255
y_train = y_train / 255

model = Sequential()
model.add(InputLayer((x_train.shape[1:])))
model.add(LSTM(32, activation='relu'))  #                   <----  the problem occurs here
model.add(Dense(10, activation='softmax'))

opt = tf.keras.optimizers.Adam(learning_rate=1e-3, decay=1e-5)

model.compile(
    loss='sparse_categorical_crossentropy',
    optimizer=opt,
    metrics=['accuracy']
)

model.fit(x_train, y_train, epochs=3, validation_data=(x_test, y_test), verbose='auto')

print("Model is trained.")

2021-08-27 10:51:21.625307: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cudart64_110.dll
2021-08-27 10:51:23.684372: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library nvcuda.dll
2021-08-27 10:51:23.711793: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1733] Found device 0 with properties:
pciBusID: 0000:01:00.0 name: NVIDIA GeForce RTX 2060 computeCapability: 7.5
coreClock: 1.2GHz coreCount: 30 deviceMemorySize: 6.00GiB deviceMemoryBandwidth: 245.91GiB/s
2021-08-27 10:51:23.712135: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cudart64_110.dll
2021-08-27 10:51:23.717663: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cublas64_11.dll
2021-08-27 10:51:23.717843: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cublasLt64_11.dll
2021-08-27 10:51:23.720646: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cufft64_10.dll
2021-08-27 10:51:23.721822: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library curand64_10.dll
2021-08-27 10:51:23.728301: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cusolver64_11.dll
2021-08-27 10:51:23.730610: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cusparse64_11.dll
2021-08-27 10:51:23.731250: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cudnn64_8.dll
2021-08-27 10:51:23.731476: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1871] Adding visible gpu devices: 0
2021-08-27 10:51:23.731865: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX AVX2
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2021-08-27 10:51:23.733606: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1733] Found device 0 with properties:
pciBusID: 0000:01:00.0 name: NVIDIA GeForce RTX 2060 computeCapability: 7.5
coreClock: 1.2GHz coreCount: 30 deviceMemorySize: 6.00GiB deviceMemoryBandwidth: 245.91GiB/s
2021-08-27 10:51:23.734382: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1871] Adding visible gpu devices: 0
2021-08-27 10:51:24.132128: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1258] Device interconnect StreamExecutor with strength 1 edge matrix:
2021-08-27 10:51:24.132323: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1264]      0
2021-08-27 10:51:24.132432: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1277] 0:   N
2021-08-27 10:51:24.132670: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1418] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 3961 MB memory) -> physical GPU (device: 0, name: NVIDIA GeForce RTX 2060, pci bus id: 0000:01:00.0, compute capability: 7.5)
WARNING:tensorflow:Layer lstm will not use cuDNN kernels since it doesn't meet the criteria. It will use a generic GPU kernel as fallback when running on GPU.
2021-08-27 10:51:24.641329: I tensorflow/compiler/mlir/mlir_graph_optimization_pass.cc:176] None of the MLIR Optimization Passes are enabled (registered 2)
Epoch 1/3
2021-08-27 10:51:25.192563: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cublas64_11.dll
2021-08-27 10:51:25.590801: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cublasLt64_11.dll
1875/1875 [==============================] - 39s 20ms/step - loss: 0.0589 - accuracy: 0.0981 - val_loss:<PHONE_NUMBER> - val_accuracy: 0.0980
Epoch 2/3
1875/1875 [==============================] - 37s 20ms/step - loss: 5.8318e-05 - accuracy: 0.0987 - val_loss:<PHONE_NUMBER> - val_accuracy: 0.0980
Epoch 3/3
1875/1875 [==============================] - 38s 20ms/step - loss: 1.2150e-05 - accuracy: 0.0987 - val_loss:<PHONE_NUMBER> - val_accuracy: 0.0980
Model is trained.

Process finished with exit code 0

Any ideas for what the problem might be? It just stops the program at first epoch and reports no errors in the console. It simply will not run with the default.
Thanks : )

Thanks you are right, it is possible to run on colab. Do you have any idea what the problem might be, when I can not run it locally on my computer?

Triage note: this may be a local configuration issue. Scott can provide some pointers here.

It would be absolutely great with some ideas for what I can try to do about it.
I have tried to set Colab's versions of TF and Python to the same as the ones I use, but this had the same outcome (works in colab and not on my machine).

This is most likely due to local cuda/cudnn version setup. By default the lstm will use cudnn kernel at has about 10x the performance comparing to generic kernel. You will see this kind of error if you don't have the local env configured properly. This also aligned with the observation that once you change the activation to relu, the issue goes away.
For the fix, you can take a look for similar issue like below:
https://github.com/tensorflow/tensorflow/issues/41863
https://github.com/tensorflow/tensorflow/issues/41444
https://github.com/tensorflow/tensorflow/issues/40982
Hope it helps. You can also update you cudnn kernel to the latest version.

Thanks, it finally seems to work.


Elfeed marks previously read items as unread

i use elfeed to read my daily news, but sometimes a news item that has already been read is again either marked as read or refetched into the cache, I am not sure. But for me the intended behavior would be to not see the already read items again.
Can I achieve this somehow?

i've noticed this too.
i figured the problem was with the news provider, but now im thinking maybe
its elfeed.
On Saturday, July 27, 2019, Sidharth Arya<EMAIL_ADDRESS>wrote:

i use elfeed to read my daily news, but sometimes a news item that has
already been read is again either marked as read or refetched into the
cache, I am not sure. But for me the intended behavior would be to not see
the already read items again.
Can I achieve this somehow?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/skeeto/elfeed/issues/331?email_source=notifications&email_token=ACPBULQRLDXNK355QVC6ET3QBP3H5A5CNFSM4IHIVCTKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HB2XEZQ,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACPBULTMSJEFQTAH25KCO33QBP3H5ANCNFSM4IHIVCTA
.

That isn't the intended behavior. There could be a couple of causes:

If Emacs doesn't shut down cleanly then you will lose recent database
changes. That includes tag changes and recently-fetched items. This can
easily be the case if you use the Emacs server and the server instance
never gets a chance to exit gracefully (killed on logout, etc.). You can
force a database save at any time with elfeed-search-quit-window (q),
killing the listing buffer, elfeed-db-unload, or gracefully exiting
Emacs.

Some feeds are just broken or mismanaged such that they occasionally
republish the same item with a different ID, signaling to feed readers
that the old item is actually a new, unique item. If you broaden the
search filter and find a duplicate listing for an item that has
reappeared as unread, then this is the case. If it's possible for you to
share the URL of one of these misbehaving feeds, I'd like to see it.

@skeeto I understand what you mean. I am closing this issue for now.

I think it would be great if read/unread info are flushed more frequently, currently I often loose days of feed/read data because I never close emacs unless I reboot.


Subtests output indentation.

Implements #129. The output would look like this. Not so pretty IMO.
TAP version 13
# Test name
# LEVEL0
ok 1 LEVEL0
#     Sub-test name
#     LEVEL1
    ok 2 LEVEL1
#         Sub-sub-test name
#         LEVEL2
        ok 3 LEVEL2

Indenting ok breaks tap. Try 'ok number 4 spaces text'

Also. Really this shouldn't be in tape. We should do this in tap-spec instead

Is there any indication in tap that the test description is from a sub test?

I don't think so. We would need tape specific heuristics. We could change the name output to be '# level 1 level 2 level 3'
Then you can detect sub tests with subset operations on test names.

That could work. I started doing something like that with https://github.com/scottcorgan/tessed to try and solve this very issue.
It would help a lot of people to have nice output for nested tests.
Perhaps an option to for a separator between test names for sub tests would be helpful {sep: '-'} ... something like that.

I ok guys. For now I'll change tape to tap-spec.
Meanwhile, we got to decide on the nested output format. I'm all ears.

Re the tap over tape. Unluckily I can't receive the output using the common harness:
  var test = tape.createHarness();
  var tc = tap.createConsumer();
  test.createStream().pipe(tc);

because tap strips the leading hash characters and whitespaces. This means I can't just simply

do this in tap-spec instead

as I am trying to test those whitespaces and hashes. :)
Subsequently the

separator between test names for sub tests

is more acceptable solution because it's testable via tap. I have it working locally.
TAP version 13
# Output indentation
# LEVEL0 comment
ok 1  LEVEL0 assertion
# Output indentation -> Sub-test name
# Output indentation -> LEVEL1 comment
ok 2 Output indentation ->  LEVEL1 assertion
# Output indentation -> Sub-test name -> Sub-sub-test name
# Output indentation -> Sub-test name -> LEVEL2 comment
ok 3 Output indentation -> Sub-test name ->  LEVEL2 assertion

Although this looks quite confusing to me.
See the code which generates the output above:
test('Output indentation', function(t) {
  t.comment('LEVEL0 comment');
  t.ok(true, 'LEVEL0 assertion');
  t.test('Sub-test name', function(tt) {
    tt.comment('LEVEL1 comment');
    tt.ok(true, 'LEVEL1 assertion');
    tt.test('Sub-sub-test name', function(ttt) {
      ttt.comment('LEVEL2 comment');
      ttt.ok(true, 'LEVEL2 assertion');
      ttt.end();
      tt.end();
      t.end();
    });
  });
});

@Raynos @substack hello gentlemen.
Subtest output indentation. People need this. It's time to decide how you see it implemented.
Would you please express an opinion/desire/anything? What's a preferred output format?
Thanks

This is a protocol-level decision that shouldn't be up to tape. There's already active discussion for TAP14 about subtests: https://github.com/TestAnything/Specification/issues/2
When something lands in the spec, then we can support it. Until then, it's possible to consume tap output and reformat it however you want.

I commented on this: https://github.com/TestAnything/Specification/issues/2#issuecomment-76519391
I'm planning on implementing the Test::More style.  It's the one in common use.  Anything that lands in tap v14 will be either trivially convertible from Test::More style, or not worth using, imo.
I'm also refactoring node-tap quite a lot in the process, so it might be pretty easy to re-use some bits in tape, I'm not sure.


fix: ignore unsupported migration dialects

Until now unsupported migration files cause the MigrationBox and FileMigrator to error. The new behavior is especially useful if you want to compile binaries with sqlite support as well as without. Additionally warnings are logged to help spot possible typos instead of silently ignoring a file.

Thanks!


Prototype identity apis

Summary
I wanted to sketch out what the APIs would look like to support the association event log. Implemented as a new GRPC service with new Protobufs for the associations.
Still a little fuzzy on how rotating the recovery address would work, or even if the recovery address is required.

By the way, do we have a preferred method of versioning/future-proofing these associations? Is that even possible?


Log HT signal header

Hello,
The purpose of these logs are to be loaded easily in other software (Matlab/Python) after long (multi-packet) simulation, so the regular (original) log format is preferred.
Bu please feel free to keep/use them in your fork.


the beep example is not working for windows 10

  System:
    OS: Windows 10 10.0.19041
    CPU: (12) x64 AMD Ryzen 5 2600 Six-Core Processor
    Memory: 8.90 GB / 15.93 GB

compile is successful, but the audio is completely distorted

The debug mode distorts because it's too slow to process audio. Try running in release mode, that should work without issues.

Was also having this issue but was fixed by running in release mode. I'm not too familiar with audio at all, but is this a common problem (debug not being able to process audio)?

It means the compiler does a lot of heavy lifting to optimize code in release mode. This situation is not uncommon in Rust. The biggest culprit appears to be the reverb effect, which is especially slow in debug mode.


getKillmail {$shipName} and {$systemName} bugged in lastest update

my bot is printing shipName and systemName as unknown after updating
http://prntscr.com/cxuj7s first hit is before i updated and the 2nd is after i updated

will fix this shortly

Fixed

did you push the fix yet? don't see any updates to the code?

https://github.com/shibdib/Dramiel/commit/8655128d4b3894a5fe4998c7b098d129d59809ad


Enable code coverage reports

By means of sbt-scoverage && codecov.io

Done with codecov.io and it works :-)

Done with codecov.io and it works :-)


chunk map packet

is weird
https://github.com/UnknownShadow200/ClassicalSharp/blob/eb3bbc168a86caaa9cf5bb61f8bc6854a7d17a28/ClassicalSharp/Network/NetworkProcessor.Original.cs#L120
http://wiki.vg/Classic_Protocol#Server_.E2.86.92_Client_packets
I don't quite understand yet what's the size sent to us.
is it the size of the compressed chunk or uncompressed ?

need to handle that to spawn a player

It is compressed in the way that the actual level.dat is as far as I understand. Here is a library I wrote for reading them (writing isn't supported yet, but I could do it easily). https://github.com/mhsjlw/minecraft-classic-anvil exact code: https://github.com/mhsjlw/minecraft-classic-anvil/blob/master/src/read.js

Here is an example server_level.dat for testing too, https://github.com/mhsjlw/minecraft-classic-anvil/blob/master/examples/server_level.dat

"Contains a chunk of gzipped map (not level.dat file)."

but the pb I'm having now is how to decompress the chunk, I'll figure out how to read/write it afterwards

I'm aware that's it's a chunk not the entire file, but minecraft-classic-anvil allows you to get chunks. And the individual chunks are gzipped, so just gunzip it, then you've got the chunk.

"so just gunzip it" : yes, but gunzip what, that's the problem. the protocol is not telling us the compressed length.
I need to read this more carefully, but I think the answer is in the gzip headers https://github.com/UnknownShadow200/ClassicalSharp/blob/eb3bbc168a86caaa9cf5bb61f8bc6854a7d17a28/ClassicalSharp/Network/NetworkProcessor.Original.cs#L120

https://github.com/MineLib/MineLib.Network/blob/master/Classic/Packets/Server/LevelDataChunk.cs#L17 : seems like it's always 1024

Except I can't zlib.gunzipSync it
It does look like a gzip'd buffer though :
1f8b0800000000000000ec5d5b92eb280cc5dfa9ea6417c93266ffab9a8e6dde929084c0765f9f9ab91ddb20740488a7b1fbcfb9c78d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb871e3c68d1b376edcb8f18be5c6dfc4ebf53a5a851b37e6c2b9a335380a6ea5feaff277ee6ff1f77c24e1c5914e0bb7431861f923fc9d131ac0a518aada50ecbac7b22ce57fe90210b22fb8322e195746bd0c5275ab322ce57f49fa41e1ba0a8bf8cb629c04187f45f9f73fc6286a83723c5694f5c200fcccbc48b657e3d18c6a650001abab18a0b84e9982e00a16053e0e08ffd5027019e0e222fc71032c75255884fd7f3b3d07a19e8f2a723a2b0932d9214296c8b96c02ccc7c1c55d4eff790c7f999a6cfe62c59f4f6f806dd2f394539f995245b7078c003c4242fef2f7267b7dd371eef54ded6cc53ff26765763ea1c1ed12be02ffd12e5122fef57ac96b665600423f8991d25e9f465602998f2ee9f39348e9b3525d13dae80fe62f08bdd30feb6dfbbff4ea5bca3fed24f0d31468380e2be9f5bfc7fe7337436bf5116a1364fccf60806abd95bff80a9195553ab1b6f628169b1fe99dc1499f813fbcdeee4d21c0053af81022ebfc974406d647faedf550b124490c4396e7b9ff63a2ea1dfff01a9fb3f11738be1415fb5fc80748472163ab737c25d39f9ff3ce77546a1574adfc3e83ff93f60e6300f32f6e0c49a8c251fc73bd92667f3222ff89bd002cff276fb3cbb498d80dac4be5845e1ea8477231903fa3777e0cfd59f93fb915624c7e2c75291c3b0d30507891126bf26376dfc04fdd83cf2c9361f1df83daa5cb444c32ede1fd29feb5d024ebc36295aa8bcf499d4fdf34dd548152bc9f915b629dd30d7198e9c3eccbbb83721f101b56ed027f60a6633426793b288d3de963f91f38ce4ff92f75f93fead59221fd1dacee39573cfab3fcb11a101f84842fce1ff6757809f00fd2840fe4df03bc9575d88eac10235f6fb9327ddca3c22b325b9c49eb4d03dd3da79309f0f73133fe838cc1ee067608d788df4a4072634069085dd0c106d0474daeedf967e20759a0436c3df539d61b18

@rom1504 when I try to uncompress that buffer with gunzip I get "unexpected end of file" (decompresses to: ^@@^<EMAIL_ADDRESS>65536 bytes), truncated?

I'm getting the same error yeah.
Trying to figure out what's wrong.

(the code currently in the repo isn't up to date)

Well ClassicCube is able to connect to it so I guess we should be able to too.

21:52 < Hetal> Minecraft Classic Original Server jars won't work with ClassiCube
21:52 < Hetal> http://www.classicube.net/server/host/

Ah I think I get it. You're supposed to uncompress the whole thing at once when you got all the chunk packets.

https://github.com/OpenClassic/OpenClassic/blob/master/src/main/java/org/spacehq/openclassic/client/network/handler/LevelFinalizeMessageHandler.java
https://github.com/OpenClassic/OpenClassic/blob/master/src/main/java/org/spacehq/openclassic/client/network/handler/LevelDataMessageHandler.java
What a weird thing.

made decoding work in fdc84119b515d0c375772e9042a70146c319eb23

After decompression the map consists of a big-endian int(4 bytes) containing the number of blocks, followed by a raw map array. (chunk is up to 1024 bytes, padded with 0x00s if less).

now working !
Still need a classic-world class but can be done in an other issue.


Workflow returning PanicError should fail workflow

Currently workflow returning PancicError causes workflow to fail the decision task instead.
It happens when workflow returns an error returned from a panicing activity.

Reproduction:
workflowOptions := client.StartWorkflowOptions{
    ID:                           uuid.New(),
    TaskList:                     "tasklist",
    ExecutionStartToCloseTimeout: time.Minute * 10,
}

workflowClient.StartWorkflow(workflowOptions, MyWorkflow)

func MyWorkflow(ctx workflow.Context) error {
    ao := workflow.ActivityOptions{
        ScheduleToStartTimeout: 5 * time.Minute,
        StartToCloseTimeout:    5 * time.Minute,
        WaitForCancellation:    true,
    }
    ctx = workflow.WithActivityOptions(ctx, ao)

    err := workflow.ExecuteActivity(ctx, myActivity).Get(ctx, nil)
    return err
}

func myActivity(ctx context.Context) error {
    panic("panic")
}


Update links

Because @victoriadotdev changed her website and username

I hadn't realized how many translations this theme now has - it gives me the warm fuzzies to see my silly little website plug in projects/design/ in so many different languages!


coordinate reference system

EPSG:3857 was a version of the World Geodetic System 1984 datum that Microsoft developed.  Is this the version required by Shape Map's coordinate reference system for my custom map (TopoJSON file)?  Since this version was based on a "Pseudo-Mercator" projection, is it compatible with Shape Map's projection setting?  Thanks.

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

ID: 6a301928-35b6-2b9d-3bbe-0dc48b237b07
Version Independent ID: 765bad52-68e2-985f-924e-4e7f334b62f0
Content: Use Shape maps in Power BI Desktop (Preview) - Power BI
Content Source: powerbi-docs/visuals/desktop-shape-map.md
Service: powerbi
Sub-service: pbi-visuals
GitHub Login: @mihart
Microsoft Alias: mihart

Thanks for your comment, @rootsmusic .
I've assigned this issue to the doc author for review.

Thanks for your comment, @rootsmusic. This looks like a support request or product question rather than documentation feedback. You might find a solution in the Power BI Community, at https://community.powerbi.com. You may also be able to contact Support (refer to this article: https://docs.microsoft.com/en-us/power-bi/admin/service-support-options to review available Support options.)