GEODE-6174: Test REST API with a secured cluster

Add tests for the create region REST API with a SecurityManager on the cluster.

Test without credentails
Authentication failure (bad user:password)
Authenticated but not authorized
Authenticated and Authorized

Thank you for submitting a contribution to Apache Geode.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[X] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message?

[X] Has your PR been rebased against the latest commit within the target branch (typically develop)?

[X] Is your initial contribution a single, squashed commit?

[X] Does gradlew build run cleanly?

[X] Have you written or updated unit tests to verify your changes?

[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and
submit an update to your PR as soon as possible. If you need help, please send an
email to<EMAIL_ADDRESS>

@Petahhh

Looks awesome @pdxrunner


how to test  whole images in a dir and save parameters into another dir?

-f  just test one image not a file dir.

This repo does not do so to keep the structure simple. You can easily modify the code to meet your need, e.g., add a "for loop".


Keeps asking for contacts permission on startup

Checklist

[X] I have used the search function to see if someone else has already submitted the same bug report.
[X] I will describe the problem with as much detail as possible.

App version
6.202
Where did you get the app from?
F-Droid
Android version
11
Device model
Huawei Mate 20 X
Steps to reproduce

Open k-9
Deny contacts permissions and confirm in Android settings that it is marked denied.
Open k-9 again.

Expected behavior
No nagging pop-up asking for contact permission.
Actual behavior
Pop up
Logs
There was a previous post about this where the suggested fix was to temporarily enable contacts and then deny later, but that is not a good workaround because then the app has already read all of my contacts.  A proper fix should be implemented in k-9.

You could force stop the app before granting, then revoking the permission. That should prevent the app from ever running with the contacts permission.
However, K-9 Mail will not read all of your contacts and do something nefarious with the data. It will only use the permission to load contact pictures and to offer auto-completion when entering email addresses in the compose screen.
I created issue #6262 to work around buggy Android versions that will always show the permission prompt no matter how often users declined to grant the permission.


Python formatter workflow has import errors

https://github.com/quisquous/cactbot/runs/6137579415?check_suite_focus=true
Run black **/*.py --line-length 100 --check --diff
Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.[7](https://github.com/quisquous/cactbot/runs/6137579415?check_suite_focus=true#step:7:7).12/x64/bin/black", line [8](https://github.com/quisquous/cactbot/runs/6137579415?check_suite_focus=true#step:7:8), in <module>
    sys.exit(patched_main())
  File "/opt/hostedtoolcache/Python/3.7.[12](https://github.com/quisquous/cactbot/runs/6137579415?check_suite_focus=true#step:7:12)/x64/lib/python3.7/site-packages/black.py", line 4[13](https://github.com/quisquous/cactbot/runs/6137579415?check_suite_focus=true#step:7:13)4, in patched_main
    patch_click()
  File "/opt/hostedtoolcache/Python/3.7.12/x64/lib/python3.7/site-packages/black.py", line 4123, in patch_click
    from click import _unicodefun  # type: ignore
ImportError: cannot import name '_unicodefun' from 'click' (/opt/hostedtoolcache/Python/3.7.12/x64/lib/python3.7/site-packages/click/__init__.py)
Error: Process completed with exit code 1.

https://stackoverflow.com/questions/71673404/importerror-cannot-import-name-unicodefun-from-click
it says This has been fixed by Black 22.3.0. Versions before that won't work with click 8.1.0.
Collecting black==19.10b0
  Downloading black-19.10b0-py36-none-any.whl (97 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.5/97.5 KB 14.1 MB/s eta 0:00:00
...
Collecting click>=6.5
  Downloading click-8.1.2-py3-none-any.whl (96 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 96.6/96.6 KB 21.0 MB/s eta 0:00:00

cactbot still use black==19.10b0... How about using the latest version of the black?


[SPARK-30804][SS] Measure and log elapsed time for "compact" operation in CompactibleFileStreamLog

What changes were proposed in this pull request?
This patch adds some log messages to log elapsed time for "compact" operation in FileStreamSourceLog and FileStreamSinkLog (added in CompactibleFileStreamLog) to help investigating the mysterious latency spike during the batch run.
Why are the changes needed?
Tracking latency is a critical aspect of streaming query. While "compact" operation may bring nontrivial latency (it's even synchronous, adding all the latency to the batch run), it's not measured and end users have to guess.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
N/A for UT. Manual test with streaming query using file source & file sink.

grep "for compact batch"

...
20/02/20 19:27:36 WARN FileStreamSinkLog: Compacting took 24473 ms (load: 14185 ms, write: 10288 ms) for compact batch 21359
20/02/20 19:27:39 WARN FileStreamSinkLog: Loaded 1068000 entries (397985432 bytes in memory), and wrote 1068000 entries for compact batch 21359
20/02/20 19:29:52 WARN FileStreamSourceLog: Compacting took 3777 ms (load: 1524 ms, write: 2253 ms) for compact batch 21369
20/02/20 19:29:52 WARN FileStreamSourceLog: Loaded 229477 entries (68970112 bytes in memory), and wrote 229477 entries for compact batch 21369
20/02/20 19:30:17 WARN FileStreamSinkLog: Compacting took 24183 ms (load: 12992 ms, write: 11191 ms) for compact batch 21369
20/02/20 19:30:20 WARN FileStreamSinkLog: Loaded 1068500 entries (398171880 bytes in memory), and wrote 1068500 entries for compact batch 21369
...

This messages are explaining why the operation duration peaks per every 10 batches which is compact interval. Latency from addBatch heavily increases in each peak which DOES NOT mean it takes more time to write outputs, but we have no idea if such message is not presented.
NOTE: The output may be a bit different from the code, as it may be changed a bit during review phase.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/23093/
Test PASSed.

cc. @tdas @zsxwing @gaborgsomogyi
The output I added simply represents the necessity to add the log message.

Test build #118336 has started for PR 27557 at commit 619eee3.

Test build #118336 has finished for PR 27557 at commit 619eee3.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/118336/
Test FAILed.

Retest this, please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/23102/
Test PASSed.

Test build #118345 has started for PR 27557 at commit 619eee3.

Test build #118345 has finished for PR 27557 at commit 619eee3.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/118345/
Test PASSed.

I think the information which prints out is not necessary for the users but it's useful debug information. I've double checked the printout is not coming often but I would lower the severity to debug.

I think the information which prints out is not necessary for the users

I'm not sure I can agree with. The information is pretty much similar with what InMemoryFileIndex provides the information for listing leaf files in InMemoryFileIndex.
For streaming workloads, latency is the first class consideration. End users would have no idea why the overall latency suddenly increases per N batches unless they know about the details of metadata on FileStreamSource / FileStreamSink. This is completely different user experience they would experience with Kafka streaming source and sink - they may struggle to find the root cause from another spots like their query or so.
But I'd agree that the information may not be necessary for the users if the latency being added here is not considerable. We could set a threshold (like 1s or 2s?) and only print when the latency exceeds the threshold (still print it with DEBUG level even it doesn't reach threshold), but then that would deserve to have higher severity, WARN.
What do you think?

For streaming workloads, latency is the first class consideration.

When the query is not running properly. Sending it all the time which increase the log file size is different. I think it's debug information which helps developers to find out what's the issue and not users (INFO is more like to users in my understanding).

For streaming workloads, latency is the first class consideration.
When the query is not running properly.

OK I admit my major experience had been with "low-latency", but even Spark runs with "micro-batch", it doesn't mean latency is not important. The latency is the thing in streaming workload to "define" whether the query is running properly or not. Even Spark had to claim that a micro-batch could run in sub-second because one of major downside for Spark Streaming has been the latency, and continuous processing had to be introduced.
Higher latency doesn't only mean output will be late. When you turn on "latestFirst" (with maxFilesPerTrigger, as this case we assume we can't process all the inputs) to start reading from latest files, then the latency on a batch defines the boundary of inputs.
It's a critical aspect which operators should always observe via their monitoring approaches (alerts, time-series DB and dashboard, etc.), and find out what happens when the latency fluctuates a lot.

I think it's debug information which helps developers to find out what's the issue and not users (INFO is more like to users in my understanding).

I'm not sure who do you mean by "users". AFAIK, in many cases (not all cases for sure), users = developers = operators.

While I still think the latency information is important aspect, I agree the information about size of logs (length, memory usage) is not a thing to be interested unless there's an issue on latency.
I've adjusted the severity of log message as WARN and DEBUG, and differentiate the information to provide according to the severity.

Test build #118736 has started for PR 27557 at commit b3b2e76.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/23487/
Test PASSed.

Test build #118736 has finished for PR 27557 at commit b3b2e76.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/118736/
Test PASSed.

is it possible to add the load and write time in the UI chart?

This is from specific data source so we may need to have a way to generalize. I roughly remember that we deferred to support custom metrics on DSv2 (except observe which is for users). Once we find time to design the custom metrics, maybe we can represent it to the UI then.

retest this, please

Test build #121232 has started for PR 27557 at commit b3b2e76.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25920/
Test PASSed.

Test build #121232 has finished for PR 27557 at commit b3b2e76.

This patch fails PySpark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121232/
Test FAILed.

retest this, please

Test build #121304 has started for PR 27557 at commit b3b2e76.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25988/
Test PASSed.

Test build #121304 has finished for PR 27557 at commit b3b2e76.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121304/
Test FAILed.

retest this, please

Test build #121315 has started for PR 27557 at commit b3b2e76.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/25999/
Test PASSed.

Test build #121315 has finished for PR 27557 at commit b3b2e76.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121315/
Test PASSed.

retest this please

Test build #121626 has started for PR 27557 at commit b3b2e76.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26305/
Test PASSed.

Test build #121626 has finished for PR 27557 at commit b3b2e76.

This patch fails PySpark pip packaging tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121626/
Test FAILed.

Test build #121647 has started for PR 27557 at commit 648f0dc.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26325/
Test PASSed.

Test build #121647 has finished for PR 27557 at commit 648f0dc.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121647/
Test FAILed.

retest this, please

Test build #121660 has started for PR 27557 at commit 648f0dc.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26338/
Test PASSed.

Test build #121660 has finished for PR 27557 at commit 648f0dc.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121660/
Test PASSed.

Merged to master and branch-3.0.

Thanks for reviewing and merging!


PSLTSCALE for layouts

Hi,
For what I'm doing it's important that I can turn the PSLTSCALE to 0, so that custom line types look the same in paper space as in model space.  I thought changing the header value would do this, but it seems it doesn't do anything unless you set the value in the layout.
I can't say I fully understand the interplay between the two, but it seems that it only works if you set the group code 70 in the layout object.  I don't know what the header variable does, to be honest.  It seems to have no effect to me.
I was wondering if there was any chance of exposing options for the group code 70 in the layout, so that I can change this setting?  It's currently hard-coded to 1.
Thanks,
Leo

The PSLTSCALE is a global variable and the only place to control its value is through the DxfDocument.DrawingVariables.PsLtScale value. This is what the official DXF documentation says about it

Controls paper space linetype scaling:
1 = No special linetype scaling
0` = Viewport scaling governs linetype scaling

and it seems to work as expected.
About the code 70 this is what it says

Flag (bit-coded) to control the following:
1 = Indicates the PSLTSCALE value for this layout when this layout is current
2 = Indicates the LIMCHECK value for this layout when this layout is current

I have no idea of the purpose of the LIMCHECK header variable, so I fixed at 1 and I have not implemented a way to modify it, this is the default value same as there is no code 70 in the Layout DXF description. I tend to not to expose codes that I do not know its function.
But, I am not very familiar with the PaperSpace.


Automatic Metrics API

Closes #319
Adds:

necessary extensions to the conf file
a Python script that accesses the secrets for each GA4 property and writes to a json file if there are more than 100 new users
a Python script that writes the metrics.md file from this json (can easily be edited to display charts and things)
a GitHub action that runs this script weekly and pushes the changes
adds this metrics page to the about section of the footer-menu

There are new secrets for each GA4 properties ID and for the credentials file.
Here is the list of additional dimension and metric keys.

Just for reference - the limit to API requests a day is 50,000. I think that is large enough that we don't have to be concerned. Just documenting that here for posterity.
After talking to @anissa111 and @brian-rose, I'm going to edit this action to be within the nightly build - editing it to update the metrics.md file and deploy the site. This way no commits and bot permissions are needed. Thank you for this elegant solution!
Relevant PR for adding deployment to nightly builds.

Closing this because with the curl grabbing from my main branch I have to remember to change things on the branch and on main. I'm going to make a new PR from main


Save and load from state_file

The UI should have a save and load button which writes JSON serialized state to the file provided by --state_file.

Done.


Ollie: Watch tazaa-khabar.blogspot.com

Ollie requests the watch of the watch_keyword tazaa-khabar\.blogspot\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

tazaa-khabar\.blogspot\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Rejected by Makyen in Charcoal HQ. Reason: 'In general, we don't include the top level domain (TLD) in blogspot entries, due to blogspot using many different TLDs which go to the same site.'


Update libp2p to 0.39

Task summary

The current version of libp2p as of filing this issue is 0.38, so we'll have to wait until 0.39 is released to start this task.
Specification reference

Update libp2p to version 0.39

Other information and links

https://github.com/libp2p/rust-libp2p/pull/2110

Might require updates to Libp2p-bitswap
Needed for the NetDisconnect implementation defined in #1181

Agreed :)
With libp2p 0.38 which  stream only return the network behaviour 's events. forest cannot get the listening event.  More detail see https://github.com/libp2p/rust-libp2p/pull/2100

The nightly builds failing mainly due to libp2p pulling in outdated crates.


Hyper is Slow

[x] I am on the latest Hyper.app version

[x] I have searched the issues of this repo and believe that this is not a duplicate

OS version and name: macOS Sierra 10.12.3

Hyper.app version: 1.2.1

Link of a Gist with the contents of your .hyper.js: (pristine)

Relevant information from devtools: N/A

The issue is reproducible in vanilla Hyper.app: Yes

Issue
I typed a simple command of $ nvm ls-remote into both Hyper and iTerm2, hit enter in Hyper first then quickly switched to iTerm2 and enter. Turned out iTerm2 was way faster than Hyper in spewing out the result.
Screencast:
https://sendvid.com/fniaojdu

@gsklee, we've merged some important improvements onto master, so I'll have you retry this demo once 1.3 is out please 👌

@rauchg Cool, looking forward to it 😸

soooo @gsklee faster? 😏

Hello,
I just moved to Win 10 and WSL, and I have the same problem.


feat: support PG show transaction isolation level

Adds support for the PostgreSQL statement SHOW TRANSACTION ISOLATION
LEVEL. This statement is used by the PG JDBC driver to get the isolation
level of a connection. The statement will always return the static
string 'serializable', as that is the only isolation level Spangres
supports.

@ansh0l Do you have any idea why so many of the checks seem to be hanging?

fwiw, github had issues yesterday around 10am EST. Try restarting the actions manually.


Question: any reference for AR Quick Look limitations?

As someone working on USDZ support directly in blender this list is very illuminating:
https://github.com/google/usd_from_gltf#emulated-functionality-for-ar-quick-look
How did you discover the list of limitations here on AR Quick Look compared to Preview Surface? I have wondered about how much of this functionality would be non-existent. Was it all by trial and error?

Thanks for your interest! It was all by trial and error.


[Playwright] Timeout specified via the playwright.config or by default is not respected

Current behaviour
The test won't fail after the max timeout time specified in the config (or set by default by playwright) has passed.
Saucelabs keeps the specs running until the timeout specified in the defaults options for config.yml has passed
The only way for us to make a spec failing (maybe when an element is not present or something is not matching) is by pragmatically specify the timeout at each run. (but this should be 30s by default)
The issues is only happening on saucelabs and not when running the specs locally.
// some.spec.ts
...
 page.setDefaultTimeout(30000);
...

Desired behaviour
A failing spec should fail after the max timeout time specified in the config (or set by default by playwright) is passed
Config to reproduce
// playwright.config.ts
import type { PlaywrightTestConfig } from '@playwright/test';
import "dotenv/config";

const config: PlaywrightTestConfig = {
  testDir: './',
  timeout: 30000, // not working
  expect: {
    timeout: 5000,
  },
  forbidOnly: !!process.env.CI,
  retries: process.env.CI ? 2 : 0,
  use: {
    trace: 'on-first-retry',
  },
};

export default config;

apiVersion: v1alpha
kind: playwright
defaults:
  mode: sauce
  timeout: 5m
sauce:
  region: eu-central-1
  retries: 0
  concurrency: 3
  metadata:
    build: Release $CI_COMMIT_SHORT_SHA
docker:
  fileTransfer: copy
playwright:
  version: 1.20.2
  configFile: playwright.config.ts
rootDir: ./
suites:
  - name: "Visual Tests - Chrome"
    mode: sauce
    platformName: "Windows 10"
    screenResolution: "1920x1200"
    testMatch: ['visual/.*.spec.ts']
    params:
      browserName: "chromium"
      headful: true

# Controls what artifacts to fetch when the suite on Sauce Cloud has finished.
artifacts:
  download:
    when: always
    match:
      - console.log
      - "*.png"
    directory: ./artifacts/

Should be the same with https://github.com/saucelabs/saucectl/issues/543


RiotControl.on('eventName') appears to run twice per event fired as where Stores runs once which is desired behaviors.

Hi
I'm trying out RiotJS and using shared dispatcher for prototyping. Its all very great and RiotJS al the most impressive views library I've had the chance to face yet.
My main problem is when triggering events from RiotControl.trigger onto a RiotControl.on events gets fired twice.
http://i.imgur.com/HVNJt6Q.png
https://gist.github.com/madwill/a320c0b8fc69c600ad04
When triggering an event that is only listened on a Store it gets fired once which is fine.
But when triggering from the store back to the view, then i get 2 events no matter what.
Is there anything i should know ?
Thanks
William

It appears it is related to the require() using webpack.
I'm up to 3 event on each trigger now.

This seems to happen even when using .one (using it in node).

Do you have a minimal fiddle demo? And riotjs version #?

Hi
Riot version is 2.0.15, the latest one I've found.
It seems to be related to the number of store. I currently have 3 stores and have every event listened on the RiotControl object triggered 3 time, I had 2 when creating this ticket and had event being fired  2 times.
I don't think i can create a fiddle since it appears to be related to require.
If you create this setup add 2 stores and register them in index.js.
Then as my first comment gist send a "init" event to the store and have the store send something back. to app.tag which listen to whatever that is.
You'll get it twice and if you register 3 stores you'll get it 3 times.

Getting a feeling that my problem is with riot and not RiotControl

I'm seeing the same thing. The number of times an event is fired is directly tied to the number of stores in my application. Any resolution, workaround or identification of the root cause for this?

Personally I've never found one. Decided to go with PostalJS for pub sub of event. It has channels wich is nice.
Good luck

After running into similar problems we actually found it is a bug in our code!
For us it was related to two things:

Usage of "RiotControl.on()" from inside the store implementation.
Not removing event handler (for unmounted tags in this case)

After fixing both problems everything worked as expected.

@oderwat
Please make new gist work file .
Thank You !

I did. Hopefully it solves your problem, please report!

@avanslaars
When you check-out new videos with "Flux" and riot.js ?

@a-moses - I don't understand your question.

neither do I .. and I also did not get a reply to the proposed changes I made in his gist.

@a-moses - I would like to include RiotControl in a future video... I don't have as much time to put together examples, record and edit isn't as I used to so it's going to take me some time.

@avanslaars
In the Future Please consider to separate same Tutorial record  to two different videos:
videoA : Browser + Console.
videoB : Code + Terminal.
Voice: same Voice  with A and B.
All this to let me (the user) choose how to see the lesson
for example code bigger then preview
or user with two screen will could Split the videos ... and so on.
Just a suggestion .
Thank you  about your work.

@a-moses I wrote my comment into your gist. I am not going to create a new gist in my account to change one word in your pseudocode. Actually I unsubscribed this issue now. That Video discussion is pretty much off topic here.

If there is an outstanding issue here, I should have some free time this weekend to review. Otherwise, it looks like it may have been usage related.

Hi, still an issue.

@oderwat  Thank you about your comment.
the code work well done.
@oderwat  @jimsparkman  maybe some update to the documentation will minimize some of users issue .

Great! I had the same problem!


silx.gui.utils: Fix glutils.isOpenGLAvailable issue

This PR fixes the runtime check of OpenGL by removing sys.path[0] when running the subprocess since it contains the directory of the "script", here it is silx/gui/utils/ which also contains signal and concurrent which conflicts with python modules....
There is a check in case something is already messing around with sys.path (e.g., through PYTHONSTARTUP).
closes #3182
Some alternatives for the record:

Copying (or creating) the script in a temporary folder
Creating a silx.gui.glutils package with only __init__ and the check script.

It's true it's kind of dirty.
Up to you for the fix. But I would prefer another script file instead of creating new one every time we trigger this function.

From a quick look at cpython code, I didn't find a way to avoid the addition of the script directory only.
If it's OK for you, I'm fine with this fix, it's no nice but it avoids spreading this small functionality across multiple files.

I still feel like it would be cleaner with a side script.
But i just expect it to work, so it is fine to me.

BTW do we know if it is working on 3.5 now?

Ok i understand the patch now, so it is strong than what i expect. Should be fine.


fuzz: fix build

A bug in the infra breaks if a fuzzer and benchmark is in one folder
See https://github.com/AdamKorcz/go-118-fuzz-build/pull/17
Split it out

@howardjohn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test lint

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

@howardjohn: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test lint

gencheck_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test gencheck

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

@howardjohn: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test lint

gencheck_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test gencheck

unit-tests-arm64_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test unit-tests-arm64

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

@howardjohn: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test lint

gencheck_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test gencheck

unit-tests-arm64_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test unit-tests-arm64

unit-tests_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test unit-tests

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

@howardjohn: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test lint

gencheck_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test gencheck

unit-tests-arm64_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test unit-tests-arm64

unit-tests_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test unit-tests

integ-security-multicluster_istio
205b06fb4e5967d59f0ce84db9096afc8780da69
link
true
/test integ-security-multicluster

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

YOu should remove the old test

YOu should remove the old test

thanks!
Done

@howardjohn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-security-multicluster_istio
d0873502fcccd9d4cff3a5d5f3364c9f6031b6e7
link
unknown
/test integ-security-multicluster

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

/test integ-security-multicluster


Expand span name guidelines for HTTP client spans

Area(s)
area:http
Is your change request related to a problem? Please describe.
The guidance today for HTTP client span naming is:
HTTP span names SHOULD be {method} {target} if there is a (low-cardinality) target available. If there is no (low-cardinality) {target} available, HTTP span names SHOULD be {method}.

...

The {target} SHOULD be one of the following:

http.route for HTTP Server spans
url.template for HTTP Client spans if enabled and available (Experimental)
Other value MAY be provided through custom hooks at span start time or later.

This generally means that today, the instrumentation libraries use only the HTTP method for HTTP client span names. This leads to lots of spans named GET, POST, PUT, etc. These names offer little distinguishing value. Where this is particularly apparent is when the span.name is used to label spans in a trace waterfall, for example. Users can see that there were outgoing requests of particular verbs, but they need to drill into each one to see the details. Another common scenario for vendors is to group spans by name to make navigating easier. Again, having only the HTTP method in the name makes this too broad to be helpful.
Describe the solution you'd like
I want to open a discussion around the potential to update the guidance to recommend including at least the host in the span name and perhaps the port.
In most applications, the number of external hosts they communicate with over HTTP is expected to be reasonably constrained and unlikely to become particularly high-cardinality. The benefit for users is that out-of-the-box, the span names are more meaningful for grouping spans sent to a particular destination host. The span names are then also more helpful in the typical scenario of viewing spans on a trace waterfall.
Describe alternatives you've considered
No response
Additional context
NOTE: Raised initially in this Slack thread.

This makes sense to me.
As @lmolkova mentioned in Slack:

we're using host:port as a fallback on DB and messaging span names

We'd just have to make this behavior opt-in for HTTP client spans due to backcompat, at least until (if) a major version bump of HTTP semconv occurs.


[bug] wrong wallet deep link prompted

Link to minimal reproducible example
lab.web3modal.com
Summary
wrong wallet deep link prompted.
Steps to repro:

Open lab.web3modal.com on iOS Safari
Pair Blocto (or any other wallet)
Go back to dapp and disconnect
Click connect and Copy URL
Pair via iOS Sample Wallet
Go back to dapp and Click sign

Expected behavior: not sure
Actual behavior: Dapp prompts “Open Blocto” which is not the paired wallet (edited)
List of related npm package versions
Latest

The issue is that Web3Modal will remember the last manually chosen wallet in the CoreUtil.WALLETCONNECT_DEEPLINK_CHOICE key of localStorage. This key is only written when the user manually picks a wallet app by clicking on the icon.
Certain logic in the modal depends on the value of that key. It appears that the key is not overridden/removed when you relaunch the modal and use the QR code/copy URI feature. Thus, it will still remember the old wallet and cause buggy behavior.


Just wanted to let you know, this is awesome.

Using this useful module to create a static rendered index.html + CloudFront "404" real app entry point at app.html.
Thanks for authoring.

thanks :)


Rectangle Cutting Using DP

🚀 Feature
Given an a×b rectangle, your task is to cut it into squares. On each move you can select a rectangle and cut it into two rectangles in such a way that all side lengths remain integers. What is the minimum possible number of moves?
Input
The only input line has two integers a and b.
Output
Print one integer: the minimum number of moves.
Example
Input:
3 5
Output:
3
Have you read the Contributing Guidelines on Pull Requests?
Yes.
Motivation
Write Both Memorization and Tabulation Approach.
Pitch
Helps One to Understand how Dynamic Programming Works and simply improves the thinking in it.

Please Assign me this for c++ and java. @plazzy99

Please Assign me this for c++ and java. @plazzy99

assigned java and cpp

assign me for java

assign me for java
java is already assigned

i would like to work on python on this assign me

i would like work in cpp also please assign to me in C++

i would like to work on python on this assign me

python assigned


Parameters: [googleClientId] must have values

Describe the bug
Could not deploy to the Amplify console when I amplify update auth and:
What do you want to do? Walkthrough all the auth configurations
...
Do you want to enable 3rd party authentication providers in your identity pool? Yes

To Reproduce
Steps to reproduce the behavior:

amplify update auth
What do you want to do? Walkthrough all the auth configurations
Do you want to enable 3rd party authentication providers in your identity pool? Yes
Finish the configuration process and amplify push
Commit changes which kick off a new build in Amplify console.
Build fails with this error Parameters: [googleClientId] must have values

Expected behavior
Should build.
Additional context
I am using google oAuth and amplify 1.7.5.

@calspre Could you please share the initial steps you used for configuring the auth category, to make it easier to reproduce?

@attilah As far as I remember I used the preconfigured one with social providers:
Do you want to use the default authentication and security configuration?
Default configuration with Social Provider (Federation)

How do you want users to be able to sign in when using your Cognito User Pool?
Email and Phone Number

What attributes are required for signing up?
Email

...

Select the social providers you want to configure for your user pool
Google

I can't be certain but I think I followed the above steps.
As for the manual configuration, once I select 'no' for the question 'do you want to enable 3rd party authentication providers in your identity pool?' Everything worked the same as before.

@calspre Do you check in your team-provider-info file into your git repo which is hooked up to the Amplify console?
Also, are you re-using the same backend that you generated using the CLI locally or did you create a new environment via the Amplify console?

Hi @kaustavghosh06 thanks for the follow-up.

Do you check in your team-provider-info file into your git repo [...]

I am not sure what you mean by "check in".

Also, are you re-using the same backend [...}

Hmm, I didn't know you could create a new environment via the Amplify console. I generally push code to the GitHub repo which is hooked up to the Amplify console, which then kicks off a new build. I have two branches (dev, master) that are connected to the Amplify console (dev.site.amplifyapp.com, master.site.amplifyapp.com) I guess I am "re-using the same backend" in this case.
One thing I did (I am not sure if this is related) was setting a new Amplify console project twice because I couldn't change the GitHub repo it was connected to. In other words:

I set up a repository called 'foo' linked to Amplify project 'A'
Then I restarted a repo called 'bar' linked to Amplify project 'B'
Both projects use the same backend generated by Amplify CLI
Amplify project 'A' is now outdated but not deleted yet

I thought this issue was related to that specific scaffolding question ('do you want to enable 3rd party authentication providers in your identity pool?'), but do you think I did something different that causes this error?

@calspre The googleClientId should be a part of the team-provider-info.json file if that's checked into git and the CLI picks it up from there. Can you check your team-provider-info to check if you have the googleClientId out there?

@kaustavghosh06 Ah, yes. I tried with the dev branch again and but the build failed nonetheless. I can confirm googleClientId is included:

@calspre Were you able to diagnose/reproduce the issue? Our team wasn't able to reproduce this in the last couple of weeks.

@kaustavghosh06 I no longer use amplify so I can't tell if this issue persists. If no one else reported a similar issue you can close this -- I probably did something wrong.


Raw message tab is broken because of cross-origin access

Loading «https://mailpit.example.com/api/v1/message/89db0f92-a94b-4e43-80f1-d25866d7e1e5/raw» in frame prohibited by directive «X-Frame-Options», setted as «DENY».
DOMException: Permission denied to access property "document" on cross-origin object
Firefox:

Chrome:

In Firefox there is a button to open link in new tab (and it works), but in Chrome you are stuck on error message without any way to see raw content.

It looks like raw messages should be opened on a new tab all the time.

The raw messages comes from the same origin so is allowed by the permissions. It works fine in both Firefox and Chrome here. Are you sure it isn't the same issue you're having with your extensions you mentioned in #24 ?

Yes, I'm sure, we tested it on different browsers and machines

The HTTP server only sends the following header:
Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; frame-src 'self'; img-src * data: blob:; font-src 'self' data:; media-src 'self'; connect-src 'self' ws: wss:; object-src 'none'; base-uri 'self';

This says frame-src 'self'; meaning iframes can be loaded from the same domain as you are accessing Mailpit from, eg: https://mailpit.example.com/api/v1/message/89db0f92-a94b-4e43-80f1-d25866d7e1e5/raw should be allowed to load from https://mailpit.example.com/#89db0f92-a94b-4e43-80f1-d25866d7e1e5.
Your error message:
in frame prohibited by directive «X-Frame-Options», setted as «DENY».
DOMException: Permission denied to access property "document" on cross-origin object

seems to imply that X-Frame-Options is being set somewhere, but it's not, or rather not from Mailpit. Are you using some HTTP proxy to access Mailpit? I need more information from you:

Are you using a proxy? If yes, then this probably is where your problem is as it appears it is adding additional security headers which is blocking the requests in your browser.
If not, then please provide me more information:
a) the Mailpit version you are running?
b) how is it currently set up in your network?
c) I would like to see the browser's response headers from the Mialpit server (from the landing page, eg : https://mailpit.example.com/).

Response headers:
HTTP/2 200 OK
server: nginx/1.23.2
date: Tue, 29 Nov 2022 09:55:43 GMT
content-type: text/html; charset=utf-8
content-length: 359
accept-ranges: bytes
content-encoding: gzip
content-security-policy: default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; frame-src 'self'; img-src * data: blob:; font-src 'self' data:; media-src 'self'; connect-src 'self' ws: wss:; object-src 'none'; base-uri 'self';
referrer-policy: no-referrer
x-frame-options: DENY
x-xss-protection: 1; mode=block
X-Firefox-Spdy: h2

Mailpit is hidden behind nginx proxy
location ~ /api/events {
        proxy_pass http://mailpit-01-backend;
        proxy_set_header      Host $host;
        # websocket support
        proxy_http_version    1.1;
        proxy_set_header      Upgrade $http_upgrade;
        proxy_set_header      Connection "Upgrade";
        proxy_read_timeout    86400;
    }

    location / {
      proxy_set_header Host $http_host;
      proxy_set_header X-Forwarded-Host $host;
      proxy_set_header X-Forwarded-Server $host;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_pass http://mailpit-01-backend;
      proxy_connect_timeout       120;
      proxy_send_timeout          120;
      proxy_read_timeout          120;
      send_timeout                120;
    }

I believe you have answered your own question. Your global policy (X-Frame-Options "DENY";) is what is blocking any iframe from loading anywhere. Mailpit requires an iframe to render the email HTML and raw email, and does it not require (or use) cross-origin to do so (it loads from the same host/domain).  This isn't a limitation or anything broken in Mailpit, but an enforced limitation in your global policy, so there isn't anything i can do about it unfortunately. You will need to relax your policy to at least be able to load iframes from the same host.

Sent this thread to our devops team, will return with feedback.

Fixed by changing
add_header X-Frame-Options "DENY";

to
add_header X-Frame-Options "SAMEORIGIN";


Force recompilation for tests with specific definitions

Hi,
I have legacy code with #ifdefs preprocessor inside the functions. I have found that ceedling has an option to set defines for specific test which looks really nice and can help me, but not when I use test:all option.
Here is a simple example.
Structure with my code looks like below:
| - src/driver.c
| - src/driver.h
| - test/test_driver_with_spec_feature.c
| - test/test_driver_without_spec_feature.c
|...
| - project.yml

driver.c file contains:
#include "driver.h"

unsigned int driver_foo(void)
{
  #ifdef SPEC_FEATURE
  return 1;
  #endif

  return 0;
}

driver.h:
#ifndef _DRIVER_H
#define _DRIVER_H

unsigned int driver_foo(void);

#endif // _DRIVER_H

test_driver_with_spec_feature.c:
#include "unity.h"
#include "driver.h"

void setUp(void)
{
}

void tearDown(void)
{
}

void test_driver_NeedToImplement(void)
{
  TEST_ASSERT_EQUAL_UINT(1, driver_foo());
}

#include "unity.h"
#include "driver.h"

void setUp(void)
{
}

void tearDown(void)
{
}

void test_driver_NeedToImplement(void)
{
  TEST_ASSERT_EQUAL_UINT(0, driver_foo());
}

project.yml is a default file generated by ceedling with added specific defines for the test_driver_with_spec_feature.c

:defines:
  # in order to add common defines:
  #  1) remove the trailing [] from the :common: section
  #  2) add entries to the :common: section (e.g. :test: has TEST defined)
  :commmon: &common_defines []
  :test:
    - *common_defines
    - TEST
  :test_preprocess:
    - *common_defines
    - TEST
  :test_driver_with_spec_feature:
    - *common_defines
    - TEST
    - SPEC_FEATURE

When I was trying to run all tests, one of them always failed, because for the first test ceedling compiles driver.c file for some preprocessor definitions, and for the next test this file is not compiled again, therefore my function in driver.c doesn't behave what I'm expecting in second test.
Test 'test_driver_with_spec_feature.c'
--------------------------------------
 ************** Specific test definitions for test_driver_with_spec_feature !!!
Generating runner for test_driver_with_spec_feature.c...
Compiling test_driver_with_spec_feature_runner.c...
Compiling test_driver_with_spec_feature.c...
Compiling unity.c...
Compiling driver.c...
Compiling cmock.c...
Linking test_driver_with_spec_feature.out...
Running test_driver_with_spec_feature.out...
 ************** Restored defines and build path

Test 'test_driver_without_spec_feature.c'
-----------------------------------------
Generating runner for test_driver_without_spec_feature.c...
Compiling test_driver_without_spec_feature_runner.c...
Compiling test_driver_without_spec_feature.c...
Linking test_driver_without_spec_feature.out...
Running test_driver_without_spec_feature.out...

-------------------
FAILED TEST SUMMARY
-------------------
[test_driver_without_spec_feature.c]
  Test: test_driver_NeedToImplement
  At line (14): "Expected 0 Was 1"

--------------------
OVERALL TEST SUMMARY
--------------------
TESTED:  2
PASSED:  1
FAILED:  1
IGNORED: 0

---------------------
BUILD FAILURE SUMMARY
---------------------
Unit test failures.

I know I can use
ceedling clobber test:driver_with_spec_feature
and next
ceedling clobber test:driver_without_spec_feature
when I work on some specific parts in my function driver_foo()
But is it possible to force recompilation when I do the same with ceedling test:all?

Hi again!
Based on my previous post I made some more investigation about what was causing the problem.
On my branch I have added two commits. Preprocessor definitions for last compilation are stored in cache/last_defines.txt file and are compared with current definitions. When are different force_build file is added to rake tasks prerequisites.
But it is not sufficient to regenerate all files. When I have added second commit where rake tasks are also reenabled before invoking then I obtain correct results of my tests.
If anybody wants to check how tests looks like, the example repository is here:
git clone --recursive https://github.com/CezaryGapinski/multidefines_example.git
Maybe it is be good to make something familiar in the master branch. I can make a PR if anybody interested or there is no better idea or explanation about current implementation?
There are still two more thinks which I cannot understand:

why output files for specific test definitions are in separate subdirectories?
what does the line 80 when is just for the reading of the test_config_changed variable?

Nice to have some explanation from @methril about this changes for specific definitions in PR #198 ?

Hello...
it seems that i have exactly the same problem. from the output, it seems that ceedling does not rebuild the source file which contains my FUT with the new test specific define (the file heater.c)
is this problem still fixed or can i somehow force ceedling to rebuild?
greets peter

I always run clobber command for smaller builds when there are strange issues. That extra few seconds can really save some time in the longer term trying to figure out the problem.

Thank you @Letme and @CezaryGapinski  for your help!
Seems, that a ceedling clobber did the trick somehow for me...
lets see for how long :)
best regards!
peter


Develop

major updates include new 19Q4 data, and a few bug fixes to run it (remove line 46 in code/generate_depmap_data.R)
Also included prototype to collect email address, and save to file in a conditionalPanel() for report generation. Could consider piping into SQL db, rather than file save.

Great point @johnbradley
Just pushed changes that fix the output dir (now called 'user') to the data dir. Do we need to make sure this dir exists and is writeable? Related to issue #15
Also added a progress bar to the reporter generator
Note @dleehr: the app.R uses a new package (digest) on line 369 to generate a unique file name. This might be change in a later version, but please add install this package to the container

Do we need to make sure this dir exists and is writeable?

Yes. In my testing saveRDS does not create directories if they do not exist. I think you could call dir.create(...) before calling saveRDS. As far as the writable part, the data directory is currently writeable in our deployment. I think the data directory was accidentally left writable.
This code that saves the users info is a great start, but has several drawbacks that we can address via #15. Namely:

security problems with writing files to a local directory via a webserver
no backup for the data directory so we could potentially lose the user data files
scaling up to multiple servers can have problems sharing a writable directory

There is no reason for the shiny server to modify any of the generated data files. Long term the data directory should be read only for the shiny server to prevent malicious or accidental modifications of the generated data files. Allowing a webserver to write files to disk can lead to security problems. For example a hacker might enter an R expression for their name which may allow them to run some code on our server.


Color is RED!

Challenge Change the Color of Text has an issue.
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393.
Please describe how to reproduce this issue, and include links to screenshots if possible.
 Please ask for help in the chat room by clicking the Chat button on the challenge.


Drop duplicated packet directly

LinkReject would be sent out when receiving duplicated packets. This PR would drop duplicated packets directly instead of taking them as kThreadError_Security
@jwhui, would you please have a review?

Current coverage is 73.06% (diff: 28.57%)

Merging #911 into master will decrease coverage by 1.87%

@@             master       #911   diff @@
==========================================
  Files           116        116
  Lines         16258      17273   +1015
  Methods        2283       2410    +127
  Messages          0          0
  Branches       1972       2094    +122
==========================================
+ Hits          12184      12621    +437
- Misses         3425       3945    +520
- Partials        649        707     +58

Powered by Codecov. Last update 3001fc6...5c1af85


Add a test flag for alloy fmt

PR Description
Implements feature request from #1631
~/Documents/Projects/alloy on feat/1631-add-fmt-test ❯ cat /tmp/alloy.config
prometheus.remote_write "default" {
        endpoint {
                url          = "http://localhost:9009/api/prom/push"
        }
}
~/Documents/Projects/alloy on feat/1631-add-fmt-test ❯ build/alloy fmt /tmp/alloy.config -t
Error: File /tmp/alloy.config is not formatted correctly
~/Documents/Projects/alloy on feat/1631-add-fmt-test ❯ echo $?
1
~/Documents/Projects/alloy on feat/1631-add-fmt-test ❯ build/alloy fmt /tmp/alloy.config -w
~/Documents/Projects/alloy on feat/1631-add-fmt-test ❯ build/alloy fmt /tmp/alloy.config -t
~/Documents/Projects/alloy on feat/1631-add-fmt-test ❯ echo $?
0

PR Checklist

[x] CHANGELOG.md updated
[x] Documentation added
[ ] Tests updated
[ ] Config converters updated

@wildum if we are following what tk fmt -t does, it also does not specify how to format the file:
/tmp/k ❯ tk fmt . -t
The following files are not properly formatted:
environments/default/main.jsonnet

I believe the largest use case of this is in CI where the extra log line is line is probably unnecessary. If a user uses the -t/--test flag, they likely also know how to format the file.


Make meaningful PCL + Drake example

Per discussion in #76, the PCL + Drake example (and linking test) should show non-trivial functionality.
At present, this is blocked by the failure shown in #90.
\cc @jamiesnape

Per #179, I think this is moot now.  Please reopen if I'm mistaken.


fix(deps): update dependency com.sandec.jpro:jpro-plugin-gradle to v2022.1.9

This PR contains the following updates:

Package
Type
Update
Change

com.sandec.jpro:jpro-plugin-gradle
dependencies
patch
2022.1.4 -> 2022.1.9

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

Renovate Ignore Notification
Because you closed this PR without merging, Renovate will ignore this update (2022.1.9). You will get a PR once a newer version is released. To ignore this dependency forever, add it to the ignoreDeps array of your Renovate config.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.


Validate dns challenge via dedicated second domain

I have an interesting use case that may or may not make sense to integrate into this project. Consider the following situation:

I have many domains that I want on a single SAN cert.
They have dns hosted in different places (and some in multiple places)
Organization may be reluctant to provide dns credentials to some or all of those domains for LE purposes

I had an idea though when I saw someone mention that the Let's Encrypt validator follows CNAME records:

Set up permanent CNAME _acme-challenge.example.com to point at _acme-challenge.example.com.otherdomain.tld
To validate the domain, you just need to set the appropriate TXT record on otherdomain.tld, and LE can validate that.

This saves you from having to know how to update DNS on each individual domain, as long as you can edit the dedicated matching domain.
I guess the first question is, "Is this general purpose enough to consider for inclusion in this repo"?
My proof of concept works as another provider that acts as a wrapper around the real provider you are using. It is fairly limited in how it can transform the record, because of the current way providers generate their own fqdns. But it does work.
Positives:

Lets you issue certs on domains that you cannot directly control, as long as you have previously created the appropriate CNAME.
Works fairly seamlessly with other providers, and cli (currently just set --dns transform along with TRANSFORM_PROVIDER and TRANSFORM_DOMAIN env vars)

Negative:

kinda tricky to understand what exactly is going on. Might be kinda niche.
subdomain certs require a longer, more verbose CNAME setup. I wish a wildcard CNAME could  cover it, but that isn't feasable. In the future I think wildcard certs should only need one CNAME though per wildcard pattern.
current code path where each provider calls acme.DNS01Record to get the fqdn prevents me from doing other patterns, like have all the cnames point to a single or simpler name on the validation domain. But whatever.

Any thoughts? Should I submit a PR from what I have?

I think this is something that I want. My case is slightly simpler.
I would like to get a certificate for a.example.com. example.com DNS is hosted on a DNS server running nsd. I can of course delegate any subdomain to another name server, e.g. route53. Therefore, I've delegated a.acme.example.com to route53. I then have set up _acme-challenge.a.example.com CNAME acme-challenge.a.acme.example.com. I would like for lego to support setting the target of the CNAME, but it can't do that today without modification.
I've hacked the route53 provider to do what I want by providing yet another environment variable. I can also see a way to get what I want from lego by modifying FindZoneByFqdnCustom to traverse CNAMEs. I'm wondering whether either of these would be welcome changes, or if, like @captncraig, this use case is too niche. If so, I guess I can write an exec provider.
Note that I got the idea for the CNAME solution from this [1] blog post from EFF. So perhaps this configuration is not so far fetched?
[1] https://www.eff.org/deeplinks/2018/02/technical-deep-dive-securing-automation-acme-dns-challenge-validation

I see that my use case can be resolved by #584. I've rebased this work and submitted #791. I think this may be sufficient for the original use case as well, and is a bit simpler.


Determine threat models to call data compression

Prior discussion here: There is prior discussion here: #10
Things to consider

Gas metering
Uncompressed input that balloons the compressed inpu
Compressed input that serves as a zip bomb
Other weird things - multiple compressed outputs map to 1 decompression

Summary of slack conversation:
Using a complex compression algorithms, particularly over batches of transactions makes it hard to figure out how to charge users.
Some ideas that were floated:

Charge for uncompressed size, not compressed size - easiest, but users don't get savings
Approximate the marginal increase in compressed size - for some algorithms this is trivial, for others it is incredibly hard. If the approximation is wrong users will be able to cost us more in fees than they pay
It is possible to refund fees at the end of the batch to avoid brittle logic in the execution engine, but this may not be desirable from a charging fees point of view.
It might be possible to construct a relatively simple algorithm that estimates entropy. This entropy could be paired with a block weighted compression efficacy metric.

Notes / drawbacks

I think determining the marginal increase in compressed size is not an easy task and is not something that can easily or efficiently be done in online processing with most compression algorithms
Including a "compression oracle" - i.e. charge users for compressed size could be a little brittle as the L2 execution engine intrinsic gas function must be changed.
Estimating intrinsic gas usage will definitely be harder
"Economic Attack": Users create a transaction that the fees paid as determined by the compression oracle do not match up against the effect that the user's transaction had on the compressed size. This is most likely to occur when estimating the effect with batch level compression.

My proposed options:

zstd with dictionary per tx. Gets about a 2x compression factor. Easy “compression oracle”
zstd with dict per batch: Gets about 2.68x factor (no dict is 2.5x). I could look into this more, but a potentially usable compression oracle is to copy Ori’s idea about keeping a scalar of how effective the compression is.
zero-byte per tx: Also easy to compute. Gets about a 1.6x factor. It’s the easiest to deal with, but also I think it’s worth the hassle to use a better algorithms

With batch level compression, it's clear that it's impossible to accurately determine the fees until "runtime" (transaction inclusion time). I suspect even then it's close to impossible to perfectly determine the fees.
I guess then the big decision for product are:

Per transaction compression
Per batch compression with exact gas fees
Per batch compression with estimated fees

Per Transaction
Pros

Very easy to compute what the user will pay in Gas
Not vulnerable to economic attacks (mismatch between what was charged and the batch submitter's cost)

Cons

Only get 1.7 to 2x compression factor (depends on algorithm)
May have to update multiple places for this

Per Batch
Pros

Better compression: ~2.5x compression factor

Cons of exact fees

Users either do not know fee until transaction execution time
This might actually reduce the compression ratio

Cons of estimated fees

this method is vulnerable to an economic attack. I believe it can be bounded, but some amount of slippage is possible.

Please let me know if there's another approach that you think I'm missing or if the pros/cons don't feel right.

@trianglesphere this is great, I agree that these are probably the "big bucket" decisions. I can identify another tangential decision, which is how fee payment occurs. I can see worlds where:

Transaction fees are calculated up front to include the compression savings, and this is reflected when estimating fees e.g. using the OP js sdk
Transaction fees are charged up front as if uncompressed, and then refunded via system transactions.

The second option has advantages for implementation (can contain everything in the block derivation logic where the compression actually happens), but may be a worse product.
Separately, a couple of questions:

When you wrote out "My proposed options" in this comment, do those correspond to the 3 options in the next comment?  If so, a question: are these options all generating a dict on-the-fly, at compression time, that gets submitted as part of the compressed data?  Is there a way to have a static dict updated less often, and would that get the per-tx compression multiplier closer to the per-batch compression?
When you say you believe that economic attack can be bounded, is the bound fixed even over time (e.g. system notices compression is failing, dials back params) or is it a bound % of fee volume?
How tightly coupled would the "compression estimator" function be to the compression algo?  Do these have to be updated together to work well?

Separately, a couple of questions:

When you wrote out "My proposed options" in this comment, do those correspond to the 3 options in the next comment?  If so, a question: are these options all generating a dict on-the-fly, at compression time, that gets submitted as part of the compressed data?  Is there a way to have a static dict generated from a corpus of old transactions, and would that get the per-tx compression multiplier any closer to the per-batch compression?

Not quite. The second three are a refinement of the first three in terms of how to ask product (sorry for the confusion).
zstd/zero byte per tx (1&3 in the original) correspond to the first option to product. The zstd per batch (2 in the first) corresponds to the 2&3 for product (the difference is that the first recommendation didn't have as much about how to actually decide what fees would be).

When you say you believe that economic attack can be bounded, is the bound fixed even over time (e.g. system notices compression is failing, dials back params) or is it a bound % of fee volume?
Both? I think there are two components: a time weighted parameter that adjusts under attack. That's critical for a long term attack, but even when the attack is starting, I think it'd be hard for there to be more than a 2.5x difference in what we charge users vs what gets posted (and this delta is likely to be smaller in practice).

I'm not sure on the exact loss that we can limit it to, but we'll never get in s state where we are undercharging by a factor of 10 or something like that.

How tightly coupled would the "compression estimator" function be to the compression algo?  Do these have to be updated together to work well?
It depends how complex in the estimator is. In practice if we update the algorithm, we would at least want to check if not upgrade the estimator. It's also possible that we would want to upgrade the estimator more than the compression algorithm.

I agree that these are probably the "big bucket" decisions. I can identify another tangential decision, which is how fee payment occurs. I can see worlds where:

Transaction fees are calculated up front to include the compression savings, and this is reflected when estimating fees e.g. using the OP js sdk
Transaction fees are charged up front as if uncompressed, and then refunded via system transactions.

Yep. It seems like we are shying away from the refund, but it's definitely an option worth exploring. I don't think it actually make "perfect" compressor estimation possible (without a huge overhead), but it does mean that the protocol itself cannot be exploited.

I think determining the marginal increase in compressed size is not an easy task and is not something that can easily or efficiently be done in online processing with most compression algorithms

I'd like to nuance this somewhat. In a streaming compression algorithm (the algorithm lets you simply the data bit by bit and not only all at once), it's conceptually easy to do this.
In practice, it would require understanding and modifying the compression algorithm so that it does not commit the added compression. This could be hairy, depending on the compression algorithm implementation.

Including a "compression oracle" - i.e. charge users for compressed size could be a little brittle as the L2 execution engine intrinsic gas function must be changed.

I'm not exactly sure what you mean here. Intrinsic gas in L1 is 21k + calldata cost. What is it currently on L2 (where we do charge the "L1 fee"  for calldata posted on L1) and how will this proposition impact that? (My impression being that it's already changed, so we'd just be changing differently.) What does it mean to be "brittle"  in this context?

"Economic Attack": Users create a transaction that the fees paid as determined by the compression oracle do not match up against the effect that the user's transaction had on the compressed size. This is most likely to occur when estimating the effect with batch level compression.

Ahah! I think we were never not even imagining the same kind of system.
I was thinking all along about a system, but then you make the user pay the actual cost after compression (assuming streaming compression — you'd just get the before/after compression delta, I'm assuming this should be feasible).
(Note that a property of this is that transactions tend to become cheaper as the batch grows.)
It seems like you're assuming there is no way to accurately estimate the compression size when charging the fee, but I think that might not be a correct assumption.

I'm not exactly sure what you mean here. Intrinsic gas in L1 is 21k + calldata cost. What is it currently on L2 (where we do charge the "L1 fee" for calldata posted on L1) and how will this proposition impact that? (My impression being that it's already changed, so we'd just be changing differently.) What does it mean to be "brittle" in this context?

This was rephrasing Ben's brittle comment. If we change how charge for L2 calldata it means having to keep multiple different sources in sync.

@norswap So both zlib and zstd support streaming compression algorithms with flushing. I'm a little worried that excessive flushing would cause problems, but that is something that I can easily benchmark so I should just stop speculating.
For estimating the fees I'm more comfortable guessing based on how the transaction itself compresses and what the current compression ratio is on mainnet. This is something also worth benchmarking with the dictionary versions (a big hope is that they help with the successive tx problem).

Indeed! I like the idea of charging the per-tx compression and compressing per batch anyway.
We could refund the difference but it's tricky to know how to split it, and frankly I doubt it will affect price perception much, so we might as well keep it and do something more impactful with it. Who knows, maybe long term this compression advantage becomes the entirety of the sequencer's profits?

Yea, compressing the tx in isolation is one way of getting a decent estimation of it's weight. Maybe you charge based on the fraction tx_compressed_size/sum_individual_compressed_size - that's a little better than using uncompressed sizes for the fraction but still close enough

And flushing does slightly reduce compressed size, but not as much as I thought
zlib, total                     299967775       2.49x
zlib, batches/flush             327750890       2.28x
zlib dict, total                296083645       2.52x
zlib dict, batches/flush        323635975       2.31x
zstd, total                     299898133       2.49x
zstd, batches/flush             326573794       2.29x
zstd dict2, total               278905351       2.68x
zstd dict2, batches/flush       306103201       2.44x


[Business Approvals Kit - BUG] Approval instance gets not created

Describe the issue
Hi together,
I have followed the training here:
https://learn.microsoft.com/en-us/training/modules/approvals-kit-workshop/trigger-approval
Everything worked and workflow instances and node instances gets created but for somehow the approval instances in the BACore | Runtime - Start Node flow gets not created.
There is no entry in the corresponding table, so the workflow and node instances remain on status "Running". What is really strange is that I receive approvals on Teams which I can process. Does someone know what is happening here?
Expected Behavior
A record for "Business Approval Instance" should get created but somehow after creating a machine order request with the Contoso Coffee solution this doesn't work
What solution version are you using?
1.0.20240110.1
What app or flow are you having the issue with?
BACore | Runtime - Start Node
Steps To Reproduce
No response
Anything else?
No response
AB#2216

Here you can see that some expanded queries gets null value. I think I#ve located the issue. In the scope "Create Approval Instances" the node type gets correctly checked and then there is "Each approver" container which gets not executed because "cat_bizappr_runtimenodeapprover" is empty :/


waybar-wireplumber not working with wireplumber 0.5

I just updated to wireplumber 0.5 and i'm using the wireplumber module to display my audio. wireplumber#microphone works, but wireplumber does not display the volume correctly (always says 0%)

$ waybar -v
Waybar v0.10.0

$ cat .config/waybar/modules | grep wireplumber -A10
"wireplumber": {
    "format": "{icon} {volume}%",
    "format-muted": " ",
    "on-click": "~/.config/hypr/scripts/Volume.sh --toggle",
    "on-click-right": "pavucontrol -t 3",
    "on-scroll-up": "~/.config/hypr/scripts/Volume.sh --inc",
    "on-scroll-down": "~/.config/hypr/scripts/Volume.sh --dec",
    "format-icons": ["", "", "󰕾", ""],
    "max-volume": 140,
},

"wireplumber#microphone": {
    "format": " {volume}%",
    "format-muted": "",
    "on-click": "~/.config/hypr/scripts/Volume.sh --toggle-mic",
    "on-click-right": "pavucontrol -t 4",
    "on-scroll-up": "~/.config/hypr/scripts/Volume.sh --mic-inc",
    "on-scroll-down": "~/.config/hypr/scripts/Volume.sh --mic-dec",
	"tooltip-format": "{source_desc} | {source_volume}%",
    "scroll-step": 5,
},

$ wpctl status
PipeWire 'pipewire-0' [1.0.4, rabcor@Murmaider, cookie:2614989118]
 └─ Clients:
        31. WirePlumber                         [1.0.4, rabcor@Murmaider, pid:1290]
        39. WirePlumber [export]                [1.0.4, rabcor@Murmaider, pid:1290]
        56. xdg-desktop-portal                  [1.0.4, rabcor@Murmaider, pid:1822]
        57. xdg-desktop-portal-hyprland         [1.0.4, rabcor@Murmaider, pid:2036]
        58. waybar                              [1.0.4, rabcor@Murmaider, pid:1449]
        59. pipewire                            [1.0.4, rabcor@Murmaider, pid:2217]
        60. waybar                              [1.0.4, rabcor@Murmaider, pid:1449]
        61. easyeffects                         [1.0.4, rabcor@Murmaider, pid:2018]
       137. wpctl                               [1.0.4, rabcor@Murmaider, pid:639615]

Audio
 ├─ Devices:
 │      40. GA104 High Definition Audio Controller [alsa]
 │      41. Family 17h/19h HD Audio Controller  [alsa]
 │
 ├─ Sinks:
 │  *   49. Family 17h/19h HD Audio Controller Analog Stereo [vol: 0.50]
 │      62. Easy Effects Sink                   [vol: 1.00]
 │
 ├─ Sources:
 │  *   50. Family 17h/19h HD Audio Controller Analog Stereo [vol: 0.30]
 │      63. Easy Effects Source                 [vol: 1.00]

The volume increase and decerase scripts i am using are all working as intended though.

Having this issue too looking into the logs everything seems fine not sure what the issue is.
[2024-03-24 18:07:06.801] [debug] [wireplumber]: loading required modules
[2024-03-24 18:07:06.802] [debug] [wireplumber]: connecting to pipewire...
[2024-03-24 18:07:06.802] [debug] [wireplumber]: connected!
[2024-03-24 18:07:06.802] [debug] [wireplumber]: activating plugins

v0.9.24:
$ waybar --log-level=trace
waybar: error while loading shared libraries: libwireplumber-0.4.so.0: cannot open shared object file: No such file or directory

v0.10.0:
waybar --log-level=trace
[2024-03-25 09:58:04.401] [debug] Try expanding: $XDG_CONFIG_HOME/waybar/config
[2024-03-25 09:58:04.401] [debug] Try expanding: $XDG_CONFIG_HOME/waybar/config.jsonc
[2024-03-25 09:58:04.401] [debug] Try expanding: $HOME/.config/waybar/config
[2024-03-25 09:58:04.401] [debug] Found config file: $HOME/.config/waybar/config
[2024-03-25 09:58:04.401] [info] Using configuration file /home/aaa/.config/waybar/config
[2024-03-25 09:58:04.401] [error] Could not connect: Connection refused

Update to waybar-0.10.0-3 fixed the issue for me.

@Rabcor How do you know about 'wireplumber#microphone'? It doesn't written in the wiki & man-page, also the 'format-icons' option only appears in example?
I am really confused, I thought wireplumber module doesn't have some features I want but it actually does, I just didn't know

@Rabcor How do you know about 'wireplumber#microphone'? It doesn't written in the wiki & man-page, also the 'format-icons' option only appears in example?
I am really confused, I thought wireplumber module doesn't have some features I want but it actually does, I just didn't know

I want to say something smart, but the truth is... I guessed :laughing:, i knew pulseaudio#microphone existed so based on that... I just tried, and it worked.

Update to waybar-0.10.0-3 fixed the issue for me.

Confirmed, installed from git "Waybar v0.10.0-52-g487ab232 (branch 'master')" and this issue is no longer present, i'm closing this.


[Bug-App]: Published reports are deleted after discarding draft

Describe the bug
Publishing the report, then loading the URL of its draft (in my case it was an old bookmarked URL) loads the report in edit mode. Discarding the draft leads to a misleading message saying that the changes will be discarded: instead, the entire report is deleted forever.
Steps to reproduce:

Create a new report and copy the draft URL
Publish the report
Open the copied draft URL (or press "back" twice to go back to the draft)
Do a dummy change, press "Discard draft"
Observe the misleading message and confirm
Observe the missing report from the "Reports" page. The report is forever lost.

I lost many hours of work this way. Please, if you know how to recover the deleted report, let me know.
https://github.com/user-attachments/assets/65f46e8b-2b6a-44cc-8acc-81cc0497bbf3

Hi @smanolloff! Thank you very much for writing in.
I have been able to reproduce this on my end as well. Apologies for the inconvenience. I will go ahead and report this to my engineering team as a bug.


No results update

Trello card
Trello-426
Context
Currently, if there are no results we display a single 'no results' message to the user. We want to change this behaviour such that;

If a user searches across all types and there are no results for some of the types, we still want to display the type sections but have a 'no results' message in each section that has no events.
If a user searches across all types and there are no results in any of the types, the existing behaviour remains (single 'no results' message).
If the user searches by a specific type, the existing behaviour remains (single 'no results' message).
If there are no results on the landing page for a specific type, we want to hide the section completely (retaining the existing behaviour).

We also want to remove the Application Workshop events from the application, as there are none in the CRM at the moment and aren't likely to be any in the near future.
Changes proposed in this pull request

Refactor Event::Search to class methods
Display no results message per category
Remove Application Workshop events from the app

Guidance to review

Closing as I've split this out into 3 individual PRs.


add reduced view for js viewer.

@senny (I'm gonna merge this now, you can still comment to request a change, I will then make a new PR.)


[GLUTEN-3450][CH] Support allowPrecisionLoss=false

What changes were proposed in this pull request?
(Fixes: #3450)
How was this patch tested?
Test by UT

@zhouyuan @PHILO-HE @zzcclp Please have a code review.

===== Performance report for TPCH SF2000 with Velox backend, for reference only ====

query
log/native_3463_time.csv
log/native_master_10_23_2023_157f42c08_time.csv
difference
percentage

q1
35.00
34.61
-0.400
98.86%

q2
25.01
24.81
-0.196
99.22%

q3
40.23
39.90
-0.327
99.19%

q4
37.71
36.69
-1.025
97.28%

q5
71.36
71.34
-0.027
99.96%

q6
8.84
8.69
-0.143
98.38%

q7
88.04
87.86
-0.180
99.80%

q8
86.94
84.29
-2.654
96.95%

q9
119.66
118.66
-1.001
99.16%

q10
54.50
53.69
-0.815
98.50%

q11
19.72
20.55
0.832
104.22%

q12
26.24
27.99
1.745
106.65%

q13
48.46
49.56
1.097
102.26%

q14
20.01
18.60
-1.414
92.93%

q15
34.97
33.02
-1.950
94.43%

q16
15.68
16.27
0.585
103.73%

q17
101.74
102.04
0.303
100.30%

q18
148.39
147.35
-1.048
99.29%

q19
16.90
16.60
-0.302
98.21%

q20
30.93
30.77
-0.156
99.49%

q21
223.75
226.90
3.155
101.41%

q22
13.41
13.32
-0.097
99.28%

total
1267.51
1263.49
-4.016
99.68%


XLSX "[Content_Types].xml in zip"

Hi, I was trying to update my alasql source file to the latest version so that I can use some of the new functions. However, something broke when I did that and I'm getting the following message in the console:

Uncaught Error: Cannot find file [Content_Types].xml in zip

I've found that the 0.2.3 is where something changed, as with 0.2.2 it is still working. I'm using the following code to load in an xlsx file (and this still works with 0.2.2):
alasql('SELECT * FROM XLSX("'+xlsxurl+'",{sheetid:"Sheet1", headers:true})', [],function(listing){
Am I missing something? Where could the problem be?

Thank you very much for taking the time to make an issue about it.
It shuld work.
Is it possible for you to give me an excel file that recreates the problem?

Not sure if there is anything specific with my Excel file, but I'll attach a stripped version of it here: test.xlsx
I've tested it again (with the exact file above), it works under alasql 0.2.2 but breaks under 0.2.3.

I did one more test to get closer to the problem, this time with the latest and full (not minimised) alasql 0.2.5 version:

xlsx.core.min.js:6 Uncaught Error: Cannot find file [Content_Types].xml in zip
getzipfile				@	xlsx.core.min.js:6
getzipdata				@	xlsx.core.min.js:6
parse_zip				@	xlsx.core.min.js:9
readSync				@	xlsx.core.min.js:9
(anonymous function)		@	alasql.min.js:15243
xhr.onload				@	alasql.min.js:3432

As you can see, there is something in line 3432 and 15243.

Thank you very much for the time to get into the details. I will see what can be done.

Okay, so I literally have no idea what I did, because I know very little about alasql's code logic, but I tried to compare 0.2.2 and 0.2.5 and look at the lines that were mentioned in the error message to see if something has changed, and if I change it back, it might still work again.
In line 3434 there's this that wasn't there in 0.2.2 (but appeared since 0.2.3):
            xhr.responseType = "blob";
I removed it from alasql.js, aaaand it works again!
Any idea what this means?

@tmrk
You are awesome !
Its a tentative to solve another problem: https://github.com/agershun/alasql/commit/de88a650063d6f86950fc2d32ff1e8a694a809a5

Stop syntax errors
I kept getting syntax errors loading csv files and xhr.responseType = "text"; fixed it. I haven't actually loaded any Binary files but I'm guessing xhr.responseType = "blob"; should probably be go there. anyway thanks again for the library :-)

Soooo - looks like we introduced a new error. Hmm.
Ill remove it - but will have to look into the difference before we release...

If you could please try with the last version of https://github.com/agershun/alasql/blob/develop/dist/alasql.js that would be awesome...

@mathiasrw I tested it now, and it works perfectly! Thanks!


Error message generated when Neovim throws an error while editing a file.

Description
PTDB will try to read in all stdout & stderr data as a UTF-8 string, even if the command isn't one PTDB can parse. This causes an error message when a command outputs non UTF-8 data. For example: when you get an error message in Neovim (with the AstroNvim configs specifically).
EDIT: upon further testing, this error only sometimes happens, and I'm not really sure what the differentiating factor is. (proposed solution will still be implemented)
Steps to Reproduce

Install Neovim, AstroNvim  (AstroNvim may not be nessesary, idk)
edit file in Neovim
get error
exit Neovim
observer PTDB error message

System Info

OS => NixOS (23.05)
PTDB version => abee7d4
Neovim version => NVIM v0.9.4
AstroNvim Version => v3.15.0

Proposed Solution
Only parse the data to a UTF-8 string if the command is parsable.

Fixed by commit ac01788


Onboarding: having private communities

Discuss if this is something we would like to support.

"Private" might be the wrong word here - I just meant giving communities the option of whether or not they want to show up on the "Find Your Tribe" page. Everything else about the Garden would be the same.


Fix completion bug due to multiple graphql package versions (for v4 / branch postgraphile)

Fixes #615
Temporarily pin package graphql down to version 0.10.5
Otherwise npm will install 0.11.x alongside with 0.10.5 pulled in from codemirror-graphql.
Having two versions interferes with GraphiQL's auto completion feature.
Issue is also visible as an error message in browser's console.
PR tested to work with npm and yarn.
This version restriction is probably not necessary anymore when this PR for codemirror-graphql gets merged.

Closing this as it's only necessary to PR to v3; v3 changes get merged into v4. 👍


Add meaningful Travis CI integration and integration tests

This change adds tests, fixes the Travis CI file and adds a build badge to the README.

@davidxia, would you mind reviewing this, please?


Add a seed for better randomness

- What I did
Added a call to rand.Seed
Without the seed the rand.Intn will always start from the same place and
return the same application name
- How to verify it
Without this change run:
$ docker app run APP1
$ docker app run APP2

The second one would fail with a message: Installation "gallant_poitras" already exists, use 'docker app update' instead
- A picture of a cute animal (not mandatory)

Please do not use math/rand in any code, just use crypto/rand

Please do not use math/rand in any code, just use crypto/rand

The call to rand.Intn is in moby

This is for random name generation

Hmm, I thought I had fixed that one too, ok will change it there.

Its ok to merge this though, before I change the implementation.


CloudWatch event(SQSRule) invocation failed.

CloudWatch event(SQSRule) invocation failed when trying to send message to SQS. Seems SQS uses an AWS managed key alias/aws/sqs for encryption. https://github.com/awslabs/aws-limit-monitor/blob/master/deployment/limit-monitor.template#L225
However, this key is not accessible for CloudWatch event due to the following limit defined in the key policy.
"Condition": {
    "StringEquals": {
        "kms:CallerAccount": "xxxxxxxxxxxxxxx",
        "kms:ViaService": "sqs.us-east-1.amazonaws.com"
    }
}

I suppose that a customer managed key should be used here just like SNS part. https://github.com/awslabs/aws-limit-monitor/blob/master/deployment/limit-monitor.template#L471

Hi - This should have been resolved in the most recent commit to this Solution. Please let us know if you need additional assistance.


Tags fail to propagate to resources

Version

Karpenter Version: v0.22.0

Kubernetes Version: v1.22
Expected Behavior
AWSNodeTemplate and global settings.aws.tags tags should propagate to all resources. Karpenter Default tags should propagate as well
Actual Behavior
Tags are applied to the launch template itself and in the Resource Tags configuration of the generated launch template, but the tags are not set to propagate to everything (Instance, Volumes, etc). Even the default Karpenter tags are not set to propagate.
Steps to Reproduce the Problem
Run without tags or set tags.
Resource Specs and Logs
apiVersion: karpenter.k8s.aws/v1alpha1
kind: AWSNodeTemplate
metadata:
  name: default
spec:
  subnetSelector:
    # karpenter.sh/discovery: '{{ .Values.clusterName }}'
    aws-ids: "subnet-ids"
  securityGroupSelector:
    karpenter.sh/discovery: '{{ .Values.karpenter.settings.aws.clusterName }}'
  amiSelector:
    aws-ids: '{{ .Values.clusterWorkerAmiId }}'
  metadataOptions:
    httpEndpoint: enabled
    httpProtocolIPv6: disabled
    httpPutResponseHopLimit: 2
    httpTokens: optional
  blockDeviceMappings:
    - deviceName: /dev/xvda
      ebs:
        volumeSize: 100Gi
        volumeType: gp3
        deleteOnTermination: true
  tags:
    my-tag/project: {{ .Values.clusterName }}
    my-tag/contact: contact

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Even the default Karpenter tags are not set to propagate.

What do you mean by this? What are the default tags? Are you saying that tags as specified on the global level are not propagated?
If you specify tags in the AWSNodeTemplate and in global settings, the tags in the AWSNodeTemplate will override the global settings.
I just tested my AWSNodeTemplate and saw that the tags on my AWSNodeTemplate were propagated to new instances. We currently don't propagate them to existing instances if that's what you want, but are planning on implementing that.

No tags are set to propagate to instances. We have organizational SCPs which will block instance launch if they do not have our cost tags defined.

@sidewinder12s This is high-pri for us. We're currently investigating what's going on here and working on getting a fix to make sure that tags properly propagate.

No tags are set to propagate to instances.

Are you saying that you haven't set this in your AWSNodeTemplate?

I get encoded authorization failure error messages in the Karpenter logs and no instances launched.

Can you share these log messages? Can you share your AWSNodeTemplate specs?

Ugh, looks like this was user error and I got hung up on the Launch Template configuration not having the propagate tags setting. Once I checked CloudTrail I saw it was passing in our tags (Did not help that we have differing tagging keys in Kubernetes and AWS so they were also wrong). I'm able to launch instances.


Introduce Mesh models module

This PR introduces Mesh models module handled by bluetooth mesh subsystem. Along with skeleton, generic battery server model is add.

@MariuszSkamra @michal-narajowski please look at it.

Codecov Report

Merging #10181 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #10181   +/-   ##
=======================================
  Coverage   53.03%   53.03%
=======================================
  Files         214      214
  Lines       26176    26176
  Branches     5642     5642
=======================================
  Hits        13883    13883
  Misses      10024    10024
  Partials     2269     2269

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4e61ccd...3ed35cf.

Actually AP is on @jhedberg . If needed I can rebase it, since it's a little bit outdated.

Actually AP is on @jhedberg . If needed I can rebase it, since it's a little bit outdated.

@kolodgrz what exactly are you waiting for from me? My stance is still the same: either we have a generic battery framework in Zephyr and the battery mesh models use it, or then we create a sample app for one specific board (with battery information available) demonstrating how to expose this over mesh. Either way, I don't think e.g. the new mesh-specific battery Kconfig option is needed, at least not at this point.

It has been now been around a year since the last change to this PR has been done. And no agreement was reached about the way forward. Therefore I close this PR under the assumption that otherwise it would simply remain open but stale and without further changes.
@kolodgrz If you do want to take the PR further, please reopen it.


Adirath Project Submission

Upload your project files in the Adirath_SDS_Project Folder.

[ ] Downloading Balance Scale Data Set employed for validating the model.

[ ]  Splitting the "Balance Scale Data Set" into training and testing data.

[ ] Building function for Decision Tree Classifier based on information gain and training the classifier on training data.

[ ] Implementing classification on testing data.

[ ] Evaluating the prediction results with evaluation methods including [confusion matrix](https://scikitlearn.org/stable/modules/generated/sklearn.metrics.confusion_matrix.html) and [accuracy](https://scikitlearn.org/stable/modules/generated/sklearn.metrics.accuracy_score.html).

Can this task be assigned to me?


Password checker game

Added Password Checker Game to be compatible with tsx

Added to main indirectly through another branch


wish metrics will bring with kong tags

We can setup tags on kong for each route, these tags have lots of useful  information aside of name,  can prometheus bring these tags on when export metrics?

about kong tags: https://docs.konghq.com/gateway-oss/2.3.x/admin-api/#tags


Body was not waked up by b2Body_SetLinearVelocity & b2Body_SetAngularVelocity

b2GetBodyState always return NULL while body falling in sleep. so the b2WakeBody never work.
I have made some fix in #171.

Thanks for the report. Fixed in #174.


Logging json disabled not working

What version of fleet are you using (fleet version --full)?
fleet - version 2.0.0-rc4
branch:       master
revision:     71e8e3917eb77058721c9f7ad6e4d3e3704717a2
build date:   2018-08-14T23:56:00Z
build user:   zwass
go version:   go1.10.2
What operating system are you using?
LSB Version:    n/a
Distributor ID: SUSE
Description:    SUSE Linux Enterprise Server 12 SP2
Release:        12.2
Codename:       n/a
What did you do?
I disabled json logging.
logging:
  json: false
  disable_banner: true

What did you expect to see?
I expected log files not in json, I expected plain text.
What did you see instead?
I see json logs.

The --logging_json flag effects the server log output, not the osquery log output (which is written by Fleet exactly as it is received.
$ ./build/fleet serve --auth_jwt_key=foobar --logging_json=true
{"component":"service","err":null,"method":"ListUsers","took":"3.227676ms","ts":"2018-09-07T17:47:56.669339589Z","user":"none"}
{"address":"<IP_ADDRESS>:8080","msg":"listening","transport":"https","ts":"2018-09-07T17:47:56.669883311Z"}
^C{"terminated":null,"ts":"2018-09-07T17:47:58.069178343Z"}
$ ./build/fleet serve --auth_jwt_key=foobar --logging_json=false
ts=2018-09-07T17:48:00.073079952Z component=service method=ListUsers user=none err=null took=4.220553ms
ts=2018-09-07T17:48:00.074418514Z transport=https address=<IP_ADDRESS>:8080 msg=listening
^Cts=2018-09-07T17:48:01.164868862Z terminated=null


Add support for NOT IN

I will probably eventually re-implement this with an arbitrary not
function, but I didn't want to go there quite yet as I'm not sure if
we'll need to do anything with parenthesis for that.
This will add another case we have to deal with empty arrays for, but I
don't think this will affect the implementation other than requiring an
additional test. What I'm thinking we'll do is have the In expression
write out 1=0 when it sees an empty array. With this implementation
it'll be NOT 1=0, which is exactly what we want. (In empty set = no
rows, not in empty set = all rows)
Fixes #511

Review? @diesel-rs/contributors


python311Packages.pydantic-settings: mark broken

Description of changes
The python module pydantic-settings requires pydantic v2. We only have pydantic v1 packaged. Both versions of pydantic are maintained independently so our pydantic is not outdated, it's just the wrong "flavor".
The python-module was added recently (#251878) and as far as I can see never built successfully.
@mweinelt
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Ah. I see.

For future PRs, make sure that the reasoning goes into the commit message, so that when someone only has the Git repo they can still understand why a change was made.

Wouldn't had any issue adding that too before merge.

Was not worth doing another review round about, so I took care of that in https://github.com/NixOS/nixpkgs/commit/70ccb0dec2983e576833de94fe35081dd5d60b5b.


Optimize SID translation

I suppose we can (at least partially) solve the performance issue reported in #349 by replacing multiple queries to LSA with one request to translate all SIDs at once.

Oh wow cool, I’ll have to test this out!


Options are not working

Hi, I've been using this code:
$('#membersList').filterTable({
	containerClass : 'form-group',
	placeholder : "This only filters the shown data. To search, please use the searchbox on the menu"
});

Appearantly, the placeholder is not being shown and the class is not being applied. Any ideas?

Sorry for the delay. Without more information, I can't really say what may be wrong. Are you using a browser that supports the HTML5 placeholder attribute? Is there some CSS styling on your fields which hides the placeholder attribute?